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=compute.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: compute.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 Address

type Address struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AddressSpec   `json:"spec,omitempty"`
	Status            AddressStatus `json:"status,omitempty"`
}

func (*Address) DeepCopy

func (in *Address) DeepCopy() *Address

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

func (*Address) DeepCopyInto

func (in *Address) DeepCopyInto(out *Address)

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

func (*Address) DeepCopyObject

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

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

func (*Address) SetupWebhookWithManager

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

func (*Address) ValidateCreate

func (r *Address) ValidateCreate() error

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

func (*Address) ValidateDelete

func (r *Address) ValidateDelete() error

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

func (*Address) ValidateUpdate

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

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

type AddressList

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

AddressList is a list of Addresss

func (*AddressList) DeepCopy

func (in *AddressList) DeepCopy() *AddressList

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

func (*AddressList) DeepCopyInto

func (in *AddressList) DeepCopyInto(out *AddressList)

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

func (*AddressList) DeepCopyObject

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

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

type AddressSpec

type AddressSpec struct {
	State *AddressSpecResource `json:"state,omitempty" tf:"-"`

	Resource AddressSpecResource `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 (*AddressSpec) DeepCopy

func (in *AddressSpec) DeepCopy() *AddressSpec

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

func (*AddressSpec) DeepCopyInto

func (in *AddressSpec) DeepCopyInto(out *AddressSpec)

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

type AddressSpecResource

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

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

	// The static external IP address represented by this resource. Only
	// IPv4 is supported. An address may only be specified for INTERNAL
	// address types. The IP address must be inside the specified subnetwork,
	// if any. Set by the API if undefined.
	// +optional
	Address *string `json:"address,omitempty" tf:"address"`
	// The type of address to reserve. Default value: "EXTERNAL" Possible values: ["INTERNAL", "EXTERNAL"]
	// +optional
	AddressType *string `json:"addressType,omitempty" tf:"address_type"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. The name must be 1-63 characters long, and
	// comply with RFC1035. Specifically, the name must be 1-63 characters
	// long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?'
	// which means the first character must be a lowercase letter, and all
	// following characters must be a dash, lowercase letter, or digit,
	// except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The URL of the network in which to reserve the address. This field
	// can only be used with INTERNAL type with the VPC_PEERING and
	// IPSEC_INTERCONNECT purposes.
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// The networking tier used for configuring this address. If this field is not
	// specified, it is assumed to be PREMIUM. Possible values: ["PREMIUM", "STANDARD"]
	// +optional
	NetworkTier *string `json:"networkTier,omitempty" tf:"network_tier"`
	// The prefix length if the resource represents an IP range.
	// +optional
	PrefixLength *int64 `json:"prefixLength,omitempty" tf:"prefix_length"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The purpose of this resource, which can be one of the following values:
	//
	// * GCE_ENDPOINT for addresses that are used by VM instances, alias IP
	//   ranges, internal load balancers, and similar resources.
	//
	// * SHARED_LOADBALANCER_VIP for an address that can be used by multiple
	//   internal load balancers.
	//
	// * VPC_PEERING for addresses that are reserved for VPC peer networks.
	//
	// * IPSEC_INTERCONNECT for addresses created from a private IP range
	//   that are reserved for a VLAN attachment in an IPsec-encrypted Cloud
	//   Interconnect configuration. These addresses are regional resources.
	//
	// * PRIVATE_SERVICE_CONNECT for a private network address that is used
	// to configure Private Service Connect. Only global internal addresses
	// can use this purpose.
	//
	// This should only be set when using an Internal address.
	// +optional
	Purpose *string `json:"purpose,omitempty" tf:"purpose"`
	// The Region in which the created address should reside.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The URL of the subnetwork in which to reserve the address. If an IP
	// address is specified, it must be within the subnetwork's IP range.
	// This field can only be used with INTERNAL type with
	// GCE_ENDPOINT/DNS_RESOLVER purposes.
	// +optional
	Subnetwork *string `json:"subnetwork,omitempty" tf:"subnetwork"`
	// The URLs of the resources that are using this address.
	// +optional
	Users []string `json:"users,omitempty" tf:"users"`
}

func (*AddressSpecResource) DeepCopy

func (in *AddressSpecResource) DeepCopy() *AddressSpecResource

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

func (*AddressSpecResource) DeepCopyInto

func (in *AddressSpecResource) DeepCopyInto(out *AddressSpecResource)

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

type AddressStatus

type AddressStatus 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 (*AddressStatus) DeepCopy

func (in *AddressStatus) DeepCopy() *AddressStatus

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

func (*AddressStatus) DeepCopyInto

func (in *AddressStatus) DeepCopyInto(out *AddressStatus)

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

type AttachedDisk

type AttachedDisk struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AttachedDiskSpec   `json:"spec,omitempty"`
	Status            AttachedDiskStatus `json:"status,omitempty"`
}

func (*AttachedDisk) DeepCopy

func (in *AttachedDisk) DeepCopy() *AttachedDisk

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

func (*AttachedDisk) DeepCopyInto

func (in *AttachedDisk) DeepCopyInto(out *AttachedDisk)

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

func (*AttachedDisk) DeepCopyObject

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

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

func (*AttachedDisk) SetupWebhookWithManager

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

func (*AttachedDisk) ValidateCreate

func (r *AttachedDisk) ValidateCreate() error

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

func (*AttachedDisk) ValidateDelete

func (r *AttachedDisk) ValidateDelete() error

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

func (*AttachedDisk) ValidateUpdate

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

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

type AttachedDiskList

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

AttachedDiskList is a list of AttachedDisks

func (*AttachedDiskList) DeepCopy

func (in *AttachedDiskList) DeepCopy() *AttachedDiskList

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

func (*AttachedDiskList) DeepCopyInto

func (in *AttachedDiskList) DeepCopyInto(out *AttachedDiskList)

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

func (*AttachedDiskList) DeepCopyObject

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

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

type AttachedDiskSpec

type AttachedDiskSpec struct {
	State *AttachedDiskSpecResource `json:"state,omitempty" tf:"-"`

	Resource AttachedDiskSpecResource `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 (*AttachedDiskSpec) DeepCopy

func (in *AttachedDiskSpec) DeepCopy() *AttachedDiskSpec

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

func (*AttachedDiskSpec) DeepCopyInto

func (in *AttachedDiskSpec) DeepCopyInto(out *AttachedDiskSpec)

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

type AttachedDiskSpecResource

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

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

	// Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disks-x, where x is a number assigned by Google Compute Engine.
	// +optional
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name"`
	// name or self_link of the disk that will be attached.
	Disk *string `json:"disk" tf:"disk"`
	// name or self_link of the compute instance that the disk will be attached to. If the self_link is provided then zone and project are extracted from the self link. If only the name is used then zone and project must be defined as properties on the resource or provider.
	Instance *string `json:"instance" tf:"instance"`
	// The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// The project that the referenced compute instance is a part of. If instance is referenced by its self_link the project defined in the link will take precedence.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The zone that the referenced compute instance is located within. If instance is referenced by its self_link the zone defined in the link will take precedence.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*AttachedDiskSpecResource) DeepCopy

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

func (*AttachedDiskSpecResource) DeepCopyInto

func (in *AttachedDiskSpecResource) DeepCopyInto(out *AttachedDiskSpecResource)

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

type AttachedDiskStatus

type AttachedDiskStatus 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 (*AttachedDiskStatus) DeepCopy

func (in *AttachedDiskStatus) DeepCopy() *AttachedDiskStatus

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

func (*AttachedDiskStatus) DeepCopyInto

func (in *AttachedDiskStatus) DeepCopyInto(out *AttachedDiskStatus)

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

type Autoscaler

type Autoscaler struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              AutoscalerSpec   `json:"spec,omitempty"`
	Status            AutoscalerStatus `json:"status,omitempty"`
}

func (*Autoscaler) DeepCopy

func (in *Autoscaler) DeepCopy() *Autoscaler

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

func (*Autoscaler) DeepCopyInto

func (in *Autoscaler) DeepCopyInto(out *Autoscaler)

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

func (*Autoscaler) DeepCopyObject

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

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

func (*Autoscaler) SetupWebhookWithManager

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

func (*Autoscaler) ValidateCreate

func (r *Autoscaler) ValidateCreate() error

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

func (*Autoscaler) ValidateDelete

func (r *Autoscaler) ValidateDelete() error

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

func (*Autoscaler) ValidateUpdate

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

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

type AutoscalerList

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

AutoscalerList is a list of Autoscalers

func (*AutoscalerList) DeepCopy

func (in *AutoscalerList) DeepCopy() *AutoscalerList

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

func (*AutoscalerList) DeepCopyInto

func (in *AutoscalerList) DeepCopyInto(out *AutoscalerList)

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

func (*AutoscalerList) DeepCopyObject

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

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

type AutoscalerSpec

type AutoscalerSpec struct {
	State *AutoscalerSpecResource `json:"state,omitempty" tf:"-"`

	Resource AutoscalerSpecResource `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 (*AutoscalerSpec) DeepCopy

func (in *AutoscalerSpec) DeepCopy() *AutoscalerSpec

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

func (*AutoscalerSpec) DeepCopyInto

func (in *AutoscalerSpec) DeepCopyInto(out *AutoscalerSpec)

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

type AutoscalerSpecAutoscalingPolicy

type AutoscalerSpecAutoscalingPolicy struct {
	// The number of seconds that the autoscaler should wait before it
	// starts collecting information from a new instance. This prevents
	// the autoscaler from collecting information when the instance is
	// initializing, during which the collected usage would not be
	// reliable. The default time autoscaler waits is 60 seconds.
	//
	// Virtual machine initialization times might vary because of
	// numerous factors. We recommend that you test how long an
	// instance may take to initialize. To do this, create an instance
	// and time the startup process.
	// +optional
	CooldownPeriod *int64 `json:"cooldownPeriod,omitempty" tf:"cooldown_period"`
	// Defines the CPU utilization policy that allows the autoscaler to
	// scale based on the average CPU utilization of a managed instance
	// group.
	// +optional
	CpuUtilization *AutoscalerSpecAutoscalingPolicyCpuUtilization `json:"cpuUtilization,omitempty" tf:"cpu_utilization"`
	// Configuration parameters of autoscaling based on a load balancer.
	// +optional
	LoadBalancingUtilization *AutoscalerSpecAutoscalingPolicyLoadBalancingUtilization `json:"loadBalancingUtilization,omitempty" tf:"load_balancing_utilization"`
	// The maximum number of instances that the autoscaler can scale up
	// to. This is required when creating or updating an autoscaler. The
	// maximum number of replicas should not be lower than minimal number
	// of replicas.
	MaxReplicas *int64 `json:"maxReplicas" tf:"max_replicas"`
	// Configuration parameters of autoscaling based on a custom metric.
	// +optional
	Metric []AutoscalerSpecAutoscalingPolicyMetric `json:"metric,omitempty" tf:"metric"`
	// The minimum number of replicas that the autoscaler can scale down
	// to. This cannot be less than 0. If not provided, autoscaler will
	// choose a default value depending on maximum number of instances
	// allowed.
	MinReplicas *int64 `json:"minReplicas" tf:"min_replicas"`
	// Defines operating mode for this policy. Default value: "ON" Possible values: ["OFF", "ONLY_UP", "ON"]
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// Defines scale in controls to reduce the risk of response latency
	// and outages due to abrupt scale-in events
	// +optional
	ScaleInControl *AutoscalerSpecAutoscalingPolicyScaleInControl `json:"scaleInControl,omitempty" tf:"scale_in_control"`
	// Scaling schedules defined for an autoscaler. Multiple schedules can be set on an autoscaler and they can overlap.
	// +optional
	ScalingSchedules []AutoscalerSpecAutoscalingPolicyScalingSchedules `json:"scalingSchedules,omitempty" tf:"scaling_schedules"`
}

func (*AutoscalerSpecAutoscalingPolicy) DeepCopy

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

func (*AutoscalerSpecAutoscalingPolicy) DeepCopyInto

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

type AutoscalerSpecAutoscalingPolicyCodec

type AutoscalerSpecAutoscalingPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (AutoscalerSpecAutoscalingPolicyCodec) Decode

func (AutoscalerSpecAutoscalingPolicyCodec) Encode

func (AutoscalerSpecAutoscalingPolicyCodec) IsEmpty

type AutoscalerSpecAutoscalingPolicyCpuUtilization

type AutoscalerSpecAutoscalingPolicyCpuUtilization struct {
	// Indicates whether predictive autoscaling based on CPU metric is enabled. Valid values are:
	//
	// - NONE (default). No predictive method is used. The autoscaler scales the group to meet current demand based on real-time metrics.
	//
	// - OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by monitoring daily and weekly load patterns and scaling out ahead of anticipated demand.
	// +optional
	PredictiveMethod *string `json:"predictiveMethod,omitempty" tf:"predictive_method"`
	// The target CPU utilization that the autoscaler should maintain.
	// Must be a float value in the range (0, 1]. If not specified, the
	// default is 0.6.
	//
	// If the CPU level is below the target utilization, the autoscaler
	// scales down the number of instances until it reaches the minimum
	// number of instances you specified or until the average CPU of
	// your instances reaches the target utilization.
	//
	// If the average CPU is above the target utilization, the autoscaler
	// scales up until it reaches the maximum number of instances you
	// specified or until the average utilization reaches the target
	// utilization.
	Target *float64 `json:"target" tf:"target"`
}

func (*AutoscalerSpecAutoscalingPolicyCpuUtilization) DeepCopy

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

func (*AutoscalerSpecAutoscalingPolicyCpuUtilization) DeepCopyInto

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

type AutoscalerSpecAutoscalingPolicyCpuUtilizationCodec

type AutoscalerSpecAutoscalingPolicyCpuUtilizationCodec struct {
}

+k8s:deepcopy-gen=false

func (AutoscalerSpecAutoscalingPolicyCpuUtilizationCodec) Decode

func (AutoscalerSpecAutoscalingPolicyCpuUtilizationCodec) Encode

func (AutoscalerSpecAutoscalingPolicyCpuUtilizationCodec) IsEmpty

type AutoscalerSpecAutoscalingPolicyLoadBalancingUtilization

type AutoscalerSpecAutoscalingPolicyLoadBalancingUtilization struct {
	// Fraction of backend capacity utilization (set in HTTP(s) load
	// balancing configuration) that autoscaler should maintain. Must
	// be a positive float value. If not defined, the default is 0.8.
	Target *float64 `json:"target" tf:"target"`
}

func (*AutoscalerSpecAutoscalingPolicyLoadBalancingUtilization) DeepCopy

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

func (*AutoscalerSpecAutoscalingPolicyLoadBalancingUtilization) DeepCopyInto

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

type AutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec

type AutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec struct {
}

+k8s:deepcopy-gen=false

func (AutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec) Decode

func (AutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec) Encode

func (AutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec) IsEmpty

type AutoscalerSpecAutoscalingPolicyMetric

type AutoscalerSpecAutoscalingPolicyMetric struct {
	// The identifier (type) of the Stackdriver Monitoring metric.
	// The metric cannot have negative values.
	//
	// The metric must have a value type of INT64 or DOUBLE.
	Name *string `json:"name" tf:"name"`
	// The target value of the metric that autoscaler should
	// maintain. This must be a positive value. A utilization
	// metric scales number of virtual machines handling requests
	// to increase or decrease proportionally to the metric.
	//
	// For example, a good metric to use as a utilizationTarget is
	// www.googleapis.com/compute/instance/network/received_bytes_count.
	// The autoscaler will work to keep this value constant for each
	// of the instances.
	// +optional
	Target *float64 `json:"target,omitempty" tf:"target"`
	// Defines how target utilization value is expressed for a
	// Stackdriver Monitoring metric. Possible values: ["GAUGE", "DELTA_PER_SECOND", "DELTA_PER_MINUTE"]
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
}

func (*AutoscalerSpecAutoscalingPolicyMetric) DeepCopy

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

func (*AutoscalerSpecAutoscalingPolicyMetric) DeepCopyInto

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

type AutoscalerSpecAutoscalingPolicyScaleInControl

type AutoscalerSpecAutoscalingPolicyScaleInControl struct {
	// A nested object resource
	// +optional
	MaxScaledInReplicas *AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas `json:"maxScaledInReplicas,omitempty" tf:"max_scaled_in_replicas"`
	// How long back autoscaling should look when computing recommendations
	// to include directives regarding slower scale down, as described above.
	// +optional
	TimeWindowSec *int64 `json:"timeWindowSec,omitempty" tf:"time_window_sec"`
}

func (*AutoscalerSpecAutoscalingPolicyScaleInControl) DeepCopy

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

func (*AutoscalerSpecAutoscalingPolicyScaleInControl) DeepCopyInto

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

type AutoscalerSpecAutoscalingPolicyScaleInControlCodec

type AutoscalerSpecAutoscalingPolicyScaleInControlCodec struct {
}

+k8s:deepcopy-gen=false

func (AutoscalerSpecAutoscalingPolicyScaleInControlCodec) Decode

func (AutoscalerSpecAutoscalingPolicyScaleInControlCodec) Encode

func (AutoscalerSpecAutoscalingPolicyScaleInControlCodec) IsEmpty

type AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas

type AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas struct {
	// Specifies a fixed number of VM instances. This must be a positive
	// integer.
	// +optional
	Fixed *int64 `json:"fixed,omitempty" tf:"fixed"`
	// Specifies a percentage of instances between 0 to 100%, inclusive.
	// For example, specify 80 for 80%.
	// +optional
	Percent *int64 `json:"percent,omitempty" tf:"percent"`
}

func (*AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas) DeepCopy

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

func (*AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas) DeepCopyInto

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

type AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec

type AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec struct {
}

+k8s:deepcopy-gen=false

func (AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec) Decode

func (AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec) Encode

func (AutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec) IsEmpty

type AutoscalerSpecAutoscalingPolicyScalingSchedules

type AutoscalerSpecAutoscalingPolicyScalingSchedules struct {
	// A description of a scaling schedule.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// A boolean value that specifies if a scaling schedule can influence autoscaler recommendations. If set to true, then a scaling schedule has no effect.
	// +optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled"`
	// The duration of time intervals (in seconds) for which this scaling schedule will be running. The minimum allowed value is 300.
	DurationSec *int64 `json:"durationSec" tf:"duration_sec"`
	// Minimum number of VM instances that autoscaler will recommend in time intervals starting according to schedule.
	MinRequiredReplicas *int64  `json:"minRequiredReplicas" tf:"min_required_replicas"`
	Name                *string `json:"name" tf:"name"`
	// The start timestamps of time intervals when this scaling schedule should provide a scaling signal. This field uses the extended cron format (with an optional year field).
	Schedule *string `json:"schedule" tf:"schedule"`
	// The time zone to be used when interpreting the schedule. The value of this field must be a time zone name from the tz database: http://en.wikipedia.org/wiki/Tz_database.
	// +optional
	TimeZone *string `json:"timeZone,omitempty" tf:"time_zone"`
}

func (*AutoscalerSpecAutoscalingPolicyScalingSchedules) DeepCopy

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

func (*AutoscalerSpecAutoscalingPolicyScalingSchedules) DeepCopyInto

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

type AutoscalerSpecResource

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

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

	// The configuration parameters for the autoscaling algorithm. You can
	// define one or more of the policies for an autoscaler: cpuUtilization,
	// customMetricUtilizations, and loadBalancingUtilization.
	//
	// If none of these are specified, the default will be to autoscale based
	// on cpuUtilization to 0.6 or 60%.
	AutoscalingPolicy *AutoscalerSpecAutoscalingPolicy `json:"autoscalingPolicy" tf:"autoscaling_policy"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. The name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// URL of the managed instance group that this autoscaler will scale.
	Target *string `json:"target" tf:"target"`
	// URL of the zone where the instance group resides.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*AutoscalerSpecResource) DeepCopy

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

func (*AutoscalerSpecResource) DeepCopyInto

func (in *AutoscalerSpecResource) DeepCopyInto(out *AutoscalerSpecResource)

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

type AutoscalerStatus

type AutoscalerStatus 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 (*AutoscalerStatus) DeepCopy

func (in *AutoscalerStatus) DeepCopy() *AutoscalerStatus

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

func (*AutoscalerStatus) DeepCopyInto

func (in *AutoscalerStatus) DeepCopyInto(out *AutoscalerStatus)

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

type BackendBucket

type BackendBucket struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              BackendBucketSpec   `json:"spec,omitempty"`
	Status            BackendBucketStatus `json:"status,omitempty"`
}

func (*BackendBucket) DeepCopy

func (in *BackendBucket) DeepCopy() *BackendBucket

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

func (*BackendBucket) DeepCopyInto

func (in *BackendBucket) DeepCopyInto(out *BackendBucket)

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

func (*BackendBucket) DeepCopyObject

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

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

func (*BackendBucket) SetupWebhookWithManager

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

func (*BackendBucket) ValidateCreate

func (r *BackendBucket) ValidateCreate() error

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

func (*BackendBucket) ValidateDelete

func (r *BackendBucket) ValidateDelete() error

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

func (*BackendBucket) ValidateUpdate

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

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

type BackendBucketList

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

BackendBucketList is a list of BackendBuckets

func (*BackendBucketList) DeepCopy

func (in *BackendBucketList) DeepCopy() *BackendBucketList

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

func (*BackendBucketList) DeepCopyInto

func (in *BackendBucketList) DeepCopyInto(out *BackendBucketList)

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

func (*BackendBucketList) DeepCopyObject

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

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

type BackendBucketSignedURLKey

type BackendBucketSignedURLKey struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              BackendBucketSignedURLKeySpec   `json:"spec,omitempty"`
	Status            BackendBucketSignedURLKeyStatus `json:"status,omitempty"`
}

func (*BackendBucketSignedURLKey) DeepCopy

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

func (*BackendBucketSignedURLKey) DeepCopyInto

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

func (*BackendBucketSignedURLKey) DeepCopyObject

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

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

func (*BackendBucketSignedURLKey) SetupWebhookWithManager

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

func (*BackendBucketSignedURLKey) ValidateCreate

func (r *BackendBucketSignedURLKey) ValidateCreate() error

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

func (*BackendBucketSignedURLKey) ValidateDelete

func (r *BackendBucketSignedURLKey) ValidateDelete() error

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

func (*BackendBucketSignedURLKey) ValidateUpdate

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

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

type BackendBucketSignedURLKeyList

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

BackendBucketSignedURLKeyList is a list of BackendBucketSignedURLKeys

func (*BackendBucketSignedURLKeyList) DeepCopy

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

func (*BackendBucketSignedURLKeyList) DeepCopyInto

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

func (*BackendBucketSignedURLKeyList) DeepCopyObject

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

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

type BackendBucketSignedURLKeySpec

type BackendBucketSignedURLKeySpec struct {
	State *BackendBucketSignedURLKeySpecResource `json:"state,omitempty" tf:"-"`

	Resource BackendBucketSignedURLKeySpecResource `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 (*BackendBucketSignedURLKeySpec) DeepCopy

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

func (*BackendBucketSignedURLKeySpec) DeepCopyInto

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

type BackendBucketSignedURLKeySpecResource

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

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

	// The backend bucket this signed URL key belongs.
	BackendBucket *string `json:"backendBucket" tf:"backend_bucket"`
	// 128-bit key value used for signing the URL. The key value must be a
	// valid RFC 4648 Section 5 base64url encoded string.
	KeyValue *string `json:"-" sensitive:"true" tf:"key_value"`
	// Name of the signed URL key.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
}

func (*BackendBucketSignedURLKeySpecResource) DeepCopy

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

func (*BackendBucketSignedURLKeySpecResource) DeepCopyInto

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

type BackendBucketSignedURLKeyStatus

type BackendBucketSignedURLKeyStatus 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 (*BackendBucketSignedURLKeyStatus) DeepCopy

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

func (*BackendBucketSignedURLKeyStatus) DeepCopyInto

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

type BackendBucketSpec

type BackendBucketSpec struct {
	State *BackendBucketSpecResource `json:"state,omitempty" tf:"-"`

	Resource BackendBucketSpecResource `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 (*BackendBucketSpec) DeepCopy

func (in *BackendBucketSpec) DeepCopy() *BackendBucketSpec

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

func (*BackendBucketSpec) DeepCopyInto

func (in *BackendBucketSpec) DeepCopyInto(out *BackendBucketSpec)

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

type BackendBucketSpecCdnPolicy

type BackendBucketSpecCdnPolicy struct {
	// Specifies the cache setting for all responses from this backend.
	// The possible values are: USE_ORIGIN_HEADERS, FORCE_CACHE_ALL and CACHE_ALL_STATIC Possible values: ["USE_ORIGIN_HEADERS", "FORCE_CACHE_ALL", "CACHE_ALL_STATIC"]
	// +optional
	CacheMode *string `json:"cacheMode,omitempty" tf:"cache_mode"`
	// Specifies the maximum allowed TTL for cached content served by this origin.
	// +optional
	ClientTtl *int64 `json:"clientTtl,omitempty" tf:"client_ttl"`
	// Specifies the default TTL for cached content served by this origin for responses
	// that do not have an existing valid TTL (max-age or s-max-age).
	// +optional
	DefaultTtl *int64 `json:"defaultTtl,omitempty" tf:"default_ttl"`
	// Specifies the maximum allowed TTL for cached content served by this origin.
	// +optional
	MaxTtl *int64 `json:"maxTtl,omitempty" tf:"max_ttl"`
	// Negative caching allows per-status code TTLs to be set, in order to apply fine-grained caching for common errors or redirects.
	// +optional
	NegativeCaching *bool `json:"negativeCaching,omitempty" tf:"negative_caching"`
	// Sets a cache TTL for the specified HTTP status code. negativeCaching must be enabled to configure negativeCachingPolicy.
	// Omitting the policy and leaving negativeCaching enabled will use Cloud CDN's default cache TTLs.
	// +optional
	NegativeCachingPolicy []BackendBucketSpecCdnPolicyNegativeCachingPolicy `json:"negativeCachingPolicy,omitempty" tf:"negative_caching_policy"`
	// Serve existing content from the cache (if available) when revalidating content with the origin, or when an error is encountered when refreshing the cache.
	// +optional
	ServeWhileStale *int64 `json:"serveWhileStale,omitempty" tf:"serve_while_stale"`
	// Maximum number of seconds the response to a signed URL request will
	// be considered fresh. After this time period,
	// the response will be revalidated before being served.
	// When serving responses to signed URL requests,
	// Cloud CDN will internally behave as though
	// all responses from this backend had a "Cache-Control: public,
	// max-age=[TTL]" header, regardless of any existing Cache-Control
	// header. The actual headers served in responses will not be altered.
	// +optional
	SignedURLCacheMaxAgeSec *int64 `json:"signedURLCacheMaxAgeSec,omitempty" tf:"signed_url_cache_max_age_sec"`
}

func (*BackendBucketSpecCdnPolicy) DeepCopy

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

func (*BackendBucketSpecCdnPolicy) DeepCopyInto

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

type BackendBucketSpecCdnPolicyCodec

type BackendBucketSpecCdnPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendBucketSpecCdnPolicyCodec) Decode

func (BackendBucketSpecCdnPolicyCodec) Encode

func (BackendBucketSpecCdnPolicyCodec) IsEmpty

type BackendBucketSpecCdnPolicyNegativeCachingPolicy

type BackendBucketSpecCdnPolicyNegativeCachingPolicy struct {
	// The HTTP status code to define a TTL against. Only HTTP status codes 300, 301, 308, 404, 405, 410, 421, 451 and 501
	// can be specified as values, and you cannot specify a status code more than once.
	// +optional
	Code *int64 `json:"code,omitempty" tf:"code"`
	// The TTL (in seconds) for which to cache responses with the corresponding status code. The maximum allowed value is 1800s
	// (30 minutes), noting that infrequently accessed objects may be evicted from the cache before the defined TTL.
	// +optional
	Ttl *int64 `json:"ttl,omitempty" tf:"ttl"`
}

func (*BackendBucketSpecCdnPolicyNegativeCachingPolicy) DeepCopy

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

func (*BackendBucketSpecCdnPolicyNegativeCachingPolicy) DeepCopyInto

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

type BackendBucketSpecResource

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

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

	// Cloud Storage bucket name.
	BucketName *string `json:"bucketName" tf:"bucket_name"`
	// Cloud CDN configuration for this Backend Bucket.
	// +optional
	CdnPolicy *BackendBucketSpecCdnPolicy `json:"cdnPolicy,omitempty" tf:"cdn_policy"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// Headers that the HTTP/S load balancer should add to proxied responses.
	// +optional
	CustomResponseHeaders []string `json:"customResponseHeaders,omitempty" tf:"custom_response_headers"`
	// An optional textual description of the resource; provided by the
	// client when the resource is created.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// If true, enable Cloud CDN for this BackendBucket.
	// +optional
	EnableCdn *bool `json:"enableCdn,omitempty" tf:"enable_cdn"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the
	// last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*BackendBucketSpecResource) DeepCopy

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

func (*BackendBucketSpecResource) DeepCopyInto

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

type BackendBucketStatus

type BackendBucketStatus 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 (*BackendBucketStatus) DeepCopy

func (in *BackendBucketStatus) DeepCopy() *BackendBucketStatus

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

func (*BackendBucketStatus) DeepCopyInto

func (in *BackendBucketStatus) DeepCopyInto(out *BackendBucketStatus)

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

type BackendService

type BackendService struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              BackendServiceSpec   `json:"spec,omitempty"`
	Status            BackendServiceStatus `json:"status,omitempty"`
}

func (*BackendService) DeepCopy

func (in *BackendService) DeepCopy() *BackendService

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

func (*BackendService) DeepCopyInto

func (in *BackendService) DeepCopyInto(out *BackendService)

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

func (*BackendService) DeepCopyObject

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

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

func (*BackendService) SetupWebhookWithManager

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

func (*BackendService) ValidateCreate

func (r *BackendService) ValidateCreate() error

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

func (*BackendService) ValidateDelete

func (r *BackendService) ValidateDelete() error

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

func (*BackendService) ValidateUpdate

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

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

type BackendServiceList

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

BackendServiceList is a list of BackendServices

func (*BackendServiceList) DeepCopy

func (in *BackendServiceList) DeepCopy() *BackendServiceList

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

func (*BackendServiceList) DeepCopyInto

func (in *BackendServiceList) DeepCopyInto(out *BackendServiceList)

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

func (*BackendServiceList) DeepCopyObject

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

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

type BackendServiceSignedURLKey

type BackendServiceSignedURLKey struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              BackendServiceSignedURLKeySpec   `json:"spec,omitempty"`
	Status            BackendServiceSignedURLKeyStatus `json:"status,omitempty"`
}

func (*BackendServiceSignedURLKey) DeepCopy

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

func (*BackendServiceSignedURLKey) DeepCopyInto

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

func (*BackendServiceSignedURLKey) DeepCopyObject

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

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

func (*BackendServiceSignedURLKey) SetupWebhookWithManager

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

func (*BackendServiceSignedURLKey) ValidateCreate

func (r *BackendServiceSignedURLKey) ValidateCreate() error

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

func (*BackendServiceSignedURLKey) ValidateDelete

func (r *BackendServiceSignedURLKey) ValidateDelete() error

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

func (*BackendServiceSignedURLKey) ValidateUpdate

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

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

type BackendServiceSignedURLKeyList

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

BackendServiceSignedURLKeyList is a list of BackendServiceSignedURLKeys

func (*BackendServiceSignedURLKeyList) DeepCopy

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

func (*BackendServiceSignedURLKeyList) DeepCopyInto

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

func (*BackendServiceSignedURLKeyList) DeepCopyObject

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

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

type BackendServiceSignedURLKeySpec

type BackendServiceSignedURLKeySpec struct {
	State *BackendServiceSignedURLKeySpecResource `json:"state,omitempty" tf:"-"`

	Resource BackendServiceSignedURLKeySpecResource `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 (*BackendServiceSignedURLKeySpec) DeepCopy

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

func (*BackendServiceSignedURLKeySpec) DeepCopyInto

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

type BackendServiceSignedURLKeySpecResource

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

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

	// The backend service this signed URL key belongs.
	BackendService *string `json:"backendService" tf:"backend_service"`
	// 128-bit key value used for signing the URL. The key value must be a
	// valid RFC 4648 Section 5 base64url encoded string.
	KeyValue *string `json:"-" sensitive:"true" tf:"key_value"`
	// Name of the signed URL key.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
}

func (*BackendServiceSignedURLKeySpecResource) DeepCopy

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

func (*BackendServiceSignedURLKeySpecResource) DeepCopyInto

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

type BackendServiceSignedURLKeyStatus

type BackendServiceSignedURLKeyStatus 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 (*BackendServiceSignedURLKeyStatus) DeepCopy

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

func (*BackendServiceSignedURLKeyStatus) DeepCopyInto

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

type BackendServiceSpec

type BackendServiceSpec struct {
	State *BackendServiceSpecResource `json:"state,omitempty" tf:"-"`

	Resource BackendServiceSpecResource `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 (*BackendServiceSpec) DeepCopy

func (in *BackendServiceSpec) DeepCopy() *BackendServiceSpec

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

func (*BackendServiceSpec) DeepCopyInto

func (in *BackendServiceSpec) DeepCopyInto(out *BackendServiceSpec)

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

type BackendServiceSpecBackend

type BackendServiceSpecBackend struct {
	// Specifies the balancing mode for this backend.
	//
	// For global HTTP(S) or TCP/SSL load balancing, the default is
	// UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S))
	// and CONNECTION (for TCP/SSL). Default value: "UTILIZATION" Possible values: ["UTILIZATION", "RATE", "CONNECTION"]
	// +optional
	BalancingMode *string `json:"balancingMode,omitempty" tf:"balancing_mode"`
	// A multiplier applied to the group's maximum servicing capacity
	// (based on UTILIZATION, RATE or CONNECTION).
	//
	// Default value is 1, which means the group will serve up to 100%
	// of its configured capacity (depending on balancingMode). A
	// setting of 0 means the group is completely drained, offering
	// 0% of its available Capacity. Valid range is [0.0,1.0].
	// +optional
	CapacityScaler *float64 `json:"capacityScaler,omitempty" tf:"capacity_scaler"`
	// An optional description of this resource.
	// Provide this property when you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The fully-qualified URL of an Instance Group or Network Endpoint
	// Group resource. In case of instance group this defines the list
	// of instances that serve traffic. Member virtual machine
	// instances from each instance group must live in the same zone as
	// the instance group itself. No two backends in a backend service
	// are allowed to use same Instance Group resource.
	//
	// For Network Endpoint Groups this defines list of endpoints. All
	// endpoints of Network Endpoint Group must be hosted on instances
	// located in the same zone as the Network Endpoint Group.
	//
	// Backend services cannot mix Instance Group and
	// Network Endpoint Group backends.
	//
	// Note that you must specify an Instance Group or Network Endpoint
	// Group resource using the fully-qualified URL, rather than a
	// partial URL.
	Group *string `json:"group" tf:"group"`
	// The max number of simultaneous connections for the group. Can
	// be used with either CONNECTION or UTILIZATION balancing modes.
	//
	// For CONNECTION mode, either maxConnections or one
	// of maxConnectionsPerInstance or maxConnectionsPerEndpoint,
	// as appropriate for group type, must be set.
	// +optional
	MaxConnections *int64 `json:"maxConnections,omitempty" tf:"max_connections"`
	// The max number of simultaneous connections that a single backend
	// network endpoint can handle. This is used to calculate the
	// capacity of the group. Can be used in either CONNECTION or
	// UTILIZATION balancing modes.
	//
	// For CONNECTION mode, either
	// maxConnections or maxConnectionsPerEndpoint must be set.
	// +optional
	MaxConnectionsPerEndpoint *int64 `json:"maxConnectionsPerEndpoint,omitempty" tf:"max_connections_per_endpoint"`
	// The max number of simultaneous connections that a single
	// backend instance can handle. This is used to calculate the
	// capacity of the group. Can be used in either CONNECTION or
	// UTILIZATION balancing modes.
	//
	// For CONNECTION mode, either maxConnections or
	// maxConnectionsPerInstance must be set.
	// +optional
	MaxConnectionsPerInstance *int64 `json:"maxConnectionsPerInstance,omitempty" tf:"max_connections_per_instance"`
	// The max requests per second (RPS) of the group.
	//
	// Can be used with either RATE or UTILIZATION balancing modes,
	// but required if RATE mode. For RATE mode, either maxRate or one
	// of maxRatePerInstance or maxRatePerEndpoint, as appropriate for
	// group type, must be set.
	// +optional
	MaxRate *int64 `json:"maxRate,omitempty" tf:"max_rate"`
	// The max requests per second (RPS) that a single backend network
	// endpoint can handle. This is used to calculate the capacity of
	// the group. Can be used in either balancing mode. For RATE mode,
	// either maxRate or maxRatePerEndpoint must be set.
	// +optional
	MaxRatePerEndpoint *float64 `json:"maxRatePerEndpoint,omitempty" tf:"max_rate_per_endpoint"`
	// The max requests per second (RPS) that a single backend
	// instance can handle. This is used to calculate the capacity of
	// the group. Can be used in either balancing mode. For RATE mode,
	// either maxRate or maxRatePerInstance must be set.
	// +optional
	MaxRatePerInstance *float64 `json:"maxRatePerInstance,omitempty" tf:"max_rate_per_instance"`
	// Used when balancingMode is UTILIZATION. This ratio defines the
	// CPU utilization target for the group. Valid range is [0.0, 1.0].
	// +optional
	MaxUtilization *float64 `json:"maxUtilization,omitempty" tf:"max_utilization"`
}

func (*BackendServiceSpecBackend) DeepCopy

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

func (*BackendServiceSpecBackend) DeepCopyInto

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

type BackendServiceSpecCdnPolicy

type BackendServiceSpecCdnPolicy struct {
	// The CacheKeyPolicy for this CdnPolicy.
	// +optional
	CacheKeyPolicy *BackendServiceSpecCdnPolicyCacheKeyPolicy `json:"cacheKeyPolicy,omitempty" tf:"cache_key_policy"`
	// Specifies the cache setting for all responses from this backend.
	// The possible values are: USE_ORIGIN_HEADERS, FORCE_CACHE_ALL and CACHE_ALL_STATIC Possible values: ["USE_ORIGIN_HEADERS", "FORCE_CACHE_ALL", "CACHE_ALL_STATIC"]
	// +optional
	CacheMode *string `json:"cacheMode,omitempty" tf:"cache_mode"`
	// Specifies the maximum allowed TTL for cached content served by this origin.
	// +optional
	ClientTtl *int64 `json:"clientTtl,omitempty" tf:"client_ttl"`
	// Specifies the default TTL for cached content served by this origin for responses
	// that do not have an existing valid TTL (max-age or s-max-age).
	// +optional
	DefaultTtl *int64 `json:"defaultTtl,omitempty" tf:"default_ttl"`
	// Specifies the maximum allowed TTL for cached content served by this origin.
	// +optional
	MaxTtl *int64 `json:"maxTtl,omitempty" tf:"max_ttl"`
	// Negative caching allows per-status code TTLs to be set, in order to apply fine-grained caching for common errors or redirects.
	// +optional
	NegativeCaching *bool `json:"negativeCaching,omitempty" tf:"negative_caching"`
	// Sets a cache TTL for the specified HTTP status code. negativeCaching must be enabled to configure negativeCachingPolicy.
	// Omitting the policy and leaving negativeCaching enabled will use Cloud CDN's default cache TTLs.
	// +optional
	NegativeCachingPolicy []BackendServiceSpecCdnPolicyNegativeCachingPolicy `json:"negativeCachingPolicy,omitempty" tf:"negative_caching_policy"`
	// Serve existing content from the cache (if available) when revalidating content with the origin, or when an error is encountered when refreshing the cache.
	// +optional
	ServeWhileStale *int64 `json:"serveWhileStale,omitempty" tf:"serve_while_stale"`
	// Maximum number of seconds the response to a signed URL request
	// will be considered fresh, defaults to 1hr (3600s). After this
	// time period, the response will be revalidated before
	// being served.
	//
	// When serving responses to signed URL requests, Cloud CDN will
	// internally behave as though all responses from this backend had a
	// "Cache-Control: public, max-age=[TTL]" header, regardless of any
	// existing Cache-Control header. The actual headers served in
	// responses will not be altered.
	// +optional
	SignedURLCacheMaxAgeSec *int64 `json:"signedURLCacheMaxAgeSec,omitempty" tf:"signed_url_cache_max_age_sec"`
}

func (*BackendServiceSpecCdnPolicy) DeepCopy

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

func (*BackendServiceSpecCdnPolicy) DeepCopyInto

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

type BackendServiceSpecCdnPolicyCacheKeyPolicy

type BackendServiceSpecCdnPolicyCacheKeyPolicy struct {
	// If true requests to different hosts will be cached separately.
	// +optional
	IncludeHost *bool `json:"includeHost,omitempty" tf:"include_host"`
	// If true, http and https requests will be cached separately.
	// +optional
	IncludeProtocol *bool `json:"includeProtocol,omitempty" tf:"include_protocol"`
	// If true, include query string parameters in the cache key
	// according to query_string_whitelist and
	// query_string_blacklist. If neither is set, the entire query
	// string will be included.
	//
	// If false, the query string will be excluded from the cache
	// key entirely.
	// +optional
	IncludeQueryString *bool `json:"includeQueryString,omitempty" tf:"include_query_string"`
	// Names of query string parameters to exclude in cache keys.
	//
	// All other parameters will be included. Either specify
	// query_string_whitelist or query_string_blacklist, not both.
	// '&' and '=' will be percent encoded and not treated as
	// delimiters.
	// +optional
	QueryStringBlacklist []string `json:"queryStringBlacklist,omitempty" tf:"query_string_blacklist"`
	// Names of query string parameters to include in cache keys.
	//
	// All other parameters will be excluded. Either specify
	// query_string_whitelist or query_string_blacklist, not both.
	// '&' and '=' will be percent encoded and not treated as
	// delimiters.
	// +optional
	QueryStringWhitelist []string `json:"queryStringWhitelist,omitempty" tf:"query_string_whitelist"`
}

func (*BackendServiceSpecCdnPolicyCacheKeyPolicy) DeepCopy

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

func (*BackendServiceSpecCdnPolicyCacheKeyPolicy) DeepCopyInto

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

type BackendServiceSpecCdnPolicyCacheKeyPolicyCodec

type BackendServiceSpecCdnPolicyCacheKeyPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecCdnPolicyCacheKeyPolicyCodec) Decode

func (BackendServiceSpecCdnPolicyCacheKeyPolicyCodec) Encode

func (BackendServiceSpecCdnPolicyCacheKeyPolicyCodec) IsEmpty

type BackendServiceSpecCdnPolicyCodec

type BackendServiceSpecCdnPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecCdnPolicyCodec) Decode

func (BackendServiceSpecCdnPolicyCodec) Encode

func (BackendServiceSpecCdnPolicyCodec) IsEmpty

type BackendServiceSpecCdnPolicyNegativeCachingPolicy

type BackendServiceSpecCdnPolicyNegativeCachingPolicy struct {
	// The HTTP status code to define a TTL against. Only HTTP status codes 300, 301, 308, 404, 405, 410, 421, 451 and 501
	// can be specified as values, and you cannot specify a status code more than once.
	// +optional
	Code *int64 `json:"code,omitempty" tf:"code"`
	// The TTL (in seconds) for which to cache responses with the corresponding status code. The maximum allowed value is 1800s
	// (30 minutes), noting that infrequently accessed objects may be evicted from the cache before the defined TTL.
	// +optional
	Ttl *int64 `json:"ttl,omitempty" tf:"ttl"`
}

func (*BackendServiceSpecCdnPolicyNegativeCachingPolicy) DeepCopy

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

func (*BackendServiceSpecCdnPolicyNegativeCachingPolicy) DeepCopyInto

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

type BackendServiceSpecCircuitBreakers

type BackendServiceSpecCircuitBreakers struct {
	// The maximum number of connections to the backend cluster.
	// Defaults to 1024.
	// +optional
	MaxConnections *int64 `json:"maxConnections,omitempty" tf:"max_connections"`
	// The maximum number of pending requests to the backend cluster.
	// Defaults to 1024.
	// +optional
	MaxPendingRequests *int64 `json:"maxPendingRequests,omitempty" tf:"max_pending_requests"`
	// The maximum number of parallel requests to the backend cluster.
	// Defaults to 1024.
	// +optional
	MaxRequests *int64 `json:"maxRequests,omitempty" tf:"max_requests"`
	// Maximum requests for a single backend connection. This parameter
	// is respected by both the HTTP/1.1 and HTTP/2 implementations. If
	// not specified, there is no limit. Setting this parameter to 1
	// will effectively disable keep alive.
	// +optional
	MaxRequestsPerConnection *int64 `json:"maxRequestsPerConnection,omitempty" tf:"max_requests_per_connection"`
	// The maximum number of parallel retries to the backend cluster.
	// Defaults to 3.
	// +optional
	MaxRetries *int64 `json:"maxRetries,omitempty" tf:"max_retries"`
}

func (*BackendServiceSpecCircuitBreakers) DeepCopy

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

func (*BackendServiceSpecCircuitBreakers) DeepCopyInto

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

type BackendServiceSpecCircuitBreakersCodec

type BackendServiceSpecCircuitBreakersCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecCircuitBreakersCodec) Decode

func (BackendServiceSpecCircuitBreakersCodec) Encode

func (BackendServiceSpecCircuitBreakersCodec) IsEmpty

type BackendServiceSpecConsistentHash

type BackendServiceSpecConsistentHash struct {
	// Hash is based on HTTP Cookie. This field describes a HTTP cookie
	// that will be used as the hash key for the consistent hash load
	// balancer. If the cookie is not present, it will be generated.
	// This field is applicable if the sessionAffinity is set to HTTP_COOKIE.
	// +optional
	HttpCookie *BackendServiceSpecConsistentHashHttpCookie `json:"httpCookie,omitempty" tf:"http_cookie"`
	// The hash based on the value of the specified header field.
	// This field is applicable if the sessionAffinity is set to HEADER_FIELD.
	// +optional
	HttpHeaderName *string `json:"httpHeaderName,omitempty" tf:"http_header_name"`
	// The minimum number of virtual nodes to use for the hash ring.
	// Larger ring sizes result in more granular load
	// distributions. If the number of hosts in the load balancing pool
	// is larger than the ring size, each host will be assigned a single
	// virtual node.
	// Defaults to 1024.
	// +optional
	MinimumRingSize *int64 `json:"minimumRingSize,omitempty" tf:"minimum_ring_size"`
}

func (*BackendServiceSpecConsistentHash) DeepCopy

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

func (*BackendServiceSpecConsistentHash) DeepCopyInto

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

type BackendServiceSpecConsistentHashCodec

type BackendServiceSpecConsistentHashCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecConsistentHashCodec) Decode

func (BackendServiceSpecConsistentHashCodec) Encode

func (BackendServiceSpecConsistentHashCodec) IsEmpty

type BackendServiceSpecConsistentHashHttpCookie

type BackendServiceSpecConsistentHashHttpCookie struct {
	// Name of the cookie.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// Path to set for the cookie.
	// +optional
	Path *string `json:"path,omitempty" tf:"path"`
	// Lifetime of the cookie.
	// +optional
	Ttl *BackendServiceSpecConsistentHashHttpCookieTtl `json:"ttl,omitempty" tf:"ttl"`
}

func (*BackendServiceSpecConsistentHashHttpCookie) DeepCopy

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

func (*BackendServiceSpecConsistentHashHttpCookie) DeepCopyInto

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

type BackendServiceSpecConsistentHashHttpCookieCodec

type BackendServiceSpecConsistentHashHttpCookieCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecConsistentHashHttpCookieCodec) Decode

func (BackendServiceSpecConsistentHashHttpCookieCodec) Encode

func (BackendServiceSpecConsistentHashHttpCookieCodec) IsEmpty

type BackendServiceSpecConsistentHashHttpCookieTtl

type BackendServiceSpecConsistentHashHttpCookieTtl struct {
	// Span of time that's a fraction of a second at nanosecond
	// resolution. Durations less than one second are represented
	// with a 0 seconds field and a positive nanos field. Must
	// be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second.
	// Must be from 0 to 315,576,000,000 inclusive.
	Seconds *int64 `json:"seconds" tf:"seconds"`
}

func (*BackendServiceSpecConsistentHashHttpCookieTtl) DeepCopy

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

func (*BackendServiceSpecConsistentHashHttpCookieTtl) DeepCopyInto

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

type BackendServiceSpecConsistentHashHttpCookieTtlCodec

type BackendServiceSpecConsistentHashHttpCookieTtlCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecConsistentHashHttpCookieTtlCodec) Decode

func (BackendServiceSpecConsistentHashHttpCookieTtlCodec) Encode

func (BackendServiceSpecConsistentHashHttpCookieTtlCodec) IsEmpty

type BackendServiceSpecIap

type BackendServiceSpecIap struct {
	// OAuth2 Client ID for IAP
	Oauth2ClientID *string `json:"oauth2ClientID" tf:"oauth2_client_id"`
	// OAuth2 Client Secret for IAP
	Oauth2ClientSecret *string `json:"-" sensitive:"true" tf:"oauth2_client_secret"`
	// OAuth2 Client Secret SHA-256 for IAP
	// +optional
	Oauth2ClientSecretSha256 *string `json:"-" sensitive:"true" tf:"oauth2_client_secret_sha256"`
}

func (*BackendServiceSpecIap) DeepCopy

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

func (*BackendServiceSpecIap) DeepCopyInto

func (in *BackendServiceSpecIap) DeepCopyInto(out *BackendServiceSpecIap)

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

type BackendServiceSpecIapCodec

type BackendServiceSpecIapCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecIapCodec) Decode

func (BackendServiceSpecIapCodec) Encode

func (BackendServiceSpecIapCodec) IsEmpty

type BackendServiceSpecLogConfig

type BackendServiceSpecLogConfig struct {
	// Whether to enable logging for the load balancer traffic served by this backend service.
	// +optional
	Enable *bool `json:"enable,omitempty" tf:"enable"`
	// This field can only be specified if logging is enabled for this backend service. The value of
	// the field must be in [0, 1]. This configures the sampling rate of requests to the load balancer
	// where 1.0 means all logged requests are reported and 0.0 means no logged requests are reported.
	// The default value is 1.0.
	// +optional
	SampleRate *float64 `json:"sampleRate,omitempty" tf:"sample_rate"`
}

func (*BackendServiceSpecLogConfig) DeepCopy

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

func (*BackendServiceSpecLogConfig) DeepCopyInto

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

type BackendServiceSpecLogConfigCodec

type BackendServiceSpecLogConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecLogConfigCodec) Decode

func (BackendServiceSpecLogConfigCodec) Encode

func (BackendServiceSpecLogConfigCodec) IsEmpty

type BackendServiceSpecOutlierDetection

type BackendServiceSpecOutlierDetection struct {
	// The base time that a host is ejected for. The real time is equal to the base
	// time multiplied by the number of times the host has been ejected. Defaults to
	// 30000ms or 30s.
	// +optional
	BaseEjectionTime *BackendServiceSpecOutlierDetectionBaseEjectionTime `json:"baseEjectionTime,omitempty" tf:"base_ejection_time"`
	// Number of errors before a host is ejected from the connection pool. When the
	// backend host is accessed over HTTP, a 5xx return code qualifies as an error.
	// Defaults to 5.
	// +optional
	ConsecutiveErrors *int64 `json:"consecutiveErrors,omitempty" tf:"consecutive_errors"`
	// The number of consecutive gateway failures (502, 503, 504 status or connection
	// errors that are mapped to one of those status codes) before a consecutive
	// gateway failure ejection occurs. Defaults to 5.
	// +optional
	ConsecutiveGatewayFailure *int64 `json:"consecutiveGatewayFailure,omitempty" tf:"consecutive_gateway_failure"`
	// The percentage chance that a host will be actually ejected when an outlier
	// status is detected through consecutive 5xx. This setting can be used to disable
	// ejection or to ramp it up slowly. Defaults to 100.
	// +optional
	EnforcingConsecutiveErrors *int64 `json:"enforcingConsecutiveErrors,omitempty" tf:"enforcing_consecutive_errors"`
	// The percentage chance that a host will be actually ejected when an outlier
	// status is detected through consecutive gateway failures. This setting can be
	// used to disable ejection or to ramp it up slowly. Defaults to 0.
	// +optional
	EnforcingConsecutiveGatewayFailure *int64 `json:"enforcingConsecutiveGatewayFailure,omitempty" tf:"enforcing_consecutive_gateway_failure"`
	// The percentage chance that a host will be actually ejected when an outlier
	// status is detected through success rate statistics. This setting can be used to
	// disable ejection or to ramp it up slowly. Defaults to 100.
	// +optional
	EnforcingSuccessRate *int64 `json:"enforcingSuccessRate,omitempty" tf:"enforcing_success_rate"`
	// Time interval between ejection sweep analysis. This can result in both new
	// ejections as well as hosts being returned to service. Defaults to 10 seconds.
	// +optional
	Interval *BackendServiceSpecOutlierDetectionInterval `json:"interval,omitempty" tf:"interval"`
	// Maximum percentage of hosts in the load balancing pool for the backend service
	// that can be ejected. Defaults to 10%.
	// +optional
	MaxEjectionPercent *int64 `json:"maxEjectionPercent,omitempty" tf:"max_ejection_percent"`
	// The number of hosts in a cluster that must have enough request volume to detect
	// success rate outliers. If the number of hosts is less than this setting, outlier
	// detection via success rate statistics is not performed for any host in the
	// cluster. Defaults to 5.
	// +optional
	SuccessRateMinimumHosts *int64 `json:"successRateMinimumHosts,omitempty" tf:"success_rate_minimum_hosts"`
	// The minimum number of total requests that must be collected in one interval (as
	// defined by the interval duration above) to include this host in success rate
	// based outlier detection. If the volume is lower than this setting, outlier
	// detection via success rate statistics is not performed for that host. Defaults
	// to 100.
	// +optional
	SuccessRateRequestVolume *int64 `json:"successRateRequestVolume,omitempty" tf:"success_rate_request_volume"`
	// This factor is used to determine the ejection threshold for success rate outlier
	// ejection. The ejection threshold is the difference between the mean success
	// rate, and the product of this factor and the standard deviation of the mean
	// success rate: mean - (stdev * success_rate_stdev_factor). This factor is divided
	// by a thousand to get a double. That is, if the desired factor is 1.9, the
	// runtime value should be 1900. Defaults to 1900.
	// +optional
	SuccessRateStdevFactor *int64 `json:"successRateStdevFactor,omitempty" tf:"success_rate_stdev_factor"`
}

func (*BackendServiceSpecOutlierDetection) DeepCopy

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

func (*BackendServiceSpecOutlierDetection) DeepCopyInto

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

type BackendServiceSpecOutlierDetectionBaseEjectionTime

type BackendServiceSpecOutlierDetectionBaseEjectionTime struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *int64 `json:"seconds" tf:"seconds"`
}

func (*BackendServiceSpecOutlierDetectionBaseEjectionTime) DeepCopy

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

func (*BackendServiceSpecOutlierDetectionBaseEjectionTime) DeepCopyInto

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

type BackendServiceSpecOutlierDetectionBaseEjectionTimeCodec

type BackendServiceSpecOutlierDetectionBaseEjectionTimeCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecOutlierDetectionBaseEjectionTimeCodec) Decode

func (BackendServiceSpecOutlierDetectionBaseEjectionTimeCodec) Encode

func (BackendServiceSpecOutlierDetectionBaseEjectionTimeCodec) IsEmpty

type BackendServiceSpecOutlierDetectionCodec

type BackendServiceSpecOutlierDetectionCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecOutlierDetectionCodec) Decode

func (BackendServiceSpecOutlierDetectionCodec) Encode

func (BackendServiceSpecOutlierDetectionCodec) IsEmpty

type BackendServiceSpecOutlierDetectionInterval

type BackendServiceSpecOutlierDetectionInterval struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *int64 `json:"seconds" tf:"seconds"`
}

func (*BackendServiceSpecOutlierDetectionInterval) DeepCopy

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

func (*BackendServiceSpecOutlierDetectionInterval) DeepCopyInto

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

type BackendServiceSpecOutlierDetectionIntervalCodec

type BackendServiceSpecOutlierDetectionIntervalCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecOutlierDetectionIntervalCodec) Decode

func (BackendServiceSpecOutlierDetectionIntervalCodec) Encode

func (BackendServiceSpecOutlierDetectionIntervalCodec) IsEmpty

type BackendServiceSpecResource

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

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

	// Lifetime of cookies in seconds if session_affinity is
	// GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts
	// only until the end of the browser session (or equivalent). The
	// maximum allowed value for TTL is one day.
	//
	// When the load balancing scheme is INTERNAL, this field is not used.
	// +optional
	AffinityCookieTtlSec *int64 `json:"affinityCookieTtlSec,omitempty" tf:"affinity_cookie_ttl_sec"`
	// The set of backends that serve this BackendService.
	// +optional
	Backend []BackendServiceSpecBackend `json:"backend,omitempty" tf:"backend"`
	// Cloud CDN configuration for this BackendService.
	// +optional
	CdnPolicy *BackendServiceSpecCdnPolicy `json:"cdnPolicy,omitempty" tf:"cdn_policy"`
	// Settings controlling the volume of connections to a backend service. This field
	// is applicable only when the load_balancing_scheme is set to INTERNAL_SELF_MANAGED.
	// +optional
	CircuitBreakers *BackendServiceSpecCircuitBreakers `json:"circuitBreakers,omitempty" tf:"circuit_breakers"`
	// Time for which instance will be drained (not accept new
	// connections, but still work to finish started).
	// +optional
	ConnectionDrainingTimeoutSec *int64 `json:"connectionDrainingTimeoutSec,omitempty" tf:"connection_draining_timeout_sec"`
	// Consistent Hash-based load balancing can be used to provide soft session
	// affinity based on HTTP headers, cookies or other properties. This load balancing
	// policy is applicable only for HTTP connections. The affinity to a particular
	// destination host will be lost when one or more hosts are added/removed from the
	// destination service. This field specifies parameters that control consistent
	// hashing. This field only applies if the load_balancing_scheme is set to
	// INTERNAL_SELF_MANAGED. This field is only applicable when locality_lb_policy is
	// set to MAGLEV or RING_HASH.
	// +optional
	ConsistentHash *BackendServiceSpecConsistentHash `json:"consistentHash,omitempty" tf:"consistent_hash"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// Headers that the HTTP/S load balancer should add to proxied
	// requests.
	// +optional
	CustomRequestHeaders []string `json:"customRequestHeaders,omitempty" tf:"custom_request_headers"`
	// Headers that the HTTP/S load balancer should add to proxied
	// responses.
	// +optional
	CustomResponseHeaders []string `json:"customResponseHeaders,omitempty" tf:"custom_response_headers"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// If true, enable Cloud CDN for this BackendService.
	// +optional
	EnableCdn *bool `json:"enableCdn,omitempty" tf:"enable_cdn"`
	// Fingerprint of this resource. A hash of the contents stored in this
	// object. This field is used in optimistic locking.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// The set of URLs to the HttpHealthCheck or HttpsHealthCheck resource
	// for health checking this BackendService. Currently at most one health
	// check can be specified.
	//
	// A health check must be specified unless the backend service uses an internet
	// or serverless NEG as a backend.
	//
	// For internal load balancing, a URL to a HealthCheck resource must be specified instead.
	// +optional
	HealthChecks []string `json:"healthChecks,omitempty" tf:"health_checks"`
	// Settings for enabling Cloud Identity Aware Proxy
	// +optional
	Iap *BackendServiceSpecIap `json:"iap,omitempty" tf:"iap"`
	// Indicates whether the backend service will be used with internal or
	// external load balancing. A backend service created for one type of
	// load balancing cannot be used with the other. For more information, refer to
	// [Choosing a load balancer](https://cloud.google.com/load-balancing/docs/backend-service). Default value: "EXTERNAL" Possible values: ["EXTERNAL", "INTERNAL_SELF_MANAGED", "EXTERNAL_MANAGED"]
	// +optional
	LoadBalancingScheme *string `json:"loadBalancingScheme,omitempty" tf:"load_balancing_scheme"`
	// The load balancing algorithm used within the scope of the locality.
	// The possible values are:
	//
	// * 'ROUND_ROBIN': This is a simple policy in which each healthy backend
	//                  is selected in round robin order.
	//
	// * 'LEAST_REQUEST': An O(1) algorithm which selects two random healthy
	//                    hosts and picks the host which has fewer active requests.
	//
	// * 'RING_HASH': The ring/modulo hash load balancer implements consistent
	//                hashing to backends. The algorithm has the property that the
	//                addition/removal of a host from a set of N hosts only affects
	//                1/N of the requests.
	//
	// * 'RANDOM': The load balancer selects a random healthy host.
	//
	// * 'ORIGINAL_DESTINATION': Backend host is selected based on the client
	//                           connection metadata, i.e., connections are opened
	//                           to the same address as the destination address of
	//                           the incoming connection before the connection
	//                           was redirected to the load balancer.
	//
	// * 'MAGLEV': used as a drop in replacement for the ring hash load balancer.
	//             Maglev is not as stable as ring hash but has faster table lookup
	//             build times and host selection times. For more information about
	//             Maglev, refer to https://ai.google/research/pubs/pub44824
	//
	//
	// This field is applicable to either:
	//
	// * A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2,
	//   and loadBalancingScheme set to INTERNAL_MANAGED.
	// * A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED.
	//
	//
	// If session_affinity is not NONE, and this field is not set to MAGLEV or RING_HASH,
	// session affinity settings will not take effect.
	//
	// Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced
	// by a URL map that is bound to target gRPC proxy that has validate_for_proxyless
	// field set to true. Possible values: ["ROUND_ROBIN", "LEAST_REQUEST", "RING_HASH", "RANDOM", "ORIGINAL_DESTINATION", "MAGLEV"]
	// +optional
	LocalityLbPolicy *string `json:"localityLbPolicy,omitempty" tf:"locality_lb_policy"`
	// This field denotes the logging options for the load balancer traffic served by this backend service.
	// If logging is enabled, logs will be exported to Stackdriver.
	// +optional
	LogConfig *BackendServiceSpecLogConfig `json:"logConfig,omitempty" tf:"log_config"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// Settings controlling eviction of unhealthy hosts from the load balancing pool.
	// This field is applicable only when the load_balancing_scheme is set
	// to INTERNAL_SELF_MANAGED.
	// +optional
	OutlierDetection *BackendServiceSpecOutlierDetection `json:"outlierDetection,omitempty" tf:"outlier_detection"`
	// Name of backend port. The same name should appear in the instance
	// groups referenced by this service. Required when the load balancing
	// scheme is EXTERNAL.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The protocol this BackendService uses to communicate with backends.
	// The default is HTTP. **NOTE**: HTTP2 is only valid for beta HTTP/2 load balancer
	// types and may result in errors if used with the GA API. Possible values: ["HTTP", "HTTPS", "HTTP2", "TCP", "SSL", "GRPC"]
	// +optional
	Protocol *string `json:"protocol,omitempty" tf:"protocol"`
	// The security policy associated with this backend service.
	// +optional
	SecurityPolicy *string `json:"securityPolicy,omitempty" tf:"security_policy"`
	// The security settings that apply to this backend service. This field is applicable to either
	// a regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2, and
	// load_balancing_scheme set to INTERNAL_MANAGED; or a global backend service with the
	// load_balancing_scheme set to INTERNAL_SELF_MANAGED.
	// +optional
	SecuritySettings *BackendServiceSpecSecuritySettings `json:"securitySettings,omitempty" tf:"security_settings"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Type of session affinity to use. The default is NONE. Session affinity is
	// not applicable if the protocol is UDP. Possible values: ["NONE", "CLIENT_IP", "CLIENT_IP_PORT_PROTO", "CLIENT_IP_PROTO", "GENERATED_COOKIE", "HEADER_FIELD", "HTTP_COOKIE"]
	// +optional
	SessionAffinity *string `json:"sessionAffinity,omitempty" tf:"session_affinity"`
	// How many seconds to wait for the backend before considering it a
	// failed request. Default is 30 seconds. Valid range is [1, 86400].
	// +optional
	TimeoutSec *int64 `json:"timeoutSec,omitempty" tf:"timeout_sec"`
}

func (*BackendServiceSpecResource) DeepCopy

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

func (*BackendServiceSpecResource) DeepCopyInto

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

type BackendServiceSpecSecuritySettings added in v0.5.0

type BackendServiceSpecSecuritySettings struct {
	// ClientTlsPolicy is a resource that specifies how a client should authenticate
	// connections to backends of a service. This resource itself does not affect
	// configuration unless it is attached to a backend service resource.
	ClientTlsPolicy *string `json:"clientTlsPolicy" tf:"client_tls_policy"`
	// A list of alternate names to verify the subject identity in the certificate.
	// If specified, the client will verify that the server certificate's subject
	// alt name matches one of the specified values.
	SubjectAltNames []string `json:"subjectAltNames" tf:"subject_alt_names"`
}

func (*BackendServiceSpecSecuritySettings) DeepCopy added in v0.5.0

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

func (*BackendServiceSpecSecuritySettings) DeepCopyInto added in v0.5.0

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

type BackendServiceSpecSecuritySettingsCodec added in v0.5.0

type BackendServiceSpecSecuritySettingsCodec struct {
}

+k8s:deepcopy-gen=false

func (BackendServiceSpecSecuritySettingsCodec) Decode added in v0.5.0

func (BackendServiceSpecSecuritySettingsCodec) Encode added in v0.5.0

func (BackendServiceSpecSecuritySettingsCodec) IsEmpty added in v0.5.0

type BackendServiceStatus

type BackendServiceStatus 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 (*BackendServiceStatus) DeepCopy

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

func (*BackendServiceStatus) DeepCopyInto

func (in *BackendServiceStatus) DeepCopyInto(out *BackendServiceStatus)

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

type Disk

type Disk struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              DiskSpec   `json:"spec,omitempty"`
	Status            DiskStatus `json:"status,omitempty"`
}

func (*Disk) DeepCopy

func (in *Disk) DeepCopy() *Disk

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

func (*Disk) DeepCopyInto

func (in *Disk) DeepCopyInto(out *Disk)

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

func (*Disk) DeepCopyObject

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

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

func (*Disk) SetupWebhookWithManager

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

func (*Disk) ValidateCreate

func (r *Disk) ValidateCreate() error

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

func (*Disk) ValidateDelete

func (r *Disk) ValidateDelete() error

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

func (*Disk) ValidateUpdate

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

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

type DiskIamBinding

type DiskIamBinding struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              DiskIamBindingSpec   `json:"spec,omitempty"`
	Status            DiskIamBindingStatus `json:"status,omitempty"`
}

func (*DiskIamBinding) DeepCopy

func (in *DiskIamBinding) DeepCopy() *DiskIamBinding

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

func (*DiskIamBinding) DeepCopyInto

func (in *DiskIamBinding) DeepCopyInto(out *DiskIamBinding)

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

func (*DiskIamBinding) DeepCopyObject

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

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

func (*DiskIamBinding) SetupWebhookWithManager

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

func (*DiskIamBinding) ValidateCreate

func (r *DiskIamBinding) ValidateCreate() error

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

func (*DiskIamBinding) ValidateDelete

func (r *DiskIamBinding) ValidateDelete() error

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

func (*DiskIamBinding) ValidateUpdate

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

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

type DiskIamBindingList

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

DiskIamBindingList is a list of DiskIamBindings

func (*DiskIamBindingList) DeepCopy

func (in *DiskIamBindingList) DeepCopy() *DiskIamBindingList

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

func (*DiskIamBindingList) DeepCopyInto

func (in *DiskIamBindingList) DeepCopyInto(out *DiskIamBindingList)

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

func (*DiskIamBindingList) DeepCopyObject

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

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

type DiskIamBindingSpec

type DiskIamBindingSpec struct {
	State *DiskIamBindingSpecResource `json:"state,omitempty" tf:"-"`

	Resource DiskIamBindingSpecResource `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 (*DiskIamBindingSpec) DeepCopy

func (in *DiskIamBindingSpec) DeepCopy() *DiskIamBindingSpec

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

func (*DiskIamBindingSpec) DeepCopyInto

func (in *DiskIamBindingSpec) DeepCopyInto(out *DiskIamBindingSpec)

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

type DiskIamBindingSpecCondition

type DiskIamBindingSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*DiskIamBindingSpecCondition) DeepCopy

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

func (*DiskIamBindingSpecCondition) DeepCopyInto

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

type DiskIamBindingSpecConditionCodec

type DiskIamBindingSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (DiskIamBindingSpecConditionCodec) Decode

func (DiskIamBindingSpecConditionCodec) Encode

func (DiskIamBindingSpecConditionCodec) IsEmpty

type DiskIamBindingSpecResource

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

	// +optional
	Condition *DiskIamBindingSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag    *string  `json:"etag,omitempty" tf:"etag"`
	Members []string `json:"members" tf:"members"`
	Name    *string  `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	Role    *string `json:"role" tf:"role"`
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*DiskIamBindingSpecResource) DeepCopy

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

func (*DiskIamBindingSpecResource) DeepCopyInto

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

type DiskIamBindingStatus

type DiskIamBindingStatus 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 (*DiskIamBindingStatus) DeepCopy

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

func (*DiskIamBindingStatus) DeepCopyInto

func (in *DiskIamBindingStatus) DeepCopyInto(out *DiskIamBindingStatus)

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

type DiskIamMember

type DiskIamMember struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              DiskIamMemberSpec   `json:"spec,omitempty"`
	Status            DiskIamMemberStatus `json:"status,omitempty"`
}

func (*DiskIamMember) DeepCopy

func (in *DiskIamMember) DeepCopy() *DiskIamMember

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

func (*DiskIamMember) DeepCopyInto

func (in *DiskIamMember) DeepCopyInto(out *DiskIamMember)

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

func (*DiskIamMember) DeepCopyObject

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

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

func (*DiskIamMember) SetupWebhookWithManager

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

func (*DiskIamMember) ValidateCreate

func (r *DiskIamMember) ValidateCreate() error

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

func (*DiskIamMember) ValidateDelete

func (r *DiskIamMember) ValidateDelete() error

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

func (*DiskIamMember) ValidateUpdate

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

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

type DiskIamMemberList

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

DiskIamMemberList is a list of DiskIamMembers

func (*DiskIamMemberList) DeepCopy

func (in *DiskIamMemberList) DeepCopy() *DiskIamMemberList

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

func (*DiskIamMemberList) DeepCopyInto

func (in *DiskIamMemberList) DeepCopyInto(out *DiskIamMemberList)

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

func (*DiskIamMemberList) DeepCopyObject

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

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

type DiskIamMemberSpec

type DiskIamMemberSpec struct {
	State *DiskIamMemberSpecResource `json:"state,omitempty" tf:"-"`

	Resource DiskIamMemberSpecResource `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 (*DiskIamMemberSpec) DeepCopy

func (in *DiskIamMemberSpec) DeepCopy() *DiskIamMemberSpec

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

func (*DiskIamMemberSpec) DeepCopyInto

func (in *DiskIamMemberSpec) DeepCopyInto(out *DiskIamMemberSpec)

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

type DiskIamMemberSpecCondition

type DiskIamMemberSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*DiskIamMemberSpecCondition) DeepCopy

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

func (*DiskIamMemberSpecCondition) DeepCopyInto

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

type DiskIamMemberSpecConditionCodec

type DiskIamMemberSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (DiskIamMemberSpecConditionCodec) Decode

func (DiskIamMemberSpecConditionCodec) Encode

func (DiskIamMemberSpecConditionCodec) IsEmpty

type DiskIamMemberSpecResource

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

	// +optional
	Condition *DiskIamMemberSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag   *string `json:"etag,omitempty" tf:"etag"`
	Member *string `json:"member" tf:"member"`
	Name   *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	Role    *string `json:"role" tf:"role"`
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*DiskIamMemberSpecResource) DeepCopy

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

func (*DiskIamMemberSpecResource) DeepCopyInto

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

type DiskIamMemberStatus

type DiskIamMemberStatus 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 (*DiskIamMemberStatus) DeepCopy

func (in *DiskIamMemberStatus) DeepCopy() *DiskIamMemberStatus

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

func (*DiskIamMemberStatus) DeepCopyInto

func (in *DiskIamMemberStatus) DeepCopyInto(out *DiskIamMemberStatus)

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

type DiskIamPolicy

type DiskIamPolicy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              DiskIamPolicySpec   `json:"spec,omitempty"`
	Status            DiskIamPolicyStatus `json:"status,omitempty"`
}

func (*DiskIamPolicy) DeepCopy

func (in *DiskIamPolicy) DeepCopy() *DiskIamPolicy

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

func (*DiskIamPolicy) DeepCopyInto

func (in *DiskIamPolicy) DeepCopyInto(out *DiskIamPolicy)

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

func (*DiskIamPolicy) DeepCopyObject

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

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

func (*DiskIamPolicy) SetupWebhookWithManager

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

func (*DiskIamPolicy) ValidateCreate

func (r *DiskIamPolicy) ValidateCreate() error

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

func (*DiskIamPolicy) ValidateDelete

func (r *DiskIamPolicy) ValidateDelete() error

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

func (*DiskIamPolicy) ValidateUpdate

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

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

type DiskIamPolicyList

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

DiskIamPolicyList is a list of DiskIamPolicys

func (*DiskIamPolicyList) DeepCopy

func (in *DiskIamPolicyList) DeepCopy() *DiskIamPolicyList

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

func (*DiskIamPolicyList) DeepCopyInto

func (in *DiskIamPolicyList) DeepCopyInto(out *DiskIamPolicyList)

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

func (*DiskIamPolicyList) DeepCopyObject

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

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

type DiskIamPolicySpec

type DiskIamPolicySpec struct {
	State *DiskIamPolicySpecResource `json:"state,omitempty" tf:"-"`

	Resource DiskIamPolicySpecResource `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 (*DiskIamPolicySpec) DeepCopy

func (in *DiskIamPolicySpec) DeepCopy() *DiskIamPolicySpec

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

func (*DiskIamPolicySpec) DeepCopyInto

func (in *DiskIamPolicySpec) DeepCopyInto(out *DiskIamPolicySpec)

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

type DiskIamPolicySpecResource

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

	// +optional
	Etag       *string `json:"etag,omitempty" tf:"etag"`
	Name       *string `json:"name" tf:"name"`
	PolicyData *string `json:"policyData" tf:"policy_data"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*DiskIamPolicySpecResource) DeepCopy

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

func (*DiskIamPolicySpecResource) DeepCopyInto

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

type DiskIamPolicyStatus

type DiskIamPolicyStatus 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 (*DiskIamPolicyStatus) DeepCopy

func (in *DiskIamPolicyStatus) DeepCopy() *DiskIamPolicyStatus

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

func (*DiskIamPolicyStatus) DeepCopyInto

func (in *DiskIamPolicyStatus) DeepCopyInto(out *DiskIamPolicyStatus)

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

type DiskList

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

DiskList is a list of Disks

func (*DiskList) DeepCopy

func (in *DiskList) DeepCopy() *DiskList

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

func (*DiskList) DeepCopyInto

func (in *DiskList) DeepCopyInto(out *DiskList)

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

func (*DiskList) DeepCopyObject

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

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

type DiskResourcePolicyAttachment

type DiskResourcePolicyAttachment struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              DiskResourcePolicyAttachmentSpec   `json:"spec,omitempty"`
	Status            DiskResourcePolicyAttachmentStatus `json:"status,omitempty"`
}

func (*DiskResourcePolicyAttachment) DeepCopy

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

func (*DiskResourcePolicyAttachment) DeepCopyInto

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

func (*DiskResourcePolicyAttachment) DeepCopyObject

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

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

func (*DiskResourcePolicyAttachment) SetupWebhookWithManager

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

func (*DiskResourcePolicyAttachment) ValidateCreate

func (r *DiskResourcePolicyAttachment) ValidateCreate() error

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

func (*DiskResourcePolicyAttachment) ValidateDelete

func (r *DiskResourcePolicyAttachment) ValidateDelete() error

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

func (*DiskResourcePolicyAttachment) ValidateUpdate

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

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

type DiskResourcePolicyAttachmentList

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

DiskResourcePolicyAttachmentList is a list of DiskResourcePolicyAttachments

func (*DiskResourcePolicyAttachmentList) DeepCopy

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

func (*DiskResourcePolicyAttachmentList) DeepCopyInto

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

func (*DiskResourcePolicyAttachmentList) DeepCopyObject

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

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

type DiskResourcePolicyAttachmentSpec

type DiskResourcePolicyAttachmentSpec struct {
	State *DiskResourcePolicyAttachmentSpecResource `json:"state,omitempty" tf:"-"`

	Resource DiskResourcePolicyAttachmentSpecResource `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 (*DiskResourcePolicyAttachmentSpec) DeepCopy

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

func (*DiskResourcePolicyAttachmentSpec) DeepCopyInto

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

type DiskResourcePolicyAttachmentSpecResource

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

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

	// The name of the disk in which the resource policies are attached to.
	Disk *string `json:"disk" tf:"disk"`
	// The resource policy to be attached to the disk for scheduling snapshot
	// creation. Do not specify the self link.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// A reference to the zone where the disk resides.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*DiskResourcePolicyAttachmentSpecResource) DeepCopy

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

func (*DiskResourcePolicyAttachmentSpecResource) DeepCopyInto

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

type DiskResourcePolicyAttachmentStatus

type DiskResourcePolicyAttachmentStatus 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 (*DiskResourcePolicyAttachmentStatus) DeepCopy

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

func (*DiskResourcePolicyAttachmentStatus) DeepCopyInto

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

type DiskSpec

type DiskSpec struct {
	State *DiskSpecResource `json:"state,omitempty" tf:"-"`

	Resource DiskSpecResource `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 (*DiskSpec) DeepCopy

func (in *DiskSpec) DeepCopy() *DiskSpec

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

func (*DiskSpec) DeepCopyInto

func (in *DiskSpec) DeepCopyInto(out *DiskSpec)

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

type DiskSpecDiskEncryptionKey

type DiskSpecDiskEncryptionKey struct {
	// The self link of the encryption key used to encrypt the disk. Also called KmsKeyName
	// in the cloud console. Your project's Compute Engine System service account
	// ('service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com') must have
	// 'roles/cloudkms.cryptoKeyEncrypterDecrypter' to use this feature.
	// See https://cloud.google.com/compute/docs/disks/customer-managed-encryption#encrypt_a_new_persistent_disk_with_your_own_keys
	// +optional
	KmsKeySelfLink *string `json:"kmsKeySelfLink,omitempty" tf:"kms_key_self_link"`
	// The service account used for the encryption request for the given KMS key.
	// If absent, the Compute Engine Service Agent service account is used.
	// +optional
	KmsKeyServiceAccount *string `json:"kmsKeyServiceAccount,omitempty" tf:"kms_key_service_account"`
	// Specifies a 256-bit customer-supplied encryption key, encoded in
	// RFC 4648 base64 to either encrypt or decrypt this resource.
	// +optional
	RawKey *string `json:"-" sensitive:"true" tf:"raw_key"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied
	// encryption key that protects this resource.
	// +optional
	Sha256 *string `json:"sha256,omitempty" tf:"sha256"`
}

func (*DiskSpecDiskEncryptionKey) DeepCopy

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

func (*DiskSpecDiskEncryptionKey) DeepCopyInto

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

type DiskSpecDiskEncryptionKeyCodec

type DiskSpecDiskEncryptionKeyCodec struct {
}

+k8s:deepcopy-gen=false

func (DiskSpecDiskEncryptionKeyCodec) Decode

func (DiskSpecDiskEncryptionKeyCodec) Encode

func (DiskSpecDiskEncryptionKeyCodec) IsEmpty

type DiskSpecResource

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

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

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Encrypts the disk using a customer-supplied encryption key.
	//
	// After you encrypt a disk with a customer-supplied key, you must
	// provide the same key if you use the disk later (e.g. to create a disk
	// snapshot or an image, or to attach the disk to a virtual machine).
	//
	// Customer-supplied encryption keys do not protect access to metadata of
	// the disk.
	//
	// If you do not provide an encryption key when creating the disk, then
	// the disk will be encrypted using an automatically generated key and
	// you do not need to provide a key to use the disk later.
	// +optional
	DiskEncryptionKey *DiskSpecDiskEncryptionKey `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key"`
	// The image from which to initialize this disk. This can be
	// one of: the image's 'self_link', 'projects/{project}/global/images/{image}',
	// 'projects/{project}/global/images/family/{family}', 'global/images/{image}',
	// 'global/images/family/{family}', 'family/{family}', '{project}/{family}',
	// '{project}/{image}', '{family}', or '{image}'. If referred by family, the
	// images names must include the family name. If they don't, use the
	// [google_compute_image data source](/docs/providers/google/d/compute_image.html).
	// For instance, the image 'centos-6-v20180104' includes its family name 'centos-6'.
	// These images can be referred by family name here.
	// +optional
	Image *string `json:"image,omitempty" tf:"image"`
	// The fingerprint used for optimistic locking of this resource.  Used
	// internally during updates.
	// +optional
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint"`
	// Labels to apply to this disk.  A list of key->value pairs.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// Last attach timestamp in RFC3339 text format.
	// +optional
	LastAttachTimestamp *string `json:"lastAttachTimestamp,omitempty" tf:"last_attach_timestamp"`
	// Last detach timestamp in RFC3339 text format.
	// +optional
	LastDetachTimestamp *string `json:"lastDetachTimestamp,omitempty" tf:"last_detach_timestamp"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// Physical block size of the persistent disk, in bytes. If not present
	// in a request, a default value is used. Currently supported sizes
	// are 4096 and 16384, other sizes may be added in the future.
	// If an unsupported value is requested, the error message will list
	// the supported values for the caller's project.
	// +optional
	PhysicalBlockSizeBytes *int64 `json:"physicalBlockSizeBytes,omitempty" tf:"physical_block_size_bytes"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Indicates how many IOPS must be provisioned for the disk.
	// +optional
	ProvisionedIops *int64 `json:"provisionedIops,omitempty" tf:"provisioned_iops"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Size of the persistent disk, specified in GB. You can specify this
	// field when creating a persistent disk using the 'image' or
	// 'snapshot' parameter, or specify it alone to create an empty
	// persistent disk.
	//
	// If you specify this field along with 'image' or 'snapshot',
	// the value must not be less than the size of the image
	// or the size of the snapshot.
	//
	// ~>**NOTE** If you change the size, Terraform updates the disk size
	// if upsizing is detected but recreates the disk if downsizing is requested.
	// You can add 'lifecycle.prevent_destroy' in the config to prevent destroying
	// and recreating.
	// +optional
	Size *int64 `json:"size,omitempty" tf:"size"`
	// The source snapshot used to create this disk. You can provide this as
	// a partial or full URL to the resource. If the snapshot is in another
	// project than this disk, you must supply a full URL. For example, the
	// following are valid values:
	//
	// * 'https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot'
	// * 'projects/project/global/snapshots/snapshot'
	// * 'global/snapshots/snapshot'
	// * 'snapshot'
	// +optional
	Snapshot *string `json:"snapshot,omitempty" tf:"snapshot"`
	// The customer-supplied encryption key of the source image. Required if
	// the source image is protected by a customer-supplied encryption key.
	// +optional
	SourceImageEncryptionKey *DiskSpecSourceImageEncryptionKey `json:"sourceImageEncryptionKey,omitempty" tf:"source_image_encryption_key"`
	// The ID value of the image used to create this disk. This value
	// identifies the exact image that was used to create this persistent
	// disk. For example, if you created the persistent disk from an image
	// that was later deleted and recreated under the same name, the source
	// image ID would identify the exact version of the image that was used.
	// +optional
	SourceImageID *string `json:"sourceImageID,omitempty" tf:"source_image_id"`
	// The customer-supplied encryption key of the source snapshot. Required
	// if the source snapshot is protected by a customer-supplied encryption
	// key.
	// +optional
	SourceSnapshotEncryptionKey *DiskSpecSourceSnapshotEncryptionKey `json:"sourceSnapshotEncryptionKey,omitempty" tf:"source_snapshot_encryption_key"`
	// The unique ID of the snapshot used to create this disk. This value
	// identifies the exact snapshot that was used to create this persistent
	// disk. For example, if you created the persistent disk from a snapshot
	// that was later deleted and recreated under the same name, the source
	// snapshot ID would identify the exact version of the snapshot that was
	// used.
	// +optional
	SourceSnapshotID *string `json:"sourceSnapshotID,omitempty" tf:"source_snapshot_id"`
	// URL of the disk type resource describing which disk type to use to
	// create the disk. Provide this when creating the disk.
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
	// Links to the users of the disk (attached instances) in form:
	// project/zones/zone/instances/instance
	// +optional
	Users []string `json:"users,omitempty" tf:"users"`
	// A reference to the zone where the disk resides.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*DiskSpecResource) DeepCopy

func (in *DiskSpecResource) DeepCopy() *DiskSpecResource

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

func (*DiskSpecResource) DeepCopyInto

func (in *DiskSpecResource) DeepCopyInto(out *DiskSpecResource)

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

type DiskSpecSourceImageEncryptionKey

type DiskSpecSourceImageEncryptionKey struct {
	// The self link of the encryption key used to encrypt the disk. Also called KmsKeyName
	// in the cloud console. Your project's Compute Engine System service account
	// ('service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com') must have
	// 'roles/cloudkms.cryptoKeyEncrypterDecrypter' to use this feature.
	// See https://cloud.google.com/compute/docs/disks/customer-managed-encryption#encrypt_a_new_persistent_disk_with_your_own_keys
	// +optional
	KmsKeySelfLink *string `json:"kmsKeySelfLink,omitempty" tf:"kms_key_self_link"`
	// The service account used for the encryption request for the given KMS key.
	// If absent, the Compute Engine Service Agent service account is used.
	// +optional
	KmsKeyServiceAccount *string `json:"kmsKeyServiceAccount,omitempty" tf:"kms_key_service_account"`
	// Specifies a 256-bit customer-supplied encryption key, encoded in
	// RFC 4648 base64 to either encrypt or decrypt this resource.
	// +optional
	RawKey *string `json:"rawKey,omitempty" tf:"raw_key"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied
	// encryption key that protects this resource.
	// +optional
	Sha256 *string `json:"sha256,omitempty" tf:"sha256"`
}

func (*DiskSpecSourceImageEncryptionKey) DeepCopy

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

func (*DiskSpecSourceImageEncryptionKey) DeepCopyInto

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

type DiskSpecSourceImageEncryptionKeyCodec

type DiskSpecSourceImageEncryptionKeyCodec struct {
}

+k8s:deepcopy-gen=false

func (DiskSpecSourceImageEncryptionKeyCodec) Decode

func (DiskSpecSourceImageEncryptionKeyCodec) Encode

func (DiskSpecSourceImageEncryptionKeyCodec) IsEmpty

type DiskSpecSourceSnapshotEncryptionKey

type DiskSpecSourceSnapshotEncryptionKey struct {
	// The self link of the encryption key used to encrypt the disk. Also called KmsKeyName
	// in the cloud console. Your project's Compute Engine System service account
	// ('service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com') must have
	// 'roles/cloudkms.cryptoKeyEncrypterDecrypter' to use this feature.
	// See https://cloud.google.com/compute/docs/disks/customer-managed-encryption#encrypt_a_new_persistent_disk_with_your_own_keys
	// +optional
	KmsKeySelfLink *string `json:"kmsKeySelfLink,omitempty" tf:"kms_key_self_link"`
	// The service account used for the encryption request for the given KMS key.
	// If absent, the Compute Engine Service Agent service account is used.
	// +optional
	KmsKeyServiceAccount *string `json:"kmsKeyServiceAccount,omitempty" tf:"kms_key_service_account"`
	// Specifies a 256-bit customer-supplied encryption key, encoded in
	// RFC 4648 base64 to either encrypt or decrypt this resource.
	// +optional
	RawKey *string `json:"rawKey,omitempty" tf:"raw_key"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied
	// encryption key that protects this resource.
	// +optional
	Sha256 *string `json:"sha256,omitempty" tf:"sha256"`
}

func (*DiskSpecSourceSnapshotEncryptionKey) DeepCopy

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

func (*DiskSpecSourceSnapshotEncryptionKey) DeepCopyInto

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

type DiskSpecSourceSnapshotEncryptionKeyCodec

type DiskSpecSourceSnapshotEncryptionKeyCodec struct {
}

+k8s:deepcopy-gen=false

func (DiskSpecSourceSnapshotEncryptionKeyCodec) Decode

func (DiskSpecSourceSnapshotEncryptionKeyCodec) Encode

func (DiskSpecSourceSnapshotEncryptionKeyCodec) IsEmpty

type DiskStatus

type DiskStatus 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 (*DiskStatus) DeepCopy

func (in *DiskStatus) DeepCopy() *DiskStatus

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

func (*DiskStatus) DeepCopyInto

func (in *DiskStatus) DeepCopyInto(out *DiskStatus)

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

type ExternalVPNGateway

type ExternalVPNGateway struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ExternalVPNGatewaySpec   `json:"spec,omitempty"`
	Status            ExternalVPNGatewayStatus `json:"status,omitempty"`
}

func (*ExternalVPNGateway) DeepCopy

func (in *ExternalVPNGateway) DeepCopy() *ExternalVPNGateway

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

func (*ExternalVPNGateway) DeepCopyInto

func (in *ExternalVPNGateway) DeepCopyInto(out *ExternalVPNGateway)

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

func (*ExternalVPNGateway) DeepCopyObject

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

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

func (*ExternalVPNGateway) SetupWebhookWithManager

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

func (*ExternalVPNGateway) ValidateCreate

func (r *ExternalVPNGateway) ValidateCreate() error

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

func (*ExternalVPNGateway) ValidateDelete

func (r *ExternalVPNGateway) ValidateDelete() error

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

func (*ExternalVPNGateway) ValidateUpdate

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

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

type ExternalVPNGatewayList

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

ExternalVPNGatewayList is a list of ExternalVPNGateways

func (*ExternalVPNGatewayList) DeepCopy

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

func (*ExternalVPNGatewayList) DeepCopyInto

func (in *ExternalVPNGatewayList) DeepCopyInto(out *ExternalVPNGatewayList)

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

func (*ExternalVPNGatewayList) DeepCopyObject

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

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

type ExternalVPNGatewaySpec

type ExternalVPNGatewaySpec struct {
	State *ExternalVPNGatewaySpecResource `json:"state,omitempty" tf:"-"`

	Resource ExternalVPNGatewaySpecResource `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 (*ExternalVPNGatewaySpec) DeepCopy

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

func (*ExternalVPNGatewaySpec) DeepCopyInto

func (in *ExternalVPNGatewaySpec) DeepCopyInto(out *ExternalVPNGatewaySpec)

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

type ExternalVPNGatewaySpecInterface

type ExternalVPNGatewaySpecInterface struct {
	// The numeric ID for this interface. Allowed values are based on the redundancy type
	// of this external VPN gateway
	// * '0 - SINGLE_IP_INTERNALLY_REDUNDANT'
	// * '0, 1 - TWO_IPS_REDUNDANCY'
	// * '0, 1, 2, 3 - FOUR_IPS_REDUNDANCY'
	// +optional
	ID *int64 `json:"ID,omitempty" tf:"id"`
	// IP address of the interface in the external VPN gateway.
	// Only IPv4 is supported. This IP address can be either from
	// your on-premise gateway or another Cloud provider's VPN gateway,
	// it cannot be an IP address from Google Compute Engine.
	// +optional
	IpAddress *string `json:"ipAddress,omitempty" tf:"ip_address"`
}

func (*ExternalVPNGatewaySpecInterface) DeepCopy

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

func (*ExternalVPNGatewaySpecInterface) DeepCopyInto

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

type ExternalVPNGatewaySpecResource

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

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

	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// A list of interfaces on this external VPN gateway.
	// +optional
	Interface []ExternalVPNGatewaySpecInterface `json:"interface,omitempty" tf:"interface"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Indicates the redundancy type of this external VPN gateway Possible values: ["FOUR_IPS_REDUNDANCY", "SINGLE_IP_INTERNALLY_REDUNDANT", "TWO_IPS_REDUNDANCY"]
	// +optional
	RedundancyType *string `json:"redundancyType,omitempty" tf:"redundancy_type"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*ExternalVPNGatewaySpecResource) DeepCopy

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

func (*ExternalVPNGatewaySpecResource) DeepCopyInto

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

type ExternalVPNGatewayStatus

type ExternalVPNGatewayStatus 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 (*ExternalVPNGatewayStatus) DeepCopy

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

func (*ExternalVPNGatewayStatus) DeepCopyInto

func (in *ExternalVPNGatewayStatus) DeepCopyInto(out *ExternalVPNGatewayStatus)

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

type Firewall

type Firewall struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              FirewallSpec   `json:"spec,omitempty"`
	Status            FirewallStatus `json:"status,omitempty"`
}

func (*Firewall) DeepCopy

func (in *Firewall) DeepCopy() *Firewall

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

func (*Firewall) DeepCopyInto

func (in *Firewall) DeepCopyInto(out *Firewall)

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

func (*Firewall) DeepCopyObject

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

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

func (*Firewall) SetupWebhookWithManager

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

func (*Firewall) ValidateCreate

func (r *Firewall) ValidateCreate() error

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

func (*Firewall) ValidateDelete

func (r *Firewall) ValidateDelete() error

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

func (*Firewall) ValidateUpdate

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

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

type FirewallList

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

FirewallList is a list of Firewalls

func (*FirewallList) DeepCopy

func (in *FirewallList) DeepCopy() *FirewallList

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

func (*FirewallList) DeepCopyInto

func (in *FirewallList) DeepCopyInto(out *FirewallList)

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

func (*FirewallList) DeepCopyObject

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

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

type FirewallPolicy added in v0.4.0

type FirewallPolicy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              FirewallPolicySpec   `json:"spec,omitempty"`
	Status            FirewallPolicyStatus `json:"status,omitempty"`
}

func (*FirewallPolicy) DeepCopy added in v0.4.0

func (in *FirewallPolicy) DeepCopy() *FirewallPolicy

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

func (*FirewallPolicy) DeepCopyInto added in v0.4.0

func (in *FirewallPolicy) DeepCopyInto(out *FirewallPolicy)

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

func (*FirewallPolicy) DeepCopyObject added in v0.4.0

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

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

func (*FirewallPolicy) SetupWebhookWithManager added in v0.4.0

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

func (*FirewallPolicy) ValidateCreate added in v0.4.0

func (r *FirewallPolicy) ValidateCreate() error

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

func (*FirewallPolicy) ValidateDelete added in v0.4.0

func (r *FirewallPolicy) ValidateDelete() error

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

func (*FirewallPolicy) ValidateUpdate added in v0.4.0

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

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

type FirewallPolicyAssociation added in v0.4.0

type FirewallPolicyAssociation struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              FirewallPolicyAssociationSpec   `json:"spec,omitempty"`
	Status            FirewallPolicyAssociationStatus `json:"status,omitempty"`
}

func (*FirewallPolicyAssociation) DeepCopy added in v0.4.0

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

func (*FirewallPolicyAssociation) DeepCopyInto added in v0.4.0

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

func (*FirewallPolicyAssociation) DeepCopyObject added in v0.4.0

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

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

func (*FirewallPolicyAssociation) SetupWebhookWithManager added in v0.4.0

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

func (*FirewallPolicyAssociation) ValidateCreate added in v0.4.0

func (r *FirewallPolicyAssociation) ValidateCreate() error

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

func (*FirewallPolicyAssociation) ValidateDelete added in v0.4.0

func (r *FirewallPolicyAssociation) ValidateDelete() error

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

func (*FirewallPolicyAssociation) ValidateUpdate added in v0.4.0

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

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

type FirewallPolicyAssociationList added in v0.4.0

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

FirewallPolicyAssociationList is a list of FirewallPolicyAssociations

func (*FirewallPolicyAssociationList) DeepCopy added in v0.4.0

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

func (*FirewallPolicyAssociationList) DeepCopyInto added in v0.4.0

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

func (*FirewallPolicyAssociationList) DeepCopyObject added in v0.4.0

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

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

type FirewallPolicyAssociationSpec added in v0.4.0

type FirewallPolicyAssociationSpec struct {
	State *FirewallPolicyAssociationSpecResource `json:"state,omitempty" tf:"-"`

	Resource FirewallPolicyAssociationSpecResource `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 (*FirewallPolicyAssociationSpec) DeepCopy added in v0.4.0

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

func (*FirewallPolicyAssociationSpec) DeepCopyInto added in v0.4.0

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

type FirewallPolicyAssociationSpecResource added in v0.4.0

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

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

	// The target that the firewall policy is attached to.
	AttachmentTarget *string `json:"attachmentTarget" tf:"attachment_target"`
	// The firewall policy ID of the association.
	FirewallPolicy *string `json:"firewallPolicy" tf:"firewall_policy"`
	// The name for an association.
	Name *string `json:"name" tf:"name"`
	// The short name of the firewall policy of the association.
	// +optional
	ShortName *string `json:"shortName,omitempty" tf:"short_name"`
}

func (*FirewallPolicyAssociationSpecResource) DeepCopy added in v0.4.0

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

func (*FirewallPolicyAssociationSpecResource) DeepCopyInto added in v0.4.0

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

type FirewallPolicyAssociationStatus added in v0.4.0

type FirewallPolicyAssociationStatus 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 (*FirewallPolicyAssociationStatus) DeepCopy added in v0.4.0

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

func (*FirewallPolicyAssociationStatus) DeepCopyInto added in v0.4.0

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

type FirewallPolicyList added in v0.4.0

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

FirewallPolicyList is a list of FirewallPolicys

func (*FirewallPolicyList) DeepCopy added in v0.4.0

func (in *FirewallPolicyList) DeepCopy() *FirewallPolicyList

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

func (*FirewallPolicyList) DeepCopyInto added in v0.4.0

func (in *FirewallPolicyList) DeepCopyInto(out *FirewallPolicyList)

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

func (*FirewallPolicyList) DeepCopyObject added in v0.4.0

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

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

type FirewallPolicyRule added in v0.4.0

type FirewallPolicyRule struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              FirewallPolicyRuleSpec   `json:"spec,omitempty"`
	Status            FirewallPolicyRuleStatus `json:"status,omitempty"`
}

func (*FirewallPolicyRule) DeepCopy added in v0.4.0

func (in *FirewallPolicyRule) DeepCopy() *FirewallPolicyRule

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

func (*FirewallPolicyRule) DeepCopyInto added in v0.4.0

func (in *FirewallPolicyRule) DeepCopyInto(out *FirewallPolicyRule)

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

func (*FirewallPolicyRule) DeepCopyObject added in v0.4.0

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

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

func (*FirewallPolicyRule) SetupWebhookWithManager added in v0.4.0

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

func (*FirewallPolicyRule) ValidateCreate added in v0.4.0

func (r *FirewallPolicyRule) ValidateCreate() error

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

func (*FirewallPolicyRule) ValidateDelete added in v0.4.0

func (r *FirewallPolicyRule) ValidateDelete() error

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

func (*FirewallPolicyRule) ValidateUpdate added in v0.4.0

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

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

type FirewallPolicyRuleList added in v0.4.0

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

FirewallPolicyRuleList is a list of FirewallPolicyRules

func (*FirewallPolicyRuleList) DeepCopy added in v0.4.0

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

func (*FirewallPolicyRuleList) DeepCopyInto added in v0.4.0

func (in *FirewallPolicyRuleList) DeepCopyInto(out *FirewallPolicyRuleList)

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

func (*FirewallPolicyRuleList) DeepCopyObject added in v0.4.0

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

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

type FirewallPolicyRuleSpec added in v0.4.0

type FirewallPolicyRuleSpec struct {
	State *FirewallPolicyRuleSpecResource `json:"state,omitempty" tf:"-"`

	Resource FirewallPolicyRuleSpecResource `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 (*FirewallPolicyRuleSpec) DeepCopy added in v0.4.0

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

func (*FirewallPolicyRuleSpec) DeepCopyInto added in v0.4.0

func (in *FirewallPolicyRuleSpec) DeepCopyInto(out *FirewallPolicyRuleSpec)

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

type FirewallPolicyRuleSpecMatch added in v0.4.0

type FirewallPolicyRuleSpecMatch struct {
	// CIDR IP address range. Maximum number of destination CIDR IP ranges allowed is 256.
	// +optional
	DestIPRanges []string `json:"destIPRanges,omitempty" tf:"dest_ip_ranges"`
	// Pairs of IP protocols and ports that the rule should match.
	Layer4Configs []FirewallPolicyRuleSpecMatchLayer4Configs `json:"layer4Configs" tf:"layer4_configs"`
	// CIDR IP address range. Maximum number of source CIDR IP ranges allowed is 256.
	// +optional
	SrcIPRanges []string `json:"srcIPRanges,omitempty" tf:"src_ip_ranges"`
}

func (*FirewallPolicyRuleSpecMatch) DeepCopy added in v0.4.0

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

func (*FirewallPolicyRuleSpecMatch) DeepCopyInto added in v0.4.0

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

type FirewallPolicyRuleSpecMatchCodec added in v0.4.0

type FirewallPolicyRuleSpecMatchCodec struct {
}

+k8s:deepcopy-gen=false

func (FirewallPolicyRuleSpecMatchCodec) Decode added in v0.4.0

func (FirewallPolicyRuleSpecMatchCodec) Encode added in v0.4.0

func (FirewallPolicyRuleSpecMatchCodec) IsEmpty added in v0.4.0

type FirewallPolicyRuleSpecMatchLayer4Configs added in v0.4.0

type FirewallPolicyRuleSpecMatchLayer4Configs struct {
	// The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (`tcp`, `udp`, `icmp`, `esp`, `ah`, `ipip`, `sctp`), or the IP protocol number.
	IpProtocol *string `json:"ipProtocol" tf:"ip_protocol"`
	// An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: “.
	// +optional
	Ports []string `json:"ports,omitempty" tf:"ports"`
}

func (*FirewallPolicyRuleSpecMatchLayer4Configs) DeepCopy added in v0.4.0

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

func (*FirewallPolicyRuleSpecMatchLayer4Configs) DeepCopyInto added in v0.4.0

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

type FirewallPolicyRuleSpecResource added in v0.4.0

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

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

	// The Action to perform when the client connection triggers the rule. Can currently be either "allow" or "deny()" where valid values for status are 403, 404, and 502.
	Action *string `json:"action" tf:"action"`
	// An optional description for this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The direction in which this rule applies. Possible values: INGRESS, EGRESS
	Direction *string `json:"direction" tf:"direction"`
	// Denotes whether the firewall policy rule is disabled. When set to true, the firewall policy rule is not enforced and traffic behaves as if it did not exist. If this is unspecified, the firewall policy rule will be enabled.
	// +optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled"`
	// Denotes whether to enable logging for a particular rule. If logging is enabled, logs will be exported to the configured export destination in Stackdriver. Logs may be exported to BigQuery or Pub/Sub. Note: you cannot enable logging on "goto_next" rules.
	// +optional
	EnableLogging *bool `json:"enableLogging,omitempty" tf:"enable_logging"`
	// The firewall policy of the resource.
	FirewallPolicy *string `json:"firewallPolicy" tf:"firewall_policy"`
	// Type of the resource. Always `compute#firewallPolicyRule` for firewall policy rules
	// +optional
	Kind *string `json:"kind,omitempty" tf:"kind"`
	// A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding 'action' is enforced.
	Match *FirewallPolicyRuleSpecMatch `json:"match" tf:"match"`
	// An integer indicating the priority of a rule in the list. The priority must be a positive value between 0 and 2147483647. Rules are evaluated from highest to lowest priority where 0 is the highest priority and 2147483647 is the lowest prority.
	Priority *int64 `json:"priority" tf:"priority"`
	// Calculation of the complexity of a single firewall policy rule.
	// +optional
	RuleTupleCount *int64 `json:"ruleTupleCount,omitempty" tf:"rule_tuple_count"`
	// A list of network resource URLs to which this rule applies. This field allows you to control which network's VMs get this rule. If this field is left blank, all VMs within the organization will receive the rule.
	// +optional
	TargetResources []string `json:"targetResources,omitempty" tf:"target_resources"`
	// A list of service accounts indicating the sets of instances that are applied with this rule.
	// +optional
	TargetServiceAccounts []string `json:"targetServiceAccounts,omitempty" tf:"target_service_accounts"`
}

func (*FirewallPolicyRuleSpecResource) DeepCopy added in v0.4.0

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

func (*FirewallPolicyRuleSpecResource) DeepCopyInto added in v0.4.0

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

type FirewallPolicyRuleStatus added in v0.4.0

type FirewallPolicyRuleStatus 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 (*FirewallPolicyRuleStatus) DeepCopy added in v0.4.0

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

func (*FirewallPolicyRuleStatus) DeepCopyInto added in v0.4.0

func (in *FirewallPolicyRuleStatus) DeepCopyInto(out *FirewallPolicyRuleStatus)

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

type FirewallPolicySpec added in v0.4.0

type FirewallPolicySpec struct {
	State *FirewallPolicySpecResource `json:"state,omitempty" tf:"-"`

	Resource FirewallPolicySpecResource `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 (*FirewallPolicySpec) DeepCopy added in v0.4.0

func (in *FirewallPolicySpec) DeepCopy() *FirewallPolicySpec

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

func (*FirewallPolicySpec) DeepCopyInto added in v0.4.0

func (in *FirewallPolicySpec) DeepCopyInto(out *FirewallPolicySpec)

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

type FirewallPolicySpecResource added in v0.4.0

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

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

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Fingerprint of the resource. This field is used internally during updates of this resource.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// The unique identifier for the resource. This identifier is defined by the server.
	// +optional
	FirewallPolicyID *string `json:"firewallPolicyID,omitempty" tf:"firewall_policy_id"`
	// Name of the resource. It is a numeric ID allocated by GCP which uniquely identifies the Firewall Policy.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// The parent of the firewall policy.
	Parent *string `json:"parent" tf:"parent"`
	// Total count of all firewall policy rule tuples. A firewall policy can not exceed a set number of tuples.
	// +optional
	RuleTupleCount *int64 `json:"ruleTupleCount,omitempty" tf:"rule_tuple_count"`
	// Server-defined URL for the resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Server-defined URL for this resource with the resource id.
	// +optional
	SelfLinkWithID *string `json:"selfLinkWithID,omitempty" tf:"self_link_with_id"`
	// User-provided name of the Organization firewall policy. The name should be unique in the organization in which the firewall policy is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
	ShortName *string `json:"shortName" tf:"short_name"`
}

func (*FirewallPolicySpecResource) DeepCopy added in v0.4.0

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

func (*FirewallPolicySpecResource) DeepCopyInto added in v0.4.0

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

type FirewallPolicyStatus added in v0.4.0

type FirewallPolicyStatus 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 (*FirewallPolicyStatus) DeepCopy added in v0.4.0

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

func (*FirewallPolicyStatus) DeepCopyInto added in v0.4.0

func (in *FirewallPolicyStatus) DeepCopyInto(out *FirewallPolicyStatus)

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

type FirewallSpec

type FirewallSpec struct {
	State *FirewallSpecResource `json:"state,omitempty" tf:"-"`

	Resource FirewallSpecResource `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 (*FirewallSpec) DeepCopy

func (in *FirewallSpec) DeepCopy() *FirewallSpec

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

func (*FirewallSpec) DeepCopyInto

func (in *FirewallSpec) DeepCopyInto(out *FirewallSpec)

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

type FirewallSpecAllow

type FirewallSpecAllow struct {
	// An optional list of ports to which this rule applies. This field
	// is only applicable for UDP or TCP protocol. Each entry must be
	// either an integer or a range. If not specified, this rule
	// applies to connections through any port.
	//
	// Example inputs include: ["22"], ["80","443"], and
	// ["12345-12349"].
	// +optional
	Ports []string `json:"ports,omitempty" tf:"ports"`
	// The IP protocol to which this rule applies. The protocol type is
	// required when creating a firewall rule. This value can either be
	// one of the following well known protocol strings (tcp, udp,
	// icmp, esp, ah, sctp, ipip, all), or the IP protocol number.
	Protocol *string `json:"protocol" tf:"protocol"`
}

func (*FirewallSpecAllow) DeepCopy

func (in *FirewallSpecAllow) DeepCopy() *FirewallSpecAllow

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

func (*FirewallSpecAllow) DeepCopyInto

func (in *FirewallSpecAllow) DeepCopyInto(out *FirewallSpecAllow)

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

type FirewallSpecDeny

type FirewallSpecDeny struct {
	// An optional list of ports to which this rule applies. This field
	// is only applicable for UDP or TCP protocol. Each entry must be
	// either an integer or a range. If not specified, this rule
	// applies to connections through any port.
	//
	// Example inputs include: ["22"], ["80","443"], and
	// ["12345-12349"].
	// +optional
	Ports []string `json:"ports,omitempty" tf:"ports"`
	// The IP protocol to which this rule applies. The protocol type is
	// required when creating a firewall rule. This value can either be
	// one of the following well known protocol strings (tcp, udp,
	// icmp, esp, ah, sctp, ipip, all), or the IP protocol number.
	Protocol *string `json:"protocol" tf:"protocol"`
}

func (*FirewallSpecDeny) DeepCopy

func (in *FirewallSpecDeny) DeepCopy() *FirewallSpecDeny

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

func (*FirewallSpecDeny) DeepCopyInto

func (in *FirewallSpecDeny) DeepCopyInto(out *FirewallSpecDeny)

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

type FirewallSpecLogConfig

type FirewallSpecLogConfig struct {
	// This field denotes whether to include or exclude metadata for firewall logs. Possible values: ["EXCLUDE_ALL_METADATA", "INCLUDE_ALL_METADATA"]
	Metadata *string `json:"metadata" tf:"metadata"`
}

func (*FirewallSpecLogConfig) DeepCopy

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

func (*FirewallSpecLogConfig) DeepCopyInto

func (in *FirewallSpecLogConfig) DeepCopyInto(out *FirewallSpecLogConfig)

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

type FirewallSpecLogConfigCodec

type FirewallSpecLogConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (FirewallSpecLogConfigCodec) Decode

func (FirewallSpecLogConfigCodec) Encode

func (FirewallSpecLogConfigCodec) IsEmpty

type FirewallSpecResource

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

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

	// The list of ALLOW rules specified by this firewall. Each rule
	// specifies a protocol and port-range tuple that describes a permitted
	// connection.
	// +optional
	Allow []FirewallSpecAllow `json:"allow,omitempty" tf:"allow"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// The list of DENY rules specified by this firewall. Each rule specifies
	// a protocol and port-range tuple that describes a denied connection.
	// +optional
	Deny []FirewallSpecDeny `json:"deny,omitempty" tf:"deny"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// If destination ranges are specified, the firewall will apply only to
	// traffic that has destination IP address in these ranges. These ranges
	// must be expressed in CIDR format. Only IPv4 is supported.
	// +optional
	DestinationRanges []string `json:"destinationRanges,omitempty" tf:"destination_ranges"`
	// Direction of traffic to which this firewall applies; default is
	// INGRESS. Note: For INGRESS traffic, it is NOT supported to specify
	// destinationRanges; For EGRESS traffic, it is NOT supported to specify
	// 'source_ranges' OR 'source_tags'. For INGRESS traffic, one of 'source_ranges',
	// 'source_tags' or 'source_service_accounts' is required. Possible values: ["INGRESS", "EGRESS"]
	// +optional
	Direction *string `json:"direction,omitempty" tf:"direction"`
	// Denotes whether the firewall rule is disabled, i.e not applied to the
	// network it is associated with. When set to true, the firewall rule is
	// not enforced and the network behaves as if it did not exist. If this
	// is unspecified, the firewall rule will be enabled.
	// +optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled"`
	// This field denotes whether to enable logging for a particular firewall rule. If logging is enabled, logs will be exported to Stackdriver.
	// +optional
	// Deprecated
	EnableLogging *bool `json:"enableLogging,omitempty" tf:"enable_logging"`
	// This field denotes the logging options for a particular firewall rule.
	// If defined, logging is enabled, and logs will be exported to Cloud Logging.
	// +optional
	LogConfig *FirewallSpecLogConfig `json:"logConfig,omitempty" tf:"log_config"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The name or self_link of the network to attach this firewall to.
	Network *string `json:"network" tf:"network"`
	// Priority for this rule. This is an integer between 0 and 65535, both
	// inclusive. When not specified, the value assumed is 1000. Relative
	// priorities determine precedence of conflicting rules. Lower value of
	// priority implies higher precedence (eg, a rule with priority 0 has
	// higher precedence than a rule with priority 1). DENY rules take
	// precedence over ALLOW rules having equal priority.
	// +optional
	Priority *int64 `json:"priority,omitempty" tf:"priority"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// If source ranges are specified, the firewall will apply only to
	// traffic that has source IP address in these ranges. These ranges must
	// be expressed in CIDR format. One or both of sourceRanges and
	// sourceTags may be set. If both properties are set, the firewall will
	// apply to traffic that has source IP address within sourceRanges OR the
	// source IP that belongs to a tag listed in the sourceTags property. The
	// connection does not need to match both properties for the firewall to
	// apply. Only IPv4 is supported. For INGRESS traffic, one of 'source_ranges',
	// 'source_tags' or 'source_service_accounts' is required.
	// +optional
	SourceRanges []string `json:"sourceRanges,omitempty" tf:"source_ranges"`
	// If source service accounts are specified, the firewall will apply only
	// to traffic originating from an instance with a service account in this
	// list. Source service accounts cannot be used to control traffic to an
	// instance's external IP address because service accounts are associated
	// with an instance, not an IP address. sourceRanges can be set at the
	// same time as sourceServiceAccounts. If both are set, the firewall will
	// apply to traffic that has source IP address within sourceRanges OR the
	// source IP belongs to an instance with service account listed in
	// sourceServiceAccount. The connection does not need to match both
	// properties for the firewall to apply. sourceServiceAccounts cannot be
	// used at the same time as sourceTags or targetTags. For INGRESS traffic,
	// one of 'source_ranges', 'source_tags' or 'source_service_accounts' is required.
	// +optional
	// +kubebuilder:validation:MaxItems=10
	SourceServiceAccounts []string `json:"sourceServiceAccounts,omitempty" tf:"source_service_accounts"`
	// If source tags are specified, the firewall will apply only to traffic
	// with source IP that belongs to a tag listed in source tags. Source
	// tags cannot be used to control traffic to an instance's external IP
	// address. Because tags are associated with an instance, not an IP
	// address. One or both of sourceRanges and sourceTags may be set. If
	// both properties are set, the firewall will apply to traffic that has
	// source IP address within sourceRanges OR the source IP that belongs to
	// a tag listed in the sourceTags property. The connection does not need
	// to match both properties for the firewall to apply. For INGRESS traffic,
	// one of 'source_ranges', 'source_tags' or 'source_service_accounts' is required.
	// +optional
	SourceTags []string `json:"sourceTags,omitempty" tf:"source_tags"`
	// A list of service accounts indicating sets of instances located in the
	// network that may make network connections as specified in allowed[].
	// targetServiceAccounts cannot be used at the same time as targetTags or
	// sourceTags. If neither targetServiceAccounts nor targetTags are
	// specified, the firewall rule applies to all instances on the specified
	// network.
	// +optional
	// +kubebuilder:validation:MaxItems=10
	TargetServiceAccounts []string `json:"targetServiceAccounts,omitempty" tf:"target_service_accounts"`
	// A list of instance tags indicating sets of instances located in the
	// network that may make network connections as specified in allowed[].
	// If no targetTags are specified, the firewall rule applies to all
	// instances on the specified network.
	// +optional
	TargetTags []string `json:"targetTags,omitempty" tf:"target_tags"`
}

func (*FirewallSpecResource) DeepCopy

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

func (*FirewallSpecResource) DeepCopyInto

func (in *FirewallSpecResource) DeepCopyInto(out *FirewallSpecResource)

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

type FirewallStatus

type FirewallStatus 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 (*FirewallStatus) DeepCopy

func (in *FirewallStatus) DeepCopy() *FirewallStatus

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

func (*FirewallStatus) DeepCopyInto

func (in *FirewallStatus) DeepCopyInto(out *FirewallStatus)

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

type ForwardingRule

type ForwardingRule struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ForwardingRuleSpec   `json:"spec,omitempty"`
	Status            ForwardingRuleStatus `json:"status,omitempty"`
}

func (*ForwardingRule) DeepCopy

func (in *ForwardingRule) DeepCopy() *ForwardingRule

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

func (*ForwardingRule) DeepCopyInto

func (in *ForwardingRule) DeepCopyInto(out *ForwardingRule)

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

func (*ForwardingRule) DeepCopyObject

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

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

func (*ForwardingRule) SetupWebhookWithManager

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

func (*ForwardingRule) ValidateCreate

func (r *ForwardingRule) ValidateCreate() error

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

func (*ForwardingRule) ValidateDelete

func (r *ForwardingRule) ValidateDelete() error

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

func (*ForwardingRule) ValidateUpdate

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

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

type ForwardingRuleList

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

ForwardingRuleList is a list of ForwardingRules

func (*ForwardingRuleList) DeepCopy

func (in *ForwardingRuleList) DeepCopy() *ForwardingRuleList

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

func (*ForwardingRuleList) DeepCopyInto

func (in *ForwardingRuleList) DeepCopyInto(out *ForwardingRuleList)

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

func (*ForwardingRuleList) DeepCopyObject

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

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

type ForwardingRuleSpec

type ForwardingRuleSpec struct {
	State *ForwardingRuleSpecResource `json:"state,omitempty" tf:"-"`

	Resource ForwardingRuleSpecResource `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 (*ForwardingRuleSpec) DeepCopy

func (in *ForwardingRuleSpec) DeepCopy() *ForwardingRuleSpec

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

func (*ForwardingRuleSpec) DeepCopyInto

func (in *ForwardingRuleSpec) DeepCopyInto(out *ForwardingRuleSpec)

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

type ForwardingRuleSpecResource

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

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

	// This field is used along with the `backend_service` field for internal load balancing or with the `target` field for internal TargetInstance. This field cannot be used with `port` or `portRange` fields. When the load balancing scheme is `INTERNAL` and protocol is TCP/UDP, specify this field to allow packets addressed to any ports will be forwarded to the backends configured with this forwarding rule.
	// +optional
	AllPorts *bool `json:"allPorts,omitempty" tf:"all_ports"`
	// This field is used along with the `backend_service` field for internal load balancing or with the `target` field for internal TargetInstance. If the field is set to `TRUE`, clients can access ILB from all regions. Otherwise only allows access from clients in the same region as the internal load balancer.
	// +optional
	AllowGlobalAccess *bool `json:"allowGlobalAccess,omitempty" tf:"allow_global_access"`
	// This field is only used for `INTERNAL` load balancing. For internal load balancing, this field identifies the BackendService resource to receive the matched traffic.
	// +optional
	BackendService *string `json:"backendService,omitempty" tf:"backend_service"`
	// [Output Only] Creation timestamp in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// IP address that this forwarding rule serves. When a client sends traffic to this IP address, the forwarding rule directs the traffic to the target that you specify in the forwarding rule. If you don't specify a reserved IP address, an ephemeral IP address is assigned. Methods for specifying an IP address: * IPv4 dotted decimal, as in `100.1.2.3` * Full URL, as in `https://www.googleapis.com/compute/v1/projects/project_id/regions/region/addresses/address-name` * Partial URL or by name, as in: * `projects/project_id/regions/region/addresses/address-name` * `regions/region/addresses/address-name` * `global/addresses/address-name` * `address-name` The loadBalancingScheme and the forwarding rule's target determine the type of IP address that you can use. For detailed information, refer to [IP address specifications](/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).
	// +optional
	IpAddress *string `json:"ipAddress,omitempty" tf:"ip_address"`
	// The IP protocol to which this rule applies. For protocol forwarding, valid options are `TCP`, `UDP`, `ESP`, `AH`, `SCTP` or `ICMP`. For Internal TCP/UDP Load Balancing, the load balancing scheme is `INTERNAL`, and one of `TCP` or `UDP` are valid. For Traffic Director, the load balancing scheme is `INTERNAL_SELF_MANAGED`, and only `TCP`is valid. For Internal HTTP(S) Load Balancing, the load balancing scheme is `INTERNAL_MANAGED`, and only `TCP` is valid. For HTTP(S), SSL Proxy, and TCP Proxy Load Balancing, the load balancing scheme is `EXTERNAL` and only `TCP` is valid. For Network TCP/UDP Load Balancing, the load balancing scheme is `EXTERNAL`, and one of `TCP` or `UDP` is valid.
	// +optional
	IpProtocol *string `json:"ipProtocol,omitempty" tf:"ip_protocol"`
	// Indicates whether or not this load balancer can be used as a collector for packet mirroring. To prevent mirroring loops, instances behind this load balancer will not have their traffic mirrored even if a `PacketMirroring` rule applies to them. This can only be set to true for load balancers that have their `loadBalancingScheme` set to `INTERNAL`.
	// +optional
	IsMirroringCollector *bool `json:"isMirroringCollector,omitempty" tf:"is_mirroring_collector"`
	// Used internally during label updates.
	// +optional
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint"`
	// Labels to apply to this rule.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// Specifies the forwarding rule type.
	//
	// *   `EXTERNAL` is used for:
	//     *   Classic Cloud VPN gateways
	//     *   Protocol forwarding to VMs from an external IP address
	//     *   The following load balancers: HTTP(S), SSL Proxy, TCP Proxy, and Network TCP/UDP
	// *   `INTERNAL` is used for:
	//     *   Protocol forwarding to VMs from an internal IP address
	//     *   Internal TCP/UDP load balancers
	// *   `INTERNAL_MANAGED` is used for:
	//     *   Internal HTTP(S) load balancers
	// *   `INTERNAL_SELF_MANAGED` is used for:
	//     *   Traffic Director
	// *   `EXTERNAL_MANAGED` is used for:
	//     *   Global external HTTP(S) load balancers
	//
	// For more information about forwarding rules, refer to [Forwarding rule concepts](/load-balancing/docs/forwarding-rule-concepts). Possible values: INVALID, INTERNAL, INTERNAL_MANAGED, INTERNAL_SELF_MANAGED, EXTERNAL, EXTERNAL_MANAGED
	// +optional
	LoadBalancingScheme *string `json:"loadBalancingScheme,omitempty" tf:"load_balancing_scheme"`
	// Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// This field is not used for external load balancing. For `INTERNAL` and `INTERNAL_SELF_MANAGED` load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used.
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// This signifies the networking tier used for configuring this load balancer and can only take the following values: `PREMIUM`, `STANDARD`. For regional ForwardingRule, the valid values are `PREMIUM` and `STANDARD`. For GlobalForwardingRule, the valid value is `PREMIUM`. If this field is not specified, it is assumed to be `PREMIUM`. If `IPAddress` is specified, this value must be equal to the networkTier of the Address.
	// +optional
	NetworkTier *string `json:"networkTier,omitempty" tf:"network_tier"`
	// When the load balancing scheme is `EXTERNAL`, `INTERNAL_SELF_MANAGED` and `INTERNAL_MANAGED`, you can specify a `port_range`. Use with a forwarding rule that points to a target proxy or a target pool. Do not use with a forwarding rule that points to a backend service. This field is used along with the `target` field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance. Applicable only when `IPProtocol` is `TCP`, `UDP`, or `SCTP`, only packets addressed to ports in the specified range will be forwarded to `target`. Forwarding rules with the same `[IPAddress, IPProtocol]` pair must have disjoint port ranges. Some types of forwarding target have constraints on the acceptable ports:
	//
	// *   TargetHttpProxy: 80, 8080
	// *   TargetHttpsProxy: 443
	// *   TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222
	// *   TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222
	// *   TargetVpnGateway: 500, 4500
	//
	// @pattern: d+(?:-d+)?
	// +optional
	PortRange *string `json:"portRange,omitempty" tf:"port_range"`
	// This field is used along with the `backend_service` field for internal load balancing. When the load balancing scheme is `INTERNAL`, a list of ports can be configured, for example, ['80'], ['8000','9000']. Only packets addressed to these ports are forwarded to the backends configured with the forwarding rule. If the forwarding rule's loadBalancingScheme is INTERNAL, you can specify ports in one of the following ways: * A list of up to five ports, which can be non-contiguous * Keyword `ALL`, which causes the forwarding rule to forward traffic on any port of the forwarding rule's protocol. @pattern: d+(?:-d+)? For more information, refer to [Port specifications](/load-balancing/docs/forwarding-rule-concepts#port_specifications).
	// +optional
	// +kubebuilder:validation:MaxItems=5
	Ports []string `json:"ports,omitempty" tf:"ports"`
	// The project this resource belongs in.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The location of this resource.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// [Output Only] Server-defined URL for the resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// An optional prefix to the service name for this Forwarding Rule. If specified, the prefix is the first label of the fully qualified service name. The label must be 1-63 characters long, and comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Specifically, the label must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. This field is only used for internal load balancing.
	// +optional
	ServiceLabel *string `json:"serviceLabel,omitempty" tf:"service_label"`
	// [Output Only] The internal fully qualified service name for this Forwarding Rule. This field is only used for internal load balancing.
	// +optional
	ServiceName *string `json:"serviceName,omitempty" tf:"service_name"`
	// This field is only used for `INTERNAL` load balancing. For internal load balancing, this field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule. If the network specified is in auto subnet mode, this field is optional. However, if the network is in custom subnet mode, a subnetwork must be specified.
	// +optional
	Subnetwork *string `json:"subnetwork,omitempty" tf:"subnetwork"`
	// The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object. For `INTERNAL_SELF_MANAGED` load balancing, only `targetHttpProxy` is valid, not `targetHttpsProxy`.
	// +optional
	Target *string `json:"target,omitempty" tf:"target"`
}

func (*ForwardingRuleSpecResource) DeepCopy

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

func (*ForwardingRuleSpecResource) DeepCopyInto

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

type ForwardingRuleStatus

type ForwardingRuleStatus 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 (*ForwardingRuleStatus) DeepCopy

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

func (*ForwardingRuleStatus) DeepCopyInto

func (in *ForwardingRuleStatus) DeepCopyInto(out *ForwardingRuleStatus)

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

type GlobalAddress

type GlobalAddress struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              GlobalAddressSpec   `json:"spec,omitempty"`
	Status            GlobalAddressStatus `json:"status,omitempty"`
}

func (*GlobalAddress) DeepCopy

func (in *GlobalAddress) DeepCopy() *GlobalAddress

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

func (*GlobalAddress) DeepCopyInto

func (in *GlobalAddress) DeepCopyInto(out *GlobalAddress)

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

func (*GlobalAddress) DeepCopyObject

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

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

func (*GlobalAddress) SetupWebhookWithManager

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

func (*GlobalAddress) ValidateCreate

func (r *GlobalAddress) ValidateCreate() error

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

func (*GlobalAddress) ValidateDelete

func (r *GlobalAddress) ValidateDelete() error

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

func (*GlobalAddress) ValidateUpdate

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

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

type GlobalAddressList

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

GlobalAddressList is a list of GlobalAddresss

func (*GlobalAddressList) DeepCopy

func (in *GlobalAddressList) DeepCopy() *GlobalAddressList

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

func (*GlobalAddressList) DeepCopyInto

func (in *GlobalAddressList) DeepCopyInto(out *GlobalAddressList)

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

func (*GlobalAddressList) DeepCopyObject

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

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

type GlobalAddressSpec

type GlobalAddressSpec struct {
	State *GlobalAddressSpecResource `json:"state,omitempty" tf:"-"`

	Resource GlobalAddressSpecResource `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 (*GlobalAddressSpec) DeepCopy

func (in *GlobalAddressSpec) DeepCopy() *GlobalAddressSpec

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

func (*GlobalAddressSpec) DeepCopyInto

func (in *GlobalAddressSpec) DeepCopyInto(out *GlobalAddressSpec)

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

type GlobalAddressSpecResource

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

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

	// The IP address or beginning of the address range represented by this
	// resource. This can be supplied as an input to reserve a specific
	// address or omitted to allow GCP to choose a valid one for you.
	// +optional
	Address *string `json:"address,omitempty" tf:"address"`
	// The type of the address to reserve.
	//
	// * EXTERNAL indicates public/external single IP address.
	// * INTERNAL indicates internal IP ranges belonging to some network. Default value: "EXTERNAL" Possible values: ["EXTERNAL", "INTERNAL"]
	// +optional
	AddressType *string `json:"addressType,omitempty" tf:"address_type"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The IP Version that will be used by this address. The default value is 'IPV4'. Possible values: ["IPV4", "IPV6"]
	// +optional
	IpVersion *string `json:"ipVersion,omitempty" tf:"ip_version"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The URL of the network in which to reserve the IP range. The IP range
	// must be in RFC1918 space. The network cannot be deleted if there are
	// any reserved IP ranges referring to it.
	//
	// This should only be set when using an Internal address.
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// The prefix length of the IP range. If not present, it means the
	// address field is a single IP address.
	//
	// This field is not applicable to addresses with addressType=EXTERNAL,
	// or addressType=INTERNAL when purpose=PRIVATE_SERVICE_CONNECT
	// +optional
	PrefixLength *int64 `json:"prefixLength,omitempty" tf:"prefix_length"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The purpose of the resource. Possible values include:
	//
	// * VPC_PEERING - for peer networks
	//
	// * PRIVATE_SERVICE_CONNECT - for ([Beta](https://terraform.io/docs/providers/google/guides/provider_versions.html) only) Private Service Connect networks
	// +optional
	Purpose *string `json:"purpose,omitempty" tf:"purpose"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*GlobalAddressSpecResource) DeepCopy

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

func (*GlobalAddressSpecResource) DeepCopyInto

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

type GlobalAddressStatus

type GlobalAddressStatus 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 (*GlobalAddressStatus) DeepCopy

func (in *GlobalAddressStatus) DeepCopy() *GlobalAddressStatus

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

func (*GlobalAddressStatus) DeepCopyInto

func (in *GlobalAddressStatus) DeepCopyInto(out *GlobalAddressStatus)

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

type GlobalForwardingRule

type GlobalForwardingRule struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              GlobalForwardingRuleSpec   `json:"spec,omitempty"`
	Status            GlobalForwardingRuleStatus `json:"status,omitempty"`
}

func (*GlobalForwardingRule) DeepCopy

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

func (*GlobalForwardingRule) DeepCopyInto

func (in *GlobalForwardingRule) DeepCopyInto(out *GlobalForwardingRule)

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

func (*GlobalForwardingRule) DeepCopyObject

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

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

func (*GlobalForwardingRule) SetupWebhookWithManager

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

func (*GlobalForwardingRule) ValidateCreate

func (r *GlobalForwardingRule) ValidateCreate() error

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

func (*GlobalForwardingRule) ValidateDelete

func (r *GlobalForwardingRule) ValidateDelete() error

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

func (*GlobalForwardingRule) ValidateUpdate

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

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

type GlobalForwardingRuleList

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

GlobalForwardingRuleList is a list of GlobalForwardingRules

func (*GlobalForwardingRuleList) DeepCopy

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

func (*GlobalForwardingRuleList) DeepCopyInto

func (in *GlobalForwardingRuleList) DeepCopyInto(out *GlobalForwardingRuleList)

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

func (*GlobalForwardingRuleList) DeepCopyObject

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

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

type GlobalForwardingRuleSpec

type GlobalForwardingRuleSpec struct {
	State *GlobalForwardingRuleSpecResource `json:"state,omitempty" tf:"-"`

	Resource GlobalForwardingRuleSpecResource `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 (*GlobalForwardingRuleSpec) DeepCopy

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

func (*GlobalForwardingRuleSpec) DeepCopyInto

func (in *GlobalForwardingRuleSpec) DeepCopyInto(out *GlobalForwardingRuleSpec)

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

type GlobalForwardingRuleSpecMetadataFilters

type GlobalForwardingRuleSpecMetadataFilters struct {
	// The list of label value pairs that must match labels in the provided metadata based on `filterMatchCriteria`
	//
	// This list must not be empty and can have at the most 64 entries.
	// +kubebuilder:validation:MaxItems=64
	// +kubebuilder:validation:MinItems=1
	FilterLabels []GlobalForwardingRuleSpecMetadataFiltersFilterLabels `json:"filterLabels" tf:"filter_labels"`
	// Specifies how individual `filterLabel` matches within the list of `filterLabel`s contribute towards the overall `metadataFilter` match.
	//
	// Supported values are:
	//
	// *   MATCH_ANY: At least one of the `filterLabels` must have a matching label in the provided metadata.
	// *   MATCH_ALL: All `filterLabels` must have matching labels in the provided metadata. Possible values: NOT_SET, MATCH_ALL, MATCH_ANY
	FilterMatchCriteria *string `json:"filterMatchCriteria" tf:"filter_match_criteria"`
}

func (*GlobalForwardingRuleSpecMetadataFilters) DeepCopy

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

func (*GlobalForwardingRuleSpecMetadataFilters) DeepCopyInto

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

type GlobalForwardingRuleSpecMetadataFiltersFilterLabels

type GlobalForwardingRuleSpecMetadataFiltersFilterLabels struct {
	// Name of metadata label.
	//
	// The name can have a maximum length of 1024 characters and must be at least 1 character long.
	Name *string `json:"name" tf:"name"`
	// The value of the label must match the specified value.
	//
	// value can have a maximum length of 1024 characters.
	Value *string `json:"value" tf:"value"`
}

func (*GlobalForwardingRuleSpecMetadataFiltersFilterLabels) DeepCopy

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

func (*GlobalForwardingRuleSpecMetadataFiltersFilterLabels) DeepCopyInto

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

type GlobalForwardingRuleSpecResource

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

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

	// An optional description of this resource. Provide this property when you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// IP address that this forwarding rule serves. When a client sends traffic to this IP address, the forwarding rule directs the traffic to the target that you specify in the forwarding rule. If you don't specify a reserved IP address, an ephemeral IP address is assigned. Methods for specifying an IP address: * IPv4 dotted decimal, as in `100.1.2.3` * Full URL, as in `https://www.googleapis.com/compute/v1/projects/project_id/regions/region/addresses/address-name` * Partial URL or by name, as in: * `projects/project_id/regions/region/addresses/address-name` * `regions/region/addresses/address-name` * `global/addresses/address-name` * `address-name` The loadBalancingScheme and the forwarding rule's target determine the type of IP address that you can use. For detailed information, refer to [IP address specifications](/load-balancing/docs/forwarding-rule-concepts#ip_address_specifications).
	// +optional
	IpAddress *string `json:"ipAddress,omitempty" tf:"ip_address"`
	// The IP protocol to which this rule applies. For protocol forwarding, valid options are `TCP`, `UDP`, `ESP`, `AH`, `SCTP` or `ICMP`. For Internal TCP/UDP Load Balancing, the load balancing scheme is `INTERNAL`, and one of `TCP` or `UDP` are valid. For Traffic Director, the load balancing scheme is `INTERNAL_SELF_MANAGED`, and only `TCP`is valid. For Internal HTTP(S) Load Balancing, the load balancing scheme is `INTERNAL_MANAGED`, and only `TCP` is valid. For HTTP(S), SSL Proxy, and TCP Proxy Load Balancing, the load balancing scheme is `EXTERNAL` and only `TCP` is valid. For Network TCP/UDP Load Balancing, the load balancing scheme is `EXTERNAL`, and one of `TCP` or `UDP` is valid.
	// +optional
	IpProtocol *string `json:"ipProtocol,omitempty" tf:"ip_protocol"`
	// The IP Version that will be used by this forwarding rule. Valid options are `IPV4` or `IPV6`. This can only be specified for an external global forwarding rule. Possible values: UNSPECIFIED_VERSION, IPV4, IPV6
	// +optional
	IpVersion *string `json:"ipVersion,omitempty" tf:"ip_version"`
	// Used internally during label updates.
	// +optional
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint"`
	// Labels to apply to this rule.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// Specifies the forwarding rule type.
	//
	// *   `EXTERNAL` is used for:
	//     *   Classic Cloud VPN gateways
	//     *   Protocol forwarding to VMs from an external IP address
	//     *   The following load balancers: HTTP(S), SSL Proxy, TCP Proxy, and Network TCP/UDP
	// *   `INTERNAL` is used for:
	//     *   Protocol forwarding to VMs from an internal IP address
	//     *   Internal TCP/UDP load balancers
	// *   `INTERNAL_MANAGED` is used for:
	//     *   Internal HTTP(S) load balancers
	// *   `INTERNAL_SELF_MANAGED` is used for:
	//     *   Traffic Director
	// *   `EXTERNAL_MANAGED` is used for:
	//     *   Global external HTTP(S) load balancers
	//
	// For more information about forwarding rules, refer to [Forwarding rule concepts](/load-balancing/docs/forwarding-rule-concepts). Possible values: INVALID, INTERNAL, INTERNAL_MANAGED, INTERNAL_SELF_MANAGED, EXTERNAL, EXTERNAL_MANAGED
	// +optional
	LoadBalancingScheme *string `json:"loadBalancingScheme,omitempty" tf:"load_balancing_scheme"`
	// Opaque filter criteria used by Loadbalancer to restrict routing configuration to a limited set of [xDS](https://github.com/envoyproxy/data-plane-api/blob/master/XDS_PROTOCOL.md) compliant clients. In their xDS requests to Loadbalancer, xDS clients present [node metadata](https://github.com/envoyproxy/data-plane-api/search?q=%22message+Node%22+in%3A%2Fenvoy%2Fapi%2Fv2%2Fcore%2Fbase.proto&). If a match takes place, the relevant configuration is made available to those proxies. Otherwise, all the resources (e.g. `TargetHttpProxy`, `UrlMap`) referenced by the `ForwardingRule` will not be visible to those proxies.
	//
	// For each `metadataFilter` in this list, if its `filterMatchCriteria` is set to MATCH_ANY, at least one of the `filterLabel`s must match the corresponding label provided in the metadata. If its `filterMatchCriteria` is set to MATCH_ALL, then all of its `filterLabel`s must match with corresponding labels provided in the metadata.
	//
	// `metadataFilters` specified here will be applifed before those specified in the `UrlMap` that this `ForwardingRule` references.
	//
	// `metadataFilters` only applies to Loadbalancers that have their loadBalancingScheme set to `INTERNAL_SELF_MANAGED`.
	// +optional
	MetadataFilters []GlobalForwardingRuleSpecMetadataFilters `json:"metadataFilters,omitempty" tf:"metadata_filters"`
	// Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// This field is not used for external load balancing. For `INTERNAL` and `INTERNAL_SELF_MANAGED` load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used.
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// When the load balancing scheme is `EXTERNAL`, `INTERNAL_SELF_MANAGED` and `INTERNAL_MANAGED`, you can specify a `port_range`. Use with a forwarding rule that points to a target proxy or a target pool. Do not use with a forwarding rule that points to a backend service. This field is used along with the `target` field for TargetHttpProxy, TargetHttpsProxy, TargetSslProxy, TargetTcpProxy, TargetVpnGateway, TargetPool, TargetInstance. Applicable only when `IPProtocol` is `TCP`, `UDP`, or `SCTP`, only packets addressed to ports in the specified range will be forwarded to `target`. Forwarding rules with the same `[IPAddress, IPProtocol]` pair must have disjoint port ranges. Some types of forwarding target have constraints on the acceptable ports:
	//
	// *   TargetHttpProxy: 80, 8080
	// *   TargetHttpsProxy: 443
	// *   TargetTcpProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222
	// *   TargetSslProxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1688, 1883, 5222
	// *   TargetVpnGateway: 500, 4500
	//
	// @pattern: d+(?:-d+)?
	// +optional
	PortRange *string `json:"portRange,omitempty" tf:"port_range"`
	// The project this resource belongs in.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// [Output Only] Server-defined URL for the resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global load balancing resource. The forwarded traffic must be of a type appropriate to the target object. For `INTERNAL_SELF_MANAGED` load balancing, only `targetHttpProxy` is valid, not `targetHttpsProxy`.
	Target *string `json:"target" tf:"target"`
}

func (*GlobalForwardingRuleSpecResource) DeepCopy

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

func (*GlobalForwardingRuleSpecResource) DeepCopyInto

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

type GlobalForwardingRuleStatus

type GlobalForwardingRuleStatus 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 (*GlobalForwardingRuleStatus) DeepCopy

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

func (*GlobalForwardingRuleStatus) DeepCopyInto

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

type GlobalNetworkEndpoint

type GlobalNetworkEndpoint struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              GlobalNetworkEndpointSpec   `json:"spec,omitempty"`
	Status            GlobalNetworkEndpointStatus `json:"status,omitempty"`
}

func (*GlobalNetworkEndpoint) DeepCopy

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

func (*GlobalNetworkEndpoint) DeepCopyInto

func (in *GlobalNetworkEndpoint) DeepCopyInto(out *GlobalNetworkEndpoint)

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

func (*GlobalNetworkEndpoint) DeepCopyObject

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

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

func (*GlobalNetworkEndpoint) SetupWebhookWithManager

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

func (*GlobalNetworkEndpoint) ValidateCreate

func (r *GlobalNetworkEndpoint) ValidateCreate() error

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

func (*GlobalNetworkEndpoint) ValidateDelete

func (r *GlobalNetworkEndpoint) ValidateDelete() error

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

func (*GlobalNetworkEndpoint) ValidateUpdate

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

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

type GlobalNetworkEndpointGroup

type GlobalNetworkEndpointGroup struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              GlobalNetworkEndpointGroupSpec   `json:"spec,omitempty"`
	Status            GlobalNetworkEndpointGroupStatus `json:"status,omitempty"`
}

func (*GlobalNetworkEndpointGroup) DeepCopy

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

func (*GlobalNetworkEndpointGroup) DeepCopyInto

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

func (*GlobalNetworkEndpointGroup) DeepCopyObject

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

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

func (*GlobalNetworkEndpointGroup) SetupWebhookWithManager

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

func (*GlobalNetworkEndpointGroup) ValidateCreate

func (r *GlobalNetworkEndpointGroup) ValidateCreate() error

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

func (*GlobalNetworkEndpointGroup) ValidateDelete

func (r *GlobalNetworkEndpointGroup) ValidateDelete() error

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

func (*GlobalNetworkEndpointGroup) ValidateUpdate

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

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

type GlobalNetworkEndpointGroupList

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

GlobalNetworkEndpointGroupList is a list of GlobalNetworkEndpointGroups

func (*GlobalNetworkEndpointGroupList) DeepCopy

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

func (*GlobalNetworkEndpointGroupList) DeepCopyInto

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

func (*GlobalNetworkEndpointGroupList) DeepCopyObject

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

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

type GlobalNetworkEndpointGroupSpec

type GlobalNetworkEndpointGroupSpec struct {
	State *GlobalNetworkEndpointGroupSpecResource `json:"state,omitempty" tf:"-"`

	Resource GlobalNetworkEndpointGroupSpecResource `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 (*GlobalNetworkEndpointGroupSpec) DeepCopy

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

func (*GlobalNetworkEndpointGroupSpec) DeepCopyInto

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

type GlobalNetworkEndpointGroupSpecResource

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

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

	// The default port used if the port number is not specified in the
	// network endpoint.
	// +optional
	DefaultPort *int64 `json:"defaultPort,omitempty" tf:"default_port"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource; provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// Type of network endpoints in this network endpoint group. Possible values: ["INTERNET_IP_PORT", "INTERNET_FQDN_PORT"]
	NetworkEndpointType *string `json:"networkEndpointType" tf:"network_endpoint_type"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*GlobalNetworkEndpointGroupSpecResource) DeepCopy

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

func (*GlobalNetworkEndpointGroupSpecResource) DeepCopyInto

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

type GlobalNetworkEndpointGroupStatus

type GlobalNetworkEndpointGroupStatus 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 (*GlobalNetworkEndpointGroupStatus) DeepCopy

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

func (*GlobalNetworkEndpointGroupStatus) DeepCopyInto

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

type GlobalNetworkEndpointList

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

GlobalNetworkEndpointList is a list of GlobalNetworkEndpoints

func (*GlobalNetworkEndpointList) DeepCopy

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

func (*GlobalNetworkEndpointList) DeepCopyInto

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

func (*GlobalNetworkEndpointList) DeepCopyObject

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

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

type GlobalNetworkEndpointSpec

type GlobalNetworkEndpointSpec struct {
	State *GlobalNetworkEndpointSpecResource `json:"state,omitempty" tf:"-"`

	Resource GlobalNetworkEndpointSpecResource `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 (*GlobalNetworkEndpointSpec) DeepCopy

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

func (*GlobalNetworkEndpointSpec) DeepCopyInto

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

type GlobalNetworkEndpointSpecResource

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

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

	// Fully qualified domain name of network endpoint.
	// This can only be specified when network_endpoint_type of the NEG is INTERNET_FQDN_PORT.
	// +optional
	Fqdn *string `json:"fqdn,omitempty" tf:"fqdn"`
	// The global network endpoint group this endpoint is part of.
	GlobalNetworkEndpointGroup *string `json:"globalNetworkEndpointGroup" tf:"global_network_endpoint_group"`
	// IPv4 address external endpoint.
	// +optional
	IpAddress *string `json:"ipAddress,omitempty" tf:"ip_address"`
	// Port number of the external endpoint.
	Port *int64 `json:"port" tf:"port"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
}

func (*GlobalNetworkEndpointSpecResource) DeepCopy

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

func (*GlobalNetworkEndpointSpecResource) DeepCopyInto

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

type GlobalNetworkEndpointStatus

type GlobalNetworkEndpointStatus 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 (*GlobalNetworkEndpointStatus) DeepCopy

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

func (*GlobalNetworkEndpointStatus) DeepCopyInto

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

type HaVPNGateway

type HaVPNGateway struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              HaVPNGatewaySpec   `json:"spec,omitempty"`
	Status            HaVPNGatewayStatus `json:"status,omitempty"`
}

func (*HaVPNGateway) DeepCopy

func (in *HaVPNGateway) DeepCopy() *HaVPNGateway

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

func (*HaVPNGateway) DeepCopyInto

func (in *HaVPNGateway) DeepCopyInto(out *HaVPNGateway)

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

func (*HaVPNGateway) DeepCopyObject

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

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

func (*HaVPNGateway) SetupWebhookWithManager

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

func (*HaVPNGateway) ValidateCreate

func (r *HaVPNGateway) ValidateCreate() error

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

func (*HaVPNGateway) ValidateDelete

func (r *HaVPNGateway) ValidateDelete() error

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

func (*HaVPNGateway) ValidateUpdate

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

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

type HaVPNGatewayList

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

HaVPNGatewayList is a list of HaVPNGateways

func (*HaVPNGatewayList) DeepCopy

func (in *HaVPNGatewayList) DeepCopy() *HaVPNGatewayList

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

func (*HaVPNGatewayList) DeepCopyInto

func (in *HaVPNGatewayList) DeepCopyInto(out *HaVPNGatewayList)

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

func (*HaVPNGatewayList) DeepCopyObject

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

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

type HaVPNGatewaySpec

type HaVPNGatewaySpec struct {
	State *HaVPNGatewaySpecResource `json:"state,omitempty" tf:"-"`

	Resource HaVPNGatewaySpecResource `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 (*HaVPNGatewaySpec) DeepCopy

func (in *HaVPNGatewaySpec) DeepCopy() *HaVPNGatewaySpec

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

func (*HaVPNGatewaySpec) DeepCopyInto

func (in *HaVPNGatewaySpec) DeepCopyInto(out *HaVPNGatewaySpec)

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

type HaVPNGatewaySpecResource

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

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

	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The network this VPN gateway is accepting traffic for.
	Network *string `json:"network" tf:"network"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The region this gateway should sit in.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// A list of interfaces on this VPN gateway.
	// +optional
	VpnInterfaces []HaVPNGatewaySpecVpnInterfaces `json:"vpnInterfaces,omitempty" tf:"vpn_interfaces"`
}

func (*HaVPNGatewaySpecResource) DeepCopy

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

func (*HaVPNGatewaySpecResource) DeepCopyInto

func (in *HaVPNGatewaySpecResource) DeepCopyInto(out *HaVPNGatewaySpecResource)

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

type HaVPNGatewaySpecVpnInterfaces

type HaVPNGatewaySpecVpnInterfaces struct {
	// The numeric ID of this VPN gateway interface.
	// +optional
	ID *int64 `json:"ID,omitempty" tf:"id"`
	// URL of the interconnect attachment resource. When the value
	// of this field is present, the VPN Gateway will be used for
	// IPsec-encrypted Cloud Interconnect; all Egress or Ingress
	// traffic for this VPN Gateway interface will go through the
	// specified interconnect attachment resource.
	//
	// Not currently available publicly.
	// +optional
	InterconnectAttachment *string `json:"interconnectAttachment,omitempty" tf:"interconnect_attachment"`
	// The external IP address for this VPN gateway interface.
	// +optional
	IpAddress *string `json:"ipAddress,omitempty" tf:"ip_address"`
}

func (*HaVPNGatewaySpecVpnInterfaces) DeepCopy

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

func (*HaVPNGatewaySpecVpnInterfaces) DeepCopyInto

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

type HaVPNGatewayStatus

type HaVPNGatewayStatus 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 (*HaVPNGatewayStatus) DeepCopy

func (in *HaVPNGatewayStatus) DeepCopy() *HaVPNGatewayStatus

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

func (*HaVPNGatewayStatus) DeepCopyInto

func (in *HaVPNGatewayStatus) DeepCopyInto(out *HaVPNGatewayStatus)

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

type HealthCheck

type HealthCheck struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              HealthCheckSpec   `json:"spec,omitempty"`
	Status            HealthCheckStatus `json:"status,omitempty"`
}

func (*HealthCheck) DeepCopy

func (in *HealthCheck) DeepCopy() *HealthCheck

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

func (*HealthCheck) DeepCopyInto

func (in *HealthCheck) DeepCopyInto(out *HealthCheck)

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

func (*HealthCheck) DeepCopyObject

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

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

func (*HealthCheck) SetupWebhookWithManager

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

func (*HealthCheck) ValidateCreate

func (r *HealthCheck) ValidateCreate() error

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

func (*HealthCheck) ValidateDelete

func (r *HealthCheck) ValidateDelete() error

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

func (*HealthCheck) ValidateUpdate

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

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

type HealthCheckList

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

HealthCheckList is a list of HealthChecks

func (*HealthCheckList) DeepCopy

func (in *HealthCheckList) DeepCopy() *HealthCheckList

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

func (*HealthCheckList) DeepCopyInto

func (in *HealthCheckList) DeepCopyInto(out *HealthCheckList)

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

func (*HealthCheckList) DeepCopyObject

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

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

type HealthCheckSpec

type HealthCheckSpec struct {
	State *HealthCheckSpecResource `json:"state,omitempty" tf:"-"`

	Resource HealthCheckSpecResource `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 (*HealthCheckSpec) DeepCopy

func (in *HealthCheckSpec) DeepCopy() *HealthCheckSpec

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

func (*HealthCheckSpec) DeepCopyInto

func (in *HealthCheckSpec) DeepCopyInto(out *HealthCheckSpec)

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

type HealthCheckSpecGrpcHealthCheck

type HealthCheckSpecGrpcHealthCheck struct {
	// The gRPC service name for the health check.
	// The value of grpcServiceName has the following meanings by convention:
	//   - Empty serviceName means the overall status of all services at the backend.
	//   - Non-empty serviceName means the health of that gRPC service, as defined by the owner of the service.
	// The grpcServiceName can only be ASCII.
	// +optional
	GrpcServiceName *string `json:"grpcServiceName,omitempty" tf:"grpc_service_name"`
	// The port number for the health check request.
	// Must be specified if portName and portSpecification are not set
	// or if port_specification is USE_FIXED_PORT. Valid values are 1 through 65535.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, gRPC health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
}

func (*HealthCheckSpecGrpcHealthCheck) DeepCopy

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

func (*HealthCheckSpecGrpcHealthCheck) DeepCopyInto

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

type HealthCheckSpecGrpcHealthCheckCodec

type HealthCheckSpecGrpcHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (HealthCheckSpecGrpcHealthCheckCodec) Decode

func (HealthCheckSpecGrpcHealthCheckCodec) Encode

func (HealthCheckSpecGrpcHealthCheckCodec) IsEmpty

type HealthCheckSpecHttp2HealthCheck

type HealthCheckSpecHttp2HealthCheck struct {
	// The value of the host header in the HTTP2 health check request.
	// If left empty (default value), the public IP on behalf of which this health
	// check is performed will be used.
	// +optional
	Host *string `json:"host,omitempty" tf:"host"`
	// The TCP port number for the HTTP2 health check request.
	// The default value is 443.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, HTTP2 health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The request path of the HTTP2 health check request.
	// The default value is /.
	// +optional
	RequestPath *string `json:"requestPath,omitempty" tf:"request_path"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*HealthCheckSpecHttp2HealthCheck) DeepCopy

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

func (*HealthCheckSpecHttp2HealthCheck) DeepCopyInto

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

type HealthCheckSpecHttp2HealthCheckCodec

type HealthCheckSpecHttp2HealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (HealthCheckSpecHttp2HealthCheckCodec) Decode

func (HealthCheckSpecHttp2HealthCheckCodec) Encode

func (HealthCheckSpecHttp2HealthCheckCodec) IsEmpty

type HealthCheckSpecHttpHealthCheck

type HealthCheckSpecHttpHealthCheck struct {
	// The value of the host header in the HTTP health check request.
	// If left empty (default value), the public IP on behalf of which this health
	// check is performed will be used.
	// +optional
	Host *string `json:"host,omitempty" tf:"host"`
	// The TCP port number for the HTTP health check request.
	// The default value is 80.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, HTTP health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The request path of the HTTP health check request.
	// The default value is /.
	// +optional
	RequestPath *string `json:"requestPath,omitempty" tf:"request_path"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*HealthCheckSpecHttpHealthCheck) DeepCopy

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

func (*HealthCheckSpecHttpHealthCheck) DeepCopyInto

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

type HealthCheckSpecHttpHealthCheckCodec

type HealthCheckSpecHttpHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (HealthCheckSpecHttpHealthCheckCodec) Decode

func (HealthCheckSpecHttpHealthCheckCodec) Encode

func (HealthCheckSpecHttpHealthCheckCodec) IsEmpty

type HealthCheckSpecHttpsHealthCheck

type HealthCheckSpecHttpsHealthCheck struct {
	// The value of the host header in the HTTPS health check request.
	// If left empty (default value), the public IP on behalf of which this health
	// check is performed will be used.
	// +optional
	Host *string `json:"host,omitempty" tf:"host"`
	// The TCP port number for the HTTPS health check request.
	// The default value is 443.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, HTTPS health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The request path of the HTTPS health check request.
	// The default value is /.
	// +optional
	RequestPath *string `json:"requestPath,omitempty" tf:"request_path"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*HealthCheckSpecHttpsHealthCheck) DeepCopy

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

func (*HealthCheckSpecHttpsHealthCheck) DeepCopyInto

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

type HealthCheckSpecHttpsHealthCheckCodec

type HealthCheckSpecHttpsHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (HealthCheckSpecHttpsHealthCheckCodec) Decode

func (HealthCheckSpecHttpsHealthCheckCodec) Encode

func (HealthCheckSpecHttpsHealthCheckCodec) IsEmpty

type HealthCheckSpecLogConfig

type HealthCheckSpecLogConfig struct {
	// Indicates whether or not to export logs. This is false by default,
	// which means no health check logging will be done.
	// +optional
	Enable *bool `json:"enable,omitempty" tf:"enable"`
}

func (*HealthCheckSpecLogConfig) DeepCopy

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

func (*HealthCheckSpecLogConfig) DeepCopyInto

func (in *HealthCheckSpecLogConfig) DeepCopyInto(out *HealthCheckSpecLogConfig)

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

type HealthCheckSpecLogConfigCodec

type HealthCheckSpecLogConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (HealthCheckSpecLogConfigCodec) Decode

func (HealthCheckSpecLogConfigCodec) Encode

func (HealthCheckSpecLogConfigCodec) IsEmpty

type HealthCheckSpecResource

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

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

	// How often (in seconds) to send a health check. The default value is 5
	// seconds.
	// +optional
	CheckIntervalSec *int64 `json:"checkIntervalSec,omitempty" tf:"check_interval_sec"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// A nested object resource
	// +optional
	GrpcHealthCheck *HealthCheckSpecGrpcHealthCheck `json:"grpcHealthCheck,omitempty" tf:"grpc_health_check"`
	// A so-far unhealthy instance will be marked healthy after this many
	// consecutive successes. The default value is 2.
	// +optional
	HealthyThreshold *int64 `json:"healthyThreshold,omitempty" tf:"healthy_threshold"`
	// A nested object resource
	// +optional
	Http2HealthCheck *HealthCheckSpecHttp2HealthCheck `json:"http2HealthCheck,omitempty" tf:"http2_health_check"`
	// A nested object resource
	// +optional
	HttpHealthCheck *HealthCheckSpecHttpHealthCheck `json:"httpHealthCheck,omitempty" tf:"http_health_check"`
	// A nested object resource
	// +optional
	HttpsHealthCheck *HealthCheckSpecHttpsHealthCheck `json:"httpsHealthCheck,omitempty" tf:"https_health_check"`
	// Configure logging on this health check.
	// +optional
	LogConfig *HealthCheckSpecLogConfig `json:"logConfig,omitempty" tf:"log_config"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the
	// last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// A nested object resource
	// +optional
	SslHealthCheck *HealthCheckSpecSslHealthCheck `json:"sslHealthCheck,omitempty" tf:"ssl_health_check"`
	// A nested object resource
	// +optional
	TcpHealthCheck *HealthCheckSpecTcpHealthCheck `json:"tcpHealthCheck,omitempty" tf:"tcp_health_check"`
	// How long (in seconds) to wait before claiming failure.
	// The default value is 5 seconds.  It is invalid for timeoutSec to have
	// greater value than checkIntervalSec.
	// +optional
	TimeoutSec *int64 `json:"timeoutSec,omitempty" tf:"timeout_sec"`
	// The type of the health check. One of HTTP, HTTPS, TCP, or SSL.
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
	// A so-far healthy instance will be marked unhealthy after this many
	// consecutive failures. The default value is 2.
	// +optional
	UnhealthyThreshold *int64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold"`
}

func (*HealthCheckSpecResource) DeepCopy

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

func (*HealthCheckSpecResource) DeepCopyInto

func (in *HealthCheckSpecResource) DeepCopyInto(out *HealthCheckSpecResource)

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

type HealthCheckSpecSslHealthCheck

type HealthCheckSpecSslHealthCheck struct {
	// The TCP port number for the SSL health check request.
	// The default value is 443.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, SSL health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The application data to send once the SSL connection has been
	// established (default value is empty). If both request and response are
	// empty, the connection establishment alone will indicate health. The request
	// data can only be ASCII.
	// +optional
	Request *string `json:"request,omitempty" tf:"request"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*HealthCheckSpecSslHealthCheck) DeepCopy

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

func (*HealthCheckSpecSslHealthCheck) DeepCopyInto

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

type HealthCheckSpecSslHealthCheckCodec

type HealthCheckSpecSslHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (HealthCheckSpecSslHealthCheckCodec) Decode

func (HealthCheckSpecSslHealthCheckCodec) Encode

func (HealthCheckSpecSslHealthCheckCodec) IsEmpty

type HealthCheckSpecTcpHealthCheck

type HealthCheckSpecTcpHealthCheck struct {
	// The TCP port number for the TCP health check request.
	// The default value is 443.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, TCP health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The application data to send once the TCP connection has been
	// established (default value is empty). If both request and response are
	// empty, the connection establishment alone will indicate health. The request
	// data can only be ASCII.
	// +optional
	Request *string `json:"request,omitempty" tf:"request"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*HealthCheckSpecTcpHealthCheck) DeepCopy

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

func (*HealthCheckSpecTcpHealthCheck) DeepCopyInto

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

type HealthCheckSpecTcpHealthCheckCodec

type HealthCheckSpecTcpHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (HealthCheckSpecTcpHealthCheckCodec) Decode

func (HealthCheckSpecTcpHealthCheckCodec) Encode

func (HealthCheckSpecTcpHealthCheckCodec) IsEmpty

type HealthCheckStatus

type HealthCheckStatus 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 (*HealthCheckStatus) DeepCopy

func (in *HealthCheckStatus) DeepCopy() *HealthCheckStatus

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

func (*HealthCheckStatus) DeepCopyInto

func (in *HealthCheckStatus) DeepCopyInto(out *HealthCheckStatus)

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

type HttpHealthCheck

type HttpHealthCheck struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              HttpHealthCheckSpec   `json:"spec,omitempty"`
	Status            HttpHealthCheckStatus `json:"status,omitempty"`
}

func (*HttpHealthCheck) DeepCopy

func (in *HttpHealthCheck) DeepCopy() *HttpHealthCheck

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

func (*HttpHealthCheck) DeepCopyInto

func (in *HttpHealthCheck) DeepCopyInto(out *HttpHealthCheck)

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

func (*HttpHealthCheck) DeepCopyObject

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

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

func (*HttpHealthCheck) SetupWebhookWithManager

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

func (*HttpHealthCheck) ValidateCreate

func (r *HttpHealthCheck) ValidateCreate() error

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

func (*HttpHealthCheck) ValidateDelete

func (r *HttpHealthCheck) ValidateDelete() error

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

func (*HttpHealthCheck) ValidateUpdate

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

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

type HttpHealthCheckList

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

HttpHealthCheckList is a list of HttpHealthChecks

func (*HttpHealthCheckList) DeepCopy

func (in *HttpHealthCheckList) DeepCopy() *HttpHealthCheckList

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

func (*HttpHealthCheckList) DeepCopyInto

func (in *HttpHealthCheckList) DeepCopyInto(out *HttpHealthCheckList)

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

func (*HttpHealthCheckList) DeepCopyObject

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

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

type HttpHealthCheckSpec

type HttpHealthCheckSpec struct {
	State *HttpHealthCheckSpecResource `json:"state,omitempty" tf:"-"`

	Resource HttpHealthCheckSpecResource `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 (*HttpHealthCheckSpec) DeepCopy

func (in *HttpHealthCheckSpec) DeepCopy() *HttpHealthCheckSpec

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

func (*HttpHealthCheckSpec) DeepCopyInto

func (in *HttpHealthCheckSpec) DeepCopyInto(out *HttpHealthCheckSpec)

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

type HttpHealthCheckSpecResource

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

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

	// How often (in seconds) to send a health check. The default value is 5
	// seconds.
	// +optional
	CheckIntervalSec *int64 `json:"checkIntervalSec,omitempty" tf:"check_interval_sec"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// A so-far unhealthy instance will be marked healthy after this many
	// consecutive successes. The default value is 2.
	// +optional
	HealthyThreshold *int64 `json:"healthyThreshold,omitempty" tf:"healthy_threshold"`
	// The value of the host header in the HTTP health check request. If
	// left empty (default value), the public IP on behalf of which this
	// health check is performed will be used.
	// +optional
	Host *string `json:"host,omitempty" tf:"host"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the
	// last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The TCP port number for the HTTP health check request.
	// The default value is 80.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The request path of the HTTP health check request.
	// The default value is /.
	// +optional
	RequestPath *string `json:"requestPath,omitempty" tf:"request_path"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// How long (in seconds) to wait before claiming failure.
	// The default value is 5 seconds.  It is invalid for timeoutSec to have
	// greater value than checkIntervalSec.
	// +optional
	TimeoutSec *int64 `json:"timeoutSec,omitempty" tf:"timeout_sec"`
	// A so-far healthy instance will be marked unhealthy after this many
	// consecutive failures. The default value is 2.
	// +optional
	UnhealthyThreshold *int64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold"`
}

func (*HttpHealthCheckSpecResource) DeepCopy

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

func (*HttpHealthCheckSpecResource) DeepCopyInto

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

type HttpHealthCheckStatus

type HttpHealthCheckStatus 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 (*HttpHealthCheckStatus) DeepCopy

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

func (*HttpHealthCheckStatus) DeepCopyInto

func (in *HttpHealthCheckStatus) DeepCopyInto(out *HttpHealthCheckStatus)

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

type HttpsHealthCheck

type HttpsHealthCheck struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              HttpsHealthCheckSpec   `json:"spec,omitempty"`
	Status            HttpsHealthCheckStatus `json:"status,omitempty"`
}

func (*HttpsHealthCheck) DeepCopy

func (in *HttpsHealthCheck) DeepCopy() *HttpsHealthCheck

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

func (*HttpsHealthCheck) DeepCopyInto

func (in *HttpsHealthCheck) DeepCopyInto(out *HttpsHealthCheck)

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

func (*HttpsHealthCheck) DeepCopyObject

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

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

func (*HttpsHealthCheck) SetupWebhookWithManager

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

func (*HttpsHealthCheck) ValidateCreate

func (r *HttpsHealthCheck) ValidateCreate() error

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

func (*HttpsHealthCheck) ValidateDelete

func (r *HttpsHealthCheck) ValidateDelete() error

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

func (*HttpsHealthCheck) ValidateUpdate

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

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

type HttpsHealthCheckList

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

HttpsHealthCheckList is a list of HttpsHealthChecks

func (*HttpsHealthCheckList) DeepCopy

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

func (*HttpsHealthCheckList) DeepCopyInto

func (in *HttpsHealthCheckList) DeepCopyInto(out *HttpsHealthCheckList)

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

func (*HttpsHealthCheckList) DeepCopyObject

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

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

type HttpsHealthCheckSpec

type HttpsHealthCheckSpec struct {
	State *HttpsHealthCheckSpecResource `json:"state,omitempty" tf:"-"`

	Resource HttpsHealthCheckSpecResource `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 (*HttpsHealthCheckSpec) DeepCopy

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

func (*HttpsHealthCheckSpec) DeepCopyInto

func (in *HttpsHealthCheckSpec) DeepCopyInto(out *HttpsHealthCheckSpec)

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

type HttpsHealthCheckSpecResource

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

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

	// How often (in seconds) to send a health check. The default value is 5
	// seconds.
	// +optional
	CheckIntervalSec *int64 `json:"checkIntervalSec,omitempty" tf:"check_interval_sec"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// A so-far unhealthy instance will be marked healthy after this many
	// consecutive successes. The default value is 2.
	// +optional
	HealthyThreshold *int64 `json:"healthyThreshold,omitempty" tf:"healthy_threshold"`
	// The value of the host header in the HTTPS health check request. If
	// left empty (default value), the public IP on behalf of which this
	// health check is performed will be used.
	// +optional
	Host *string `json:"host,omitempty" tf:"host"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the
	// last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The TCP port number for the HTTPS health check request.
	// The default value is 443.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The request path of the HTTPS health check request.
	// The default value is /.
	// +optional
	RequestPath *string `json:"requestPath,omitempty" tf:"request_path"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// How long (in seconds) to wait before claiming failure.
	// The default value is 5 seconds.  It is invalid for timeoutSec to have
	// greater value than checkIntervalSec.
	// +optional
	TimeoutSec *int64 `json:"timeoutSec,omitempty" tf:"timeout_sec"`
	// A so-far healthy instance will be marked unhealthy after this many
	// consecutive failures. The default value is 2.
	// +optional
	UnhealthyThreshold *int64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold"`
}

func (*HttpsHealthCheckSpecResource) DeepCopy

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

func (*HttpsHealthCheckSpecResource) DeepCopyInto

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

type HttpsHealthCheckStatus

type HttpsHealthCheckStatus 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 (*HttpsHealthCheckStatus) DeepCopy

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

func (*HttpsHealthCheckStatus) DeepCopyInto

func (in *HttpsHealthCheckStatus) DeepCopyInto(out *HttpsHealthCheckStatus)

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

type Image

type Image struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ImageSpec   `json:"spec,omitempty"`
	Status            ImageStatus `json:"status,omitempty"`
}

func (*Image) DeepCopy

func (in *Image) DeepCopy() *Image

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

func (*Image) DeepCopyInto

func (in *Image) DeepCopyInto(out *Image)

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

func (*Image) DeepCopyObject

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

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

func (*Image) SetupWebhookWithManager

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

func (*Image) ValidateCreate

func (r *Image) ValidateCreate() error

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

func (*Image) ValidateDelete

func (r *Image) ValidateDelete() error

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

func (*Image) ValidateUpdate

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

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

type ImageIamBinding

type ImageIamBinding struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ImageIamBindingSpec   `json:"spec,omitempty"`
	Status            ImageIamBindingStatus `json:"status,omitempty"`
}

func (*ImageIamBinding) DeepCopy

func (in *ImageIamBinding) DeepCopy() *ImageIamBinding

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

func (*ImageIamBinding) DeepCopyInto

func (in *ImageIamBinding) DeepCopyInto(out *ImageIamBinding)

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

func (*ImageIamBinding) DeepCopyObject

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

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

func (*ImageIamBinding) SetupWebhookWithManager

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

func (*ImageIamBinding) ValidateCreate

func (r *ImageIamBinding) ValidateCreate() error

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

func (*ImageIamBinding) ValidateDelete

func (r *ImageIamBinding) ValidateDelete() error

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

func (*ImageIamBinding) ValidateUpdate

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

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

type ImageIamBindingList

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

ImageIamBindingList is a list of ImageIamBindings

func (*ImageIamBindingList) DeepCopy

func (in *ImageIamBindingList) DeepCopy() *ImageIamBindingList

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

func (*ImageIamBindingList) DeepCopyInto

func (in *ImageIamBindingList) DeepCopyInto(out *ImageIamBindingList)

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

func (*ImageIamBindingList) DeepCopyObject

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

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

type ImageIamBindingSpec

type ImageIamBindingSpec struct {
	State *ImageIamBindingSpecResource `json:"state,omitempty" tf:"-"`

	Resource ImageIamBindingSpecResource `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 (*ImageIamBindingSpec) DeepCopy

func (in *ImageIamBindingSpec) DeepCopy() *ImageIamBindingSpec

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

func (*ImageIamBindingSpec) DeepCopyInto

func (in *ImageIamBindingSpec) DeepCopyInto(out *ImageIamBindingSpec)

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

type ImageIamBindingSpecCondition

type ImageIamBindingSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*ImageIamBindingSpecCondition) DeepCopy

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

func (*ImageIamBindingSpecCondition) DeepCopyInto

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

type ImageIamBindingSpecConditionCodec

type ImageIamBindingSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (ImageIamBindingSpecConditionCodec) Decode

func (ImageIamBindingSpecConditionCodec) Encode

func (ImageIamBindingSpecConditionCodec) IsEmpty

type ImageIamBindingSpecResource

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

	// +optional
	Condition *ImageIamBindingSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag    *string  `json:"etag,omitempty" tf:"etag"`
	Image   *string  `json:"image" tf:"image"`
	Members []string `json:"members" tf:"members"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	Role    *string `json:"role" tf:"role"`
}

func (*ImageIamBindingSpecResource) DeepCopy

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

func (*ImageIamBindingSpecResource) DeepCopyInto

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

type ImageIamBindingStatus

type ImageIamBindingStatus 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 (*ImageIamBindingStatus) DeepCopy

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

func (*ImageIamBindingStatus) DeepCopyInto

func (in *ImageIamBindingStatus) DeepCopyInto(out *ImageIamBindingStatus)

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

type ImageIamMember

type ImageIamMember struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ImageIamMemberSpec   `json:"spec,omitempty"`
	Status            ImageIamMemberStatus `json:"status,omitempty"`
}

func (*ImageIamMember) DeepCopy

func (in *ImageIamMember) DeepCopy() *ImageIamMember

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

func (*ImageIamMember) DeepCopyInto

func (in *ImageIamMember) DeepCopyInto(out *ImageIamMember)

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

func (*ImageIamMember) DeepCopyObject

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

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

func (*ImageIamMember) SetupWebhookWithManager

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

func (*ImageIamMember) ValidateCreate

func (r *ImageIamMember) ValidateCreate() error

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

func (*ImageIamMember) ValidateDelete

func (r *ImageIamMember) ValidateDelete() error

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

func (*ImageIamMember) ValidateUpdate

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

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

type ImageIamMemberList

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

ImageIamMemberList is a list of ImageIamMembers

func (*ImageIamMemberList) DeepCopy

func (in *ImageIamMemberList) DeepCopy() *ImageIamMemberList

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

func (*ImageIamMemberList) DeepCopyInto

func (in *ImageIamMemberList) DeepCopyInto(out *ImageIamMemberList)

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

func (*ImageIamMemberList) DeepCopyObject

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

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

type ImageIamMemberSpec

type ImageIamMemberSpec struct {
	State *ImageIamMemberSpecResource `json:"state,omitempty" tf:"-"`

	Resource ImageIamMemberSpecResource `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 (*ImageIamMemberSpec) DeepCopy

func (in *ImageIamMemberSpec) DeepCopy() *ImageIamMemberSpec

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

func (*ImageIamMemberSpec) DeepCopyInto

func (in *ImageIamMemberSpec) DeepCopyInto(out *ImageIamMemberSpec)

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

type ImageIamMemberSpecCondition

type ImageIamMemberSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*ImageIamMemberSpecCondition) DeepCopy

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

func (*ImageIamMemberSpecCondition) DeepCopyInto

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

type ImageIamMemberSpecConditionCodec

type ImageIamMemberSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (ImageIamMemberSpecConditionCodec) Decode

func (ImageIamMemberSpecConditionCodec) Encode

func (ImageIamMemberSpecConditionCodec) IsEmpty

type ImageIamMemberSpecResource

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

	// +optional
	Condition *ImageIamMemberSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag   *string `json:"etag,omitempty" tf:"etag"`
	Image  *string `json:"image" tf:"image"`
	Member *string `json:"member" tf:"member"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	Role    *string `json:"role" tf:"role"`
}

func (*ImageIamMemberSpecResource) DeepCopy

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

func (*ImageIamMemberSpecResource) DeepCopyInto

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

type ImageIamMemberStatus

type ImageIamMemberStatus 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 (*ImageIamMemberStatus) DeepCopy

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

func (*ImageIamMemberStatus) DeepCopyInto

func (in *ImageIamMemberStatus) DeepCopyInto(out *ImageIamMemberStatus)

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

type ImageIamPolicy

type ImageIamPolicy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ImageIamPolicySpec   `json:"spec,omitempty"`
	Status            ImageIamPolicyStatus `json:"status,omitempty"`
}

func (*ImageIamPolicy) DeepCopy

func (in *ImageIamPolicy) DeepCopy() *ImageIamPolicy

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

func (*ImageIamPolicy) DeepCopyInto

func (in *ImageIamPolicy) DeepCopyInto(out *ImageIamPolicy)

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

func (*ImageIamPolicy) DeepCopyObject

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

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

func (*ImageIamPolicy) SetupWebhookWithManager

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

func (*ImageIamPolicy) ValidateCreate

func (r *ImageIamPolicy) ValidateCreate() error

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

func (*ImageIamPolicy) ValidateDelete

func (r *ImageIamPolicy) ValidateDelete() error

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

func (*ImageIamPolicy) ValidateUpdate

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

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

type ImageIamPolicyList

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

ImageIamPolicyList is a list of ImageIamPolicys

func (*ImageIamPolicyList) DeepCopy

func (in *ImageIamPolicyList) DeepCopy() *ImageIamPolicyList

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

func (*ImageIamPolicyList) DeepCopyInto

func (in *ImageIamPolicyList) DeepCopyInto(out *ImageIamPolicyList)

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

func (*ImageIamPolicyList) DeepCopyObject

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

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

type ImageIamPolicySpec

type ImageIamPolicySpec struct {
	State *ImageIamPolicySpecResource `json:"state,omitempty" tf:"-"`

	Resource ImageIamPolicySpecResource `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 (*ImageIamPolicySpec) DeepCopy

func (in *ImageIamPolicySpec) DeepCopy() *ImageIamPolicySpec

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

func (*ImageIamPolicySpec) DeepCopyInto

func (in *ImageIamPolicySpec) DeepCopyInto(out *ImageIamPolicySpec)

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

type ImageIamPolicySpecResource

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

	// +optional
	Etag       *string `json:"etag,omitempty" tf:"etag"`
	Image      *string `json:"image" tf:"image"`
	PolicyData *string `json:"policyData" tf:"policy_data"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
}

func (*ImageIamPolicySpecResource) DeepCopy

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

func (*ImageIamPolicySpecResource) DeepCopyInto

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

type ImageIamPolicyStatus

type ImageIamPolicyStatus 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 (*ImageIamPolicyStatus) DeepCopy

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

func (*ImageIamPolicyStatus) DeepCopyInto

func (in *ImageIamPolicyStatus) DeepCopyInto(out *ImageIamPolicyStatus)

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

type ImageList

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

ImageList is a list of Images

func (*ImageList) DeepCopy

func (in *ImageList) DeepCopy() *ImageList

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

func (*ImageList) DeepCopyInto

func (in *ImageList) DeepCopyInto(out *ImageList)

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

func (*ImageList) DeepCopyObject

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

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

type ImageSpec

type ImageSpec struct {
	State *ImageSpecResource `json:"state,omitempty" tf:"-"`

	Resource ImageSpecResource `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 (*ImageSpec) DeepCopy

func (in *ImageSpec) DeepCopy() *ImageSpec

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

func (*ImageSpec) DeepCopyInto

func (in *ImageSpec) DeepCopyInto(out *ImageSpec)

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

type ImageSpecGuestOsFeatures

type ImageSpecGuestOsFeatures struct {
	// The type of supported feature. Read [Enabling guest operating system features](https://cloud.google.com/compute/docs/images/create-delete-deprecate-private-images#guest-os-features) to see a list of available options. Possible values: ["MULTI_IP_SUBNET", "SECURE_BOOT", "SEV_CAPABLE", "UEFI_COMPATIBLE", "VIRTIO_SCSI_MULTIQUEUE", "WINDOWS", "GVNIC"]
	Type *string `json:"type" tf:"type"`
}

func (*ImageSpecGuestOsFeatures) DeepCopy

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

func (*ImageSpecGuestOsFeatures) DeepCopyInto

func (in *ImageSpecGuestOsFeatures) DeepCopyInto(out *ImageSpecGuestOsFeatures)

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

type ImageSpecRawDisk

type ImageSpecRawDisk struct {
	// The format used to encode and transmit the block device, which
	// should be TAR. This is just a container and transmission format
	// and not a runtime format. Provided by the client when the disk
	// image is created. Default value: "TAR" Possible values: ["TAR"]
	// +optional
	ContainerType *string `json:"containerType,omitempty" tf:"container_type"`
	// An optional SHA1 checksum of the disk image before unpackaging.
	// This is provided by the client when the disk image is created.
	// +optional
	Sha1 *string `json:"sha1,omitempty" tf:"sha1"`
	// The full Google Cloud Storage URL where disk storage is stored
	// You must provide either this property or the sourceDisk property
	// but not both.
	Source *string `json:"source" tf:"source"`
}

func (*ImageSpecRawDisk) DeepCopy

func (in *ImageSpecRawDisk) DeepCopy() *ImageSpecRawDisk

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

func (*ImageSpecRawDisk) DeepCopyInto

func (in *ImageSpecRawDisk) DeepCopyInto(out *ImageSpecRawDisk)

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

type ImageSpecRawDiskCodec

type ImageSpecRawDiskCodec struct {
}

+k8s:deepcopy-gen=false

func (ImageSpecRawDiskCodec) Decode

func (ImageSpecRawDiskCodec) Encode

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

func (ImageSpecRawDiskCodec) IsEmpty

type ImageSpecResource

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

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

	// Size of the image tar.gz archive stored in Google Cloud Storage (in
	// bytes).
	// +optional
	ArchiveSizeBytes *int64 `json:"archiveSizeBytes,omitempty" tf:"archive_size_bytes"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Size of the image when restored onto a persistent disk (in GB).
	// +optional
	DiskSizeGb *int64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb"`
	// The name of the image family to which this image belongs. You can
	// create disks by specifying an image family instead of a specific
	// image name. The image family always returns its latest image that is
	// not deprecated. The name of the image family must comply with
	// RFC1035.
	// +optional
	Family *string `json:"family,omitempty" tf:"family"`
	// A list of features to enable on the guest operating system.
	// Applicable only for bootable images.
	// +optional
	GuestOsFeatures []ImageSpecGuestOsFeatures `json:"guestOsFeatures,omitempty" tf:"guest_os_features"`
	// The fingerprint used for optimistic locking of this resource. Used
	// internally during updates.
	// +optional
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint"`
	// Labels to apply to this Image.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// Any applicable license URI.
	// +optional
	Licenses []string `json:"licenses,omitempty" tf:"licenses"`
	// Name of the resource; provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the
	// last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The parameters of the raw disk image.
	// +optional
	RawDisk *ImageSpecRawDisk `json:"rawDisk,omitempty" tf:"raw_disk"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The source disk to create this image based on.
	// You must provide either this property or the
	// rawDisk.source property but not both to create an image.
	// +optional
	SourceDisk *string `json:"sourceDisk,omitempty" tf:"source_disk"`
	// URL of the source image used to create this image. In order to create an image, you must provide the full or partial
	// URL of one of the following:
	//
	// * The selfLink URL
	// * This property
	// * The rawDisk.source URL
	// * The sourceDisk URL
	// +optional
	SourceImage *string `json:"sourceImage,omitempty" tf:"source_image"`
	// URL of the source snapshot used to create this image.
	//
	// In order to create an image, you must provide the full or partial URL of one of the following:
	//
	// * The selfLink URL
	// * This property
	// * The sourceImage URL
	// * The rawDisk.source URL
	// * The sourceDisk URL
	// +optional
	SourceSnapshot *string `json:"sourceSnapshot,omitempty" tf:"source_snapshot"`
}

func (*ImageSpecResource) DeepCopy

func (in *ImageSpecResource) DeepCopy() *ImageSpecResource

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

func (*ImageSpecResource) DeepCopyInto

func (in *ImageSpecResource) DeepCopyInto(out *ImageSpecResource)

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

type ImageStatus

type ImageStatus 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 (*ImageStatus) DeepCopy

func (in *ImageStatus) DeepCopy() *ImageStatus

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

func (*ImageStatus) DeepCopyInto

func (in *ImageStatus) DeepCopyInto(out *ImageStatus)

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

type Instance

type Instance struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceSpec   `json:"spec,omitempty"`
	Status            InstanceStatus `json:"status,omitempty"`
}

func (*Instance) DeepCopy

func (in *Instance) DeepCopy() *Instance

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

func (*Instance) DeepCopyInto

func (in *Instance) DeepCopyInto(out *Instance)

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

func (*Instance) DeepCopyObject

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

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

func (*Instance) SetupWebhookWithManager

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

func (*Instance) ValidateCreate

func (r *Instance) ValidateCreate() error

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

func (*Instance) ValidateDelete

func (r *Instance) ValidateDelete() error

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

func (*Instance) ValidateUpdate

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

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

type InstanceFromTemplate

type InstanceFromTemplate struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceFromTemplateSpec   `json:"spec,omitempty"`
	Status            InstanceFromTemplateStatus `json:"status,omitempty"`
}

func (*InstanceFromTemplate) DeepCopy

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

func (*InstanceFromTemplate) DeepCopyInto

func (in *InstanceFromTemplate) DeepCopyInto(out *InstanceFromTemplate)

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

func (*InstanceFromTemplate) DeepCopyObject

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

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

func (*InstanceFromTemplate) SetupWebhookWithManager

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

func (*InstanceFromTemplate) ValidateCreate

func (r *InstanceFromTemplate) ValidateCreate() error

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

func (*InstanceFromTemplate) ValidateDelete

func (r *InstanceFromTemplate) ValidateDelete() error

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

func (*InstanceFromTemplate) ValidateUpdate

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

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

type InstanceFromTemplateList

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

InstanceFromTemplateList is a list of InstanceFromTemplates

func (*InstanceFromTemplateList) DeepCopy

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

func (*InstanceFromTemplateList) DeepCopyInto

func (in *InstanceFromTemplateList) DeepCopyInto(out *InstanceFromTemplateList)

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

func (*InstanceFromTemplateList) DeepCopyObject

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

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

type InstanceFromTemplateSpec

type InstanceFromTemplateSpec struct {
	State *InstanceFromTemplateSpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceFromTemplateSpecResource `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 (*InstanceFromTemplateSpec) DeepCopy

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

func (*InstanceFromTemplateSpec) DeepCopyInto

func (in *InstanceFromTemplateSpec) DeepCopyInto(out *InstanceFromTemplateSpec)

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

type InstanceFromTemplateSpecAdvancedMachineFeatures added in v0.4.0

type InstanceFromTemplateSpecAdvancedMachineFeatures struct {
	// Whether to enable nested virtualization or not.
	// +optional
	EnableNestedVirtualization *bool `json:"enableNestedVirtualization,omitempty" tf:"enable_nested_virtualization"`
	// The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.
	// +optional
	ThreadsPerCore *int64 `json:"threadsPerCore,omitempty" tf:"threads_per_core"`
}

func (*InstanceFromTemplateSpecAdvancedMachineFeatures) DeepCopy added in v0.4.0

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

func (*InstanceFromTemplateSpecAdvancedMachineFeatures) DeepCopyInto added in v0.4.0

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

type InstanceFromTemplateSpecAdvancedMachineFeaturesCodec added in v0.4.0

type InstanceFromTemplateSpecAdvancedMachineFeaturesCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceFromTemplateSpecAdvancedMachineFeaturesCodec) Decode added in v0.4.0

func (InstanceFromTemplateSpecAdvancedMachineFeaturesCodec) Encode added in v0.4.0

func (InstanceFromTemplateSpecAdvancedMachineFeaturesCodec) IsEmpty added in v0.4.0

type InstanceFromTemplateSpecAttachedDisk

type InstanceFromTemplateSpecAttachedDisk struct {
	// Name with which the attached disk is accessible under /dev/disk/by-id/
	// +optional
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name"`
	// A 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
	// +optional
	DiskEncryptionKeyRaw *string `json:"-" sensitive:"true" tf:"disk_encryption_key_raw"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
	// +optional
	DiskEncryptionKeySha256 *string `json:"diskEncryptionKeySha256,omitempty" tf:"disk_encryption_key_sha256"`
	// The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
	// +optional
	KmsKeySelfLink *string `json:"kmsKeySelfLink,omitempty" tf:"kms_key_self_link"`
	// Read/write mode for the disk. One of "READ_ONLY" or "READ_WRITE".
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// The name or self_link of the disk attached to this instance.
	Source *string `json:"source" tf:"source"`
}

func (*InstanceFromTemplateSpecAttachedDisk) DeepCopy

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

func (*InstanceFromTemplateSpecAttachedDisk) DeepCopyInto

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

type InstanceFromTemplateSpecBootDisk

type InstanceFromTemplateSpecBootDisk struct {
	// Whether the disk will be auto-deleted when the instance is deleted.
	// +optional
	AutoDelete *bool `json:"autoDelete,omitempty" tf:"auto_delete"`
	// Name with which attached disk will be accessible under /dev/disk/by-id/
	// +optional
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name"`
	// A 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
	// +optional
	DiskEncryptionKeyRaw *string `json:"-" sensitive:"true" tf:"disk_encryption_key_raw"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
	// +optional
	DiskEncryptionKeySha256 *string `json:"diskEncryptionKeySha256,omitempty" tf:"disk_encryption_key_sha256"`
	// Parameters with which a disk was created alongside the instance.
	// +optional
	InitializeParams *InstanceFromTemplateSpecBootDiskInitializeParams `json:"initializeParams,omitempty" tf:"initialize_params"`
	// The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
	// +optional
	KmsKeySelfLink *string `json:"kmsKeySelfLink,omitempty" tf:"kms_key_self_link"`
	// Read/write mode for the disk. One of "READ_ONLY" or "READ_WRITE".
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// The name or self_link of the disk attached to this instance.
	// +optional
	Source *string `json:"source,omitempty" tf:"source"`
}

func (*InstanceFromTemplateSpecBootDisk) DeepCopy

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

func (*InstanceFromTemplateSpecBootDisk) DeepCopyInto

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

type InstanceFromTemplateSpecBootDiskCodec

type InstanceFromTemplateSpecBootDiskCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceFromTemplateSpecBootDiskCodec) Decode

func (InstanceFromTemplateSpecBootDiskCodec) Encode

func (InstanceFromTemplateSpecBootDiskCodec) IsEmpty

type InstanceFromTemplateSpecBootDiskInitializeParams

type InstanceFromTemplateSpecBootDiskInitializeParams struct {
	// The image from which this disk was initialised.
	// +optional
	Image *string `json:"image,omitempty" tf:"image"`
	// A set of key/value label pairs assigned to the disk.
	// +optional
	Labels map[string]string `json:"labels,omitempty" tf:"labels"`
	// The size of the image in gigabytes.
	// +optional
	Size *int64 `json:"size,omitempty" tf:"size"`
	// The Google Compute Engine disk type. One of pd-standard, pd-ssd or pd-balanced.
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
}

func (*InstanceFromTemplateSpecBootDiskInitializeParams) DeepCopy

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

func (*InstanceFromTemplateSpecBootDiskInitializeParams) DeepCopyInto

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

type InstanceFromTemplateSpecBootDiskInitializeParamsCodec

type InstanceFromTemplateSpecBootDiskInitializeParamsCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceFromTemplateSpecBootDiskInitializeParamsCodec) Decode

func (InstanceFromTemplateSpecBootDiskInitializeParamsCodec) Encode

func (InstanceFromTemplateSpecBootDiskInitializeParamsCodec) IsEmpty

type InstanceFromTemplateSpecConfidentialInstanceConfig

type InstanceFromTemplateSpecConfidentialInstanceConfig struct {
	// Defines whether the instance should have confidential compute enabled.
	EnableConfidentialCompute *bool `json:"enableConfidentialCompute" tf:"enable_confidential_compute"`
}

func (*InstanceFromTemplateSpecConfidentialInstanceConfig) DeepCopy

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

func (*InstanceFromTemplateSpecConfidentialInstanceConfig) DeepCopyInto

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

type InstanceFromTemplateSpecConfidentialInstanceConfigCodec

type InstanceFromTemplateSpecConfidentialInstanceConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceFromTemplateSpecConfidentialInstanceConfigCodec) Decode

func (InstanceFromTemplateSpecConfidentialInstanceConfigCodec) Encode

func (InstanceFromTemplateSpecConfidentialInstanceConfigCodec) IsEmpty

type InstanceFromTemplateSpecGuestAccelerator

type InstanceFromTemplateSpecGuestAccelerator struct {
	// The number of the guest accelerator cards exposed to this instance.
	Count *int64 `json:"count" tf:"count"`
	// The accelerator type resource exposed to this instance. E.g. nvidia-tesla-k80.
	Type *string `json:"type" tf:"type"`
}

func (*InstanceFromTemplateSpecGuestAccelerator) DeepCopy

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

func (*InstanceFromTemplateSpecGuestAccelerator) DeepCopyInto

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

type InstanceFromTemplateSpecNetworkInterface

type InstanceFromTemplateSpecNetworkInterface struct {
	// Access configurations, i.e. IPs via which this instance can be accessed via the Internet.
	// +optional
	AccessConfig []InstanceFromTemplateSpecNetworkInterfaceAccessConfig `json:"accessConfig,omitempty" tf:"access_config"`
	// An array of alias IP ranges for this network interface.
	// +optional
	AliasIPRange []InstanceFromTemplateSpecNetworkInterfaceAliasIPRange `json:"aliasIPRange,omitempty" tf:"alias_ip_range"`
	// An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access.
	// +optional
	Ipv6AccessConfig []InstanceFromTemplateSpecNetworkInterfaceIpv6AccessConfig `json:"ipv6AccessConfig,omitempty" tf:"ipv6_access_config"`
	// One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.
	// +optional
	Ipv6AccessType *string `json:"ipv6AccessType,omitempty" tf:"ipv6_access_type"`
	// The name of the interface
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// The name or self_link of the network attached to this interface.
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// The private IP address assigned to the instance.
	// +optional
	NetworkIP *string `json:"networkIP,omitempty" tf:"network_ip"`
	// The type of vNIC to be used on this interface. Possible values:GVNIC, VIRTIO_NET
	// +optional
	NicType *string `json:"nicType,omitempty" tf:"nic_type"`
	// The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified.
	// +optional
	QueueCount *int64 `json:"queueCount,omitempty" tf:"queue_count"`
	// The stack type for this network interface to identify whether the IPv6 feature is enabled or not. If not specified, IPV4_ONLY will be used.
	// +optional
	StackType *string `json:"stackType,omitempty" tf:"stack_type"`
	// The name or self_link of the subnetwork attached to this interface.
	// +optional
	Subnetwork *string `json:"subnetwork,omitempty" tf:"subnetwork"`
	// The project in which the subnetwork belongs.
	// +optional
	SubnetworkProject *string `json:"subnetworkProject,omitempty" tf:"subnetwork_project"`
}

func (*InstanceFromTemplateSpecNetworkInterface) DeepCopy

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

func (*InstanceFromTemplateSpecNetworkInterface) DeepCopyInto

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

type InstanceFromTemplateSpecNetworkInterfaceAccessConfig

type InstanceFromTemplateSpecNetworkInterfaceAccessConfig struct {
	// The IP address that is be 1:1 mapped to the instance's network ip.
	// +optional
	NatIP *string `json:"natIP,omitempty" tf:"nat_ip"`
	// The networking tier used for configuring this instance. One of PREMIUM or STANDARD.
	// +optional
	NetworkTier *string `json:"networkTier,omitempty" tf:"network_tier"`
	// The DNS domain name for the public PTR record.
	// +optional
	PublicPtrDomainName *string `json:"publicPtrDomainName,omitempty" tf:"public_ptr_domain_name"`
}

func (*InstanceFromTemplateSpecNetworkInterfaceAccessConfig) DeepCopy

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

func (*InstanceFromTemplateSpecNetworkInterfaceAccessConfig) DeepCopyInto

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

type InstanceFromTemplateSpecNetworkInterfaceAliasIPRange

type InstanceFromTemplateSpecNetworkInterfaceAliasIPRange struct {
	// The IP CIDR range represented by this alias IP range.
	IpCIDRRange *string `json:"ipCIDRRange" tf:"ip_cidr_range"`
	// The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range.
	// +optional
	SubnetworkRangeName *string `json:"subnetworkRangeName,omitempty" tf:"subnetwork_range_name"`
}

func (*InstanceFromTemplateSpecNetworkInterfaceAliasIPRange) DeepCopy

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

func (*InstanceFromTemplateSpecNetworkInterfaceAliasIPRange) DeepCopyInto

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

type InstanceFromTemplateSpecNetworkInterfaceIpv6AccessConfig added in v0.4.0

type InstanceFromTemplateSpecNetworkInterfaceIpv6AccessConfig struct {
	// The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork associated with the instance will be allocated dynamically.
	// +optional
	ExternalIpv6 *string `json:"externalIpv6,omitempty" tf:"external_ipv6"`
	// The prefix length of the external IPv6 range.
	// +optional
	ExternalIpv6PrefixLength *string `json:"externalIpv6PrefixLength,omitempty" tf:"external_ipv6_prefix_length"`
	// The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM tier is valid for IPv6
	NetworkTier *string `json:"networkTier" tf:"network_tier"`
	// The domain name to be used when creating DNSv6 records for the external IPv6 ranges.
	// +optional
	PublicPtrDomainName *string `json:"publicPtrDomainName,omitempty" tf:"public_ptr_domain_name"`
}

func (*InstanceFromTemplateSpecNetworkInterfaceIpv6AccessConfig) DeepCopy added in v0.4.0

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

func (*InstanceFromTemplateSpecNetworkInterfaceIpv6AccessConfig) DeepCopyInto added in v0.4.0

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

type InstanceFromTemplateSpecReservationAffinity

type InstanceFromTemplateSpecReservationAffinity struct {
	// Specifies the label selector for the reservation to use.
	// +optional
	SpecificReservation *InstanceFromTemplateSpecReservationAffinitySpecificReservation `json:"specificReservation,omitempty" tf:"specific_reservation"`
	// The type of reservation from which this instance can consume resources.
	Type *string `json:"type" tf:"type"`
}

func (*InstanceFromTemplateSpecReservationAffinity) DeepCopy

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

func (*InstanceFromTemplateSpecReservationAffinity) DeepCopyInto

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

type InstanceFromTemplateSpecReservationAffinityCodec

type InstanceFromTemplateSpecReservationAffinityCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceFromTemplateSpecReservationAffinityCodec) Decode

func (InstanceFromTemplateSpecReservationAffinityCodec) Encode

func (InstanceFromTemplateSpecReservationAffinityCodec) IsEmpty

type InstanceFromTemplateSpecReservationAffinitySpecificReservation

type InstanceFromTemplateSpecReservationAffinitySpecificReservation struct {
	// Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value.
	Key *string `json:"key" tf:"key"`
	// Corresponds to the label values of a reservation resource.
	Values []string `json:"values" tf:"values"`
}

func (*InstanceFromTemplateSpecReservationAffinitySpecificReservation) DeepCopy

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

func (*InstanceFromTemplateSpecReservationAffinitySpecificReservation) DeepCopyInto

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

type InstanceFromTemplateSpecReservationAffinitySpecificReservationCodec

type InstanceFromTemplateSpecReservationAffinitySpecificReservationCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceFromTemplateSpecReservationAffinitySpecificReservationCodec) Decode

func (InstanceFromTemplateSpecReservationAffinitySpecificReservationCodec) Encode

func (InstanceFromTemplateSpecReservationAffinitySpecificReservationCodec) IsEmpty

type InstanceFromTemplateSpecResource

type InstanceFromTemplateSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Controls for advanced machine-related behavior features.
	// +optional
	AdvancedMachineFeatures *InstanceFromTemplateSpecAdvancedMachineFeatures `json:"advancedMachineFeatures,omitempty" tf:"advanced_machine_features"`
	// If true, allows Terraform to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
	// +optional
	AllowStoppingForUpdate *bool `json:"allowStoppingForUpdate,omitempty" tf:"allow_stopping_for_update"`
	// List of disks attached to the instance
	// +optional
	AttachedDisk []InstanceFromTemplateSpecAttachedDisk `json:"attachedDisk,omitempty" tf:"attached_disk"`
	// The boot disk for the instance.
	// +optional
	BootDisk *InstanceFromTemplateSpecBootDisk `json:"bootDisk,omitempty" tf:"boot_disk"`
	// Whether sending and receiving of packets with non-matching source or destination IPs is allowed.
	// +optional
	CanIPForward *bool `json:"canIPForward,omitempty" tf:"can_ip_forward"`
	// The Confidential VM config being used by the instance.  on_host_maintenance has to be set to TERMINATE or this will fail to create.
	// +optional
	ConfidentialInstanceConfig *InstanceFromTemplateSpecConfidentialInstanceConfig `json:"confidentialInstanceConfig,omitempty" tf:"confidential_instance_config"`
	// The CPU platform used by this instance.
	// +optional
	CpuPlatform *string `json:"cpuPlatform,omitempty" tf:"cpu_platform"`
	// Current status of the instance.
	// +optional
	CurrentStatus *string `json:"currentStatus,omitempty" tf:"current_status"`
	// Whether deletion protection is enabled on this instance.
	// +optional
	DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection"`
	// A brief description of the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Desired status of the instance. Either "RUNNING" or "TERMINATED".
	// +optional
	DesiredStatus *string `json:"desiredStatus,omitempty" tf:"desired_status"`
	// Whether the instance has virtual displays enabled.
	// +optional
	EnableDisplay *bool `json:"enableDisplay,omitempty" tf:"enable_display"`
	// List of the type and count of accelerator cards attached to the instance.
	// +optional
	GuestAccelerator []InstanceFromTemplateSpecGuestAccelerator `json:"guestAccelerator,omitempty" tf:"guest_accelerator"`
	// A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression [a-z]([-a-z0-9]*[a-z0-9]), concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.
	// +optional
	Hostname *string `json:"hostname,omitempty" tf:"hostname"`
	// The server-assigned unique identifier of this instance.
	// +optional
	InstanceID *string `json:"instanceID,omitempty" tf:"instance_id"`
	// The unique fingerprint of the labels.
	// +optional
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint"`
	// A set of key/value label pairs assigned to the instance.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// The machine type to create.
	// +optional
	MachineType *string `json:"machineType,omitempty" tf:"machine_type"`
	// Metadata key/value pairs made available within the instance.
	// +optional
	Metadata *map[string]string `json:"metadata,omitempty" tf:"metadata"`
	// The unique fingerprint of the metadata.
	// +optional
	MetadataFingerprint *string `json:"metadataFingerprint,omitempty" tf:"metadata_fingerprint"`
	// Metadata startup scripts made available within the instance.
	// +optional
	MetadataStartupScript *string `json:"metadataStartupScript,omitempty" tf:"metadata_startup_script"`
	// The minimum CPU platform specified for the VM instance.
	// +optional
	MinCPUPlatform *string `json:"minCPUPlatform,omitempty" tf:"min_cpu_platform"`
	// The name of the instance. One of name or self_link must be provided.
	Name *string `json:"name" tf:"name"`
	// The networks attached to the instance.
	// +optional
	NetworkInterface []InstanceFromTemplateSpecNetworkInterface `json:"networkInterface,omitempty" tf:"network_interface"`
	// The ID of the project in which the resource belongs. If self_link is provided, this value is ignored. If neither self_link nor project are provided, the provider project is used.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Specifies the reservations that this instance can consume from.
	// +optional
	ReservationAffinity *InstanceFromTemplateSpecReservationAffinity `json:"reservationAffinity,omitempty" tf:"reservation_affinity"`
	// A list of short names or self_links of resource policies to attach to the instance. Currently a max of 1 resource policy is supported.
	// +optional
	ResourcePolicies []string `json:"resourcePolicies,omitempty" tf:"resource_policies"`
	// The scheduling strategy being used by the instance.
	// +optional
	Scheduling *InstanceFromTemplateSpecScheduling `json:"scheduling,omitempty" tf:"scheduling"`
	// The scratch disks attached to the instance.
	// +optional
	ScratchDisk []InstanceFromTemplateSpecScratchDisk `json:"scratchDisk,omitempty" tf:"scratch_disk"`
	// The URI of the created resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The service account to attach to the instance.
	// +optional
	ServiceAccount *InstanceFromTemplateSpecServiceAccount `json:"serviceAccount,omitempty" tf:"service_account"`
	// The shielded vm config being used by the instance.
	// +optional
	ShieldedInstanceConfig *InstanceFromTemplateSpecShieldedInstanceConfig `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config"`
	// Name or self link of an instance template to create the instance based on.
	SourceInstanceTemplate *string `json:"sourceInstanceTemplate" tf:"source_instance_template"`
	// The list of tags attached to the instance.
	// +optional
	Tags []string `json:"tags,omitempty" tf:"tags"`
	// The unique fingerprint of the tags.
	// +optional
	TagsFingerprint *string `json:"tagsFingerprint,omitempty" tf:"tags_fingerprint"`
	// The zone of the instance. If self_link is provided, this value is ignored. If neither self_link nor zone are provided, the provider zone is used.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*InstanceFromTemplateSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceFromTemplateSpecResource.

func (*InstanceFromTemplateSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceFromTemplateSpecScheduling

type InstanceFromTemplateSpecScheduling struct {
	// Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user).
	// +optional
	AutomaticRestart *bool `json:"automaticRestart,omitempty" tf:"automatic_restart"`
	// +optional
	MinNodeCpus *int64 `json:"minNodeCpus,omitempty" tf:"min_node_cpus"`
	// Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems.
	// +optional
	NodeAffinities []InstanceFromTemplateSpecSchedulingNodeAffinities `json:"nodeAffinities,omitempty" tf:"node_affinities"`
	// Describes maintenance behavior for the instance. One of MIGRATE or TERMINATE,
	// +optional
	OnHostMaintenance *string `json:"onHostMaintenance,omitempty" tf:"on_host_maintenance"`
	// Whether the instance is preemptible.
	// +optional
	Preemptible *bool `json:"preemptible,omitempty" tf:"preemptible"`
}

func (*InstanceFromTemplateSpecScheduling) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceFromTemplateSpecScheduling.

func (*InstanceFromTemplateSpecScheduling) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceFromTemplateSpecSchedulingCodec

type InstanceFromTemplateSpecSchedulingCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceFromTemplateSpecSchedulingCodec) Decode

func (InstanceFromTemplateSpecSchedulingCodec) Encode

func (InstanceFromTemplateSpecSchedulingCodec) IsEmpty

type InstanceFromTemplateSpecSchedulingNodeAffinities

type InstanceFromTemplateSpecSchedulingNodeAffinities struct {
	Key      *string  `json:"key" tf:"key"`
	Operator *string  `json:"operator" tf:"operator"`
	Values   []string `json:"values" tf:"values"`
}

func (*InstanceFromTemplateSpecSchedulingNodeAffinities) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceFromTemplateSpecSchedulingNodeAffinities.

func (*InstanceFromTemplateSpecSchedulingNodeAffinities) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceFromTemplateSpecScratchDisk

type InstanceFromTemplateSpecScratchDisk struct {
	// The disk interface used for attaching this disk. One of SCSI or NVME.
	Interface *string `json:"interface" tf:"interface"`
}

func (*InstanceFromTemplateSpecScratchDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceFromTemplateSpecScratchDisk.

func (*InstanceFromTemplateSpecScratchDisk) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceFromTemplateSpecServiceAccount

type InstanceFromTemplateSpecServiceAccount struct {
	// The service account e-mail address.
	// +optional
	Email *string `json:"email,omitempty" tf:"email"`
	// A list of service scopes.
	Scopes []string `json:"scopes" tf:"scopes"`
}

func (*InstanceFromTemplateSpecServiceAccount) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceFromTemplateSpecServiceAccount.

func (*InstanceFromTemplateSpecServiceAccount) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceFromTemplateSpecServiceAccountCodec

type InstanceFromTemplateSpecServiceAccountCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceFromTemplateSpecServiceAccountCodec) Decode

func (InstanceFromTemplateSpecServiceAccountCodec) Encode

func (InstanceFromTemplateSpecServiceAccountCodec) IsEmpty

type InstanceFromTemplateSpecShieldedInstanceConfig

type InstanceFromTemplateSpecShieldedInstanceConfig struct {
	// Whether integrity monitoring is enabled for the instance.
	// +optional
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring"`
	// Whether secure boot is enabled for the instance.
	// +optional
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot"`
	// Whether the instance uses vTPM.
	// +optional
	EnableVtpm *bool `json:"enableVtpm,omitempty" tf:"enable_vtpm"`
}

func (*InstanceFromTemplateSpecShieldedInstanceConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceFromTemplateSpecShieldedInstanceConfig.

func (*InstanceFromTemplateSpecShieldedInstanceConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceFromTemplateSpecShieldedInstanceConfigCodec

type InstanceFromTemplateSpecShieldedInstanceConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceFromTemplateSpecShieldedInstanceConfigCodec) Decode

func (InstanceFromTemplateSpecShieldedInstanceConfigCodec) Encode

func (InstanceFromTemplateSpecShieldedInstanceConfigCodec) IsEmpty

type InstanceFromTemplateStatus

type InstanceFromTemplateStatus 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 (*InstanceFromTemplateStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceFromTemplateStatus.

func (*InstanceFromTemplateStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroup

type InstanceGroup struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceGroupSpec   `json:"spec,omitempty"`
	Status            InstanceGroupStatus `json:"status,omitempty"`
}

func (*InstanceGroup) DeepCopy

func (in *InstanceGroup) DeepCopy() *InstanceGroup

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroup.

func (*InstanceGroup) DeepCopyInto

func (in *InstanceGroup) DeepCopyInto(out *InstanceGroup)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceGroup) DeepCopyObject

func (in *InstanceGroup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*InstanceGroup) SetupWebhookWithManager

func (r *InstanceGroup) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*InstanceGroup) ValidateCreate

func (r *InstanceGroup) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InstanceGroup) ValidateDelete

func (r *InstanceGroup) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InstanceGroup) ValidateUpdate

func (r *InstanceGroup) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InstanceGroupList

type InstanceGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of InstanceGroup CRD objects
	Items []InstanceGroup `json:"items,omitempty"`
}

InstanceGroupList is a list of InstanceGroups

func (*InstanceGroupList) DeepCopy

func (in *InstanceGroupList) DeepCopy() *InstanceGroupList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupList.

func (*InstanceGroupList) DeepCopyInto

func (in *InstanceGroupList) DeepCopyInto(out *InstanceGroupList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceGroupList) DeepCopyObject

func (in *InstanceGroupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InstanceGroupManager

type InstanceGroupManager struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceGroupManagerSpec   `json:"spec,omitempty"`
	Status            InstanceGroupManagerStatus `json:"status,omitempty"`
}

func (*InstanceGroupManager) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManager.

func (*InstanceGroupManager) DeepCopyInto

func (in *InstanceGroupManager) DeepCopyInto(out *InstanceGroupManager)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceGroupManager) DeepCopyObject

func (in *InstanceGroupManager) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*InstanceGroupManager) SetupWebhookWithManager

func (r *InstanceGroupManager) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*InstanceGroupManager) ValidateCreate

func (r *InstanceGroupManager) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InstanceGroupManager) ValidateDelete

func (r *InstanceGroupManager) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InstanceGroupManager) ValidateUpdate

func (r *InstanceGroupManager) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InstanceGroupManagerList

type InstanceGroupManagerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of InstanceGroupManager CRD objects
	Items []InstanceGroupManager `json:"items,omitempty"`
}

InstanceGroupManagerList is a list of InstanceGroupManagers

func (*InstanceGroupManagerList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerList.

func (*InstanceGroupManagerList) DeepCopyInto

func (in *InstanceGroupManagerList) DeepCopyInto(out *InstanceGroupManagerList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceGroupManagerList) DeepCopyObject

func (in *InstanceGroupManagerList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InstanceGroupManagerSpec

type InstanceGroupManagerSpec struct {
	State *InstanceGroupManagerSpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceGroupManagerSpecResource `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 (*InstanceGroupManagerSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpec.

func (*InstanceGroupManagerSpec) DeepCopyInto

func (in *InstanceGroupManagerSpec) DeepCopyInto(out *InstanceGroupManagerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecAutoHealingPolicies

type InstanceGroupManagerSpecAutoHealingPolicies struct {
	// The health check resource that signals autohealing.
	HealthCheck *string `json:"healthCheck" tf:"health_check"`
	// The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. Between 0 and 3600.
	InitialDelaySec *int64 `json:"initialDelaySec" tf:"initial_delay_sec"`
}

func (*InstanceGroupManagerSpecAutoHealingPolicies) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecAutoHealingPolicies.

func (*InstanceGroupManagerSpecAutoHealingPolicies) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecAutoHealingPoliciesCodec

type InstanceGroupManagerSpecAutoHealingPoliciesCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceGroupManagerSpecAutoHealingPoliciesCodec) Decode

func (InstanceGroupManagerSpecAutoHealingPoliciesCodec) Encode

func (InstanceGroupManagerSpecAutoHealingPoliciesCodec) IsEmpty

type InstanceGroupManagerSpecNamedPort

type InstanceGroupManagerSpecNamedPort struct {
	// The name of the port.
	Name *string `json:"name" tf:"name"`
	// The port number.
	Port *int64 `json:"port" tf:"port"`
}

func (*InstanceGroupManagerSpecNamedPort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecNamedPort.

func (*InstanceGroupManagerSpecNamedPort) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecResource

type InstanceGroupManagerSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The autohealing policies for this managed instance group. You can specify only one value.
	// +optional
	AutoHealingPolicies *InstanceGroupManagerSpecAutoHealingPolicies `json:"autoHealingPolicies,omitempty" tf:"auto_healing_policies"`
	// The base instance name to use for instances in this group. The value must be a valid RFC1035 name. Supported characters are lowercase letters, numbers, and hyphens (-). Instances are named by appending a hyphen and a random four-character string to the base instance name.
	BaseInstanceName *string `json:"baseInstanceName" tf:"base_instance_name"`
	// An optional textual description of the instance group manager.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The fingerprint of the instance group manager.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// The full URL of the instance group created by the manager.
	// +optional
	InstanceGroup *string `json:"instanceGroup,omitempty" tf:"instance_group"`
	// The name of the instance group manager. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens.
	Name *string `json:"name" tf:"name"`
	// The named port configuration.
	// +optional
	NamedPort []InstanceGroupManagerSpecNamedPort `json:"namedPort,omitempty" tf:"named_port"`
	// +optional
	Operation *string `json:"operation,omitempty" tf:"operation"`
	// 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"`
	// The URL of the created resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Disks created on the instances that will be preserved on instance delete, update, etc.
	// +optional
	StatefulDisk []InstanceGroupManagerSpecStatefulDisk `json:"statefulDisk,omitempty" tf:"stateful_disk"`
	// The status of this managed instance group.
	// +optional
	Status []InstanceGroupManagerSpecStatus `json:"status,omitempty" tf:"status"`
	// The full URL of all target pools to which new instances in the group are added. Updating the target pools attribute does not affect existing instances.
	// +optional
	TargetPools []string `json:"targetPools,omitempty" tf:"target_pools"`
	// The target number of running instances for this managed instance group. This value should always be explicitly set unless this resource is attached to an autoscaler, in which case it should never be set. Defaults to 0.
	// +optional
	TargetSize *int64 `json:"targetSize,omitempty" tf:"target_size"`
	// The update policy for this managed instance group.
	// +optional
	UpdatePolicy *InstanceGroupManagerSpecUpdatePolicy `json:"updatePolicy,omitempty" tf:"update_policy"`
	// Application versions managed by this instance group. Each version deals with a specific instance template, allowing canary release scenarios.
	Version []InstanceGroupManagerSpecVersion `json:"version" tf:"version"`
	// Whether to wait for all instances to be created/updated before returning. Note that if this is set to true and the operation does not succeed, Terraform will continue trying until it times out.
	// +optional
	WaitForInstances *bool `json:"waitForInstances,omitempty" tf:"wait_for_instances"`
	// When used with wait_for_instances specifies the status to wait for. When STABLE is specified this resource will wait until the instances are stable before returning. When UPDATED is set, it will wait for the version target to be reached and any per instance configs to be effective as well as all instances to be stable before returning.
	// +optional
	WaitForInstancesStatus *string `json:"waitForInstancesStatus,omitempty" tf:"wait_for_instances_status"`
	// The zone that instances in this group should be created in.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*InstanceGroupManagerSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecResource.

func (*InstanceGroupManagerSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecStatefulDisk

type InstanceGroupManagerSpecStatefulDisk struct {
	// A value that prescribes what should happen to the stateful disk when the VM instance is deleted. The available options are NEVER and ON_PERMANENT_INSTANCE_DELETION. NEVER - detach the disk when the VM is deleted, but do not delete the disk. ON_PERMANENT_INSTANCE_DELETION will delete the stateful disk when the VM is permanently deleted from the instance group. The default is NEVER.
	// +optional
	DeleteRule *string `json:"deleteRule,omitempty" tf:"delete_rule"`
	// The device name of the disk to be attached.
	DeviceName *string `json:"deviceName" tf:"device_name"`
}

func (*InstanceGroupManagerSpecStatefulDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecStatefulDisk.

func (*InstanceGroupManagerSpecStatefulDisk) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecStatus

type InstanceGroupManagerSpecStatus struct {
	// A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.
	// +optional
	IsStable *bool `json:"isStable,omitempty" tf:"is_stable"`
	// Stateful status of the given Instance Group Manager.
	// +optional
	Stateful []InstanceGroupManagerSpecStatusStateful `json:"stateful,omitempty" tf:"stateful"`
	// A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.
	// +optional
	VersionTarget []InstanceGroupManagerSpecStatusVersionTarget `json:"versionTarget,omitempty" tf:"version_target"`
}

func (*InstanceGroupManagerSpecStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecStatus.

func (*InstanceGroupManagerSpecStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecStatusStateful

type InstanceGroupManagerSpecStatusStateful struct {
	// A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
	// +optional
	HasStatefulConfig *bool `json:"hasStatefulConfig,omitempty" tf:"has_stateful_config"`
	// Status of per-instance configs on the instance.
	// +optional
	PerInstanceConfigs []InstanceGroupManagerSpecStatusStatefulPerInstanceConfigs `json:"perInstanceConfigs,omitempty" tf:"per_instance_configs"`
}

func (*InstanceGroupManagerSpecStatusStateful) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecStatusStateful.

func (*InstanceGroupManagerSpecStatusStateful) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecStatusStatefulPerInstanceConfigs

type InstanceGroupManagerSpecStatusStatefulPerInstanceConfigs struct {
	// A bit indicating if all of the group's per-instance configs (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.
	// +optional
	AllEffective *bool `json:"allEffective,omitempty" tf:"all_effective"`
}

func (*InstanceGroupManagerSpecStatusStatefulPerInstanceConfigs) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecStatusStatefulPerInstanceConfigs.

func (*InstanceGroupManagerSpecStatusStatefulPerInstanceConfigs) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecStatusVersionTarget

type InstanceGroupManagerSpecStatusVersionTarget struct {
	// A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.
	// +optional
	IsReached *bool `json:"isReached,omitempty" tf:"is_reached"`
}

func (*InstanceGroupManagerSpecStatusVersionTarget) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecStatusVersionTarget.

func (*InstanceGroupManagerSpecStatusVersionTarget) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecUpdatePolicy

type InstanceGroupManagerSpecUpdatePolicy struct {
	// The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with max_surge_percent. If neither is set, defaults to 1
	// +optional
	MaxSurgeFixed *int64 `json:"maxSurgeFixed,omitempty" tf:"max_surge_fixed"`
	// The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with max_surge_fixed.
	// +optional
	MaxSurgePercent *int64 `json:"maxSurgePercent,omitempty" tf:"max_surge_percent"`
	// The maximum number of instances that can be unavailable during the update process. Conflicts with max_unavailable_percent. If neither is set, defaults to 1.
	// +optional
	MaxUnavailableFixed *int64 `json:"maxUnavailableFixed,omitempty" tf:"max_unavailable_fixed"`
	// The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with max_unavailable_fixed.
	// +optional
	MaxUnavailablePercent *int64 `json:"maxUnavailablePercent,omitempty" tf:"max_unavailable_percent"`
	// Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a RESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.
	MinimalAction *string `json:"minimalAction" tf:"minimal_action"`
	// The instance replacement method for managed instance groups. Valid values are: "RECREATE", "SUBSTITUTE". If SUBSTITUTE (default), the group replaces VM instances with new instances that have randomly generated names. If RECREATE, instance names are preserved.  You must also set max_unavailable_fixed or max_unavailable_percent to be greater than 0.
	// +optional
	ReplacementMethod *string `json:"replacementMethod,omitempty" tf:"replacement_method"`
	// The type of update process. You can specify either PROACTIVE so that the instance group manager proactively executes actions in order to bring instances to their target versions or OPPORTUNISTIC so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls).
	Type *string `json:"type" tf:"type"`
}

func (*InstanceGroupManagerSpecUpdatePolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecUpdatePolicy.

func (*InstanceGroupManagerSpecUpdatePolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecUpdatePolicyCodec

type InstanceGroupManagerSpecUpdatePolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceGroupManagerSpecUpdatePolicyCodec) Decode

func (InstanceGroupManagerSpecUpdatePolicyCodec) Encode

func (InstanceGroupManagerSpecUpdatePolicyCodec) IsEmpty

type InstanceGroupManagerSpecVersion

type InstanceGroupManagerSpecVersion struct {
	// The full URL to an instance template from which all new instances of this version will be created.
	InstanceTemplate *string `json:"instanceTemplate" tf:"instance_template"`
	// Version name.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// The number of instances calculated as a fixed number or a percentage depending on the settings.
	// +optional
	TargetSize *InstanceGroupManagerSpecVersionTargetSize `json:"targetSize,omitempty" tf:"target_size"`
}

func (*InstanceGroupManagerSpecVersion) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecVersion.

func (*InstanceGroupManagerSpecVersion) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecVersionTargetSize

type InstanceGroupManagerSpecVersionTargetSize struct {
	// The number of instances which are managed for this version. Conflicts with percent.
	// +optional
	Fixed *int64 `json:"fixed,omitempty" tf:"fixed"`
	// The number of instances (calculated as percentage) which are managed for this version. Conflicts with fixed. Note that when using percent, rounding will be in favor of explicitly set target_size values; a managed instance group with 2 instances and 2 versions, one of which has a target_size.percent of 60 will create 2 instances of that version.
	// +optional
	Percent *int64 `json:"percent,omitempty" tf:"percent"`
}

func (*InstanceGroupManagerSpecVersionTargetSize) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerSpecVersionTargetSize.

func (*InstanceGroupManagerSpecVersionTargetSize) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupManagerSpecVersionTargetSizeCodec

type InstanceGroupManagerSpecVersionTargetSizeCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceGroupManagerSpecVersionTargetSizeCodec) Decode

func (InstanceGroupManagerSpecVersionTargetSizeCodec) Encode

func (InstanceGroupManagerSpecVersionTargetSizeCodec) IsEmpty

type InstanceGroupManagerStatus

type InstanceGroupManagerStatus 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 (*InstanceGroupManagerStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupManagerStatus.

func (*InstanceGroupManagerStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupNamedPort

type InstanceGroupNamedPort struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceGroupNamedPortSpec   `json:"spec,omitempty"`
	Status            InstanceGroupNamedPortStatus `json:"status,omitempty"`
}

func (*InstanceGroupNamedPort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupNamedPort.

func (*InstanceGroupNamedPort) DeepCopyInto

func (in *InstanceGroupNamedPort) DeepCopyInto(out *InstanceGroupNamedPort)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceGroupNamedPort) DeepCopyObject

func (in *InstanceGroupNamedPort) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*InstanceGroupNamedPort) SetupWebhookWithManager

func (r *InstanceGroupNamedPort) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*InstanceGroupNamedPort) ValidateCreate

func (r *InstanceGroupNamedPort) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InstanceGroupNamedPort) ValidateDelete

func (r *InstanceGroupNamedPort) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InstanceGroupNamedPort) ValidateUpdate

func (r *InstanceGroupNamedPort) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InstanceGroupNamedPortList

type InstanceGroupNamedPortList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of InstanceGroupNamedPort CRD objects
	Items []InstanceGroupNamedPort `json:"items,omitempty"`
}

InstanceGroupNamedPortList is a list of InstanceGroupNamedPorts

func (*InstanceGroupNamedPortList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupNamedPortList.

func (*InstanceGroupNamedPortList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceGroupNamedPortList) DeepCopyObject

func (in *InstanceGroupNamedPortList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InstanceGroupNamedPortSpec

type InstanceGroupNamedPortSpec struct {
	State *InstanceGroupNamedPortSpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceGroupNamedPortSpecResource `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 (*InstanceGroupNamedPortSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupNamedPortSpec.

func (*InstanceGroupNamedPortSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupNamedPortSpecResource

type InstanceGroupNamedPortSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The name of the instance group.
	Group *string `json:"group" tf:"group"`
	// The name for this named port. The name must be 1-63 characters
	// long, and comply with RFC1035.
	Name *string `json:"name" tf:"name"`
	// The port number, which can be a value between 1 and 65535.
	Port *int64 `json:"port" tf:"port"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The zone of the instance group.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*InstanceGroupNamedPortSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupNamedPortSpecResource.

func (*InstanceGroupNamedPortSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupNamedPortStatus

type InstanceGroupNamedPortStatus 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 (*InstanceGroupNamedPortStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupNamedPortStatus.

func (*InstanceGroupNamedPortStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupSpec

type InstanceGroupSpec struct {
	State *InstanceGroupSpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceGroupSpecResource `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 (*InstanceGroupSpec) DeepCopy

func (in *InstanceGroupSpec) DeepCopy() *InstanceGroupSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupSpec.

func (*InstanceGroupSpec) DeepCopyInto

func (in *InstanceGroupSpec) DeepCopyInto(out *InstanceGroupSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupSpecNamedPort

type InstanceGroupSpecNamedPort struct {
	// The name which the port will be mapped to.
	Name *string `json:"name" tf:"name"`
	// The port number to map the name to.
	Port *int64 `json:"port" tf:"port"`
}

func (*InstanceGroupSpecNamedPort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupSpecNamedPort.

func (*InstanceGroupSpecNamedPort) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupSpecResource

type InstanceGroupSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// An optional textual description of the instance group.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// List of instances in the group. They should be given as self_link URLs. When adding instances they must all be in the same network and zone as the instance group.
	// +optional
	Instances []string `json:"instances,omitempty" tf:"instances"`
	// The name of the instance group. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens.
	Name *string `json:"name" tf:"name"`
	// The named port configuration.
	// +optional
	NamedPort []InstanceGroupSpecNamedPort `json:"namedPort,omitempty" tf:"named_port"`
	// The URL of the network the instance group is in. If this is different from the network where the instances are in, the creation fails. Defaults to the network where the instances are in (if neither network nor instances is specified, this field will be blank).
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// 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"`
	// The URI of the created resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The number of instances in the group.
	// +optional
	Size *int64 `json:"size,omitempty" tf:"size"`
	// The zone that this instance group should be created in.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*InstanceGroupSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupSpecResource.

func (*InstanceGroupSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceGroupStatus

type InstanceGroupStatus 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 (*InstanceGroupStatus) DeepCopy

func (in *InstanceGroupStatus) DeepCopy() *InstanceGroupStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceGroupStatus.

func (*InstanceGroupStatus) DeepCopyInto

func (in *InstanceGroupStatus) DeepCopyInto(out *InstanceGroupStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamBinding

type InstanceIamBinding struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceIamBindingSpec   `json:"spec,omitempty"`
	Status            InstanceIamBindingStatus `json:"status,omitempty"`
}

func (*InstanceIamBinding) DeepCopy

func (in *InstanceIamBinding) DeepCopy() *InstanceIamBinding

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamBinding.

func (*InstanceIamBinding) DeepCopyInto

func (in *InstanceIamBinding) DeepCopyInto(out *InstanceIamBinding)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceIamBinding) DeepCopyObject

func (in *InstanceIamBinding) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*InstanceIamBinding) SetupWebhookWithManager

func (r *InstanceIamBinding) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*InstanceIamBinding) ValidateCreate

func (r *InstanceIamBinding) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InstanceIamBinding) ValidateDelete

func (r *InstanceIamBinding) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InstanceIamBinding) ValidateUpdate

func (r *InstanceIamBinding) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InstanceIamBindingList

type InstanceIamBindingList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of InstanceIamBinding CRD objects
	Items []InstanceIamBinding `json:"items,omitempty"`
}

InstanceIamBindingList is a list of InstanceIamBindings

func (*InstanceIamBindingList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamBindingList.

func (*InstanceIamBindingList) DeepCopyInto

func (in *InstanceIamBindingList) DeepCopyInto(out *InstanceIamBindingList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceIamBindingList) DeepCopyObject

func (in *InstanceIamBindingList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InstanceIamBindingSpec

type InstanceIamBindingSpec struct {
	State *InstanceIamBindingSpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceIamBindingSpecResource `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 (*InstanceIamBindingSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamBindingSpec.

func (*InstanceIamBindingSpec) DeepCopyInto

func (in *InstanceIamBindingSpec) DeepCopyInto(out *InstanceIamBindingSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamBindingSpecCondition

type InstanceIamBindingSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*InstanceIamBindingSpecCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamBindingSpecCondition.

func (*InstanceIamBindingSpecCondition) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamBindingSpecConditionCodec

type InstanceIamBindingSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceIamBindingSpecConditionCodec) Decode

func (InstanceIamBindingSpecConditionCodec) Encode

func (InstanceIamBindingSpecConditionCodec) IsEmpty

type InstanceIamBindingSpecResource

type InstanceIamBindingSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Condition *InstanceIamBindingSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag         *string  `json:"etag,omitempty" tf:"etag"`
	InstanceName *string  `json:"instanceName" tf:"instance_name"`
	Members      []string `json:"members" tf:"members"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	Role    *string `json:"role" tf:"role"`
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*InstanceIamBindingSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamBindingSpecResource.

func (*InstanceIamBindingSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamBindingStatus

type InstanceIamBindingStatus 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 (*InstanceIamBindingStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamBindingStatus.

func (*InstanceIamBindingStatus) DeepCopyInto

func (in *InstanceIamBindingStatus) DeepCopyInto(out *InstanceIamBindingStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamMember

type InstanceIamMember struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceIamMemberSpec   `json:"spec,omitempty"`
	Status            InstanceIamMemberStatus `json:"status,omitempty"`
}

func (*InstanceIamMember) DeepCopy

func (in *InstanceIamMember) DeepCopy() *InstanceIamMember

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamMember.

func (*InstanceIamMember) DeepCopyInto

func (in *InstanceIamMember) DeepCopyInto(out *InstanceIamMember)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceIamMember) DeepCopyObject

func (in *InstanceIamMember) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*InstanceIamMember) SetupWebhookWithManager

func (r *InstanceIamMember) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*InstanceIamMember) ValidateCreate

func (r *InstanceIamMember) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InstanceIamMember) ValidateDelete

func (r *InstanceIamMember) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InstanceIamMember) ValidateUpdate

func (r *InstanceIamMember) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InstanceIamMemberList

type InstanceIamMemberList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of InstanceIamMember CRD objects
	Items []InstanceIamMember `json:"items,omitempty"`
}

InstanceIamMemberList is a list of InstanceIamMembers

func (*InstanceIamMemberList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamMemberList.

func (*InstanceIamMemberList) DeepCopyInto

func (in *InstanceIamMemberList) DeepCopyInto(out *InstanceIamMemberList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceIamMemberList) DeepCopyObject

func (in *InstanceIamMemberList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InstanceIamMemberSpec

type InstanceIamMemberSpec struct {
	State *InstanceIamMemberSpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceIamMemberSpecResource `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 (*InstanceIamMemberSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamMemberSpec.

func (*InstanceIamMemberSpec) DeepCopyInto

func (in *InstanceIamMemberSpec) DeepCopyInto(out *InstanceIamMemberSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamMemberSpecCondition

type InstanceIamMemberSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*InstanceIamMemberSpecCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamMemberSpecCondition.

func (*InstanceIamMemberSpecCondition) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamMemberSpecConditionCodec

type InstanceIamMemberSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceIamMemberSpecConditionCodec) Decode

func (InstanceIamMemberSpecConditionCodec) Encode

func (InstanceIamMemberSpecConditionCodec) IsEmpty

type InstanceIamMemberSpecResource

type InstanceIamMemberSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Condition *InstanceIamMemberSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag         *string `json:"etag,omitempty" tf:"etag"`
	InstanceName *string `json:"instanceName" tf:"instance_name"`
	Member       *string `json:"member" tf:"member"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	Role    *string `json:"role" tf:"role"`
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*InstanceIamMemberSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamMemberSpecResource.

func (*InstanceIamMemberSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamMemberStatus

type InstanceIamMemberStatus 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 (*InstanceIamMemberStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamMemberStatus.

func (*InstanceIamMemberStatus) DeepCopyInto

func (in *InstanceIamMemberStatus) DeepCopyInto(out *InstanceIamMemberStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamPolicy

type InstanceIamPolicy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceIamPolicySpec   `json:"spec,omitempty"`
	Status            InstanceIamPolicyStatus `json:"status,omitempty"`
}

func (*InstanceIamPolicy) DeepCopy

func (in *InstanceIamPolicy) DeepCopy() *InstanceIamPolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamPolicy.

func (*InstanceIamPolicy) DeepCopyInto

func (in *InstanceIamPolicy) DeepCopyInto(out *InstanceIamPolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceIamPolicy) DeepCopyObject

func (in *InstanceIamPolicy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*InstanceIamPolicy) SetupWebhookWithManager

func (r *InstanceIamPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*InstanceIamPolicy) ValidateCreate

func (r *InstanceIamPolicy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InstanceIamPolicy) ValidateDelete

func (r *InstanceIamPolicy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InstanceIamPolicy) ValidateUpdate

func (r *InstanceIamPolicy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InstanceIamPolicyList

type InstanceIamPolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of InstanceIamPolicy CRD objects
	Items []InstanceIamPolicy `json:"items,omitempty"`
}

InstanceIamPolicyList is a list of InstanceIamPolicys

func (*InstanceIamPolicyList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamPolicyList.

func (*InstanceIamPolicyList) DeepCopyInto

func (in *InstanceIamPolicyList) DeepCopyInto(out *InstanceIamPolicyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceIamPolicyList) DeepCopyObject

func (in *InstanceIamPolicyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InstanceIamPolicySpec

type InstanceIamPolicySpec struct {
	State *InstanceIamPolicySpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceIamPolicySpecResource `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 (*InstanceIamPolicySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamPolicySpec.

func (*InstanceIamPolicySpec) DeepCopyInto

func (in *InstanceIamPolicySpec) DeepCopyInto(out *InstanceIamPolicySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamPolicySpecResource

type InstanceIamPolicySpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Etag         *string `json:"etag,omitempty" tf:"etag"`
	InstanceName *string `json:"instanceName" tf:"instance_name"`
	PolicyData   *string `json:"policyData" tf:"policy_data"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*InstanceIamPolicySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamPolicySpecResource.

func (*InstanceIamPolicySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceIamPolicyStatus

type InstanceIamPolicyStatus 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 (*InstanceIamPolicyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceIamPolicyStatus.

func (*InstanceIamPolicyStatus) DeepCopyInto

func (in *InstanceIamPolicyStatus) DeepCopyInto(out *InstanceIamPolicyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceList

type InstanceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Instance CRD objects
	Items []Instance `json:"items,omitempty"`
}

InstanceList is a list of Instances

func (*InstanceList) DeepCopy

func (in *InstanceList) DeepCopy() *InstanceList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceList.

func (*InstanceList) DeepCopyInto

func (in *InstanceList) DeepCopyInto(out *InstanceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceList) DeepCopyObject

func (in *InstanceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InstanceSpec

type InstanceSpec struct {
	State *InstanceSpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceSpecResource `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 (*InstanceSpec) DeepCopy

func (in *InstanceSpec) DeepCopy() *InstanceSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpec.

func (*InstanceSpec) DeepCopyInto

func (in *InstanceSpec) DeepCopyInto(out *InstanceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecAdvancedMachineFeatures added in v0.4.0

type InstanceSpecAdvancedMachineFeatures struct {
	// Whether to enable nested virtualization or not.
	// +optional
	EnableNestedVirtualization *bool `json:"enableNestedVirtualization,omitempty" tf:"enable_nested_virtualization"`
	// The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.
	// +optional
	ThreadsPerCore *int64 `json:"threadsPerCore,omitempty" tf:"threads_per_core"`
}

func (*InstanceSpecAdvancedMachineFeatures) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecAdvancedMachineFeatures.

func (*InstanceSpecAdvancedMachineFeatures) DeepCopyInto added in v0.4.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecAdvancedMachineFeaturesCodec added in v0.4.0

type InstanceSpecAdvancedMachineFeaturesCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceSpecAdvancedMachineFeaturesCodec) Decode added in v0.4.0

func (InstanceSpecAdvancedMachineFeaturesCodec) Encode added in v0.4.0

func (InstanceSpecAdvancedMachineFeaturesCodec) IsEmpty added in v0.4.0

type InstanceSpecAttachedDisk

type InstanceSpecAttachedDisk struct {
	// Name with which the attached disk is accessible under /dev/disk/by-id/
	// +optional
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name"`
	// A 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
	// +optional
	DiskEncryptionKeyRaw *string `json:"-" sensitive:"true" tf:"disk_encryption_key_raw"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
	// +optional
	DiskEncryptionKeySha256 *string `json:"diskEncryptionKeySha256,omitempty" tf:"disk_encryption_key_sha256"`
	// The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
	// +optional
	KmsKeySelfLink *string `json:"kmsKeySelfLink,omitempty" tf:"kms_key_self_link"`
	// Read/write mode for the disk. One of "READ_ONLY" or "READ_WRITE".
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// The name or self_link of the disk attached to this instance.
	Source *string `json:"source" tf:"source"`
}

func (*InstanceSpecAttachedDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecAttachedDisk.

func (*InstanceSpecAttachedDisk) DeepCopyInto

func (in *InstanceSpecAttachedDisk) DeepCopyInto(out *InstanceSpecAttachedDisk)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecBootDisk

type InstanceSpecBootDisk struct {
	// Whether the disk will be auto-deleted when the instance is deleted.
	// +optional
	AutoDelete *bool `json:"autoDelete,omitempty" tf:"auto_delete"`
	// Name with which attached disk will be accessible under /dev/disk/by-id/
	// +optional
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name"`
	// A 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
	// +optional
	DiskEncryptionKeyRaw *string `json:"-" sensitive:"true" tf:"disk_encryption_key_raw"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.
	// +optional
	DiskEncryptionKeySha256 *string `json:"diskEncryptionKeySha256,omitempty" tf:"disk_encryption_key_sha256"`
	// Parameters with which a disk was created alongside the instance.
	// +optional
	InitializeParams *InstanceSpecBootDiskInitializeParams `json:"initializeParams,omitempty" tf:"initialize_params"`
	// The self_link of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kms_key_self_link and disk_encryption_key_raw may be set.
	// +optional
	KmsKeySelfLink *string `json:"kmsKeySelfLink,omitempty" tf:"kms_key_self_link"`
	// Read/write mode for the disk. One of "READ_ONLY" or "READ_WRITE".
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// The name or self_link of the disk attached to this instance.
	// +optional
	Source *string `json:"source,omitempty" tf:"source"`
}

func (*InstanceSpecBootDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecBootDisk.

func (*InstanceSpecBootDisk) DeepCopyInto

func (in *InstanceSpecBootDisk) DeepCopyInto(out *InstanceSpecBootDisk)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecBootDiskCodec

type InstanceSpecBootDiskCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceSpecBootDiskCodec) Decode

func (InstanceSpecBootDiskCodec) Encode

func (InstanceSpecBootDiskCodec) IsEmpty

type InstanceSpecBootDiskInitializeParams

type InstanceSpecBootDiskInitializeParams struct {
	// The image from which this disk was initialised.
	// +optional
	Image *string `json:"image,omitempty" tf:"image"`
	// A set of key/value label pairs assigned to the disk.
	// +optional
	Labels map[string]string `json:"labels,omitempty" tf:"labels"`
	// The size of the image in gigabytes.
	// +optional
	Size *int64 `json:"size,omitempty" tf:"size"`
	// The Google Compute Engine disk type. One of pd-standard, pd-ssd or pd-balanced.
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
}

func (*InstanceSpecBootDiskInitializeParams) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecBootDiskInitializeParams.

func (*InstanceSpecBootDiskInitializeParams) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecBootDiskInitializeParamsCodec

type InstanceSpecBootDiskInitializeParamsCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceSpecBootDiskInitializeParamsCodec) Decode

func (InstanceSpecBootDiskInitializeParamsCodec) Encode

func (InstanceSpecBootDiskInitializeParamsCodec) IsEmpty

type InstanceSpecConfidentialInstanceConfig

type InstanceSpecConfidentialInstanceConfig struct {
	// Defines whether the instance should have confidential compute enabled.
	EnableConfidentialCompute *bool `json:"enableConfidentialCompute" tf:"enable_confidential_compute"`
}

func (*InstanceSpecConfidentialInstanceConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecConfidentialInstanceConfig.

func (*InstanceSpecConfidentialInstanceConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecConfidentialInstanceConfigCodec

type InstanceSpecConfidentialInstanceConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceSpecConfidentialInstanceConfigCodec) Decode

func (InstanceSpecConfidentialInstanceConfigCodec) Encode

func (InstanceSpecConfidentialInstanceConfigCodec) IsEmpty

type InstanceSpecGuestAccelerator

type InstanceSpecGuestAccelerator struct {
	// The number of the guest accelerator cards exposed to this instance.
	Count *int64 `json:"count" tf:"count"`
	// The accelerator type resource exposed to this instance. E.g. nvidia-tesla-k80.
	Type *string `json:"type" tf:"type"`
}

func (*InstanceSpecGuestAccelerator) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecGuestAccelerator.

func (*InstanceSpecGuestAccelerator) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecNetworkInterface

type InstanceSpecNetworkInterface struct {
	// Access configurations, i.e. IPs via which this instance can be accessed via the Internet.
	// +optional
	AccessConfig []InstanceSpecNetworkInterfaceAccessConfig `json:"accessConfig,omitempty" tf:"access_config"`
	// An array of alias IP ranges for this network interface.
	// +optional
	AliasIPRange []InstanceSpecNetworkInterfaceAliasIPRange `json:"aliasIPRange,omitempty" tf:"alias_ip_range"`
	// An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access.
	// +optional
	Ipv6AccessConfig []InstanceSpecNetworkInterfaceIpv6AccessConfig `json:"ipv6AccessConfig,omitempty" tf:"ipv6_access_config"`
	// One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.
	// +optional
	Ipv6AccessType *string `json:"ipv6AccessType,omitempty" tf:"ipv6_access_type"`
	// The name of the interface
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// The name or self_link of the network attached to this interface.
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// The private IP address assigned to the instance.
	// +optional
	NetworkIP *string `json:"networkIP,omitempty" tf:"network_ip"`
	// The type of vNIC to be used on this interface. Possible values:GVNIC, VIRTIO_NET
	// +optional
	NicType *string `json:"nicType,omitempty" tf:"nic_type"`
	// The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified.
	// +optional
	QueueCount *int64 `json:"queueCount,omitempty" tf:"queue_count"`
	// The stack type for this network interface to identify whether the IPv6 feature is enabled or not. If not specified, IPV4_ONLY will be used.
	// +optional
	StackType *string `json:"stackType,omitempty" tf:"stack_type"`
	// The name or self_link of the subnetwork attached to this interface.
	// +optional
	Subnetwork *string `json:"subnetwork,omitempty" tf:"subnetwork"`
	// The project in which the subnetwork belongs.
	// +optional
	SubnetworkProject *string `json:"subnetworkProject,omitempty" tf:"subnetwork_project"`
}

func (*InstanceSpecNetworkInterface) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecNetworkInterface.

func (*InstanceSpecNetworkInterface) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecNetworkInterfaceAccessConfig

type InstanceSpecNetworkInterfaceAccessConfig struct {
	// The IP address that is be 1:1 mapped to the instance's network ip.
	// +optional
	NatIP *string `json:"natIP,omitempty" tf:"nat_ip"`
	// The networking tier used for configuring this instance. One of PREMIUM or STANDARD.
	// +optional
	NetworkTier *string `json:"networkTier,omitempty" tf:"network_tier"`
	// The DNS domain name for the public PTR record.
	// +optional
	PublicPtrDomainName *string `json:"publicPtrDomainName,omitempty" tf:"public_ptr_domain_name"`
}

func (*InstanceSpecNetworkInterfaceAccessConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecNetworkInterfaceAccessConfig.

func (*InstanceSpecNetworkInterfaceAccessConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecNetworkInterfaceAliasIPRange

type InstanceSpecNetworkInterfaceAliasIPRange struct {
	// The IP CIDR range represented by this alias IP range.
	IpCIDRRange *string `json:"ipCIDRRange" tf:"ip_cidr_range"`
	// The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range.
	// +optional
	SubnetworkRangeName *string `json:"subnetworkRangeName,omitempty" tf:"subnetwork_range_name"`
}

func (*InstanceSpecNetworkInterfaceAliasIPRange) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecNetworkInterfaceAliasIPRange.

func (*InstanceSpecNetworkInterfaceAliasIPRange) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecNetworkInterfaceIpv6AccessConfig added in v0.4.0

type InstanceSpecNetworkInterfaceIpv6AccessConfig struct {
	// The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork associated with the instance will be allocated dynamically.
	// +optional
	ExternalIpv6 *string `json:"externalIpv6,omitempty" tf:"external_ipv6"`
	// The prefix length of the external IPv6 range.
	// +optional
	ExternalIpv6PrefixLength *string `json:"externalIpv6PrefixLength,omitempty" tf:"external_ipv6_prefix_length"`
	// The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM tier is valid for IPv6
	NetworkTier *string `json:"networkTier" tf:"network_tier"`
	// The domain name to be used when creating DNSv6 records for the external IPv6 ranges.
	// +optional
	PublicPtrDomainName *string `json:"publicPtrDomainName,omitempty" tf:"public_ptr_domain_name"`
}

func (*InstanceSpecNetworkInterfaceIpv6AccessConfig) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecNetworkInterfaceIpv6AccessConfig.

func (*InstanceSpecNetworkInterfaceIpv6AccessConfig) DeepCopyInto added in v0.4.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecReservationAffinity

type InstanceSpecReservationAffinity struct {
	// Specifies the label selector for the reservation to use.
	// +optional
	SpecificReservation *InstanceSpecReservationAffinitySpecificReservation `json:"specificReservation,omitempty" tf:"specific_reservation"`
	// The type of reservation from which this instance can consume resources.
	Type *string `json:"type" tf:"type"`
}

func (*InstanceSpecReservationAffinity) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecReservationAffinity.

func (*InstanceSpecReservationAffinity) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecReservationAffinityCodec

type InstanceSpecReservationAffinityCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceSpecReservationAffinityCodec) Decode

func (InstanceSpecReservationAffinityCodec) Encode

func (InstanceSpecReservationAffinityCodec) IsEmpty

type InstanceSpecReservationAffinitySpecificReservation

type InstanceSpecReservationAffinitySpecificReservation struct {
	// Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value.
	Key *string `json:"key" tf:"key"`
	// Corresponds to the label values of a reservation resource.
	Values []string `json:"values" tf:"values"`
}

func (*InstanceSpecReservationAffinitySpecificReservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecReservationAffinitySpecificReservation.

func (*InstanceSpecReservationAffinitySpecificReservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecReservationAffinitySpecificReservationCodec

type InstanceSpecReservationAffinitySpecificReservationCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceSpecReservationAffinitySpecificReservationCodec) Decode

func (InstanceSpecReservationAffinitySpecificReservationCodec) Encode

func (InstanceSpecReservationAffinitySpecificReservationCodec) IsEmpty

type InstanceSpecResource

type InstanceSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Controls for advanced machine-related behavior features.
	// +optional
	AdvancedMachineFeatures *InstanceSpecAdvancedMachineFeatures `json:"advancedMachineFeatures,omitempty" tf:"advanced_machine_features"`
	// If true, allows Terraform to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.
	// +optional
	AllowStoppingForUpdate *bool `json:"allowStoppingForUpdate,omitempty" tf:"allow_stopping_for_update"`
	// List of disks attached to the instance
	// +optional
	AttachedDisk []InstanceSpecAttachedDisk `json:"attachedDisk,omitempty" tf:"attached_disk"`
	// The boot disk for the instance.
	BootDisk *InstanceSpecBootDisk `json:"bootDisk" tf:"boot_disk"`
	// Whether sending and receiving of packets with non-matching source or destination IPs is allowed.
	// +optional
	CanIPForward *bool `json:"canIPForward,omitempty" tf:"can_ip_forward"`
	// The Confidential VM config being used by the instance.  on_host_maintenance has to be set to TERMINATE or this will fail to create.
	// +optional
	ConfidentialInstanceConfig *InstanceSpecConfidentialInstanceConfig `json:"confidentialInstanceConfig,omitempty" tf:"confidential_instance_config"`
	// The CPU platform used by this instance.
	// +optional
	CpuPlatform *string `json:"cpuPlatform,omitempty" tf:"cpu_platform"`
	// Current status of the instance.
	// +optional
	CurrentStatus *string `json:"currentStatus,omitempty" tf:"current_status"`
	// Whether deletion protection is enabled on this instance.
	// +optional
	DeletionProtection *bool `json:"deletionProtection,omitempty" tf:"deletion_protection"`
	// A brief description of the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Desired status of the instance. Either "RUNNING" or "TERMINATED".
	// +optional
	DesiredStatus *string `json:"desiredStatus,omitempty" tf:"desired_status"`
	// Whether the instance has virtual displays enabled.
	// +optional
	EnableDisplay *bool `json:"enableDisplay,omitempty" tf:"enable_display"`
	// List of the type and count of accelerator cards attached to the instance.
	// +optional
	GuestAccelerator []InstanceSpecGuestAccelerator `json:"guestAccelerator,omitempty" tf:"guest_accelerator"`
	// A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression [a-z]([-a-z0-9]*[a-z0-9]), concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.
	// +optional
	Hostname *string `json:"hostname,omitempty" tf:"hostname"`
	// The server-assigned unique identifier of this instance.
	// +optional
	InstanceID *string `json:"instanceID,omitempty" tf:"instance_id"`
	// The unique fingerprint of the labels.
	// +optional
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint"`
	// A set of key/value label pairs assigned to the instance.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// The machine type to create.
	MachineType *string `json:"machineType" tf:"machine_type"`
	// Metadata key/value pairs made available within the instance.
	// +optional
	Metadata *map[string]string `json:"metadata,omitempty" tf:"metadata"`
	// The unique fingerprint of the metadata.
	// +optional
	MetadataFingerprint *string `json:"metadataFingerprint,omitempty" tf:"metadata_fingerprint"`
	// Metadata startup scripts made available within the instance.
	// +optional
	MetadataStartupScript *string `json:"metadataStartupScript,omitempty" tf:"metadata_startup_script"`
	// The minimum CPU platform specified for the VM instance.
	// +optional
	MinCPUPlatform *string `json:"minCPUPlatform,omitempty" tf:"min_cpu_platform"`
	// The name of the instance. One of name or self_link must be provided.
	Name *string `json:"name" tf:"name"`
	// The networks attached to the instance.
	NetworkInterface []InstanceSpecNetworkInterface `json:"networkInterface" tf:"network_interface"`
	// The ID of the project in which the resource belongs. If self_link is provided, this value is ignored. If neither self_link nor project are provided, the provider project is used.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Specifies the reservations that this instance can consume from.
	// +optional
	ReservationAffinity *InstanceSpecReservationAffinity `json:"reservationAffinity,omitempty" tf:"reservation_affinity"`
	// A list of short names or self_links of resource policies to attach to the instance. Currently a max of 1 resource policy is supported.
	// +optional
	ResourcePolicies []string `json:"resourcePolicies,omitempty" tf:"resource_policies"`
	// The scheduling strategy being used by the instance.
	// +optional
	Scheduling *InstanceSpecScheduling `json:"scheduling,omitempty" tf:"scheduling"`
	// The scratch disks attached to the instance.
	// +optional
	ScratchDisk []InstanceSpecScratchDisk `json:"scratchDisk,omitempty" tf:"scratch_disk"`
	// The URI of the created resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The service account to attach to the instance.
	// +optional
	ServiceAccount *InstanceSpecServiceAccount `json:"serviceAccount,omitempty" tf:"service_account"`
	// The shielded vm config being used by the instance.
	// +optional
	ShieldedInstanceConfig *InstanceSpecShieldedInstanceConfig `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config"`
	// The list of tags attached to the instance.
	// +optional
	Tags []string `json:"tags,omitempty" tf:"tags"`
	// The unique fingerprint of the tags.
	// +optional
	TagsFingerprint *string `json:"tagsFingerprint,omitempty" tf:"tags_fingerprint"`
	// The zone of the instance. If self_link is provided, this value is ignored. If neither self_link nor zone are provided, the provider zone is used.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*InstanceSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecResource.

func (*InstanceSpecResource) DeepCopyInto

func (in *InstanceSpecResource) DeepCopyInto(out *InstanceSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecScheduling

type InstanceSpecScheduling struct {
	// Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user).
	// +optional
	AutomaticRestart *bool `json:"automaticRestart,omitempty" tf:"automatic_restart"`
	// +optional
	MinNodeCpus *int64 `json:"minNodeCpus,omitempty" tf:"min_node_cpus"`
	// Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems.
	// +optional
	NodeAffinities []InstanceSpecSchedulingNodeAffinities `json:"nodeAffinities,omitempty" tf:"node_affinities"`
	// Describes maintenance behavior for the instance. One of MIGRATE or TERMINATE,
	// +optional
	OnHostMaintenance *string `json:"onHostMaintenance,omitempty" tf:"on_host_maintenance"`
	// Whether the instance is preemptible.
	// +optional
	Preemptible *bool `json:"preemptible,omitempty" tf:"preemptible"`
}

func (*InstanceSpecScheduling) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecScheduling.

func (*InstanceSpecScheduling) DeepCopyInto

func (in *InstanceSpecScheduling) DeepCopyInto(out *InstanceSpecScheduling)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecSchedulingCodec

type InstanceSpecSchedulingCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceSpecSchedulingCodec) Decode

func (InstanceSpecSchedulingCodec) Encode

func (InstanceSpecSchedulingCodec) IsEmpty

type InstanceSpecSchedulingNodeAffinities

type InstanceSpecSchedulingNodeAffinities struct {
	Key      *string  `json:"key" tf:"key"`
	Operator *string  `json:"operator" tf:"operator"`
	Values   []string `json:"values" tf:"values"`
}

func (*InstanceSpecSchedulingNodeAffinities) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecSchedulingNodeAffinities.

func (*InstanceSpecSchedulingNodeAffinities) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecScratchDisk

type InstanceSpecScratchDisk struct {
	// The disk interface used for attaching this disk. One of SCSI or NVME.
	Interface *string `json:"interface" tf:"interface"`
}

func (*InstanceSpecScratchDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecScratchDisk.

func (*InstanceSpecScratchDisk) DeepCopyInto

func (in *InstanceSpecScratchDisk) DeepCopyInto(out *InstanceSpecScratchDisk)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecServiceAccount

type InstanceSpecServiceAccount struct {
	// The service account e-mail address.
	// +optional
	Email *string `json:"email,omitempty" tf:"email"`
	// A list of service scopes.
	Scopes []string `json:"scopes" tf:"scopes"`
}

func (*InstanceSpecServiceAccount) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecServiceAccount.

func (*InstanceSpecServiceAccount) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecServiceAccountCodec

type InstanceSpecServiceAccountCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceSpecServiceAccountCodec) Decode

func (InstanceSpecServiceAccountCodec) Encode

func (InstanceSpecServiceAccountCodec) IsEmpty

type InstanceSpecShieldedInstanceConfig

type InstanceSpecShieldedInstanceConfig struct {
	// Whether integrity monitoring is enabled for the instance.
	// +optional
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring"`
	// Whether secure boot is enabled for the instance.
	// +optional
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot"`
	// Whether the instance uses vTPM.
	// +optional
	EnableVtpm *bool `json:"enableVtpm,omitempty" tf:"enable_vtpm"`
}

func (*InstanceSpecShieldedInstanceConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceSpecShieldedInstanceConfig.

func (*InstanceSpecShieldedInstanceConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceSpecShieldedInstanceConfigCodec

type InstanceSpecShieldedInstanceConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceSpecShieldedInstanceConfigCodec) Decode

func (InstanceSpecShieldedInstanceConfigCodec) Encode

func (InstanceSpecShieldedInstanceConfigCodec) IsEmpty

type InstanceStatus

type InstanceStatus 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 (*InstanceStatus) DeepCopy

func (in *InstanceStatus) DeepCopy() *InstanceStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceStatus.

func (*InstanceStatus) DeepCopyInto

func (in *InstanceStatus) DeepCopyInto(out *InstanceStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplate

type InstanceTemplate struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InstanceTemplateSpec   `json:"spec,omitempty"`
	Status            InstanceTemplateStatus `json:"status,omitempty"`
}

func (*InstanceTemplate) DeepCopy

func (in *InstanceTemplate) DeepCopy() *InstanceTemplate

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplate.

func (*InstanceTemplate) DeepCopyInto

func (in *InstanceTemplate) DeepCopyInto(out *InstanceTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceTemplate) DeepCopyObject

func (in *InstanceTemplate) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*InstanceTemplate) SetupWebhookWithManager

func (r *InstanceTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*InstanceTemplate) ValidateCreate

func (r *InstanceTemplate) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InstanceTemplate) ValidateDelete

func (r *InstanceTemplate) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InstanceTemplate) ValidateUpdate

func (r *InstanceTemplate) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InstanceTemplateList

type InstanceTemplateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of InstanceTemplate CRD objects
	Items []InstanceTemplate `json:"items,omitempty"`
}

InstanceTemplateList is a list of InstanceTemplates

func (*InstanceTemplateList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateList.

func (*InstanceTemplateList) DeepCopyInto

func (in *InstanceTemplateList) DeepCopyInto(out *InstanceTemplateList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InstanceTemplateList) DeepCopyObject

func (in *InstanceTemplateList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InstanceTemplateSpec

type InstanceTemplateSpec struct {
	State *InstanceTemplateSpecResource `json:"state,omitempty" tf:"-"`

	Resource InstanceTemplateSpecResource `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 (*InstanceTemplateSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpec.

func (*InstanceTemplateSpec) DeepCopyInto

func (in *InstanceTemplateSpec) DeepCopyInto(out *InstanceTemplateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecAdvancedMachineFeatures

type InstanceTemplateSpecAdvancedMachineFeatures struct {
	// Whether to enable nested virtualization or not.
	// +optional
	EnableNestedVirtualization *bool `json:"enableNestedVirtualization,omitempty" tf:"enable_nested_virtualization"`
	// The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.
	// +optional
	ThreadsPerCore *int64 `json:"threadsPerCore,omitempty" tf:"threads_per_core"`
}

func (*InstanceTemplateSpecAdvancedMachineFeatures) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecAdvancedMachineFeatures.

func (*InstanceTemplateSpecAdvancedMachineFeatures) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecAdvancedMachineFeaturesCodec

type InstanceTemplateSpecAdvancedMachineFeaturesCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceTemplateSpecAdvancedMachineFeaturesCodec) Decode

func (InstanceTemplateSpecAdvancedMachineFeaturesCodec) Encode

func (InstanceTemplateSpecAdvancedMachineFeaturesCodec) IsEmpty

type InstanceTemplateSpecConfidentialInstanceConfig

type InstanceTemplateSpecConfidentialInstanceConfig struct {
	// Defines whether the instance should have confidential compute enabled.
	EnableConfidentialCompute *bool `json:"enableConfidentialCompute" tf:"enable_confidential_compute"`
}

func (*InstanceTemplateSpecConfidentialInstanceConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecConfidentialInstanceConfig.

func (*InstanceTemplateSpecConfidentialInstanceConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecConfidentialInstanceConfigCodec

type InstanceTemplateSpecConfidentialInstanceConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceTemplateSpecConfidentialInstanceConfigCodec) Decode

func (InstanceTemplateSpecConfidentialInstanceConfigCodec) Encode

func (InstanceTemplateSpecConfidentialInstanceConfigCodec) IsEmpty

type InstanceTemplateSpecDisk

type InstanceTemplateSpecDisk struct {
	// Whether or not the disk should be auto-deleted. This defaults to true.
	// +optional
	AutoDelete *bool `json:"autoDelete,omitempty" tf:"auto_delete"`
	// Indicates that this is a boot disk.
	// +optional
	Boot *bool `json:"boot,omitempty" tf:"boot"`
	// A unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk.
	// +optional
	DeviceName *string `json:"deviceName,omitempty" tf:"device_name"`
	// Encrypts or decrypts a disk using a customer-supplied encryption key.
	// +optional
	DiskEncryptionKey *InstanceTemplateSpecDiskDiskEncryptionKey `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key"`
	// Name of the disk. When not provided, this defaults to the name of the instance.
	// +optional
	DiskName *string `json:"diskName,omitempty" tf:"disk_name"`
	// The size of the image in gigabytes. If not specified, it will inherit the size of its base image. For SCRATCH disks, the size must be exactly 375GB.
	// +optional
	DiskSizeGb *int64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb"`
	// The Google Compute Engine disk type. Can be either "pd-ssd", "local-ssd", "pd-balanced" or "pd-standard".
	// +optional
	DiskType *string `json:"diskType,omitempty" tf:"disk_type"`
	// Specifies the disk interface to use for attaching this disk.
	// +optional
	Interface *string `json:"interface,omitempty" tf:"interface"`
	// A set of key/value label pairs to assign to disks,
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If you are attaching or creating a boot disk, this must read-write mode.
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// A list (short name or id) of resource policies to attach to this disk. Currently a max of 1 resource policy is supported.
	// +optional
	ResourcePolicies []string `json:"resourcePolicies,omitempty" tf:"resource_policies"`
	// The name (not self_link) of the disk (such as those managed by google_compute_disk) to attach. ~> Note: Either source or source_image is required when creating a new instance except for when creating a local SSD.
	// +optional
	Source *string `json:"source,omitempty" tf:"source"`
	// The image from which to initialize this disk. This can be one of: the image's self_link, projects/{project}/global/images/{image}, projects/{project}/global/images/family/{family}, global/images/{image}, global/images/family/{family}, family/{family}, {project}/{family}, {project}/{image}, {family}, or {image}. ~> Note: Either source or source_image is required when creating a new instance except for when creating a local SSD.
	// +optional
	SourceImage *string `json:"sourceImage,omitempty" tf:"source_image"`
	// The type of Google Compute Engine disk, can be either "SCRATCH" or "PERSISTENT".
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
}

func (*InstanceTemplateSpecDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecDisk.

func (*InstanceTemplateSpecDisk) DeepCopyInto

func (in *InstanceTemplateSpecDisk) DeepCopyInto(out *InstanceTemplateSpecDisk)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecDiskDiskEncryptionKey

type InstanceTemplateSpecDiskDiskEncryptionKey struct {
	// The self link of the encryption key that is stored in Google Cloud KMS.
	KmsKeySelfLink *string `json:"kmsKeySelfLink" tf:"kms_key_self_link"`
}

func (*InstanceTemplateSpecDiskDiskEncryptionKey) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecDiskDiskEncryptionKey.

func (*InstanceTemplateSpecDiskDiskEncryptionKey) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecDiskDiskEncryptionKeyCodec

type InstanceTemplateSpecDiskDiskEncryptionKeyCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceTemplateSpecDiskDiskEncryptionKeyCodec) Decode

func (InstanceTemplateSpecDiskDiskEncryptionKeyCodec) Encode

func (InstanceTemplateSpecDiskDiskEncryptionKeyCodec) IsEmpty

type InstanceTemplateSpecGuestAccelerator

type InstanceTemplateSpecGuestAccelerator struct {
	// The number of the guest accelerator cards exposed to this instance.
	Count *int64 `json:"count" tf:"count"`
	// The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.
	Type *string `json:"type" tf:"type"`
}

func (*InstanceTemplateSpecGuestAccelerator) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecGuestAccelerator.

func (*InstanceTemplateSpecGuestAccelerator) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecNetworkInterface

type InstanceTemplateSpecNetworkInterface struct {
	// Access configurations, i.e. IPs via which this instance can be accessed via the Internet. Omit to ensure that the instance is not accessible from the Internet (this means that ssh provisioners will not work unless you are running Terraform can send traffic to the instance's network (e.g. via tunnel or because it is running on another cloud instance on that network). This block can be repeated multiple times.
	// +optional
	AccessConfig []InstanceTemplateSpecNetworkInterfaceAccessConfig `json:"accessConfig,omitempty" tf:"access_config"`
	// An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks.
	// +optional
	AliasIPRange []InstanceTemplateSpecNetworkInterfaceAliasIPRange `json:"aliasIPRange,omitempty" tf:"alias_ip_range"`
	// An array of IPv6 access configurations for this interface. Currently, only one IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig specified, then this instance will have no external IPv6 Internet access.
	// +optional
	Ipv6AccessConfig []InstanceTemplateSpecNetworkInterfaceIpv6AccessConfig `json:"ipv6AccessConfig,omitempty" tf:"ipv6_access_config"`
	// One of EXTERNAL, INTERNAL to indicate whether the IP can be accessed from the Internet. This field is always inherited from its subnetwork.
	// +optional
	Ipv6AccessType *string `json:"ipv6AccessType,omitempty" tf:"ipv6_access_type"`
	// The name of the network_interface.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// The name or self_link of the network to attach this interface to. Use network attribute for Legacy or Auto subnetted networks and subnetwork for custom subnetted networks.
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// The private IP address to assign to the instance. If empty, the address will be automatically assigned.
	// +optional
	NetworkIP *string `json:"networkIP,omitempty" tf:"network_ip"`
	// The type of vNIC to be used on this interface. Possible values:GVNIC, VIRTIO_NET
	// +optional
	NicType *string `json:"nicType,omitempty" tf:"nic_type"`
	// The networking queue count that's specified by users for the network interface. Both Rx and Tx queues will be set to this number. It will be empty if not specified.
	// +optional
	QueueCount *int64 `json:"queueCount,omitempty" tf:"queue_count"`
	// The stack type for this network interface to identify whether the IPv6 feature is enabled or not. If not specified, IPV4_ONLY will be used.
	// +optional
	StackType *string `json:"stackType,omitempty" tf:"stack_type"`
	// The name of the subnetwork to attach this interface to. The subnetwork must exist in the same region this instance will be created in. Either network or subnetwork must be provided.
	// +optional
	Subnetwork *string `json:"subnetwork,omitempty" tf:"subnetwork"`
	// The ID of the project in which the subnetwork belongs. If it is not provided, the provider project is used.
	// +optional
	SubnetworkProject *string `json:"subnetworkProject,omitempty" tf:"subnetwork_project"`
}

func (*InstanceTemplateSpecNetworkInterface) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecNetworkInterface.

func (*InstanceTemplateSpecNetworkInterface) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecNetworkInterfaceAccessConfig

type InstanceTemplateSpecNetworkInterfaceAccessConfig struct {
	// The IP address that will be 1:1 mapped to the instance's network ip. If not given, one will be generated.
	// +optional
	NatIP *string `json:"natIP,omitempty" tf:"nat_ip"`
	// The networking tier used for configuring this instance template. This field can take the following values: PREMIUM or STANDARD. If this field is not specified, it is assumed to be PREMIUM.
	// +optional
	NetworkTier *string `json:"networkTier,omitempty" tf:"network_tier"`
	// The DNS domain name for the public PTR record.The DNS domain name for the public PTR record.
	// +optional
	PublicPtrDomainName *string `json:"publicPtrDomainName,omitempty" tf:"public_ptr_domain_name"`
}

func (*InstanceTemplateSpecNetworkInterfaceAccessConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecNetworkInterfaceAccessConfig.

func (*InstanceTemplateSpecNetworkInterfaceAccessConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecNetworkInterfaceAliasIPRange

type InstanceTemplateSpecNetworkInterfaceAliasIPRange struct {
	// The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. At the time of writing only a netmask (e.g. /24) may be supplied, with a CIDR format resulting in an API error.
	IpCIDRRange *string `json:"ipCIDRRange" tf:"ip_cidr_range"`
	// The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.
	// +optional
	SubnetworkRangeName *string `json:"subnetworkRangeName,omitempty" tf:"subnetwork_range_name"`
}

func (*InstanceTemplateSpecNetworkInterfaceAliasIPRange) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecNetworkInterfaceAliasIPRange.

func (*InstanceTemplateSpecNetworkInterfaceAliasIPRange) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecNetworkInterfaceIpv6AccessConfig added in v0.4.0

type InstanceTemplateSpecNetworkInterfaceIpv6AccessConfig struct {
	// The first IPv6 address of the external IPv6 range associated with this instance, prefix length is stored in externalIpv6PrefixLength in ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork associated with the instance will be allocated dynamically.
	// +optional
	ExternalIpv6 *string `json:"externalIpv6,omitempty" tf:"external_ipv6"`
	// The prefix length of the external IPv6 range.
	// +optional
	ExternalIpv6PrefixLength *string `json:"externalIpv6PrefixLength,omitempty" tf:"external_ipv6_prefix_length"`
	// The service-level to be provided for IPv6 traffic when the subnet has an external subnet. Only PREMIUM tier is valid for IPv6
	NetworkTier *string `json:"networkTier" tf:"network_tier"`
	// The domain name to be used when creating DNSv6 records for the external IPv6 ranges.
	// +optional
	PublicPtrDomainName *string `json:"publicPtrDomainName,omitempty" tf:"public_ptr_domain_name"`
}

func (*InstanceTemplateSpecNetworkInterfaceIpv6AccessConfig) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecNetworkInterfaceIpv6AccessConfig.

func (*InstanceTemplateSpecNetworkInterfaceIpv6AccessConfig) DeepCopyInto added in v0.4.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecReservationAffinity

type InstanceTemplateSpecReservationAffinity struct {
	// Specifies the label selector for the reservation to use.
	// +optional
	SpecificReservation *InstanceTemplateSpecReservationAffinitySpecificReservation `json:"specificReservation,omitempty" tf:"specific_reservation"`
	// The type of reservation from which this instance can consume resources.
	Type *string `json:"type" tf:"type"`
}

func (*InstanceTemplateSpecReservationAffinity) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecReservationAffinity.

func (*InstanceTemplateSpecReservationAffinity) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecReservationAffinityCodec

type InstanceTemplateSpecReservationAffinityCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceTemplateSpecReservationAffinityCodec) Decode

func (InstanceTemplateSpecReservationAffinityCodec) Encode

func (InstanceTemplateSpecReservationAffinityCodec) IsEmpty

type InstanceTemplateSpecReservationAffinitySpecificReservation

type InstanceTemplateSpecReservationAffinitySpecificReservation struct {
	// Corresponds to the label key of a reservation resource. To target a SPECIFIC_RESERVATION by name, specify compute.googleapis.com/reservation-name as the key and specify the name of your reservation as the only value.
	Key *string `json:"key" tf:"key"`
	// Corresponds to the label values of a reservation resource.
	Values []string `json:"values" tf:"values"`
}

func (*InstanceTemplateSpecReservationAffinitySpecificReservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecReservationAffinitySpecificReservation.

func (*InstanceTemplateSpecReservationAffinitySpecificReservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecReservationAffinitySpecificReservationCodec

type InstanceTemplateSpecReservationAffinitySpecificReservationCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceTemplateSpecReservationAffinitySpecificReservationCodec) Decode

func (InstanceTemplateSpecReservationAffinitySpecificReservationCodec) Encode

func (InstanceTemplateSpecReservationAffinitySpecificReservationCodec) IsEmpty

type InstanceTemplateSpecResource

type InstanceTemplateSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Controls for advanced machine-related behavior features.
	// +optional
	AdvancedMachineFeatures *InstanceTemplateSpecAdvancedMachineFeatures `json:"advancedMachineFeatures,omitempty" tf:"advanced_machine_features"`
	// Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.
	// +optional
	CanIPForward *bool `json:"canIPForward,omitempty" tf:"can_ip_forward"`
	// The Confidential VM config being used by the instance. on_host_maintenance has to be set to TERMINATE or this will fail to create.
	// +optional
	ConfidentialInstanceConfig *InstanceTemplateSpecConfidentialInstanceConfig `json:"confidentialInstanceConfig,omitempty" tf:"confidential_instance_config"`
	// A brief description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Disks to attach to instances created from this template. This can be specified multiple times for multiple disks.
	Disk []InstanceTemplateSpecDisk `json:"disk" tf:"disk"`
	// List of the type and count of accelerator cards attached to the instance.
	// +optional
	GuestAccelerator []InstanceTemplateSpecGuestAccelerator `json:"guestAccelerator,omitempty" tf:"guest_accelerator"`
	// A description of the instance.
	// +optional
	InstanceDescription *string `json:"instanceDescription,omitempty" tf:"instance_description"`
	// A set of key/value label pairs to assign to instances created from this template,
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// The machine type to create. To create a machine with a custom type (such as extended memory), format the value like custom-VCPUS-MEM_IN_MB like custom-6-20480 for 6 vCPU and 20GB of RAM.
	MachineType *string `json:"machineType" tf:"machine_type"`
	// Metadata key/value pairs to make available from within instances created from this template.
	// +optional
	Metadata map[string]string `json:"metadata,omitempty" tf:"metadata"`
	// The unique fingerprint of the metadata.
	// +optional
	MetadataFingerprint *string `json:"metadataFingerprint,omitempty" tf:"metadata_fingerprint"`
	// An alternative to using the startup-script metadata key, mostly to match the compute_instance resource. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously.
	// +optional
	MetadataStartupScript *string `json:"metadataStartupScript,omitempty" tf:"metadata_startup_script"`
	// Specifies a minimum CPU platform. Applicable values are the friendly names of CPU platforms, such as Intel Haswell or Intel Skylake.
	// +optional
	MinCPUPlatform *string `json:"minCPUPlatform,omitempty" tf:"min_cpu_platform"`
	// The name of the instance template. If you leave this blank, Terraform will auto-generate a unique name.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// Creates a unique name beginning with the specified prefix. Conflicts with name.
	// +optional
	NamePrefix *string `json:"namePrefix,omitempty" tf:"name_prefix"`
	// Networks to attach to instances created from this template. This can be specified multiple times for multiple networks.
	// +optional
	NetworkInterface []InstanceTemplateSpecNetworkInterface `json:"networkInterface,omitempty" tf:"network_interface"`
	// 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"`
	// An instance template is a global resource that is not bound to a zone or a region. However, you can still specify some regional resources in an instance template, which restricts the template to the region where that resource resides. For example, a custom subnetwork resource is tied to a specific region. Defaults to the region of the Provider if no value is given.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// Specifies the reservations that this instance can consume from.
	// +optional
	ReservationAffinity *InstanceTemplateSpecReservationAffinity `json:"reservationAffinity,omitempty" tf:"reservation_affinity"`
	// The scheduling strategy to use.
	// +optional
	Scheduling *InstanceTemplateSpecScheduling `json:"scheduling,omitempty" tf:"scheduling"`
	// The URI of the created resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Service account to attach to the instance.
	// +optional
	ServiceAccount *InstanceTemplateSpecServiceAccount `json:"serviceAccount,omitempty" tf:"service_account"`
	// Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Note: shielded_instance_config can only be used with boot images with shielded vm support.
	// +optional
	ShieldedInstanceConfig *InstanceTemplateSpecShieldedInstanceConfig `json:"shieldedInstanceConfig,omitempty" tf:"shielded_instance_config"`
	// Tags to attach to the instance.
	// +optional
	Tags []string `json:"tags,omitempty" tf:"tags"`
	// The unique fingerprint of the tags.
	// +optional
	TagsFingerprint *string `json:"tagsFingerprint,omitempty" tf:"tags_fingerprint"`
}

func (*InstanceTemplateSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecResource.

func (*InstanceTemplateSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecScheduling

type InstanceTemplateSpecScheduling struct {
	// Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). This defaults to true.
	// +optional
	AutomaticRestart *bool `json:"automaticRestart,omitempty" tf:"automatic_restart"`
	// Minimum number of cpus for the instance.
	// +optional
	MinNodeCpus *int64 `json:"minNodeCpus,omitempty" tf:"min_node_cpus"`
	// Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems.
	// +optional
	NodeAffinities []InstanceTemplateSpecSchedulingNodeAffinities `json:"nodeAffinities,omitempty" tf:"node_affinities"`
	// Defines the maintenance behavior for this instance.
	// +optional
	OnHostMaintenance *string `json:"onHostMaintenance,omitempty" tf:"on_host_maintenance"`
	// Allows instance to be preempted. This defaults to false.
	// +optional
	Preemptible *bool `json:"preemptible,omitempty" tf:"preemptible"`
}

func (*InstanceTemplateSpecScheduling) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecScheduling.

func (*InstanceTemplateSpecScheduling) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecSchedulingCodec

type InstanceTemplateSpecSchedulingCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceTemplateSpecSchedulingCodec) Decode

func (InstanceTemplateSpecSchedulingCodec) Encode

func (InstanceTemplateSpecSchedulingCodec) IsEmpty

type InstanceTemplateSpecSchedulingNodeAffinities

type InstanceTemplateSpecSchedulingNodeAffinities struct {
	Key      *string  `json:"key" tf:"key"`
	Operator *string  `json:"operator" tf:"operator"`
	Values   []string `json:"values" tf:"values"`
}

func (*InstanceTemplateSpecSchedulingNodeAffinities) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecSchedulingNodeAffinities.

func (*InstanceTemplateSpecSchedulingNodeAffinities) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecServiceAccount

type InstanceTemplateSpecServiceAccount struct {
	// The service account e-mail address. If not given, the default Google Compute Engine service account is used.
	// +optional
	Email *string `json:"email,omitempty" tf:"email"`
	// A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the cloud-platform scope.
	Scopes []string `json:"scopes" tf:"scopes"`
}

func (*InstanceTemplateSpecServiceAccount) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecServiceAccount.

func (*InstanceTemplateSpecServiceAccount) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecServiceAccountCodec

type InstanceTemplateSpecServiceAccountCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceTemplateSpecServiceAccountCodec) Decode

func (InstanceTemplateSpecServiceAccountCodec) Encode

func (InstanceTemplateSpecServiceAccountCodec) IsEmpty

type InstanceTemplateSpecShieldedInstanceConfig

type InstanceTemplateSpecShieldedInstanceConfig struct {
	// Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.
	// +optional
	EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty" tf:"enable_integrity_monitoring"`
	// Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.
	// +optional
	EnableSecureBoot *bool `json:"enableSecureBoot,omitempty" tf:"enable_secure_boot"`
	// Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.
	// +optional
	EnableVtpm *bool `json:"enableVtpm,omitempty" tf:"enable_vtpm"`
}

func (*InstanceTemplateSpecShieldedInstanceConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateSpecShieldedInstanceConfig.

func (*InstanceTemplateSpecShieldedInstanceConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InstanceTemplateSpecShieldedInstanceConfigCodec

type InstanceTemplateSpecShieldedInstanceConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (InstanceTemplateSpecShieldedInstanceConfigCodec) Decode

func (InstanceTemplateSpecShieldedInstanceConfigCodec) Encode

func (InstanceTemplateSpecShieldedInstanceConfigCodec) IsEmpty

type InstanceTemplateStatus

type InstanceTemplateStatus 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 (*InstanceTemplateStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InstanceTemplateStatus.

func (*InstanceTemplateStatus) DeepCopyInto

func (in *InstanceTemplateStatus) DeepCopyInto(out *InstanceTemplateStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InterconnectAttachment

type InterconnectAttachment struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              InterconnectAttachmentSpec   `json:"spec,omitempty"`
	Status            InterconnectAttachmentStatus `json:"status,omitempty"`
}

func (*InterconnectAttachment) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterconnectAttachment.

func (*InterconnectAttachment) DeepCopyInto

func (in *InterconnectAttachment) DeepCopyInto(out *InterconnectAttachment)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InterconnectAttachment) DeepCopyObject

func (in *InterconnectAttachment) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*InterconnectAttachment) SetupWebhookWithManager

func (r *InterconnectAttachment) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*InterconnectAttachment) ValidateCreate

func (r *InterconnectAttachment) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*InterconnectAttachment) ValidateDelete

func (r *InterconnectAttachment) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*InterconnectAttachment) ValidateUpdate

func (r *InterconnectAttachment) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type InterconnectAttachmentList

type InterconnectAttachmentList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of InterconnectAttachment CRD objects
	Items []InterconnectAttachment `json:"items,omitempty"`
}

InterconnectAttachmentList is a list of InterconnectAttachments

func (*InterconnectAttachmentList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterconnectAttachmentList.

func (*InterconnectAttachmentList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*InterconnectAttachmentList) DeepCopyObject

func (in *InterconnectAttachmentList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type InterconnectAttachmentSpec

type InterconnectAttachmentSpec struct {
	State *InterconnectAttachmentSpecResource `json:"state,omitempty" tf:"-"`

	Resource InterconnectAttachmentSpecResource `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 (*InterconnectAttachmentSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterconnectAttachmentSpec.

func (*InterconnectAttachmentSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InterconnectAttachmentSpecPrivateInterconnectInfo

type InterconnectAttachmentSpecPrivateInterconnectInfo struct {
	// 802.1q encapsulation tag to be used for traffic between
	// Google and the customer, going to and from this network and region.
	// +optional
	Tag8021q *int64 `json:"tag8021q,omitempty" tf:"tag8021q"`
}

func (*InterconnectAttachmentSpecPrivateInterconnectInfo) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterconnectAttachmentSpecPrivateInterconnectInfo.

func (*InterconnectAttachmentSpecPrivateInterconnectInfo) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InterconnectAttachmentSpecResource

type InterconnectAttachmentSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Whether the VLAN attachment is enabled or disabled.  When using
	// PARTNER type this will Pre-Activate the interconnect attachment
	// +optional
	AdminEnabled *bool `json:"adminEnabled,omitempty" tf:"admin_enabled"`
	// Provisioned bandwidth capacity for the interconnect attachment.
	// For attachments of type DEDICATED, the user can set the bandwidth.
	// For attachments of type PARTNER, the Google Partner that is operating the interconnect must set the bandwidth.
	// Output only for PARTNER type, mutable for PARTNER_PROVIDER and DEDICATED,
	// Defaults to BPS_10G Possible values: ["BPS_50M", "BPS_100M", "BPS_200M", "BPS_300M", "BPS_400M", "BPS_500M", "BPS_1G", "BPS_2G", "BPS_5G", "BPS_10G", "BPS_20G", "BPS_50G"]
	// +optional
	Bandwidth *string `json:"bandwidth,omitempty" tf:"bandwidth"`
	// Up to 16 candidate prefixes that can be used to restrict the allocation
	// of cloudRouterIpAddress and customerRouterIpAddress for this attachment.
	// All prefixes must be within link-local address space (169.254.0.0/16)
	// and must be /29 or shorter (/28, /27, etc). Google will attempt to select
	// an unused /29 from the supplied candidate prefix(es). The request will
	// fail if all possible /29s are in use on Google's edge. If not supplied,
	// Google will randomly select an unused /29 from all of link-local space.
	// +optional
	CandidateSubnets []string `json:"candidateSubnets,omitempty" tf:"candidate_subnets"`
	// IPv4 address + prefix length to be configured on Cloud Router
	// Interface for this interconnect attachment.
	// +optional
	CloudRouterIPAddress *string `json:"cloudRouterIPAddress,omitempty" tf:"cloud_router_ip_address"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// IPv4 address + prefix length to be configured on the customer
	// router subinterface for this interconnect attachment.
	// +optional
	CustomerRouterIPAddress *string `json:"customerRouterIPAddress,omitempty" tf:"customer_router_ip_address"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Desired availability domain for the attachment. Only available for type
	// PARTNER, at creation time. For improved reliability, customers should
	// configure a pair of attachments with one per availability domain. The
	// selected availability domain will be provided to the Partner via the
	// pairing key so that the provisioned circuit will lie in the specified
	// domain. If not specified, the value will default to AVAILABILITY_DOMAIN_ANY.
	// +optional
	EdgeAvailabilityDomain *string `json:"edgeAvailabilityDomain,omitempty" tf:"edge_availability_domain"`
	// Indicates the user-supplied encryption option of this interconnect
	// attachment:
	//
	// NONE is the default value, which means that the attachment carries
	// unencrypted traffic. VMs can send traffic to, or receive traffic
	// from, this type of attachment.
	//
	// IPSEC indicates that the attachment carries only traffic encrypted by
	// an IPsec device such as an HA VPN gateway. VMs cannot directly send
	// traffic to, or receive traffic from, such an attachment. To use
	// IPsec-encrypted Cloud Interconnect create the attachment using this
	// option.
	//
	// Not currently available publicly. Default value: "NONE" Possible values: ["NONE", "IPSEC"]
	// +optional
	Encryption *string `json:"encryption,omitempty" tf:"encryption"`
	// Google reference ID, to be used when raising support tickets with
	// Google or otherwise to debug backend connectivity issues.
	// +optional
	GoogleReferenceID *string `json:"googleReferenceID,omitempty" tf:"google_reference_id"`
	// URL of the underlying Interconnect object that this attachment's
	// traffic will traverse through. Required if type is DEDICATED, must not
	// be set if type is PARTNER.
	// +optional
	Interconnect *string `json:"interconnect,omitempty" tf:"interconnect"`
	// URL of addresses that have been reserved for the interconnect
	// attachment, Used only for interconnect attachment that has the
	// encryption option as IPSEC.
	//
	// The addresses must be RFC 1918 IP address ranges. When creating HA
	// VPN gateway over the interconnect attachment, if the attachment is
	// configured to use an RFC 1918 IP address, then the VPN gateway's IP
	// address will be allocated from the IP address range specified
	// here.
	//
	// For example, if the HA VPN gateway's interface 0 is paired to this
	// interconnect attachment, then an RFC 1918 IP address for the VPN
	// gateway interface 0 will be allocated from the IP address specified
	// for this interconnect attachment.
	//
	// If this field is not specified for interconnect attachment that has
	// encryption option as IPSEC, later on when creating HA VPN gateway on
	// this interconnect attachment, the HA VPN gateway's IP address will be
	// allocated from regional external IP address pool.
	// +optional
	IpsecInternalAddresses []string `json:"ipsecInternalAddresses,omitempty" tf:"ipsec_internal_addresses"`
	// Maximum Transmission Unit (MTU), in bytes, of packets passing through
	// this interconnect attachment. Currently, only 1440 and 1500 are allowed. If not specified, the value will default to 1440.
	// +optional
	Mtu *string `json:"mtu,omitempty" tf:"mtu"`
	// Name of the resource. Provided by the client when the resource is created. The
	// name must be 1-63 characters long, and comply with RFC1035. Specifically, the
	// name must be 1-63 characters long and match the regular expression
	// '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character must be a
	// lowercase letter, and all following characters must be a dash, lowercase
	// letter, or digit, except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// [Output only for type PARTNER. Not present for DEDICATED]. The opaque
	// identifier of an PARTNER attachment used to initiate provisioning with
	// a selected partner. Of the form "XXXXX/region/domain"
	// +optional
	PairingKey *string `json:"pairingKey,omitempty" tf:"pairing_key"`
	// [Output only for type PARTNER. Not present for DEDICATED]. Optional
	// BGP ASN for the router that should be supplied by a layer 3 Partner if
	// they configured BGP on behalf of the customer.
	// +optional
	PartnerAsn *string `json:"partnerAsn,omitempty" tf:"partner_asn"`
	// Information specific to an InterconnectAttachment. This property
	// is populated if the interconnect that this is attached to is of type DEDICATED.
	// +optional
	PrivateInterconnectInfo []InterconnectAttachmentSpecPrivateInterconnectInfo `json:"privateInterconnectInfo,omitempty" tf:"private_interconnect_info"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Region where the regional interconnect attachment resides.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// URL of the cloud router to be used for dynamic routing. This router must be in
	// the same region as this InterconnectAttachment. The InterconnectAttachment will
	// automatically connect the Interconnect to the network & region within which the
	// Cloud Router is configured.
	Router *string `json:"router" tf:"router"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// [Output Only] The current state of this attachment's functionality.
	// +optional
	State *string `json:"state,omitempty" tf:"state"`
	// The type of InterconnectAttachment you wish to create. Defaults to
	// DEDICATED. Possible values: ["DEDICATED", "PARTNER", "PARTNER_PROVIDER"]
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
	// The IEEE 802.1Q VLAN tag for this attachment, in the range 2-4094. When
	// using PARTNER type this will be managed upstream.
	// +optional
	VlanTag8021q *int64 `json:"vlanTag8021q,omitempty" tf:"vlan_tag8021q"`
}

func (*InterconnectAttachmentSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterconnectAttachmentSpecResource.

func (*InterconnectAttachmentSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type InterconnectAttachmentStatus

type InterconnectAttachmentStatus 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 (*InterconnectAttachmentStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterconnectAttachmentStatus.

func (*InterconnectAttachmentStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedSslCertificate

type ManagedSslCertificate struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ManagedSslCertificateSpec   `json:"spec,omitempty"`
	Status            ManagedSslCertificateStatus `json:"status,omitempty"`
}

func (*ManagedSslCertificate) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedSslCertificate.

func (*ManagedSslCertificate) DeepCopyInto

func (in *ManagedSslCertificate) DeepCopyInto(out *ManagedSslCertificate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ManagedSslCertificate) DeepCopyObject

func (in *ManagedSslCertificate) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ManagedSslCertificate) SetupWebhookWithManager

func (r *ManagedSslCertificate) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ManagedSslCertificate) ValidateCreate

func (r *ManagedSslCertificate) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ManagedSslCertificate) ValidateDelete

func (r *ManagedSslCertificate) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ManagedSslCertificate) ValidateUpdate

func (r *ManagedSslCertificate) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ManagedSslCertificateList

type ManagedSslCertificateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ManagedSslCertificate CRD objects
	Items []ManagedSslCertificate `json:"items,omitempty"`
}

ManagedSslCertificateList is a list of ManagedSslCertificates

func (*ManagedSslCertificateList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedSslCertificateList.

func (*ManagedSslCertificateList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ManagedSslCertificateList) DeepCopyObject

func (in *ManagedSslCertificateList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ManagedSslCertificateSpec

type ManagedSslCertificateSpec struct {
	State *ManagedSslCertificateSpecResource `json:"state,omitempty" tf:"-"`

	Resource ManagedSslCertificateSpecResource `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 (*ManagedSslCertificateSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedSslCertificateSpec.

func (*ManagedSslCertificateSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedSslCertificateSpecManaged

type ManagedSslCertificateSpecManaged struct {
	// Domains for which a managed SSL certificate will be valid.  Currently,
	// there can be up to 100 domains in this list.
	// +kubebuilder:validation:MaxItems=100
	Domains []string `json:"domains" tf:"domains"`
}

func (*ManagedSslCertificateSpecManaged) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedSslCertificateSpecManaged.

func (*ManagedSslCertificateSpecManaged) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedSslCertificateSpecManagedCodec

type ManagedSslCertificateSpecManagedCodec struct {
}

+k8s:deepcopy-gen=false

func (ManagedSslCertificateSpecManagedCodec) Decode

func (ManagedSslCertificateSpecManagedCodec) Encode

func (ManagedSslCertificateSpecManagedCodec) IsEmpty

type ManagedSslCertificateSpecResource

type ManagedSslCertificateSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The unique identifier for the resource.
	// +optional
	CertificateID *int64 `json:"certificateID,omitempty" tf:"certificate_id"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Expire time of the certificate.
	// +optional
	ExpireTime *string `json:"expireTime,omitempty" tf:"expire_time"`
	// Properties relevant to a managed certificate.  These will be used if the
	// certificate is managed (as indicated by a value of 'MANAGED' in 'type').
	// +optional
	Managed *ManagedSslCertificateSpecManaged `json:"managed,omitempty" tf:"managed"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	//
	//
	// These are in the same namespace as the managed SSL certificates.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Domains associated with the certificate via Subject Alternative Name.
	// +optional
	SubjectAlternativeNames []string `json:"subjectAlternativeNames,omitempty" tf:"subject_alternative_names"`
	// Enum field whose value is always 'MANAGED' - used to signal to the API
	// which type this is. Default value: "MANAGED" Possible values: ["MANAGED"]
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
}

func (*ManagedSslCertificateSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedSslCertificateSpecResource.

func (*ManagedSslCertificateSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ManagedSslCertificateStatus

type ManagedSslCertificateStatus 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 (*ManagedSslCertificateStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManagedSslCertificateStatus.

func (*ManagedSslCertificateStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Network

type Network struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              NetworkSpec   `json:"spec,omitempty"`
	Status            NetworkStatus `json:"status,omitempty"`
}

func (*Network) DeepCopy

func (in *Network) DeepCopy() *Network

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network.

func (*Network) DeepCopyInto

func (in *Network) DeepCopyInto(out *Network)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Network) DeepCopyObject

func (in *Network) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Network) SetupWebhookWithManager

func (r *Network) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Network) ValidateCreate

func (r *Network) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Network) ValidateDelete

func (r *Network) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Network) ValidateUpdate

func (r *Network) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type NetworkEndpoint

type NetworkEndpoint struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              NetworkEndpointSpec   `json:"spec,omitempty"`
	Status            NetworkEndpointStatus `json:"status,omitempty"`
}

func (*NetworkEndpoint) DeepCopy

func (in *NetworkEndpoint) DeepCopy() *NetworkEndpoint

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpoint.

func (*NetworkEndpoint) DeepCopyInto

func (in *NetworkEndpoint) DeepCopyInto(out *NetworkEndpoint)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkEndpoint) DeepCopyObject

func (in *NetworkEndpoint) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NetworkEndpoint) SetupWebhookWithManager

func (r *NetworkEndpoint) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*NetworkEndpoint) ValidateCreate

func (r *NetworkEndpoint) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*NetworkEndpoint) ValidateDelete

func (r *NetworkEndpoint) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*NetworkEndpoint) ValidateUpdate

func (r *NetworkEndpoint) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type NetworkEndpointGroup

type NetworkEndpointGroup struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              NetworkEndpointGroupSpec   `json:"spec,omitempty"`
	Status            NetworkEndpointGroupStatus `json:"status,omitempty"`
}

func (*NetworkEndpointGroup) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpointGroup.

func (*NetworkEndpointGroup) DeepCopyInto

func (in *NetworkEndpointGroup) DeepCopyInto(out *NetworkEndpointGroup)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkEndpointGroup) DeepCopyObject

func (in *NetworkEndpointGroup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NetworkEndpointGroup) SetupWebhookWithManager

func (r *NetworkEndpointGroup) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*NetworkEndpointGroup) ValidateCreate

func (r *NetworkEndpointGroup) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*NetworkEndpointGroup) ValidateDelete

func (r *NetworkEndpointGroup) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*NetworkEndpointGroup) ValidateUpdate

func (r *NetworkEndpointGroup) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type NetworkEndpointGroupList

type NetworkEndpointGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of NetworkEndpointGroup CRD objects
	Items []NetworkEndpointGroup `json:"items,omitempty"`
}

NetworkEndpointGroupList is a list of NetworkEndpointGroups

func (*NetworkEndpointGroupList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpointGroupList.

func (*NetworkEndpointGroupList) DeepCopyInto

func (in *NetworkEndpointGroupList) DeepCopyInto(out *NetworkEndpointGroupList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkEndpointGroupList) DeepCopyObject

func (in *NetworkEndpointGroupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkEndpointGroupSpec

type NetworkEndpointGroupSpec struct {
	State *NetworkEndpointGroupSpecResource `json:"state,omitempty" tf:"-"`

	Resource NetworkEndpointGroupSpecResource `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 (*NetworkEndpointGroupSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpointGroupSpec.

func (*NetworkEndpointGroupSpec) DeepCopyInto

func (in *NetworkEndpointGroupSpec) DeepCopyInto(out *NetworkEndpointGroupSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkEndpointGroupSpecResource

type NetworkEndpointGroupSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The default port used if the port number is not specified in the
	// network endpoint.
	// +optional
	DefaultPort *int64 `json:"defaultPort,omitempty" tf:"default_port"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource; provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The network to which all network endpoints in the NEG belong.
	// Uses "default" project network if unspecified.
	Network *string `json:"network" tf:"network"`
	// Type of network endpoints in this network endpoint group.
	// NON_GCP_PRIVATE_IP_PORT is used for hybrid connectivity network
	// endpoint groups (see https://cloud.google.com/load-balancing/docs/hybrid).
	// Note that NON_GCP_PRIVATE_IP_PORT can only be used with Backend Services
	// that 1) have the following load balancing schemes: EXTERNAL, EXTERNAL_MANAGED,
	// INTERNAL_MANAGED, and INTERNAL_SELF_MANAGED and 2) support the RATE or
	// CONNECTION balancing modes. Default value: "GCE_VM_IP_PORT" Possible values: ["GCE_VM_IP_PORT", "NON_GCP_PRIVATE_IP_PORT"]
	// +optional
	NetworkEndpointType *string `json:"networkEndpointType,omitempty" tf:"network_endpoint_type"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Number of network endpoints in the network endpoint group.
	// +optional
	Size *int64 `json:"size,omitempty" tf:"size"`
	// Optional subnetwork to which all network endpoints in the NEG belong.
	// +optional
	Subnetwork *string `json:"subnetwork,omitempty" tf:"subnetwork"`
	// Zone where the network endpoint group is located.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*NetworkEndpointGroupSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpointGroupSpecResource.

func (*NetworkEndpointGroupSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkEndpointGroupStatus

type NetworkEndpointGroupStatus 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 (*NetworkEndpointGroupStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpointGroupStatus.

func (*NetworkEndpointGroupStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkEndpointList

type NetworkEndpointList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of NetworkEndpoint CRD objects
	Items []NetworkEndpoint `json:"items,omitempty"`
}

NetworkEndpointList is a list of NetworkEndpoints

func (*NetworkEndpointList) DeepCopy

func (in *NetworkEndpointList) DeepCopy() *NetworkEndpointList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpointList.

func (*NetworkEndpointList) DeepCopyInto

func (in *NetworkEndpointList) DeepCopyInto(out *NetworkEndpointList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkEndpointList) DeepCopyObject

func (in *NetworkEndpointList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkEndpointSpec

type NetworkEndpointSpec struct {
	State *NetworkEndpointSpecResource `json:"state,omitempty" tf:"-"`

	Resource NetworkEndpointSpecResource `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 (*NetworkEndpointSpec) DeepCopy

func (in *NetworkEndpointSpec) DeepCopy() *NetworkEndpointSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpointSpec.

func (*NetworkEndpointSpec) DeepCopyInto

func (in *NetworkEndpointSpec) DeepCopyInto(out *NetworkEndpointSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkEndpointSpecResource

type NetworkEndpointSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The name for a specific VM instance that the IP address belongs to.
	// This is required for network endpoints of type GCE_VM_IP_PORT.
	// The instance must be in the same zone of network endpoint group.
	// +optional
	Instance *string `json:"instance,omitempty" tf:"instance"`
	// IPv4 address of network endpoint. The IP address must belong
	// to a VM in GCE (either the primary IP or as part of an aliased IP
	// range).
	IpAddress *string `json:"ipAddress" tf:"ip_address"`
	// The network endpoint group this endpoint is part of.
	NetworkEndpointGroup *string `json:"networkEndpointGroup" tf:"network_endpoint_group"`
	// Port number of network endpoint.
	Port *int64 `json:"port" tf:"port"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Zone where the containing network endpoint group is located.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*NetworkEndpointSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpointSpecResource.

func (*NetworkEndpointSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkEndpointStatus

type NetworkEndpointStatus 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 (*NetworkEndpointStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkEndpointStatus.

func (*NetworkEndpointStatus) DeepCopyInto

func (in *NetworkEndpointStatus) DeepCopyInto(out *NetworkEndpointStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkList

type NetworkList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Network CRD objects
	Items []Network `json:"items,omitempty"`
}

NetworkList is a list of Networks

func (*NetworkList) DeepCopy

func (in *NetworkList) DeepCopy() *NetworkList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkList.

func (*NetworkList) DeepCopyInto

func (in *NetworkList) DeepCopyInto(out *NetworkList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkList) DeepCopyObject

func (in *NetworkList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkPeering

type NetworkPeering struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              NetworkPeeringSpec   `json:"spec,omitempty"`
	Status            NetworkPeeringStatus `json:"status,omitempty"`
}

func (*NetworkPeering) DeepCopy

func (in *NetworkPeering) DeepCopy() *NetworkPeering

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeering.

func (*NetworkPeering) DeepCopyInto

func (in *NetworkPeering) DeepCopyInto(out *NetworkPeering)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkPeering) DeepCopyObject

func (in *NetworkPeering) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NetworkPeering) SetupWebhookWithManager

func (r *NetworkPeering) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*NetworkPeering) ValidateCreate

func (r *NetworkPeering) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*NetworkPeering) ValidateDelete

func (r *NetworkPeering) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*NetworkPeering) ValidateUpdate

func (r *NetworkPeering) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type NetworkPeeringList

type NetworkPeeringList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of NetworkPeering CRD objects
	Items []NetworkPeering `json:"items,omitempty"`
}

NetworkPeeringList is a list of NetworkPeerings

func (*NetworkPeeringList) DeepCopy

func (in *NetworkPeeringList) DeepCopy() *NetworkPeeringList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeeringList.

func (*NetworkPeeringList) DeepCopyInto

func (in *NetworkPeeringList) DeepCopyInto(out *NetworkPeeringList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkPeeringList) DeepCopyObject

func (in *NetworkPeeringList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkPeeringRoutesConfig

type NetworkPeeringRoutesConfig struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              NetworkPeeringRoutesConfigSpec   `json:"spec,omitempty"`
	Status            NetworkPeeringRoutesConfigStatus `json:"status,omitempty"`
}

func (*NetworkPeeringRoutesConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeeringRoutesConfig.

func (*NetworkPeeringRoutesConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkPeeringRoutesConfig) DeepCopyObject

func (in *NetworkPeeringRoutesConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NetworkPeeringRoutesConfig) SetupWebhookWithManager

func (r *NetworkPeeringRoutesConfig) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*NetworkPeeringRoutesConfig) ValidateCreate

func (r *NetworkPeeringRoutesConfig) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*NetworkPeeringRoutesConfig) ValidateDelete

func (r *NetworkPeeringRoutesConfig) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*NetworkPeeringRoutesConfig) ValidateUpdate

func (r *NetworkPeeringRoutesConfig) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type NetworkPeeringRoutesConfigList

type NetworkPeeringRoutesConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of NetworkPeeringRoutesConfig CRD objects
	Items []NetworkPeeringRoutesConfig `json:"items,omitempty"`
}

NetworkPeeringRoutesConfigList is a list of NetworkPeeringRoutesConfigs

func (*NetworkPeeringRoutesConfigList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeeringRoutesConfigList.

func (*NetworkPeeringRoutesConfigList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NetworkPeeringRoutesConfigList) DeepCopyObject

func (in *NetworkPeeringRoutesConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NetworkPeeringRoutesConfigSpec

type NetworkPeeringRoutesConfigSpec struct {
	State *NetworkPeeringRoutesConfigSpecResource `json:"state,omitempty" tf:"-"`

	Resource NetworkPeeringRoutesConfigSpecResource `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 (*NetworkPeeringRoutesConfigSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeeringRoutesConfigSpec.

func (*NetworkPeeringRoutesConfigSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPeeringRoutesConfigSpecResource

type NetworkPeeringRoutesConfigSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Whether to export the custom routes to the peer network.
	ExportCustomRoutes *bool `json:"exportCustomRoutes" tf:"export_custom_routes"`
	// Whether to import the custom routes to the peer network.
	ImportCustomRoutes *bool `json:"importCustomRoutes" tf:"import_custom_routes"`
	// The name of the primary network for the peering.
	Network *string `json:"network" tf:"network"`
	// Name of the peering.
	Peering *string `json:"peering" tf:"peering"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
}

func (*NetworkPeeringRoutesConfigSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeeringRoutesConfigSpecResource.

func (*NetworkPeeringRoutesConfigSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPeeringRoutesConfigStatus

type NetworkPeeringRoutesConfigStatus 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 (*NetworkPeeringRoutesConfigStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeeringRoutesConfigStatus.

func (*NetworkPeeringRoutesConfigStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPeeringSpec

type NetworkPeeringSpec struct {
	State *NetworkPeeringSpecResource `json:"state,omitempty" tf:"-"`

	Resource NetworkPeeringSpecResource `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 (*NetworkPeeringSpec) DeepCopy

func (in *NetworkPeeringSpec) DeepCopy() *NetworkPeeringSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeeringSpec.

func (*NetworkPeeringSpec) DeepCopyInto

func (in *NetworkPeeringSpec) DeepCopyInto(out *NetworkPeeringSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPeeringSpecResource

type NetworkPeeringSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Whether to export the custom routes to the peer network. Defaults to false.
	// +optional
	ExportCustomRoutes *bool `json:"exportCustomRoutes,omitempty" tf:"export_custom_routes"`
	// +optional
	ExportSubnetRoutesWithPublicIP *bool `json:"exportSubnetRoutesWithPublicIP,omitempty" tf:"export_subnet_routes_with_public_ip"`
	// Whether to export the custom routes from the peer network. Defaults to false.
	// +optional
	ImportCustomRoutes *bool `json:"importCustomRoutes,omitempty" tf:"import_custom_routes"`
	// +optional
	ImportSubnetRoutesWithPublicIP *bool `json:"importSubnetRoutesWithPublicIP,omitempty" tf:"import_subnet_routes_with_public_ip"`
	// Name of the peering.
	Name *string `json:"name" tf:"name"`
	// The primary network of the peering.
	Network *string `json:"network" tf:"network"`
	// The peer network in the peering. The peer network may belong to a different project.
	PeerNetwork *string `json:"peerNetwork" tf:"peer_network"`
	// State for the peering, either ACTIVE or INACTIVE. The peering is ACTIVE when there's a matching configuration in the peer network.
	// +optional
	State *string `json:"state,omitempty" tf:"state"`
	// Details about the current state of the peering.
	// +optional
	StateDetails *string `json:"stateDetails,omitempty" tf:"state_details"`
}

func (*NetworkPeeringSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeeringSpecResource.

func (*NetworkPeeringSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkPeeringStatus

type NetworkPeeringStatus 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 (*NetworkPeeringStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkPeeringStatus.

func (*NetworkPeeringStatus) DeepCopyInto

func (in *NetworkPeeringStatus) DeepCopyInto(out *NetworkPeeringStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkSpec

type NetworkSpec struct {
	State *NetworkSpecResource `json:"state,omitempty" tf:"-"`

	Resource NetworkSpecResource `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 (*NetworkSpec) DeepCopy

func (in *NetworkSpec) DeepCopy() *NetworkSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkSpec.

func (*NetworkSpec) DeepCopyInto

func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkSpecResource

type NetworkSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// When set to 'true', the network is created in "auto subnet mode" and
	// it will create a subnet for each region automatically across the
	// '10.128.0.0/9' address range.
	//
	// When set to 'false', the network is created in "custom subnet mode" so
	// the user can explicitly connect subnetwork resources.
	// +optional
	AutoCreateSubnetworks *bool `json:"autoCreateSubnetworks,omitempty" tf:"auto_create_subnetworks"`
	// +optional
	DeleteDefaultRoutesOnCreate *bool `json:"deleteDefaultRoutesOnCreate,omitempty" tf:"delete_default_routes_on_create"`
	// An optional description of this resource. The resource must be
	// recreated to modify this field.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The gateway address for default routing out of the network. This value
	// is selected by GCP.
	// +optional
	GatewayIpv4 *string `json:"gatewayIpv4,omitempty" tf:"gateway_ipv4"`
	// Maximum Transmission Unit in bytes. The minimum value for this field is 1460
	// and the maximum value is 1500 bytes.
	// +optional
	Mtu *int64 `json:"mtu,omitempty" tf:"mtu"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The network-wide routing mode to use. If set to 'REGIONAL', this
	// network's cloud routers will only advertise routes with subnetworks
	// of this network in the same region as the router. If set to 'GLOBAL',
	// this network's cloud routers will advertise routes with all
	// subnetworks of this network, across regions. Possible values: ["REGIONAL", "GLOBAL"]
	// +optional
	RoutingMode *string `json:"routingMode,omitempty" tf:"routing_mode"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*NetworkSpecResource) DeepCopy

func (in *NetworkSpecResource) DeepCopy() *NetworkSpecResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkSpecResource.

func (*NetworkSpecResource) DeepCopyInto

func (in *NetworkSpecResource) DeepCopyInto(out *NetworkSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NetworkStatus

type NetworkStatus 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 (*NetworkStatus) DeepCopy

func (in *NetworkStatus) DeepCopy() *NetworkStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkStatus.

func (*NetworkStatus) DeepCopyInto

func (in *NetworkStatus) DeepCopyInto(out *NetworkStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeGroup

type NodeGroup struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              NodeGroupSpec   `json:"spec,omitempty"`
	Status            NodeGroupStatus `json:"status,omitempty"`
}

func (*NodeGroup) DeepCopy

func (in *NodeGroup) DeepCopy() *NodeGroup

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroup.

func (*NodeGroup) DeepCopyInto

func (in *NodeGroup) DeepCopyInto(out *NodeGroup)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodeGroup) DeepCopyObject

func (in *NodeGroup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NodeGroup) SetupWebhookWithManager

func (r *NodeGroup) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*NodeGroup) ValidateCreate

func (r *NodeGroup) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*NodeGroup) ValidateDelete

func (r *NodeGroup) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*NodeGroup) ValidateUpdate

func (r *NodeGroup) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type NodeGroupList

type NodeGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of NodeGroup CRD objects
	Items []NodeGroup `json:"items,omitempty"`
}

NodeGroupList is a list of NodeGroups

func (*NodeGroupList) DeepCopy

func (in *NodeGroupList) DeepCopy() *NodeGroupList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupList.

func (*NodeGroupList) DeepCopyInto

func (in *NodeGroupList) DeepCopyInto(out *NodeGroupList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodeGroupList) DeepCopyObject

func (in *NodeGroupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NodeGroupSpec

type NodeGroupSpec struct {
	State *NodeGroupSpecResource `json:"state,omitempty" tf:"-"`

	Resource NodeGroupSpecResource `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 (*NodeGroupSpec) DeepCopy

func (in *NodeGroupSpec) DeepCopy() *NodeGroupSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupSpec.

func (*NodeGroupSpec) DeepCopyInto

func (in *NodeGroupSpec) DeepCopyInto(out *NodeGroupSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeGroupSpecAutoscalingPolicy

type NodeGroupSpecAutoscalingPolicy struct {
	// Maximum size of the node group. Set to a value less than or equal
	// to 100 and greater than or equal to min-nodes.
	// +optional
	MaxNodes *int64 `json:"maxNodes,omitempty" tf:"max_nodes"`
	// Minimum size of the node group. Must be less
	// than or equal to max-nodes. The default value is 0.
	// +optional
	MinNodes *int64 `json:"minNodes,omitempty" tf:"min_nodes"`
	// The autoscaling mode. Set to one of the following:
	//   - OFF: Disables the autoscaler.
	//   - ON: Enables scaling in and scaling out.
	//   - ONLY_SCALE_OUT: Enables only scaling out.
	//   You must use this mode if your node groups are configured to
	//   restart their hosted VMs on minimal servers. Possible values: ["OFF", "ON", "ONLY_SCALE_OUT"]
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
}

func (*NodeGroupSpecAutoscalingPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupSpecAutoscalingPolicy.

func (*NodeGroupSpecAutoscalingPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeGroupSpecAutoscalingPolicyCodec

type NodeGroupSpecAutoscalingPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (NodeGroupSpecAutoscalingPolicyCodec) Decode

func (NodeGroupSpecAutoscalingPolicyCodec) Encode

func (NodeGroupSpecAutoscalingPolicyCodec) IsEmpty

type NodeGroupSpecMaintenanceWindow

type NodeGroupSpecMaintenanceWindow struct {
	// instances.start time of the window. This must be in UTC format that resolves to one of 00:00, 04:00, 08:00, 12:00, 16:00, or 20:00. For example, both 13:00-5 and 08:00 are valid.
	StartTime *string `json:"startTime" tf:"start_time"`
}

func (*NodeGroupSpecMaintenanceWindow) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupSpecMaintenanceWindow.

func (*NodeGroupSpecMaintenanceWindow) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeGroupSpecMaintenanceWindowCodec

type NodeGroupSpecMaintenanceWindowCodec struct {
}

+k8s:deepcopy-gen=false

func (NodeGroupSpecMaintenanceWindowCodec) Decode

func (NodeGroupSpecMaintenanceWindowCodec) Encode

func (NodeGroupSpecMaintenanceWindowCodec) IsEmpty

type NodeGroupSpecResource

type NodeGroupSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// If you use sole-tenant nodes for your workloads, you can use the node
	// group autoscaler to automatically manage the sizes of your node groups.
	// +optional
	AutoscalingPolicy *NodeGroupSpecAutoscalingPolicy `json:"autoscalingPolicy,omitempty" tf:"autoscaling_policy"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional textual description of the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The initial number of nodes in the node group. One of 'initial_size' or 'size' must be specified.
	// +optional
	InitialSize *int64 `json:"initialSize,omitempty" tf:"initial_size"`
	// Specifies how to handle instances when a node in the group undergoes maintenance. Set to one of: DEFAULT, RESTART_IN_PLACE, or MIGRATE_WITHIN_NODE_GROUP. The default value is DEFAULT.
	// +optional
	MaintenancePolicy *string `json:"maintenancePolicy,omitempty" tf:"maintenance_policy"`
	// contains properties for the timeframe of maintenance
	// +optional
	MaintenanceWindow *NodeGroupSpecMaintenanceWindow `json:"maintenanceWindow,omitempty" tf:"maintenance_window"`
	// Name of the resource.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// The URL of the node template to which this node group belongs.
	NodeTemplate *string `json:"nodeTemplate" tf:"node_template"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The total number of nodes in the node group. One of 'initial_size' or 'size' must be specified.
	// +optional
	Size *int64 `json:"size,omitempty" tf:"size"`
	// Zone where this node group is located
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*NodeGroupSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupSpecResource.

func (*NodeGroupSpecResource) DeepCopyInto

func (in *NodeGroupSpecResource) DeepCopyInto(out *NodeGroupSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeGroupStatus

type NodeGroupStatus 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 (*NodeGroupStatus) DeepCopy

func (in *NodeGroupStatus) DeepCopy() *NodeGroupStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeGroupStatus.

func (*NodeGroupStatus) DeepCopyInto

func (in *NodeGroupStatus) DeepCopyInto(out *NodeGroupStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeTemplate

type NodeTemplate struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              NodeTemplateSpec   `json:"spec,omitempty"`
	Status            NodeTemplateStatus `json:"status,omitempty"`
}

func (*NodeTemplate) DeepCopy

func (in *NodeTemplate) DeepCopy() *NodeTemplate

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTemplate.

func (*NodeTemplate) DeepCopyInto

func (in *NodeTemplate) DeepCopyInto(out *NodeTemplate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodeTemplate) DeepCopyObject

func (in *NodeTemplate) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*NodeTemplate) SetupWebhookWithManager

func (r *NodeTemplate) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*NodeTemplate) ValidateCreate

func (r *NodeTemplate) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*NodeTemplate) ValidateDelete

func (r *NodeTemplate) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*NodeTemplate) ValidateUpdate

func (r *NodeTemplate) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type NodeTemplateList

type NodeTemplateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of NodeTemplate CRD objects
	Items []NodeTemplate `json:"items,omitempty"`
}

NodeTemplateList is a list of NodeTemplates

func (*NodeTemplateList) DeepCopy

func (in *NodeTemplateList) DeepCopy() *NodeTemplateList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTemplateList.

func (*NodeTemplateList) DeepCopyInto

func (in *NodeTemplateList) DeepCopyInto(out *NodeTemplateList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*NodeTemplateList) DeepCopyObject

func (in *NodeTemplateList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type NodeTemplateSpec

type NodeTemplateSpec struct {
	State *NodeTemplateSpecResource `json:"state,omitempty" tf:"-"`

	Resource NodeTemplateSpecResource `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 (*NodeTemplateSpec) DeepCopy

func (in *NodeTemplateSpec) DeepCopy() *NodeTemplateSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTemplateSpec.

func (*NodeTemplateSpec) DeepCopyInto

func (in *NodeTemplateSpec) DeepCopyInto(out *NodeTemplateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeTemplateSpecNodeTypeFlexibility

type NodeTemplateSpecNodeTypeFlexibility struct {
	// Number of virtual CPUs to use.
	// +optional
	Cpus *string `json:"cpus,omitempty" tf:"cpus"`
	// Use local SSD
	// +optional
	LocalSsd *string `json:"localSsd,omitempty" tf:"local_ssd"`
	// Physical memory available to the node, defined in MB.
	// +optional
	Memory *string `json:"memory,omitempty" tf:"memory"`
}

func (*NodeTemplateSpecNodeTypeFlexibility) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTemplateSpecNodeTypeFlexibility.

func (*NodeTemplateSpecNodeTypeFlexibility) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeTemplateSpecNodeTypeFlexibilityCodec

type NodeTemplateSpecNodeTypeFlexibilityCodec struct {
}

+k8s:deepcopy-gen=false

func (NodeTemplateSpecNodeTypeFlexibilityCodec) Decode

func (NodeTemplateSpecNodeTypeFlexibilityCodec) Encode

func (NodeTemplateSpecNodeTypeFlexibilityCodec) IsEmpty

type NodeTemplateSpecResource

type NodeTemplateSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// CPU overcommit. Default value: "NONE" Possible values: ["ENABLED", "NONE"]
	// +optional
	CpuOvercommitType *string `json:"cpuOvercommitType,omitempty" tf:"cpu_overcommit_type"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional textual description of the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// Labels to use for node affinity, which will be used in
	// instance scheduling.
	// +optional
	NodeAffinityLabels *map[string]string `json:"nodeAffinityLabels,omitempty" tf:"node_affinity_labels"`
	// Node type to use for nodes group that are created from this template.
	// Only one of nodeTypeFlexibility and nodeType can be specified.
	// +optional
	NodeType *string `json:"nodeType,omitempty" tf:"node_type"`
	// Flexible properties for the desired node type. Node groups that
	// use this node template will create nodes of a type that matches
	// these properties. Only one of nodeTypeFlexibility and nodeType can
	// be specified.
	// +optional
	NodeTypeFlexibility *NodeTemplateSpecNodeTypeFlexibility `json:"nodeTypeFlexibility,omitempty" tf:"node_type_flexibility"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Region where nodes using the node template will be created.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The server binding policy for nodes using this template. Determines
	// where the nodes should restart following a maintenance event.
	// +optional
	ServerBinding *NodeTemplateSpecServerBinding `json:"serverBinding,omitempty" tf:"server_binding"`
}

func (*NodeTemplateSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTemplateSpecResource.

func (*NodeTemplateSpecResource) DeepCopyInto

func (in *NodeTemplateSpecResource) DeepCopyInto(out *NodeTemplateSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeTemplateSpecServerBinding

type NodeTemplateSpecServerBinding struct {
	// Type of server binding policy. If 'RESTART_NODE_ON_ANY_SERVER',
	// nodes using this template will restart on any physical server
	// following a maintenance event.
	//
	// If 'RESTART_NODE_ON_MINIMAL_SERVER', nodes using this template
	// will restart on the same physical server following a maintenance
	// event, instead of being live migrated to or restarted on a new
	// physical server. This option may be useful if you are using
	// software licenses tied to the underlying server characteristics
	// such as physical sockets or cores, to avoid the need for
	// additional licenses when maintenance occurs. However, VMs on such
	// nodes will experience outages while maintenance is applied. Possible values: ["RESTART_NODE_ON_ANY_SERVER", "RESTART_NODE_ON_MINIMAL_SERVERS"]
	Type *string `json:"type" tf:"type"`
}

func (*NodeTemplateSpecServerBinding) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTemplateSpecServerBinding.

func (*NodeTemplateSpecServerBinding) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeTemplateSpecServerBindingCodec

type NodeTemplateSpecServerBindingCodec struct {
}

+k8s:deepcopy-gen=false

func (NodeTemplateSpecServerBindingCodec) Decode

func (NodeTemplateSpecServerBindingCodec) Encode

func (NodeTemplateSpecServerBindingCodec) IsEmpty

type NodeTemplateStatus

type NodeTemplateStatus 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 (*NodeTemplateStatus) DeepCopy

func (in *NodeTemplateStatus) DeepCopy() *NodeTemplateStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTemplateStatus.

func (*NodeTemplateStatus) DeepCopyInto

func (in *NodeTemplateStatus) DeepCopyInto(out *NodeTemplateStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PacketMirroring

type PacketMirroring struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PacketMirroringSpec   `json:"spec,omitempty"`
	Status            PacketMirroringStatus `json:"status,omitempty"`
}

func (*PacketMirroring) DeepCopy

func (in *PacketMirroring) DeepCopy() *PacketMirroring

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroring.

func (*PacketMirroring) DeepCopyInto

func (in *PacketMirroring) DeepCopyInto(out *PacketMirroring)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PacketMirroring) DeepCopyObject

func (in *PacketMirroring) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*PacketMirroring) SetupWebhookWithManager

func (r *PacketMirroring) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*PacketMirroring) ValidateCreate

func (r *PacketMirroring) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*PacketMirroring) ValidateDelete

func (r *PacketMirroring) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*PacketMirroring) ValidateUpdate

func (r *PacketMirroring) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type PacketMirroringList

type PacketMirroringList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of PacketMirroring CRD objects
	Items []PacketMirroring `json:"items,omitempty"`
}

PacketMirroringList is a list of PacketMirrorings

func (*PacketMirroringList) DeepCopy

func (in *PacketMirroringList) DeepCopy() *PacketMirroringList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringList.

func (*PacketMirroringList) DeepCopyInto

func (in *PacketMirroringList) DeepCopyInto(out *PacketMirroringList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PacketMirroringList) DeepCopyObject

func (in *PacketMirroringList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PacketMirroringSpec

type PacketMirroringSpec struct {
	State *PacketMirroringSpecResource `json:"state,omitempty" tf:"-"`

	Resource PacketMirroringSpecResource `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 (*PacketMirroringSpec) DeepCopy

func (in *PacketMirroringSpec) DeepCopy() *PacketMirroringSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringSpec.

func (*PacketMirroringSpec) DeepCopyInto

func (in *PacketMirroringSpec) DeepCopyInto(out *PacketMirroringSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PacketMirroringSpecCollectorIlb

type PacketMirroringSpecCollectorIlb struct {
	// The URL of the forwarding rule.
	Url *string `json:"url" tf:"url"`
}

func (*PacketMirroringSpecCollectorIlb) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringSpecCollectorIlb.

func (*PacketMirroringSpecCollectorIlb) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PacketMirroringSpecCollectorIlbCodec

type PacketMirroringSpecCollectorIlbCodec struct {
}

+k8s:deepcopy-gen=false

func (PacketMirroringSpecCollectorIlbCodec) Decode

func (PacketMirroringSpecCollectorIlbCodec) Encode

func (PacketMirroringSpecCollectorIlbCodec) IsEmpty

type PacketMirroringSpecFilter

type PacketMirroringSpecFilter struct {
	// IP CIDR ranges that apply as a filter on the source (ingress) or
	// destination (egress) IP in the IP header. Only IPv4 is supported.
	// +optional
	CidrRanges []string `json:"cidrRanges,omitempty" tf:"cidr_ranges"`
	// Direction of traffic to mirror. Default value: "BOTH" Possible values: ["INGRESS", "EGRESS", "BOTH"]
	// +optional
	Direction *string `json:"direction,omitempty" tf:"direction"`
	// Protocols that apply as a filter on mirrored traffic. Possible values: ["tcp", "udp", "icmp"]
	// +optional
	IpProtocols []string `json:"ipProtocols,omitempty" tf:"ip_protocols"`
}

func (*PacketMirroringSpecFilter) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringSpecFilter.

func (*PacketMirroringSpecFilter) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PacketMirroringSpecFilterCodec

type PacketMirroringSpecFilterCodec struct {
}

+k8s:deepcopy-gen=false

func (PacketMirroringSpecFilterCodec) Decode

func (PacketMirroringSpecFilterCodec) Encode

func (PacketMirroringSpecFilterCodec) IsEmpty

type PacketMirroringSpecMirroredResources

type PacketMirroringSpecMirroredResources struct {
	// All the listed instances will be mirrored.  Specify at most 50.
	// +optional
	Instances []PacketMirroringSpecMirroredResourcesInstances `json:"instances,omitempty" tf:"instances"`
	// All instances in one of these subnetworks will be mirrored.
	// +optional
	Subnetworks []PacketMirroringSpecMirroredResourcesSubnetworks `json:"subnetworks,omitempty" tf:"subnetworks"`
	// All instances with these tags will be mirrored.
	// +optional
	Tags []string `json:"tags,omitempty" tf:"tags"`
}

func (*PacketMirroringSpecMirroredResources) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringSpecMirroredResources.

func (*PacketMirroringSpecMirroredResources) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PacketMirroringSpecMirroredResourcesCodec

type PacketMirroringSpecMirroredResourcesCodec struct {
}

+k8s:deepcopy-gen=false

func (PacketMirroringSpecMirroredResourcesCodec) Decode

func (PacketMirroringSpecMirroredResourcesCodec) Encode

func (PacketMirroringSpecMirroredResourcesCodec) IsEmpty

type PacketMirroringSpecMirroredResourcesInstances

type PacketMirroringSpecMirroredResourcesInstances struct {
	// The URL of the instances where this rule should be active.
	Url *string `json:"url" tf:"url"`
}

func (*PacketMirroringSpecMirroredResourcesInstances) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringSpecMirroredResourcesInstances.

func (*PacketMirroringSpecMirroredResourcesInstances) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PacketMirroringSpecMirroredResourcesSubnetworks

type PacketMirroringSpecMirroredResourcesSubnetworks struct {
	// The URL of the subnetwork where this rule should be active.
	Url *string `json:"url" tf:"url"`
}

func (*PacketMirroringSpecMirroredResourcesSubnetworks) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringSpecMirroredResourcesSubnetworks.

func (*PacketMirroringSpecMirroredResourcesSubnetworks) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PacketMirroringSpecNetwork

type PacketMirroringSpecNetwork struct {
	// The full self_link URL of the network where this rule is active.
	Url *string `json:"url" tf:"url"`
}

func (*PacketMirroringSpecNetwork) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringSpecNetwork.

func (*PacketMirroringSpecNetwork) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PacketMirroringSpecNetworkCodec

type PacketMirroringSpecNetworkCodec struct {
}

+k8s:deepcopy-gen=false

func (PacketMirroringSpecNetworkCodec) Decode

func (PacketMirroringSpecNetworkCodec) Encode

func (PacketMirroringSpecNetworkCodec) IsEmpty

type PacketMirroringSpecResource

type PacketMirroringSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The Forwarding Rule resource (of type load_balancing_scheme=INTERNAL)
	// that will be used as collector for mirrored traffic. The
	// specified forwarding rule must have is_mirroring_collector
	// set to true.
	CollectorIlb *PacketMirroringSpecCollectorIlb `json:"collectorIlb" tf:"collector_ilb"`
	// A human-readable description of the rule.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// A filter for mirrored traffic.  If unset, all traffic is mirrored.
	// +optional
	Filter *PacketMirroringSpecFilter `json:"filter,omitempty" tf:"filter"`
	// A means of specifying which resources to mirror.
	MirroredResources *PacketMirroringSpecMirroredResources `json:"mirroredResources" tf:"mirrored_resources"`
	// The name of the packet mirroring rule
	Name *string `json:"name" tf:"name"`
	// Specifies the mirrored VPC network. Only packets in this network
	// will be mirrored. All mirrored VMs should have a NIC in the given
	// network. All mirrored subnetworks should belong to the given network.
	Network *PacketMirroringSpecNetwork `json:"network" tf:"network"`
	// Since only one rule can be active at a time, priority is
	// used to break ties in the case of two rules that apply to
	// the same instances.
	// +optional
	Priority *int64 `json:"priority,omitempty" tf:"priority"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The Region in which the created address should reside.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
}

func (*PacketMirroringSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringSpecResource.

func (*PacketMirroringSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PacketMirroringStatus

type PacketMirroringStatus 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 (*PacketMirroringStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PacketMirroringStatus.

func (*PacketMirroringStatus) DeepCopyInto

func (in *PacketMirroringStatus) DeepCopyInto(out *PacketMirroringStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PerInstanceConfig

type PerInstanceConfig struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              PerInstanceConfigSpec   `json:"spec,omitempty"`
	Status            PerInstanceConfigStatus `json:"status,omitempty"`
}

func (*PerInstanceConfig) DeepCopy

func (in *PerInstanceConfig) DeepCopy() *PerInstanceConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerInstanceConfig.

func (*PerInstanceConfig) DeepCopyInto

func (in *PerInstanceConfig) DeepCopyInto(out *PerInstanceConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PerInstanceConfig) DeepCopyObject

func (in *PerInstanceConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*PerInstanceConfig) SetupWebhookWithManager

func (r *PerInstanceConfig) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*PerInstanceConfig) ValidateCreate

func (r *PerInstanceConfig) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*PerInstanceConfig) ValidateDelete

func (r *PerInstanceConfig) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*PerInstanceConfig) ValidateUpdate

func (r *PerInstanceConfig) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type PerInstanceConfigList

type PerInstanceConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of PerInstanceConfig CRD objects
	Items []PerInstanceConfig `json:"items,omitempty"`
}

PerInstanceConfigList is a list of PerInstanceConfigs

func (*PerInstanceConfigList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerInstanceConfigList.

func (*PerInstanceConfigList) DeepCopyInto

func (in *PerInstanceConfigList) DeepCopyInto(out *PerInstanceConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PerInstanceConfigList) DeepCopyObject

func (in *PerInstanceConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PerInstanceConfigSpec

type PerInstanceConfigSpec struct {
	State *PerInstanceConfigSpecResource `json:"state,omitempty" tf:"-"`

	Resource PerInstanceConfigSpecResource `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 (*PerInstanceConfigSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerInstanceConfigSpec.

func (*PerInstanceConfigSpec) DeepCopyInto

func (in *PerInstanceConfigSpec) DeepCopyInto(out *PerInstanceConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PerInstanceConfigSpecPreservedState

type PerInstanceConfigSpecPreservedState struct {
	// Stateful disks for the instance.
	// +optional
	Disk []PerInstanceConfigSpecPreservedStateDisk `json:"disk,omitempty" tf:"disk"`
	// Preserved metadata defined for this instance. This is a list of key->value pairs.
	// +optional
	Metadata *map[string]string `json:"metadata,omitempty" tf:"metadata"`
}

func (*PerInstanceConfigSpecPreservedState) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerInstanceConfigSpecPreservedState.

func (*PerInstanceConfigSpecPreservedState) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PerInstanceConfigSpecPreservedStateCodec

type PerInstanceConfigSpecPreservedStateCodec struct {
}

+k8s:deepcopy-gen=false

func (PerInstanceConfigSpecPreservedStateCodec) Decode

func (PerInstanceConfigSpecPreservedStateCodec) Encode

func (PerInstanceConfigSpecPreservedStateCodec) IsEmpty

type PerInstanceConfigSpecPreservedStateDisk

type PerInstanceConfigSpecPreservedStateDisk struct {
	// A value that prescribes what should happen to the stateful disk when the VM instance is deleted.
	// The available options are 'NEVER' and 'ON_PERMANENT_INSTANCE_DELETION'.
	// 'NEVER' - detach the disk when the VM is deleted, but do not delete the disk.
	// 'ON_PERMANENT_INSTANCE_DELETION' will delete the stateful disk when the VM is permanently
	// deleted from the instance group. Default value: "NEVER" Possible values: ["NEVER", "ON_PERMANENT_INSTANCE_DELETION"]
	// +optional
	DeleteRule *string `json:"deleteRule,omitempty" tf:"delete_rule"`
	// A unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance.
	DeviceName *string `json:"deviceName" tf:"device_name"`
	// The mode of the disk. Default value: "READ_WRITE" Possible values: ["READ_ONLY", "READ_WRITE"]
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// The URI of an existing persistent disk to attach under the specified device-name in the format
	// 'projects/project-id/zones/zone/disks/disk-name'.
	Source *string `json:"source" tf:"source"`
}

func (*PerInstanceConfigSpecPreservedStateDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerInstanceConfigSpecPreservedStateDisk.

func (*PerInstanceConfigSpecPreservedStateDisk) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PerInstanceConfigSpecResource

type PerInstanceConfigSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The instance group manager this instance config is part of.
	InstanceGroupManager *string `json:"instanceGroupManager" tf:"instance_group_manager"`
	// +optional
	MinimalAction *string `json:"minimalAction,omitempty" tf:"minimal_action"`
	// +optional
	MostDisruptiveAllowedAction *string `json:"mostDisruptiveAllowedAction,omitempty" tf:"most_disruptive_allowed_action"`
	// The name for this per-instance config and its corresponding instance.
	Name *string `json:"name" tf:"name"`
	// The preserved state for this instance.
	// +optional
	PreservedState *PerInstanceConfigSpecPreservedState `json:"preservedState,omitempty" tf:"preserved_state"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	RemoveInstanceStateOnDestroy *bool `json:"removeInstanceStateOnDestroy,omitempty" tf:"remove_instance_state_on_destroy"`
	// Zone where the containing instance group manager is located
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*PerInstanceConfigSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerInstanceConfigSpecResource.

func (*PerInstanceConfigSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PerInstanceConfigStatus

type PerInstanceConfigStatus 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 (*PerInstanceConfigStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PerInstanceConfigStatus.

func (*PerInstanceConfigStatus) DeepCopyInto

func (in *PerInstanceConfigStatus) DeepCopyInto(out *PerInstanceConfigStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectDefaultNetworkTier

type ProjectDefaultNetworkTier struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ProjectDefaultNetworkTierSpec   `json:"spec,omitempty"`
	Status            ProjectDefaultNetworkTierStatus `json:"status,omitempty"`
}

func (*ProjectDefaultNetworkTier) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectDefaultNetworkTier.

func (*ProjectDefaultNetworkTier) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectDefaultNetworkTier) DeepCopyObject

func (in *ProjectDefaultNetworkTier) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ProjectDefaultNetworkTier) SetupWebhookWithManager

func (r *ProjectDefaultNetworkTier) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ProjectDefaultNetworkTier) ValidateCreate

func (r *ProjectDefaultNetworkTier) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ProjectDefaultNetworkTier) ValidateDelete

func (r *ProjectDefaultNetworkTier) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ProjectDefaultNetworkTier) ValidateUpdate

func (r *ProjectDefaultNetworkTier) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ProjectDefaultNetworkTierList

type ProjectDefaultNetworkTierList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ProjectDefaultNetworkTier CRD objects
	Items []ProjectDefaultNetworkTier `json:"items,omitempty"`
}

ProjectDefaultNetworkTierList is a list of ProjectDefaultNetworkTiers

func (*ProjectDefaultNetworkTierList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectDefaultNetworkTierList.

func (*ProjectDefaultNetworkTierList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectDefaultNetworkTierList) DeepCopyObject

func (in *ProjectDefaultNetworkTierList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ProjectDefaultNetworkTierSpec

type ProjectDefaultNetworkTierSpec struct {
	State *ProjectDefaultNetworkTierSpecResource `json:"state,omitempty" tf:"-"`

	Resource ProjectDefaultNetworkTierSpecResource `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 (*ProjectDefaultNetworkTierSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectDefaultNetworkTierSpec.

func (*ProjectDefaultNetworkTierSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectDefaultNetworkTierSpecResource

type ProjectDefaultNetworkTierSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The default network tier to be configured for the project. This field can take the following values: PREMIUM or STANDARD.
	NetworkTier *string `json:"networkTier" tf:"network_tier"`
	// 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 (*ProjectDefaultNetworkTierSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectDefaultNetworkTierSpecResource.

func (*ProjectDefaultNetworkTierSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectDefaultNetworkTierStatus

type ProjectDefaultNetworkTierStatus 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 (*ProjectDefaultNetworkTierStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectDefaultNetworkTierStatus.

func (*ProjectDefaultNetworkTierStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectMetadata

type ProjectMetadata struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ProjectMetadataSpec   `json:"spec,omitempty"`
	Status            ProjectMetadataStatus `json:"status,omitempty"`
}

func (*ProjectMetadata) DeepCopy

func (in *ProjectMetadata) DeepCopy() *ProjectMetadata

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadata.

func (*ProjectMetadata) DeepCopyInto

func (in *ProjectMetadata) DeepCopyInto(out *ProjectMetadata)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectMetadata) DeepCopyObject

func (in *ProjectMetadata) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ProjectMetadata) SetupWebhookWithManager

func (r *ProjectMetadata) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ProjectMetadata) ValidateCreate

func (r *ProjectMetadata) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ProjectMetadata) ValidateDelete

func (r *ProjectMetadata) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ProjectMetadata) ValidateUpdate

func (r *ProjectMetadata) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ProjectMetadataItem

type ProjectMetadataItem struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ProjectMetadataItemSpec   `json:"spec,omitempty"`
	Status            ProjectMetadataItemStatus `json:"status,omitempty"`
}

func (*ProjectMetadataItem) DeepCopy

func (in *ProjectMetadataItem) DeepCopy() *ProjectMetadataItem

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadataItem.

func (*ProjectMetadataItem) DeepCopyInto

func (in *ProjectMetadataItem) DeepCopyInto(out *ProjectMetadataItem)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectMetadataItem) DeepCopyObject

func (in *ProjectMetadataItem) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ProjectMetadataItem) SetupWebhookWithManager

func (r *ProjectMetadataItem) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ProjectMetadataItem) ValidateCreate

func (r *ProjectMetadataItem) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ProjectMetadataItem) ValidateDelete

func (r *ProjectMetadataItem) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ProjectMetadataItem) ValidateUpdate

func (r *ProjectMetadataItem) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ProjectMetadataItemList

type ProjectMetadataItemList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ProjectMetadataItem CRD objects
	Items []ProjectMetadataItem `json:"items,omitempty"`
}

ProjectMetadataItemList is a list of ProjectMetadataItems

func (*ProjectMetadataItemList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadataItemList.

func (*ProjectMetadataItemList) DeepCopyInto

func (in *ProjectMetadataItemList) DeepCopyInto(out *ProjectMetadataItemList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectMetadataItemList) DeepCopyObject

func (in *ProjectMetadataItemList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ProjectMetadataItemSpec

type ProjectMetadataItemSpec struct {
	State *ProjectMetadataItemSpecResource `json:"state,omitempty" tf:"-"`

	Resource ProjectMetadataItemSpecResource `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 (*ProjectMetadataItemSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadataItemSpec.

func (*ProjectMetadataItemSpec) DeepCopyInto

func (in *ProjectMetadataItemSpec) DeepCopyInto(out *ProjectMetadataItemSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectMetadataItemSpecResource

type ProjectMetadataItemSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The metadata key to set.
	Key *string `json:"key" tf:"key"`
	// 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"`
	// The value to set for the given metadata key.
	Value *string `json:"value" tf:"value"`
}

func (*ProjectMetadataItemSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadataItemSpecResource.

func (*ProjectMetadataItemSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectMetadataItemStatus

type ProjectMetadataItemStatus 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 (*ProjectMetadataItemStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadataItemStatus.

func (*ProjectMetadataItemStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectMetadataList

type ProjectMetadataList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ProjectMetadata CRD objects
	Items []ProjectMetadata `json:"items,omitempty"`
}

ProjectMetadataList is a list of ProjectMetadatas

func (*ProjectMetadataList) DeepCopy

func (in *ProjectMetadataList) DeepCopy() *ProjectMetadataList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadataList.

func (*ProjectMetadataList) DeepCopyInto

func (in *ProjectMetadataList) DeepCopyInto(out *ProjectMetadataList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ProjectMetadataList) DeepCopyObject

func (in *ProjectMetadataList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ProjectMetadataSpec

type ProjectMetadataSpec struct {
	State *ProjectMetadataSpecResource `json:"state,omitempty" tf:"-"`

	Resource ProjectMetadataSpecResource `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 (*ProjectMetadataSpec) DeepCopy

func (in *ProjectMetadataSpec) DeepCopy() *ProjectMetadataSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadataSpec.

func (*ProjectMetadataSpec) DeepCopyInto

func (in *ProjectMetadataSpec) DeepCopyInto(out *ProjectMetadataSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectMetadataSpecResource

type ProjectMetadataSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// A series of key value pairs.
	Metadata *map[string]string `json:"metadata" tf:"metadata"`
	// 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 (*ProjectMetadataSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadataSpecResource.

func (*ProjectMetadataSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ProjectMetadataStatus

type ProjectMetadataStatus 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 (*ProjectMetadataStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectMetadataStatus.

func (*ProjectMetadataStatus) DeepCopyInto

func (in *ProjectMetadataStatus) DeepCopyInto(out *ProjectMetadataStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscaler

type RegionAutoscaler struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionAutoscalerSpec   `json:"spec,omitempty"`
	Status            RegionAutoscalerStatus `json:"status,omitempty"`
}

func (*RegionAutoscaler) DeepCopy

func (in *RegionAutoscaler) DeepCopy() *RegionAutoscaler

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscaler.

func (*RegionAutoscaler) DeepCopyInto

func (in *RegionAutoscaler) DeepCopyInto(out *RegionAutoscaler)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionAutoscaler) DeepCopyObject

func (in *RegionAutoscaler) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionAutoscaler) SetupWebhookWithManager

func (r *RegionAutoscaler) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionAutoscaler) ValidateCreate

func (r *RegionAutoscaler) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionAutoscaler) ValidateDelete

func (r *RegionAutoscaler) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionAutoscaler) ValidateUpdate

func (r *RegionAutoscaler) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionAutoscalerList

type RegionAutoscalerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionAutoscaler CRD objects
	Items []RegionAutoscaler `json:"items,omitempty"`
}

RegionAutoscalerList is a list of RegionAutoscalers

func (*RegionAutoscalerList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerList.

func (*RegionAutoscalerList) DeepCopyInto

func (in *RegionAutoscalerList) DeepCopyInto(out *RegionAutoscalerList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionAutoscalerList) DeepCopyObject

func (in *RegionAutoscalerList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionAutoscalerSpec

type RegionAutoscalerSpec struct {
	State *RegionAutoscalerSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionAutoscalerSpecResource `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 (*RegionAutoscalerSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerSpec.

func (*RegionAutoscalerSpec) DeepCopyInto

func (in *RegionAutoscalerSpec) DeepCopyInto(out *RegionAutoscalerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscalerSpecAutoscalingPolicy

type RegionAutoscalerSpecAutoscalingPolicy struct {
	// The number of seconds that the autoscaler should wait before it
	// starts collecting information from a new instance. This prevents
	// the autoscaler from collecting information when the instance is
	// initializing, during which the collected usage would not be
	// reliable. The default time autoscaler waits is 60 seconds.
	//
	// Virtual machine initialization times might vary because of
	// numerous factors. We recommend that you test how long an
	// instance may take to initialize. To do this, create an instance
	// and time the startup process.
	// +optional
	CooldownPeriod *int64 `json:"cooldownPeriod,omitempty" tf:"cooldown_period"`
	// Defines the CPU utilization policy that allows the autoscaler to
	// scale based on the average CPU utilization of a managed instance
	// group.
	// +optional
	CpuUtilization *RegionAutoscalerSpecAutoscalingPolicyCpuUtilization `json:"cpuUtilization,omitempty" tf:"cpu_utilization"`
	// Configuration parameters of autoscaling based on a load balancer.
	// +optional
	LoadBalancingUtilization *RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilization `json:"loadBalancingUtilization,omitempty" tf:"load_balancing_utilization"`
	// The maximum number of instances that the autoscaler can scale up
	// to. This is required when creating or updating an autoscaler. The
	// maximum number of replicas should not be lower than minimal number
	// of replicas.
	MaxReplicas *int64 `json:"maxReplicas" tf:"max_replicas"`
	// Configuration parameters of autoscaling based on a custom metric.
	// +optional
	Metric []RegionAutoscalerSpecAutoscalingPolicyMetric `json:"metric,omitempty" tf:"metric"`
	// The minimum number of replicas that the autoscaler can scale down
	// to. This cannot be less than 0. If not provided, autoscaler will
	// choose a default value depending on maximum number of instances
	// allowed.
	MinReplicas *int64 `json:"minReplicas" tf:"min_replicas"`
	// Defines operating mode for this policy. Default value: "ON" Possible values: ["OFF", "ONLY_UP", "ON"]
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// Defines scale in controls to reduce the risk of response latency
	// and outages due to abrupt scale-in events
	// +optional
	ScaleInControl *RegionAutoscalerSpecAutoscalingPolicyScaleInControl `json:"scaleInControl,omitempty" tf:"scale_in_control"`
	// Scaling schedules defined for an autoscaler. Multiple schedules can be set on an autoscaler and they can overlap.
	// +optional
	ScalingSchedules []RegionAutoscalerSpecAutoscalingPolicyScalingSchedules `json:"scalingSchedules,omitempty" tf:"scaling_schedules"`
}

func (*RegionAutoscalerSpecAutoscalingPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerSpecAutoscalingPolicy.

func (*RegionAutoscalerSpecAutoscalingPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscalerSpecAutoscalingPolicyCodec

type RegionAutoscalerSpecAutoscalingPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionAutoscalerSpecAutoscalingPolicyCodec) Decode

func (RegionAutoscalerSpecAutoscalingPolicyCodec) Encode

func (RegionAutoscalerSpecAutoscalingPolicyCodec) IsEmpty

type RegionAutoscalerSpecAutoscalingPolicyCpuUtilization

type RegionAutoscalerSpecAutoscalingPolicyCpuUtilization struct {
	// Indicates whether predictive autoscaling based on CPU metric is enabled. Valid values are:
	//
	// - NONE (default). No predictive method is used. The autoscaler scales the group to meet current demand based on real-time metrics.
	//
	// - OPTIMIZE_AVAILABILITY. Predictive autoscaling improves availability by monitoring daily and weekly load patterns and scaling out ahead of anticipated demand.
	// +optional
	PredictiveMethod *string `json:"predictiveMethod,omitempty" tf:"predictive_method"`
	// The target CPU utilization that the autoscaler should maintain.
	// Must be a float value in the range (0, 1]. If not specified, the
	// default is 0.6.
	//
	// If the CPU level is below the target utilization, the autoscaler
	// scales down the number of instances until it reaches the minimum
	// number of instances you specified or until the average CPU of
	// your instances reaches the target utilization.
	//
	// If the average CPU is above the target utilization, the autoscaler
	// scales up until it reaches the maximum number of instances you
	// specified or until the average utilization reaches the target
	// utilization.
	Target *float64 `json:"target" tf:"target"`
}

func (*RegionAutoscalerSpecAutoscalingPolicyCpuUtilization) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerSpecAutoscalingPolicyCpuUtilization.

func (*RegionAutoscalerSpecAutoscalingPolicyCpuUtilization) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscalerSpecAutoscalingPolicyCpuUtilizationCodec

type RegionAutoscalerSpecAutoscalingPolicyCpuUtilizationCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionAutoscalerSpecAutoscalingPolicyCpuUtilizationCodec) Decode

func (RegionAutoscalerSpecAutoscalingPolicyCpuUtilizationCodec) Encode

func (RegionAutoscalerSpecAutoscalingPolicyCpuUtilizationCodec) IsEmpty

type RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilization

type RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilization struct {
	// Fraction of backend capacity utilization (set in HTTP(s) load
	// balancing configuration) that autoscaler should maintain. Must
	// be a positive float value. If not defined, the default is 0.8.
	Target *float64 `json:"target" tf:"target"`
}

func (*RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilization) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilization.

func (*RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilization) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec

type RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec) Decode

func (RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec) Encode

func (RegionAutoscalerSpecAutoscalingPolicyLoadBalancingUtilizationCodec) IsEmpty

type RegionAutoscalerSpecAutoscalingPolicyMetric

type RegionAutoscalerSpecAutoscalingPolicyMetric struct {
	// The identifier (type) of the Stackdriver Monitoring metric.
	// The metric cannot have negative values.
	//
	// The metric must have a value type of INT64 or DOUBLE.
	Name *string `json:"name" tf:"name"`
	// The target value of the metric that autoscaler should
	// maintain. This must be a positive value. A utilization
	// metric scales number of virtual machines handling requests
	// to increase or decrease proportionally to the metric.
	//
	// For example, a good metric to use as a utilizationTarget is
	// www.googleapis.com/compute/instance/network/received_bytes_count.
	// The autoscaler will work to keep this value constant for each
	// of the instances.
	// +optional
	Target *float64 `json:"target,omitempty" tf:"target"`
	// Defines how target utilization value is expressed for a
	// Stackdriver Monitoring metric. Possible values: ["GAUGE", "DELTA_PER_SECOND", "DELTA_PER_MINUTE"]
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
}

func (*RegionAutoscalerSpecAutoscalingPolicyMetric) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerSpecAutoscalingPolicyMetric.

func (*RegionAutoscalerSpecAutoscalingPolicyMetric) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscalerSpecAutoscalingPolicyScaleInControl

type RegionAutoscalerSpecAutoscalingPolicyScaleInControl struct {
	// A nested object resource
	// +optional
	MaxScaledInReplicas *RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas `json:"maxScaledInReplicas,omitempty" tf:"max_scaled_in_replicas"`
	// How long back autoscaling should look when computing recommendations
	// to include directives regarding slower scale down, as described above.
	// +optional
	TimeWindowSec *int64 `json:"timeWindowSec,omitempty" tf:"time_window_sec"`
}

func (*RegionAutoscalerSpecAutoscalingPolicyScaleInControl) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerSpecAutoscalingPolicyScaleInControl.

func (*RegionAutoscalerSpecAutoscalingPolicyScaleInControl) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscalerSpecAutoscalingPolicyScaleInControlCodec

type RegionAutoscalerSpecAutoscalingPolicyScaleInControlCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionAutoscalerSpecAutoscalingPolicyScaleInControlCodec) Decode

func (RegionAutoscalerSpecAutoscalingPolicyScaleInControlCodec) Encode

func (RegionAutoscalerSpecAutoscalingPolicyScaleInControlCodec) IsEmpty

type RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas

type RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas struct {
	// Specifies a fixed number of VM instances. This must be a positive
	// integer.
	// +optional
	Fixed *int64 `json:"fixed,omitempty" tf:"fixed"`
	// Specifies a percentage of instances between 0 to 100%, inclusive.
	// For example, specify 80 for 80%.
	// +optional
	Percent *int64 `json:"percent,omitempty" tf:"percent"`
}

func (*RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas.

func (*RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicas) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec

type RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec) Decode

func (RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec) Encode

func (RegionAutoscalerSpecAutoscalingPolicyScaleInControlMaxScaledInReplicasCodec) IsEmpty

type RegionAutoscalerSpecAutoscalingPolicyScalingSchedules

type RegionAutoscalerSpecAutoscalingPolicyScalingSchedules struct {
	// A description of a scaling schedule.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// A boolean value that specifies if a scaling schedule can influence autoscaler recommendations. If set to true, then a scaling schedule has no effect.
	// +optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled"`
	// The duration of time intervals (in seconds) for which this scaling schedule will be running. The minimum allowed value is 300.
	DurationSec *int64 `json:"durationSec" tf:"duration_sec"`
	// Minimum number of VM instances that autoscaler will recommend in time intervals starting according to schedule.
	MinRequiredReplicas *int64  `json:"minRequiredReplicas" tf:"min_required_replicas"`
	Name                *string `json:"name" tf:"name"`
	// The start timestamps of time intervals when this scaling schedule should provide a scaling signal. This field uses the extended cron format (with an optional year field).
	Schedule *string `json:"schedule" tf:"schedule"`
	// The time zone to be used when interpreting the schedule. The value of this field must be a time zone name from the tz database: http://en.wikipedia.org/wiki/Tz_database.
	// +optional
	TimeZone *string `json:"timeZone,omitempty" tf:"time_zone"`
}

func (*RegionAutoscalerSpecAutoscalingPolicyScalingSchedules) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerSpecAutoscalingPolicyScalingSchedules.

func (*RegionAutoscalerSpecAutoscalingPolicyScalingSchedules) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscalerSpecResource

type RegionAutoscalerSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The configuration parameters for the autoscaling algorithm. You can
	// define one or more of the policies for an autoscaler: cpuUtilization,
	// customMetricUtilizations, and loadBalancingUtilization.
	//
	// If none of these are specified, the default will be to autoscale based
	// on cpuUtilization to 0.6 or 60%.
	AutoscalingPolicy *RegionAutoscalerSpecAutoscalingPolicy `json:"autoscalingPolicy" tf:"autoscaling_policy"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. The name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// URL of the region where the instance group resides.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// URL of the managed instance group that this autoscaler will scale.
	Target *string `json:"target" tf:"target"`
}

func (*RegionAutoscalerSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerSpecResource.

func (*RegionAutoscalerSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionAutoscalerStatus

type RegionAutoscalerStatus 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 (*RegionAutoscalerStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionAutoscalerStatus.

func (*RegionAutoscalerStatus) DeepCopyInto

func (in *RegionAutoscalerStatus) DeepCopyInto(out *RegionAutoscalerStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendService

type RegionBackendService struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionBackendServiceSpec   `json:"spec,omitempty"`
	Status            RegionBackendServiceStatus `json:"status,omitempty"`
}

func (*RegionBackendService) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendService.

func (*RegionBackendService) DeepCopyInto

func (in *RegionBackendService) DeepCopyInto(out *RegionBackendService)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionBackendService) DeepCopyObject

func (in *RegionBackendService) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionBackendService) SetupWebhookWithManager

func (r *RegionBackendService) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionBackendService) ValidateCreate

func (r *RegionBackendService) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionBackendService) ValidateDelete

func (r *RegionBackendService) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionBackendService) ValidateUpdate

func (r *RegionBackendService) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionBackendServiceList

type RegionBackendServiceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionBackendService CRD objects
	Items []RegionBackendService `json:"items,omitempty"`
}

RegionBackendServiceList is a list of RegionBackendServices

func (*RegionBackendServiceList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceList.

func (*RegionBackendServiceList) DeepCopyInto

func (in *RegionBackendServiceList) DeepCopyInto(out *RegionBackendServiceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionBackendServiceList) DeepCopyObject

func (in *RegionBackendServiceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionBackendServiceSpec

type RegionBackendServiceSpec struct {
	State *RegionBackendServiceSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionBackendServiceSpecResource `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 (*RegionBackendServiceSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpec.

func (*RegionBackendServiceSpec) DeepCopyInto

func (in *RegionBackendServiceSpec) DeepCopyInto(out *RegionBackendServiceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecBackend

type RegionBackendServiceSpecBackend struct {
	// Specifies the balancing mode for this backend. Default value: "CONNECTION" Possible values: ["UTILIZATION", "RATE", "CONNECTION"]
	// +optional
	BalancingMode *string `json:"balancingMode,omitempty" tf:"balancing_mode"`
	// A multiplier applied to the group's maximum servicing capacity
	// (based on UTILIZATION, RATE or CONNECTION).
	//
	// ~>**NOTE**: This field cannot be set for
	// INTERNAL region backend services (default loadBalancingScheme),
	// but is required for non-INTERNAL backend service. The total
	// capacity_scaler for all backends must be non-zero.
	//
	// A setting of 0 means the group is completely drained, offering
	// 0% of its available Capacity. Valid range is [0.0,1.0].
	// +optional
	CapacityScaler *float64 `json:"capacityScaler,omitempty" tf:"capacity_scaler"`
	// An optional description of this resource.
	// Provide this property when you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// This field designates whether this is a failover backend. More
	// than one failover backend can be configured for a given RegionBackendService.
	// +optional
	Failover *bool `json:"failover,omitempty" tf:"failover"`
	// The fully-qualified URL of an Instance Group or Network Endpoint
	// Group resource. In case of instance group this defines the list
	// of instances that serve traffic. Member virtual machine
	// instances from each instance group must live in the same zone as
	// the instance group itself. No two backends in a backend service
	// are allowed to use same Instance Group resource.
	//
	// For Network Endpoint Groups this defines list of endpoints. All
	// endpoints of Network Endpoint Group must be hosted on instances
	// located in the same zone as the Network Endpoint Group.
	//
	// Backend services cannot mix Instance Group and
	// Network Endpoint Group backends.
	//
	// When the 'load_balancing_scheme' is INTERNAL, only instance groups
	// are supported.
	//
	// Note that you must specify an Instance Group or Network Endpoint
	// Group resource using the fully-qualified URL, rather than a
	// partial URL.
	Group *string `json:"group" tf:"group"`
	// The max number of simultaneous connections for the group. Can
	// be used with either CONNECTION or UTILIZATION balancing modes.
	// Cannot be set for INTERNAL backend services.
	//
	// For CONNECTION mode, either maxConnections or one
	// of maxConnectionsPerInstance or maxConnectionsPerEndpoint,
	// as appropriate for group type, must be set.
	// +optional
	MaxConnections *int64 `json:"maxConnections,omitempty" tf:"max_connections"`
	// The max number of simultaneous connections that a single backend
	// network endpoint can handle. Cannot be set
	// for INTERNAL backend services.
	//
	// This is used to calculate the capacity of the group. Can be
	// used in either CONNECTION or UTILIZATION balancing modes. For
	// CONNECTION mode, either maxConnections or
	// maxConnectionsPerEndpoint must be set.
	// +optional
	MaxConnectionsPerEndpoint *int64 `json:"maxConnectionsPerEndpoint,omitempty" tf:"max_connections_per_endpoint"`
	// The max number of simultaneous connections that a single
	// backend instance can handle. Cannot be set for INTERNAL backend
	// services.
	//
	// This is used to calculate the capacity of the group.
	// Can be used in either CONNECTION or UTILIZATION balancing modes.
	// For CONNECTION mode, either maxConnections or
	// maxConnectionsPerInstance must be set.
	// +optional
	MaxConnectionsPerInstance *int64 `json:"maxConnectionsPerInstance,omitempty" tf:"max_connections_per_instance"`
	// The max requests per second (RPS) of the group. Cannot be set
	// for INTERNAL backend services.
	//
	// Can be used with either RATE or UTILIZATION balancing modes,
	// but required if RATE mode. Either maxRate or one
	// of maxRatePerInstance or maxRatePerEndpoint, as appropriate for
	// group type, must be set.
	// +optional
	MaxRate *int64 `json:"maxRate,omitempty" tf:"max_rate"`
	// The max requests per second (RPS) that a single backend network
	// endpoint can handle. This is used to calculate the capacity of
	// the group. Can be used in either balancing mode. For RATE mode,
	// either maxRate or maxRatePerEndpoint must be set. Cannot be set
	// for INTERNAL backend services.
	// +optional
	MaxRatePerEndpoint *float64 `json:"maxRatePerEndpoint,omitempty" tf:"max_rate_per_endpoint"`
	// The max requests per second (RPS) that a single backend
	// instance can handle. This is used to calculate the capacity of
	// the group. Can be used in either balancing mode. For RATE mode,
	// either maxRate or maxRatePerInstance must be set. Cannot be set
	// for INTERNAL backend services.
	// +optional
	MaxRatePerInstance *float64 `json:"maxRatePerInstance,omitempty" tf:"max_rate_per_instance"`
	// Used when balancingMode is UTILIZATION. This ratio defines the
	// CPU utilization target for the group. Valid range is [0.0, 1.0].
	// Cannot be set for INTERNAL backend services.
	// +optional
	MaxUtilization *float64 `json:"maxUtilization,omitempty" tf:"max_utilization"`
}

func (*RegionBackendServiceSpecBackend) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecBackend.

func (*RegionBackendServiceSpecBackend) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecCdnPolicy

type RegionBackendServiceSpecCdnPolicy struct {
	// The CacheKeyPolicy for this CdnPolicy.
	// +optional
	CacheKeyPolicy *RegionBackendServiceSpecCdnPolicyCacheKeyPolicy `json:"cacheKeyPolicy,omitempty" tf:"cache_key_policy"`
	// Specifies the cache setting for all responses from this backend.
	// The possible values are: USE_ORIGIN_HEADERS, FORCE_CACHE_ALL and CACHE_ALL_STATIC Possible values: ["USE_ORIGIN_HEADERS", "FORCE_CACHE_ALL", "CACHE_ALL_STATIC"]
	// +optional
	CacheMode *string `json:"cacheMode,omitempty" tf:"cache_mode"`
	// Specifies the maximum allowed TTL for cached content served by this origin.
	// +optional
	ClientTtl *int64 `json:"clientTtl,omitempty" tf:"client_ttl"`
	// Specifies the default TTL for cached content served by this origin for responses
	// that do not have an existing valid TTL (max-age or s-max-age).
	// +optional
	DefaultTtl *int64 `json:"defaultTtl,omitempty" tf:"default_ttl"`
	// Specifies the maximum allowed TTL for cached content served by this origin.
	// +optional
	MaxTtl *int64 `json:"maxTtl,omitempty" tf:"max_ttl"`
	// Negative caching allows per-status code TTLs to be set, in order to apply fine-grained caching for common errors or redirects.
	// +optional
	NegativeCaching *bool `json:"negativeCaching,omitempty" tf:"negative_caching"`
	// Sets a cache TTL for the specified HTTP status code. negativeCaching must be enabled to configure negativeCachingPolicy.
	// Omitting the policy and leaving negativeCaching enabled will use Cloud CDN's default cache TTLs.
	// +optional
	NegativeCachingPolicy []RegionBackendServiceSpecCdnPolicyNegativeCachingPolicy `json:"negativeCachingPolicy,omitempty" tf:"negative_caching_policy"`
	// Serve existing content from the cache (if available) when revalidating content with the origin, or when an error is encountered when refreshing the cache.
	// +optional
	ServeWhileStale *int64 `json:"serveWhileStale,omitempty" tf:"serve_while_stale"`
	// Maximum number of seconds the response to a signed URL request
	// will be considered fresh, defaults to 1hr (3600s). After this
	// time period, the response will be revalidated before
	// being served.
	//
	// When serving responses to signed URL requests, Cloud CDN will
	// internally behave as though all responses from this backend had a
	// "Cache-Control: public, max-age=[TTL]" header, regardless of any
	// existing Cache-Control header. The actual headers served in
	// responses will not be altered.
	// +optional
	SignedURLCacheMaxAgeSec *int64 `json:"signedURLCacheMaxAgeSec,omitempty" tf:"signed_url_cache_max_age_sec"`
}

func (*RegionBackendServiceSpecCdnPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecCdnPolicy.

func (*RegionBackendServiceSpecCdnPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecCdnPolicyCacheKeyPolicy

type RegionBackendServiceSpecCdnPolicyCacheKeyPolicy struct {
	// If true requests to different hosts will be cached separately.
	// +optional
	IncludeHost *bool `json:"includeHost,omitempty" tf:"include_host"`
	// If true, http and https requests will be cached separately.
	// +optional
	IncludeProtocol *bool `json:"includeProtocol,omitempty" tf:"include_protocol"`
	// If true, include query string parameters in the cache key
	// according to query_string_whitelist and
	// query_string_blacklist. If neither is set, the entire query
	// string will be included.
	//
	// If false, the query string will be excluded from the cache
	// key entirely.
	// +optional
	IncludeQueryString *bool `json:"includeQueryString,omitempty" tf:"include_query_string"`
	// Names of query string parameters to exclude in cache keys.
	//
	// All other parameters will be included. Either specify
	// query_string_whitelist or query_string_blacklist, not both.
	// '&' and '=' will be percent encoded and not treated as
	// delimiters.
	// +optional
	QueryStringBlacklist []string `json:"queryStringBlacklist,omitempty" tf:"query_string_blacklist"`
	// Names of query string parameters to include in cache keys.
	//
	// All other parameters will be excluded. Either specify
	// query_string_whitelist or query_string_blacklist, not both.
	// '&' and '=' will be percent encoded and not treated as
	// delimiters.
	// +optional
	QueryStringWhitelist []string `json:"queryStringWhitelist,omitempty" tf:"query_string_whitelist"`
}

func (*RegionBackendServiceSpecCdnPolicyCacheKeyPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecCdnPolicyCacheKeyPolicy.

func (*RegionBackendServiceSpecCdnPolicyCacheKeyPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecCdnPolicyCacheKeyPolicyCodec

type RegionBackendServiceSpecCdnPolicyCacheKeyPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecCdnPolicyCacheKeyPolicyCodec) Decode

func (RegionBackendServiceSpecCdnPolicyCacheKeyPolicyCodec) Encode

func (RegionBackendServiceSpecCdnPolicyCacheKeyPolicyCodec) IsEmpty

type RegionBackendServiceSpecCdnPolicyCodec

type RegionBackendServiceSpecCdnPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecCdnPolicyCodec) Decode

func (RegionBackendServiceSpecCdnPolicyCodec) Encode

func (RegionBackendServiceSpecCdnPolicyCodec) IsEmpty

type RegionBackendServiceSpecCdnPolicyNegativeCachingPolicy

type RegionBackendServiceSpecCdnPolicyNegativeCachingPolicy struct {
	// The HTTP status code to define a TTL against. Only HTTP status codes 300, 301, 308, 404, 405, 410, 421, 451 and 501
	// can be specified as values, and you cannot specify a status code more than once.
	// +optional
	Code *int64 `json:"code,omitempty" tf:"code"`
}

func (*RegionBackendServiceSpecCdnPolicyNegativeCachingPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecCdnPolicyNegativeCachingPolicy.

func (*RegionBackendServiceSpecCdnPolicyNegativeCachingPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecCircuitBreakers

type RegionBackendServiceSpecCircuitBreakers struct {
	// The maximum number of connections to the backend cluster.
	// Defaults to 1024.
	// +optional
	MaxConnections *int64 `json:"maxConnections,omitempty" tf:"max_connections"`
	// The maximum number of pending requests to the backend cluster.
	// Defaults to 1024.
	// +optional
	MaxPendingRequests *int64 `json:"maxPendingRequests,omitempty" tf:"max_pending_requests"`
	// The maximum number of parallel requests to the backend cluster.
	// Defaults to 1024.
	// +optional
	MaxRequests *int64 `json:"maxRequests,omitempty" tf:"max_requests"`
	// Maximum requests for a single backend connection. This parameter
	// is respected by both the HTTP/1.1 and HTTP/2 implementations. If
	// not specified, there is no limit. Setting this parameter to 1
	// will effectively disable keep alive.
	// +optional
	MaxRequestsPerConnection *int64 `json:"maxRequestsPerConnection,omitempty" tf:"max_requests_per_connection"`
	// The maximum number of parallel retries to the backend cluster.
	// Defaults to 3.
	// +optional
	MaxRetries *int64 `json:"maxRetries,omitempty" tf:"max_retries"`
}

func (*RegionBackendServiceSpecCircuitBreakers) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecCircuitBreakers.

func (*RegionBackendServiceSpecCircuitBreakers) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecCircuitBreakersCodec

type RegionBackendServiceSpecCircuitBreakersCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecCircuitBreakersCodec) Decode

func (RegionBackendServiceSpecCircuitBreakersCodec) Encode

func (RegionBackendServiceSpecCircuitBreakersCodec) IsEmpty

type RegionBackendServiceSpecConsistentHash

type RegionBackendServiceSpecConsistentHash struct {
	// Hash is based on HTTP Cookie. This field describes a HTTP cookie
	// that will be used as the hash key for the consistent hash load
	// balancer. If the cookie is not present, it will be generated.
	// This field is applicable if the sessionAffinity is set to HTTP_COOKIE.
	// +optional
	HttpCookie *RegionBackendServiceSpecConsistentHashHttpCookie `json:"httpCookie,omitempty" tf:"http_cookie"`
	// The hash based on the value of the specified header field.
	// This field is applicable if the sessionAffinity is set to HEADER_FIELD.
	// +optional
	HttpHeaderName *string `json:"httpHeaderName,omitempty" tf:"http_header_name"`
	// The minimum number of virtual nodes to use for the hash ring.
	// Larger ring sizes result in more granular load
	// distributions. If the number of hosts in the load balancing pool
	// is larger than the ring size, each host will be assigned a single
	// virtual node.
	// Defaults to 1024.
	// +optional
	MinimumRingSize *int64 `json:"minimumRingSize,omitempty" tf:"minimum_ring_size"`
}

func (*RegionBackendServiceSpecConsistentHash) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecConsistentHash.

func (*RegionBackendServiceSpecConsistentHash) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecConsistentHashCodec

type RegionBackendServiceSpecConsistentHashCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecConsistentHashCodec) Decode

func (RegionBackendServiceSpecConsistentHashCodec) Encode

func (RegionBackendServiceSpecConsistentHashCodec) IsEmpty

type RegionBackendServiceSpecConsistentHashHttpCookie

type RegionBackendServiceSpecConsistentHashHttpCookie struct {
	// Name of the cookie.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// Path to set for the cookie.
	// +optional
	Path *string `json:"path,omitempty" tf:"path"`
	// Lifetime of the cookie.
	// +optional
	Ttl *RegionBackendServiceSpecConsistentHashHttpCookieTtl `json:"ttl,omitempty" tf:"ttl"`
}

func (*RegionBackendServiceSpecConsistentHashHttpCookie) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecConsistentHashHttpCookie.

func (*RegionBackendServiceSpecConsistentHashHttpCookie) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecConsistentHashHttpCookieCodec

type RegionBackendServiceSpecConsistentHashHttpCookieCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecConsistentHashHttpCookieCodec) Decode

func (RegionBackendServiceSpecConsistentHashHttpCookieCodec) Encode

func (RegionBackendServiceSpecConsistentHashHttpCookieCodec) IsEmpty

type RegionBackendServiceSpecConsistentHashHttpCookieTtl

type RegionBackendServiceSpecConsistentHashHttpCookieTtl struct {
	// Span of time that's a fraction of a second at nanosecond
	// resolution. Durations less than one second are represented
	// with a 0 seconds field and a positive nanos field. Must
	// be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second.
	// Must be from 0 to 315,576,000,000 inclusive.
	Seconds *int64 `json:"seconds" tf:"seconds"`
}

func (*RegionBackendServiceSpecConsistentHashHttpCookieTtl) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecConsistentHashHttpCookieTtl.

func (*RegionBackendServiceSpecConsistentHashHttpCookieTtl) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecConsistentHashHttpCookieTtlCodec

type RegionBackendServiceSpecConsistentHashHttpCookieTtlCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecConsistentHashHttpCookieTtlCodec) Decode

func (RegionBackendServiceSpecConsistentHashHttpCookieTtlCodec) Encode

func (RegionBackendServiceSpecConsistentHashHttpCookieTtlCodec) IsEmpty

type RegionBackendServiceSpecFailoverPolicy

type RegionBackendServiceSpecFailoverPolicy struct {
	// On failover or failback, this field indicates whether connection drain
	// will be honored. Setting this to true has the following effect: connections
	// to the old active pool are not drained. Connections to the new active pool
	// use the timeout of 10 min (currently fixed). Setting to false has the
	// following effect: both old and new connections will have a drain timeout
	// of 10 min.
	// This can be set to true only if the protocol is TCP.
	// The default is false.
	// +optional
	DisableConnectionDrainOnFailover *bool `json:"disableConnectionDrainOnFailover,omitempty" tf:"disable_connection_drain_on_failover"`
	// This option is used only when no healthy VMs are detected in the primary
	// and backup instance groups. When set to true, traffic is dropped. When
	// set to false, new connections are sent across all VMs in the primary group.
	// The default is false.
	// +optional
	DropTrafficIfUnhealthy *bool `json:"dropTrafficIfUnhealthy,omitempty" tf:"drop_traffic_if_unhealthy"`
	// The value of the field must be in [0, 1]. If the ratio of the healthy
	// VMs in the primary backend is at or below this number, traffic arriving
	// at the load-balanced IP will be directed to the failover backend.
	// In case where 'failoverRatio' is not set or all the VMs in the backup
	// backend are unhealthy, the traffic will be directed back to the primary
	// backend in the "force" mode, where traffic will be spread to the healthy
	// VMs with the best effort, or to all VMs when no VM is healthy.
	// This field is only used with l4 load balancing.
	// +optional
	FailoverRatio *float64 `json:"failoverRatio,omitempty" tf:"failover_ratio"`
}

func (*RegionBackendServiceSpecFailoverPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecFailoverPolicy.

func (*RegionBackendServiceSpecFailoverPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecFailoverPolicyCodec

type RegionBackendServiceSpecFailoverPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecFailoverPolicyCodec) Decode

func (RegionBackendServiceSpecFailoverPolicyCodec) Encode

func (RegionBackendServiceSpecFailoverPolicyCodec) IsEmpty

type RegionBackendServiceSpecIap added in v0.4.0

type RegionBackendServiceSpecIap struct {
	// OAuth2 Client ID for IAP
	Oauth2ClientID *string `json:"oauth2ClientID" tf:"oauth2_client_id"`
	// OAuth2 Client Secret for IAP
	Oauth2ClientSecret *string `json:"-" sensitive:"true" tf:"oauth2_client_secret"`
	// OAuth2 Client Secret SHA-256 for IAP
	// +optional
	Oauth2ClientSecretSha256 *string `json:"-" sensitive:"true" tf:"oauth2_client_secret_sha256"`
}

func (*RegionBackendServiceSpecIap) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecIap.

func (*RegionBackendServiceSpecIap) DeepCopyInto added in v0.4.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecIapCodec added in v0.4.0

type RegionBackendServiceSpecIapCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecIapCodec) Decode added in v0.4.0

func (RegionBackendServiceSpecIapCodec) Encode added in v0.4.0

func (RegionBackendServiceSpecIapCodec) IsEmpty added in v0.4.0

type RegionBackendServiceSpecLogConfig

type RegionBackendServiceSpecLogConfig struct {
	// Whether to enable logging for the load balancer traffic served by this backend service.
	// +optional
	Enable *bool `json:"enable,omitempty" tf:"enable"`
	// This field can only be specified if logging is enabled for this backend service. The value of
	// the field must be in [0, 1]. This configures the sampling rate of requests to the load balancer
	// where 1.0 means all logged requests are reported and 0.0 means no logged requests are reported.
	// The default value is 1.0.
	// +optional
	SampleRate *float64 `json:"sampleRate,omitempty" tf:"sample_rate"`
}

func (*RegionBackendServiceSpecLogConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecLogConfig.

func (*RegionBackendServiceSpecLogConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecLogConfigCodec

type RegionBackendServiceSpecLogConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecLogConfigCodec) Decode

func (RegionBackendServiceSpecLogConfigCodec) Encode

func (RegionBackendServiceSpecLogConfigCodec) IsEmpty

type RegionBackendServiceSpecOutlierDetection

type RegionBackendServiceSpecOutlierDetection struct {
	// The base time that a host is ejected for. The real time is equal to the base
	// time multiplied by the number of times the host has been ejected. Defaults to
	// 30000ms or 30s.
	// +optional
	BaseEjectionTime *RegionBackendServiceSpecOutlierDetectionBaseEjectionTime `json:"baseEjectionTime,omitempty" tf:"base_ejection_time"`
	// Number of errors before a host is ejected from the connection pool. When the
	// backend host is accessed over HTTP, a 5xx return code qualifies as an error.
	// Defaults to 5.
	// +optional
	ConsecutiveErrors *int64 `json:"consecutiveErrors,omitempty" tf:"consecutive_errors"`
	// The number of consecutive gateway failures (502, 503, 504 status or connection
	// errors that are mapped to one of those status codes) before a consecutive
	// gateway failure ejection occurs. Defaults to 5.
	// +optional
	ConsecutiveGatewayFailure *int64 `json:"consecutiveGatewayFailure,omitempty" tf:"consecutive_gateway_failure"`
	// The percentage chance that a host will be actually ejected when an outlier
	// status is detected through consecutive 5xx. This setting can be used to disable
	// ejection or to ramp it up slowly. Defaults to 100.
	// +optional
	EnforcingConsecutiveErrors *int64 `json:"enforcingConsecutiveErrors,omitempty" tf:"enforcing_consecutive_errors"`
	// The percentage chance that a host will be actually ejected when an outlier
	// status is detected through consecutive gateway failures. This setting can be
	// used to disable ejection or to ramp it up slowly. Defaults to 0.
	// +optional
	EnforcingConsecutiveGatewayFailure *int64 `json:"enforcingConsecutiveGatewayFailure,omitempty" tf:"enforcing_consecutive_gateway_failure"`
	// The percentage chance that a host will be actually ejected when an outlier
	// status is detected through success rate statistics. This setting can be used to
	// disable ejection or to ramp it up slowly. Defaults to 100.
	// +optional
	EnforcingSuccessRate *int64 `json:"enforcingSuccessRate,omitempty" tf:"enforcing_success_rate"`
	// Time interval between ejection sweep analysis. This can result in both new
	// ejections as well as hosts being returned to service. Defaults to 10 seconds.
	// +optional
	Interval *RegionBackendServiceSpecOutlierDetectionInterval `json:"interval,omitempty" tf:"interval"`
	// Maximum percentage of hosts in the load balancing pool for the backend service
	// that can be ejected. Defaults to 10%.
	// +optional
	MaxEjectionPercent *int64 `json:"maxEjectionPercent,omitempty" tf:"max_ejection_percent"`
	// The number of hosts in a cluster that must have enough request volume to detect
	// success rate outliers. If the number of hosts is less than this setting, outlier
	// detection via success rate statistics is not performed for any host in the
	// cluster. Defaults to 5.
	// +optional
	SuccessRateMinimumHosts *int64 `json:"successRateMinimumHosts,omitempty" tf:"success_rate_minimum_hosts"`
	// The minimum number of total requests that must be collected in one interval (as
	// defined by the interval duration above) to include this host in success rate
	// based outlier detection. If the volume is lower than this setting, outlier
	// detection via success rate statistics is not performed for that host. Defaults
	// to 100.
	// +optional
	SuccessRateRequestVolume *int64 `json:"successRateRequestVolume,omitempty" tf:"success_rate_request_volume"`
	// This factor is used to determine the ejection threshold for success rate outlier
	// ejection. The ejection threshold is the difference between the mean success
	// rate, and the product of this factor and the standard deviation of the mean
	// success rate: mean - (stdev * success_rate_stdev_factor). This factor is divided
	// by a thousand to get a double. That is, if the desired factor is 1.9, the
	// runtime value should be 1900. Defaults to 1900.
	// +optional
	SuccessRateStdevFactor *int64 `json:"successRateStdevFactor,omitempty" tf:"success_rate_stdev_factor"`
}

func (*RegionBackendServiceSpecOutlierDetection) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecOutlierDetection.

func (*RegionBackendServiceSpecOutlierDetection) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecOutlierDetectionBaseEjectionTime

type RegionBackendServiceSpecOutlierDetectionBaseEjectionTime struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *int64 `json:"seconds" tf:"seconds"`
}

func (*RegionBackendServiceSpecOutlierDetectionBaseEjectionTime) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecOutlierDetectionBaseEjectionTime.

func (*RegionBackendServiceSpecOutlierDetectionBaseEjectionTime) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecOutlierDetectionBaseEjectionTimeCodec

type RegionBackendServiceSpecOutlierDetectionBaseEjectionTimeCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecOutlierDetectionBaseEjectionTimeCodec) Decode

func (RegionBackendServiceSpecOutlierDetectionBaseEjectionTimeCodec) Encode

func (RegionBackendServiceSpecOutlierDetectionBaseEjectionTimeCodec) IsEmpty

type RegionBackendServiceSpecOutlierDetectionCodec

type RegionBackendServiceSpecOutlierDetectionCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecOutlierDetectionCodec) Decode

func (RegionBackendServiceSpecOutlierDetectionCodec) Encode

func (RegionBackendServiceSpecOutlierDetectionCodec) IsEmpty

type RegionBackendServiceSpecOutlierDetectionInterval

type RegionBackendServiceSpecOutlierDetectionInterval struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *int64 `json:"seconds" tf:"seconds"`
}

func (*RegionBackendServiceSpecOutlierDetectionInterval) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecOutlierDetectionInterval.

func (*RegionBackendServiceSpecOutlierDetectionInterval) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceSpecOutlierDetectionIntervalCodec

type RegionBackendServiceSpecOutlierDetectionIntervalCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionBackendServiceSpecOutlierDetectionIntervalCodec) Decode

func (RegionBackendServiceSpecOutlierDetectionIntervalCodec) Encode

func (RegionBackendServiceSpecOutlierDetectionIntervalCodec) IsEmpty

type RegionBackendServiceSpecResource

type RegionBackendServiceSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Lifetime of cookies in seconds if session_affinity is
	// GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts
	// only until the end of the browser session (or equivalent). The
	// maximum allowed value for TTL is one day.
	//
	// When the load balancing scheme is INTERNAL, this field is not used.
	// +optional
	AffinityCookieTtlSec *int64 `json:"affinityCookieTtlSec,omitempty" tf:"affinity_cookie_ttl_sec"`
	// The set of backends that serve this RegionBackendService.
	// +optional
	Backend []RegionBackendServiceSpecBackend `json:"backend,omitempty" tf:"backend"`
	// Cloud CDN configuration for this BackendService.
	// +optional
	CdnPolicy *RegionBackendServiceSpecCdnPolicy `json:"cdnPolicy,omitempty" tf:"cdn_policy"`
	// Settings controlling the volume of connections to a backend service. This field
	// is applicable only when the 'load_balancing_scheme' is set to INTERNAL_MANAGED
	// and the 'protocol' is set to HTTP, HTTPS, or HTTP2.
	// +optional
	CircuitBreakers *RegionBackendServiceSpecCircuitBreakers `json:"circuitBreakers,omitempty" tf:"circuit_breakers"`
	// Time for which instance will be drained (not accept new
	// connections, but still work to finish started).
	// +optional
	ConnectionDrainingTimeoutSec *int64 `json:"connectionDrainingTimeoutSec,omitempty" tf:"connection_draining_timeout_sec"`
	// Consistent Hash-based load balancing can be used to provide soft session
	// affinity based on HTTP headers, cookies or other properties. This load balancing
	// policy is applicable only for HTTP connections. The affinity to a particular
	// destination host will be lost when one or more hosts are added/removed from the
	// destination service. This field specifies parameters that control consistent
	// hashing.
	// This field only applies when all of the following are true -
	//   * 'load_balancing_scheme' is set to INTERNAL_MANAGED
	//   * 'protocol' is set to HTTP, HTTPS, or HTTP2
	//   * 'locality_lb_policy' is set to MAGLEV or RING_HASH
	// +optional
	ConsistentHash *RegionBackendServiceSpecConsistentHash `json:"consistentHash,omitempty" tf:"consistent_hash"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// If true, enable Cloud CDN for this RegionBackendService.
	// +optional
	EnableCdn *bool `json:"enableCdn,omitempty" tf:"enable_cdn"`
	// Policy for failovers.
	// +optional
	FailoverPolicy *RegionBackendServiceSpecFailoverPolicy `json:"failoverPolicy,omitempty" tf:"failover_policy"`
	// Fingerprint of this resource. A hash of the contents stored in this
	// object. This field is used in optimistic locking.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// The set of URLs to HealthCheck resources for health checking
	// this RegionBackendService. Currently at most one health
	// check can be specified.
	//
	// A health check must be specified unless the backend service uses an internet
	// or serverless NEG as a backend.
	// +optional
	HealthChecks []string `json:"healthChecks,omitempty" tf:"health_checks"`
	// Settings for enabling Cloud Identity Aware Proxy
	// +optional
	Iap *RegionBackendServiceSpecIap `json:"iap,omitempty" tf:"iap"`
	// Indicates what kind of load balancing this regional backend service
	// will be used for. A backend service created for one type of load
	// balancing cannot be used with the other(s). For more information, refer to
	// [Choosing a load balancer](https://cloud.google.com/load-balancing/docs/backend-service). Default value: "INTERNAL" Possible values: ["EXTERNAL", "EXTERNAL_MANAGED", "INTERNAL", "INTERNAL_MANAGED"]
	// +optional
	LoadBalancingScheme *string `json:"loadBalancingScheme,omitempty" tf:"load_balancing_scheme"`
	// The load balancing algorithm used within the scope of the locality.
	// The possible values are:
	//
	// * 'ROUND_ROBIN': This is a simple policy in which each healthy backend
	//                  is selected in round robin order.
	//
	// * 'LEAST_REQUEST': An O(1) algorithm which selects two random healthy
	//                    hosts and picks the host which has fewer active requests.
	//
	// * 'RING_HASH': The ring/modulo hash load balancer implements consistent
	//                hashing to backends. The algorithm has the property that the
	//                addition/removal of a host from a set of N hosts only affects
	//                1/N of the requests.
	//
	// * 'RANDOM': The load balancer selects a random healthy host.
	//
	// * 'ORIGINAL_DESTINATION': Backend host is selected based on the client
	//                           connection metadata, i.e., connections are opened
	//                           to the same address as the destination address of
	//                           the incoming connection before the connection
	//                           was redirected to the load balancer.
	//
	// * 'MAGLEV': used as a drop in replacement for the ring hash load balancer.
	//             Maglev is not as stable as ring hash but has faster table lookup
	//             build times and host selection times. For more information about
	//             Maglev, refer to https://ai.google/research/pubs/pub44824
	//
	//
	// This field is applicable to either:
	//
	// * A regional backend service with the service_protocol set to HTTP, HTTPS, or HTTP2,
	//   and loadBalancingScheme set to INTERNAL_MANAGED.
	// * A global backend service with the load_balancing_scheme set to INTERNAL_SELF_MANAGED.
	//
	//
	// If session_affinity is not NONE, and this field is not set to MAGLEV or RING_HASH,
	// session affinity settings will not take effect.
	//
	// Only ROUND_ROBIN and RING_HASH are supported when the backend service is referenced
	// by a URL map that is bound to target gRPC proxy that has validate_for_proxyless
	// field set to true. Possible values: ["ROUND_ROBIN", "LEAST_REQUEST", "RING_HASH", "RANDOM", "ORIGINAL_DESTINATION", "MAGLEV"]
	// +optional
	LocalityLbPolicy *string `json:"localityLbPolicy,omitempty" tf:"locality_lb_policy"`
	// This field denotes the logging options for the load balancer traffic served by this backend service.
	// If logging is enabled, logs will be exported to Stackdriver.
	// +optional
	LogConfig *RegionBackendServiceSpecLogConfig `json:"logConfig,omitempty" tf:"log_config"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The URL of the network to which this backend service belongs.
	// This field can only be specified when the load balancing scheme is set to INTERNAL.
	// +optional
	Network *string `json:"network,omitempty" tf:"network"`
	// Settings controlling eviction of unhealthy hosts from the load balancing pool.
	// This field is applicable only when the 'load_balancing_scheme' is set
	// to INTERNAL_MANAGED and the 'protocol' is set to HTTP, HTTPS, or HTTP2.
	// +optional
	OutlierDetection *RegionBackendServiceSpecOutlierDetection `json:"outlierDetection,omitempty" tf:"outlier_detection"`
	// A named port on a backend instance group representing the port for
	// communication to the backend VMs in that group. Required when the
	// loadBalancingScheme is EXTERNAL, EXTERNAL_MANAGED, INTERNAL_MANAGED, or INTERNAL_SELF_MANAGED
	// and the backends are instance groups. The named port must be defined on each
	// backend instance group. This parameter has no meaning if the backends are NEGs. API sets a
	// default of "http" if not given.
	// Must be omitted when the loadBalancingScheme is INTERNAL (Internal TCP/UDP Load Balancing).
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The protocol this RegionBackendService uses to communicate with backends.
	// The default is HTTP. **NOTE**: HTTP2 is only valid for beta HTTP/2 load balancer
	// types and may result in errors if used with the GA API. Possible values: ["HTTP", "HTTPS", "HTTP2", "SSL", "TCP", "UDP", "GRPC", "UNSPECIFIED"]
	// +optional
	Protocol *string `json:"protocol,omitempty" tf:"protocol"`
	// The Region in which the created backend service should reside.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Type of session affinity to use. The default is NONE. Session affinity is
	// not applicable if the protocol is UDP. Possible values: ["NONE", "CLIENT_IP", "CLIENT_IP_PORT_PROTO", "CLIENT_IP_PROTO", "GENERATED_COOKIE", "HEADER_FIELD", "HTTP_COOKIE", "CLIENT_IP_NO_DESTINATION"]
	// +optional
	SessionAffinity *string `json:"sessionAffinity,omitempty" tf:"session_affinity"`
	// How many seconds to wait for the backend before considering it a
	// failed request. Default is 30 seconds. Valid range is [1, 86400].
	// +optional
	TimeoutSec *int64 `json:"timeoutSec,omitempty" tf:"timeout_sec"`
}

func (*RegionBackendServiceSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceSpecResource.

func (*RegionBackendServiceSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionBackendServiceStatus

type RegionBackendServiceStatus 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 (*RegionBackendServiceStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionBackendServiceStatus.

func (*RegionBackendServiceStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDisk

type RegionDisk struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionDiskSpec   `json:"spec,omitempty"`
	Status            RegionDiskStatus `json:"status,omitempty"`
}

func (*RegionDisk) DeepCopy

func (in *RegionDisk) DeepCopy() *RegionDisk

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDisk.

func (*RegionDisk) DeepCopyInto

func (in *RegionDisk) DeepCopyInto(out *RegionDisk)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDisk) DeepCopyObject

func (in *RegionDisk) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionDisk) SetupWebhookWithManager

func (r *RegionDisk) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionDisk) ValidateCreate

func (r *RegionDisk) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionDisk) ValidateDelete

func (r *RegionDisk) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionDisk) ValidateUpdate

func (r *RegionDisk) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionDiskIamBinding

type RegionDiskIamBinding struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionDiskIamBindingSpec   `json:"spec,omitempty"`
	Status            RegionDiskIamBindingStatus `json:"status,omitempty"`
}

func (*RegionDiskIamBinding) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamBinding.

func (*RegionDiskIamBinding) DeepCopyInto

func (in *RegionDiskIamBinding) DeepCopyInto(out *RegionDiskIamBinding)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDiskIamBinding) DeepCopyObject

func (in *RegionDiskIamBinding) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionDiskIamBinding) SetupWebhookWithManager

func (r *RegionDiskIamBinding) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionDiskIamBinding) ValidateCreate

func (r *RegionDiskIamBinding) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionDiskIamBinding) ValidateDelete

func (r *RegionDiskIamBinding) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionDiskIamBinding) ValidateUpdate

func (r *RegionDiskIamBinding) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionDiskIamBindingList

type RegionDiskIamBindingList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionDiskIamBinding CRD objects
	Items []RegionDiskIamBinding `json:"items,omitempty"`
}

RegionDiskIamBindingList is a list of RegionDiskIamBindings

func (*RegionDiskIamBindingList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamBindingList.

func (*RegionDiskIamBindingList) DeepCopyInto

func (in *RegionDiskIamBindingList) DeepCopyInto(out *RegionDiskIamBindingList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDiskIamBindingList) DeepCopyObject

func (in *RegionDiskIamBindingList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionDiskIamBindingSpec

type RegionDiskIamBindingSpec struct {
	State *RegionDiskIamBindingSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionDiskIamBindingSpecResource `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 (*RegionDiskIamBindingSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamBindingSpec.

func (*RegionDiskIamBindingSpec) DeepCopyInto

func (in *RegionDiskIamBindingSpec) DeepCopyInto(out *RegionDiskIamBindingSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamBindingSpecCondition

type RegionDiskIamBindingSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*RegionDiskIamBindingSpecCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamBindingSpecCondition.

func (*RegionDiskIamBindingSpecCondition) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamBindingSpecConditionCodec

type RegionDiskIamBindingSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionDiskIamBindingSpecConditionCodec) Decode

func (RegionDiskIamBindingSpecConditionCodec) Encode

func (RegionDiskIamBindingSpecConditionCodec) IsEmpty

type RegionDiskIamBindingSpecResource

type RegionDiskIamBindingSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Condition *RegionDiskIamBindingSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag    *string  `json:"etag,omitempty" tf:"etag"`
	Members []string `json:"members" tf:"members"`
	Name    *string  `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	Role   *string `json:"role" tf:"role"`
}

func (*RegionDiskIamBindingSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamBindingSpecResource.

func (*RegionDiskIamBindingSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamBindingStatus

type RegionDiskIamBindingStatus 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 (*RegionDiskIamBindingStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamBindingStatus.

func (*RegionDiskIamBindingStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamMember

type RegionDiskIamMember struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionDiskIamMemberSpec   `json:"spec,omitempty"`
	Status            RegionDiskIamMemberStatus `json:"status,omitempty"`
}

func (*RegionDiskIamMember) DeepCopy

func (in *RegionDiskIamMember) DeepCopy() *RegionDiskIamMember

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamMember.

func (*RegionDiskIamMember) DeepCopyInto

func (in *RegionDiskIamMember) DeepCopyInto(out *RegionDiskIamMember)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDiskIamMember) DeepCopyObject

func (in *RegionDiskIamMember) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionDiskIamMember) SetupWebhookWithManager

func (r *RegionDiskIamMember) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionDiskIamMember) ValidateCreate

func (r *RegionDiskIamMember) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionDiskIamMember) ValidateDelete

func (r *RegionDiskIamMember) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionDiskIamMember) ValidateUpdate

func (r *RegionDiskIamMember) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionDiskIamMemberList

type RegionDiskIamMemberList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionDiskIamMember CRD objects
	Items []RegionDiskIamMember `json:"items,omitempty"`
}

RegionDiskIamMemberList is a list of RegionDiskIamMembers

func (*RegionDiskIamMemberList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamMemberList.

func (*RegionDiskIamMemberList) DeepCopyInto

func (in *RegionDiskIamMemberList) DeepCopyInto(out *RegionDiskIamMemberList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDiskIamMemberList) DeepCopyObject

func (in *RegionDiskIamMemberList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionDiskIamMemberSpec

type RegionDiskIamMemberSpec struct {
	State *RegionDiskIamMemberSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionDiskIamMemberSpecResource `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 (*RegionDiskIamMemberSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamMemberSpec.

func (*RegionDiskIamMemberSpec) DeepCopyInto

func (in *RegionDiskIamMemberSpec) DeepCopyInto(out *RegionDiskIamMemberSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamMemberSpecCondition

type RegionDiskIamMemberSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*RegionDiskIamMemberSpecCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamMemberSpecCondition.

func (*RegionDiskIamMemberSpecCondition) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamMemberSpecConditionCodec

type RegionDiskIamMemberSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionDiskIamMemberSpecConditionCodec) Decode

func (RegionDiskIamMemberSpecConditionCodec) Encode

func (RegionDiskIamMemberSpecConditionCodec) IsEmpty

type RegionDiskIamMemberSpecResource

type RegionDiskIamMemberSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Condition *RegionDiskIamMemberSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag   *string `json:"etag,omitempty" tf:"etag"`
	Member *string `json:"member" tf:"member"`
	Name   *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	Role   *string `json:"role" tf:"role"`
}

func (*RegionDiskIamMemberSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamMemberSpecResource.

func (*RegionDiskIamMemberSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamMemberStatus

type RegionDiskIamMemberStatus 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 (*RegionDiskIamMemberStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamMemberStatus.

func (*RegionDiskIamMemberStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamPolicy

type RegionDiskIamPolicy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionDiskIamPolicySpec   `json:"spec,omitempty"`
	Status            RegionDiskIamPolicyStatus `json:"status,omitempty"`
}

func (*RegionDiskIamPolicy) DeepCopy

func (in *RegionDiskIamPolicy) DeepCopy() *RegionDiskIamPolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamPolicy.

func (*RegionDiskIamPolicy) DeepCopyInto

func (in *RegionDiskIamPolicy) DeepCopyInto(out *RegionDiskIamPolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDiskIamPolicy) DeepCopyObject

func (in *RegionDiskIamPolicy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionDiskIamPolicy) SetupWebhookWithManager

func (r *RegionDiskIamPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionDiskIamPolicy) ValidateCreate

func (r *RegionDiskIamPolicy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionDiskIamPolicy) ValidateDelete

func (r *RegionDiskIamPolicy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionDiskIamPolicy) ValidateUpdate

func (r *RegionDiskIamPolicy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionDiskIamPolicyList

type RegionDiskIamPolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionDiskIamPolicy CRD objects
	Items []RegionDiskIamPolicy `json:"items,omitempty"`
}

RegionDiskIamPolicyList is a list of RegionDiskIamPolicys

func (*RegionDiskIamPolicyList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamPolicyList.

func (*RegionDiskIamPolicyList) DeepCopyInto

func (in *RegionDiskIamPolicyList) DeepCopyInto(out *RegionDiskIamPolicyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDiskIamPolicyList) DeepCopyObject

func (in *RegionDiskIamPolicyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionDiskIamPolicySpec

type RegionDiskIamPolicySpec struct {
	State *RegionDiskIamPolicySpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionDiskIamPolicySpecResource `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 (*RegionDiskIamPolicySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamPolicySpec.

func (*RegionDiskIamPolicySpec) DeepCopyInto

func (in *RegionDiskIamPolicySpec) DeepCopyInto(out *RegionDiskIamPolicySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamPolicySpecResource

type RegionDiskIamPolicySpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Etag       *string `json:"etag,omitempty" tf:"etag"`
	Name       *string `json:"name" tf:"name"`
	PolicyData *string `json:"policyData" tf:"policy_data"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
}

func (*RegionDiskIamPolicySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamPolicySpecResource.

func (*RegionDiskIamPolicySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskIamPolicyStatus

type RegionDiskIamPolicyStatus 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 (*RegionDiskIamPolicyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskIamPolicyStatus.

func (*RegionDiskIamPolicyStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskList

type RegionDiskList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionDisk CRD objects
	Items []RegionDisk `json:"items,omitempty"`
}

RegionDiskList is a list of RegionDisks

func (*RegionDiskList) DeepCopy

func (in *RegionDiskList) DeepCopy() *RegionDiskList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskList.

func (*RegionDiskList) DeepCopyInto

func (in *RegionDiskList) DeepCopyInto(out *RegionDiskList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDiskList) DeepCopyObject

func (in *RegionDiskList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionDiskResourcePolicyAttachment

type RegionDiskResourcePolicyAttachment struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionDiskResourcePolicyAttachmentSpec   `json:"spec,omitempty"`
	Status            RegionDiskResourcePolicyAttachmentStatus `json:"status,omitempty"`
}

func (*RegionDiskResourcePolicyAttachment) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskResourcePolicyAttachment.

func (*RegionDiskResourcePolicyAttachment) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDiskResourcePolicyAttachment) DeepCopyObject

func (in *RegionDiskResourcePolicyAttachment) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionDiskResourcePolicyAttachment) SetupWebhookWithManager

func (r *RegionDiskResourcePolicyAttachment) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionDiskResourcePolicyAttachment) ValidateCreate

func (r *RegionDiskResourcePolicyAttachment) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionDiskResourcePolicyAttachment) ValidateDelete

func (r *RegionDiskResourcePolicyAttachment) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionDiskResourcePolicyAttachment) ValidateUpdate

func (r *RegionDiskResourcePolicyAttachment) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionDiskResourcePolicyAttachmentList

type RegionDiskResourcePolicyAttachmentList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionDiskResourcePolicyAttachment CRD objects
	Items []RegionDiskResourcePolicyAttachment `json:"items,omitempty"`
}

RegionDiskResourcePolicyAttachmentList is a list of RegionDiskResourcePolicyAttachments

func (*RegionDiskResourcePolicyAttachmentList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskResourcePolicyAttachmentList.

func (*RegionDiskResourcePolicyAttachmentList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionDiskResourcePolicyAttachmentList) DeepCopyObject

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionDiskResourcePolicyAttachmentSpec

type RegionDiskResourcePolicyAttachmentSpec struct {
	State *RegionDiskResourcePolicyAttachmentSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionDiskResourcePolicyAttachmentSpecResource `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 (*RegionDiskResourcePolicyAttachmentSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskResourcePolicyAttachmentSpec.

func (*RegionDiskResourcePolicyAttachmentSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskResourcePolicyAttachmentSpecResource

type RegionDiskResourcePolicyAttachmentSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The name of the regional disk in which the resource policies are attached to.
	Disk *string `json:"disk" tf:"disk"`
	// The resource policy to be attached to the disk for scheduling snapshot
	// creation. Do not specify the self link.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// A reference to the region where the disk resides.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
}

func (*RegionDiskResourcePolicyAttachmentSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskResourcePolicyAttachmentSpecResource.

func (*RegionDiskResourcePolicyAttachmentSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskResourcePolicyAttachmentStatus

type RegionDiskResourcePolicyAttachmentStatus 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 (*RegionDiskResourcePolicyAttachmentStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskResourcePolicyAttachmentStatus.

func (*RegionDiskResourcePolicyAttachmentStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskSpec

type RegionDiskSpec struct {
	State *RegionDiskSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionDiskSpecResource `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 (*RegionDiskSpec) DeepCopy

func (in *RegionDiskSpec) DeepCopy() *RegionDiskSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskSpec.

func (*RegionDiskSpec) DeepCopyInto

func (in *RegionDiskSpec) DeepCopyInto(out *RegionDiskSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskSpecDiskEncryptionKey

type RegionDiskSpecDiskEncryptionKey struct {
	// Specifies a 256-bit customer-supplied encryption key, encoded in
	// RFC 4648 base64 to either encrypt or decrypt this resource.
	// +optional
	RawKey *string `json:"-" sensitive:"true" tf:"raw_key"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied
	// encryption key that protects this resource.
	// +optional
	Sha256 *string `json:"sha256,omitempty" tf:"sha256"`
}

func (*RegionDiskSpecDiskEncryptionKey) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskSpecDiskEncryptionKey.

func (*RegionDiskSpecDiskEncryptionKey) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskSpecDiskEncryptionKeyCodec

type RegionDiskSpecDiskEncryptionKeyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionDiskSpecDiskEncryptionKeyCodec) Decode

func (RegionDiskSpecDiskEncryptionKeyCodec) Encode

func (RegionDiskSpecDiskEncryptionKeyCodec) IsEmpty

type RegionDiskSpecResource

type RegionDiskSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Encrypts the disk using a customer-supplied encryption key.
	//
	// After you encrypt a disk with a customer-supplied key, you must
	// provide the same key if you use the disk later (e.g. to create a disk
	// snapshot or an image, or to attach the disk to a virtual machine).
	//
	// Customer-supplied encryption keys do not protect access to metadata of
	// the disk.
	//
	// If you do not provide an encryption key when creating the disk, then
	// the disk will be encrypted using an automatically generated key and
	// you do not need to provide a key to use the disk later.
	// +optional
	DiskEncryptionKey *RegionDiskSpecDiskEncryptionKey `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key"`
	// The fingerprint used for optimistic locking of this resource.  Used
	// internally during updates.
	// +optional
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint"`
	// Labels to apply to this disk.  A list of key->value pairs.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// Last attach timestamp in RFC3339 text format.
	// +optional
	LastAttachTimestamp *string `json:"lastAttachTimestamp,omitempty" tf:"last_attach_timestamp"`
	// Last detach timestamp in RFC3339 text format.
	// +optional
	LastDetachTimestamp *string `json:"lastDetachTimestamp,omitempty" tf:"last_detach_timestamp"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// Physical block size of the persistent disk, in bytes. If not present
	// in a request, a default value is used. Currently supported sizes
	// are 4096 and 16384, other sizes may be added in the future.
	// If an unsupported value is requested, the error message will list
	// the supported values for the caller's project.
	// +optional
	PhysicalBlockSizeBytes *int64 `json:"physicalBlockSizeBytes,omitempty" tf:"physical_block_size_bytes"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// A reference to the region where the disk resides.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// URLs of the zones where the disk should be replicated to.
	// +kubebuilder:validation:MaxItems=2
	// +kubebuilder:validation:MinItems=2
	ReplicaZones []string `json:"replicaZones" tf:"replica_zones"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Size of the persistent disk, specified in GB. You can specify this
	// field when creating a persistent disk using the sourceImage or
	// sourceSnapshot parameter, or specify it alone to create an empty
	// persistent disk.
	//
	// If you specify this field along with sourceImage or sourceSnapshot,
	// the value of sizeGb must not be less than the size of the sourceImage
	// or the size of the snapshot.
	// +optional
	Size *int64 `json:"size,omitempty" tf:"size"`
	// The source snapshot used to create this disk. You can provide this as
	// a partial or full URL to the resource. For example, the following are
	// valid values:
	//
	// * 'https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot'
	// * 'projects/project/global/snapshots/snapshot'
	// * 'global/snapshots/snapshot'
	// * 'snapshot'
	// +optional
	Snapshot *string `json:"snapshot,omitempty" tf:"snapshot"`
	// The customer-supplied encryption key of the source snapshot. Required
	// if the source snapshot is protected by a customer-supplied encryption
	// key.
	// +optional
	SourceSnapshotEncryptionKey *RegionDiskSpecSourceSnapshotEncryptionKey `json:"sourceSnapshotEncryptionKey,omitempty" tf:"source_snapshot_encryption_key"`
	// The unique ID of the snapshot used to create this disk. This value
	// identifies the exact snapshot that was used to create this persistent
	// disk. For example, if you created the persistent disk from a snapshot
	// that was later deleted and recreated under the same name, the source
	// snapshot ID would identify the exact version of the snapshot that was
	// used.
	// +optional
	SourceSnapshotID *string `json:"sourceSnapshotID,omitempty" tf:"source_snapshot_id"`
	// URL of the disk type resource describing which disk type to use to
	// create the disk. Provide this when creating the disk.
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
	// Links to the users of the disk (attached instances) in form:
	// project/zones/zone/instances/instance
	// +optional
	Users []string `json:"users,omitempty" tf:"users"`
}

func (*RegionDiskSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskSpecResource.

func (*RegionDiskSpecResource) DeepCopyInto

func (in *RegionDiskSpecResource) DeepCopyInto(out *RegionDiskSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskSpecSourceSnapshotEncryptionKey

type RegionDiskSpecSourceSnapshotEncryptionKey struct {
	// Specifies a 256-bit customer-supplied encryption key, encoded in
	// RFC 4648 base64 to either encrypt or decrypt this resource.
	// +optional
	RawKey *string `json:"rawKey,omitempty" tf:"raw_key"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied
	// encryption key that protects this resource.
	// +optional
	Sha256 *string `json:"sha256,omitempty" tf:"sha256"`
}

func (*RegionDiskSpecSourceSnapshotEncryptionKey) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskSpecSourceSnapshotEncryptionKey.

func (*RegionDiskSpecSourceSnapshotEncryptionKey) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionDiskSpecSourceSnapshotEncryptionKeyCodec

type RegionDiskSpecSourceSnapshotEncryptionKeyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionDiskSpecSourceSnapshotEncryptionKeyCodec) Decode

func (RegionDiskSpecSourceSnapshotEncryptionKeyCodec) Encode

func (RegionDiskSpecSourceSnapshotEncryptionKeyCodec) IsEmpty

type RegionDiskStatus

type RegionDiskStatus 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 (*RegionDiskStatus) DeepCopy

func (in *RegionDiskStatus) DeepCopy() *RegionDiskStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionDiskStatus.

func (*RegionDiskStatus) DeepCopyInto

func (in *RegionDiskStatus) DeepCopyInto(out *RegionDiskStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheck

type RegionHealthCheck struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionHealthCheckSpec   `json:"spec,omitempty"`
	Status            RegionHealthCheckStatus `json:"status,omitempty"`
}

func (*RegionHealthCheck) DeepCopy

func (in *RegionHealthCheck) DeepCopy() *RegionHealthCheck

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheck.

func (*RegionHealthCheck) DeepCopyInto

func (in *RegionHealthCheck) DeepCopyInto(out *RegionHealthCheck)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionHealthCheck) DeepCopyObject

func (in *RegionHealthCheck) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionHealthCheck) SetupWebhookWithManager

func (r *RegionHealthCheck) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionHealthCheck) ValidateCreate

func (r *RegionHealthCheck) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionHealthCheck) ValidateDelete

func (r *RegionHealthCheck) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionHealthCheck) ValidateUpdate

func (r *RegionHealthCheck) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionHealthCheckList

type RegionHealthCheckList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionHealthCheck CRD objects
	Items []RegionHealthCheck `json:"items,omitempty"`
}

RegionHealthCheckList is a list of RegionHealthChecks

func (*RegionHealthCheckList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckList.

func (*RegionHealthCheckList) DeepCopyInto

func (in *RegionHealthCheckList) DeepCopyInto(out *RegionHealthCheckList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionHealthCheckList) DeepCopyObject

func (in *RegionHealthCheckList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionHealthCheckSpec

type RegionHealthCheckSpec struct {
	State *RegionHealthCheckSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionHealthCheckSpecResource `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 (*RegionHealthCheckSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckSpec.

func (*RegionHealthCheckSpec) DeepCopyInto

func (in *RegionHealthCheckSpec) DeepCopyInto(out *RegionHealthCheckSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheckSpecGrpcHealthCheck

type RegionHealthCheckSpecGrpcHealthCheck struct {
	// The gRPC service name for the health check.
	// The value of grpcServiceName has the following meanings by convention:
	//
	// * Empty serviceName means the overall status of all services at the backend.
	// * Non-empty serviceName means the health of that gRPC service, as defined by the owner of the service.
	//
	// The grpcServiceName can only be ASCII.
	// +optional
	GrpcServiceName *string `json:"grpcServiceName,omitempty" tf:"grpc_service_name"`
	// The port number for the health check request.
	// Must be specified if portName and portSpecification are not set
	// or if port_specification is USE_FIXED_PORT. Valid values are 1 through 65535.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, gRPC health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
}

func (*RegionHealthCheckSpecGrpcHealthCheck) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckSpecGrpcHealthCheck.

func (*RegionHealthCheckSpecGrpcHealthCheck) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheckSpecGrpcHealthCheckCodec

type RegionHealthCheckSpecGrpcHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionHealthCheckSpecGrpcHealthCheckCodec) Decode

func (RegionHealthCheckSpecGrpcHealthCheckCodec) Encode

func (RegionHealthCheckSpecGrpcHealthCheckCodec) IsEmpty

type RegionHealthCheckSpecHttp2HealthCheck

type RegionHealthCheckSpecHttp2HealthCheck struct {
	// The value of the host header in the HTTP2 health check request.
	// If left empty (default value), the public IP on behalf of which this health
	// check is performed will be used.
	// +optional
	Host *string `json:"host,omitempty" tf:"host"`
	// The TCP port number for the HTTP2 health check request.
	// The default value is 443.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, HTTP2 health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The request path of the HTTP2 health check request.
	// The default value is /.
	// +optional
	RequestPath *string `json:"requestPath,omitempty" tf:"request_path"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*RegionHealthCheckSpecHttp2HealthCheck) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckSpecHttp2HealthCheck.

func (*RegionHealthCheckSpecHttp2HealthCheck) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheckSpecHttp2HealthCheckCodec

type RegionHealthCheckSpecHttp2HealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionHealthCheckSpecHttp2HealthCheckCodec) Decode

func (RegionHealthCheckSpecHttp2HealthCheckCodec) Encode

func (RegionHealthCheckSpecHttp2HealthCheckCodec) IsEmpty

type RegionHealthCheckSpecHttpHealthCheck

type RegionHealthCheckSpecHttpHealthCheck struct {
	// The value of the host header in the HTTP health check request.
	// If left empty (default value), the public IP on behalf of which this health
	// check is performed will be used.
	// +optional
	Host *string `json:"host,omitempty" tf:"host"`
	// The TCP port number for the HTTP health check request.
	// The default value is 80.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, HTTP health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The request path of the HTTP health check request.
	// The default value is /.
	// +optional
	RequestPath *string `json:"requestPath,omitempty" tf:"request_path"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*RegionHealthCheckSpecHttpHealthCheck) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckSpecHttpHealthCheck.

func (*RegionHealthCheckSpecHttpHealthCheck) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheckSpecHttpHealthCheckCodec

type RegionHealthCheckSpecHttpHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionHealthCheckSpecHttpHealthCheckCodec) Decode

func (RegionHealthCheckSpecHttpHealthCheckCodec) Encode

func (RegionHealthCheckSpecHttpHealthCheckCodec) IsEmpty

type RegionHealthCheckSpecHttpsHealthCheck

type RegionHealthCheckSpecHttpsHealthCheck struct {
	// The value of the host header in the HTTPS health check request.
	// If left empty (default value), the public IP on behalf of which this health
	// check is performed will be used.
	// +optional
	Host *string `json:"host,omitempty" tf:"host"`
	// The TCP port number for the HTTPS health check request.
	// The default value is 443.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, HTTPS health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The request path of the HTTPS health check request.
	// The default value is /.
	// +optional
	RequestPath *string `json:"requestPath,omitempty" tf:"request_path"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*RegionHealthCheckSpecHttpsHealthCheck) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckSpecHttpsHealthCheck.

func (*RegionHealthCheckSpecHttpsHealthCheck) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheckSpecHttpsHealthCheckCodec

type RegionHealthCheckSpecHttpsHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionHealthCheckSpecHttpsHealthCheckCodec) Decode

func (RegionHealthCheckSpecHttpsHealthCheckCodec) Encode

func (RegionHealthCheckSpecHttpsHealthCheckCodec) IsEmpty

type RegionHealthCheckSpecLogConfig

type RegionHealthCheckSpecLogConfig struct {
	// Indicates whether or not to export logs. This is false by default,
	// which means no health check logging will be done.
	// +optional
	Enable *bool `json:"enable,omitempty" tf:"enable"`
}

func (*RegionHealthCheckSpecLogConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckSpecLogConfig.

func (*RegionHealthCheckSpecLogConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheckSpecLogConfigCodec

type RegionHealthCheckSpecLogConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionHealthCheckSpecLogConfigCodec) Decode

func (RegionHealthCheckSpecLogConfigCodec) Encode

func (RegionHealthCheckSpecLogConfigCodec) IsEmpty

type RegionHealthCheckSpecResource

type RegionHealthCheckSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// How often (in seconds) to send a health check. The default value is 5
	// seconds.
	// +optional
	CheckIntervalSec *int64 `json:"checkIntervalSec,omitempty" tf:"check_interval_sec"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// A nested object resource
	// +optional
	GrpcHealthCheck *RegionHealthCheckSpecGrpcHealthCheck `json:"grpcHealthCheck,omitempty" tf:"grpc_health_check"`
	// A so-far unhealthy instance will be marked healthy after this many
	// consecutive successes. The default value is 2.
	// +optional
	HealthyThreshold *int64 `json:"healthyThreshold,omitempty" tf:"healthy_threshold"`
	// A nested object resource
	// +optional
	Http2HealthCheck *RegionHealthCheckSpecHttp2HealthCheck `json:"http2HealthCheck,omitempty" tf:"http2_health_check"`
	// A nested object resource
	// +optional
	HttpHealthCheck *RegionHealthCheckSpecHttpHealthCheck `json:"httpHealthCheck,omitempty" tf:"http_health_check"`
	// A nested object resource
	// +optional
	HttpsHealthCheck *RegionHealthCheckSpecHttpsHealthCheck `json:"httpsHealthCheck,omitempty" tf:"https_health_check"`
	// Configure logging on this health check.
	// +optional
	LogConfig *RegionHealthCheckSpecLogConfig `json:"logConfig,omitempty" tf:"log_config"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the
	// last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The Region in which the created health check should reside.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// A nested object resource
	// +optional
	SslHealthCheck *RegionHealthCheckSpecSslHealthCheck `json:"sslHealthCheck,omitempty" tf:"ssl_health_check"`
	// A nested object resource
	// +optional
	TcpHealthCheck *RegionHealthCheckSpecTcpHealthCheck `json:"tcpHealthCheck,omitempty" tf:"tcp_health_check"`
	// How long (in seconds) to wait before claiming failure.
	// The default value is 5 seconds.  It is invalid for timeoutSec to have
	// greater value than checkIntervalSec.
	// +optional
	TimeoutSec *int64 `json:"timeoutSec,omitempty" tf:"timeout_sec"`
	// The type of the health check. One of HTTP, HTTP2, HTTPS, TCP, or SSL.
	// +optional
	Type *string `json:"type,omitempty" tf:"type"`
	// A so-far healthy instance will be marked unhealthy after this many
	// consecutive failures. The default value is 2.
	// +optional
	UnhealthyThreshold *int64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold"`
}

func (*RegionHealthCheckSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckSpecResource.

func (*RegionHealthCheckSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheckSpecSslHealthCheck

type RegionHealthCheckSpecSslHealthCheck struct {
	// The TCP port number for the SSL health check request.
	// The default value is 443.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, SSL health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The application data to send once the SSL connection has been
	// established (default value is empty). If both request and response are
	// empty, the connection establishment alone will indicate health. The request
	// data can only be ASCII.
	// +optional
	Request *string `json:"request,omitempty" tf:"request"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*RegionHealthCheckSpecSslHealthCheck) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckSpecSslHealthCheck.

func (*RegionHealthCheckSpecSslHealthCheck) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheckSpecSslHealthCheckCodec

type RegionHealthCheckSpecSslHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionHealthCheckSpecSslHealthCheckCodec) Decode

func (RegionHealthCheckSpecSslHealthCheckCodec) Encode

func (RegionHealthCheckSpecSslHealthCheckCodec) IsEmpty

type RegionHealthCheckSpecTcpHealthCheck

type RegionHealthCheckSpecTcpHealthCheck struct {
	// The TCP port number for the TCP health check request.
	// The default value is 80.
	// +optional
	Port *int64 `json:"port,omitempty" tf:"port"`
	// Port name as defined in InstanceGroup#NamedPort#name. If both port and
	// port_name are defined, port takes precedence.
	// +optional
	PortName *string `json:"portName,omitempty" tf:"port_name"`
	// Specifies how port is selected for health checking, can be one of the
	// following values:
	//
	//   * 'USE_FIXED_PORT': The port number in 'port' is used for health checking.
	//
	//   * 'USE_NAMED_PORT': The 'portName' is used for health checking.
	//
	//   * 'USE_SERVING_PORT': For NetworkEndpointGroup, the port specified for each
	//   network endpoint is used for health checking. For other backends, the
	//   port or named port specified in the Backend Service is used for health
	//   checking.
	//
	// If not specified, TCP health check follows behavior specified in 'port' and
	// 'portName' fields. Possible values: ["USE_FIXED_PORT", "USE_NAMED_PORT", "USE_SERVING_PORT"]
	// +optional
	PortSpecification *string `json:"portSpecification,omitempty" tf:"port_specification"`
	// Specifies the type of proxy header to append before sending data to the
	// backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The application data to send once the TCP connection has been
	// established (default value is empty). If both request and response are
	// empty, the connection establishment alone will indicate health. The request
	// data can only be ASCII.
	// +optional
	Request *string `json:"request,omitempty" tf:"request"`
	// The bytes to match against the beginning of the response data. If left empty
	// (the default value), any response will indicate health. The response data
	// can only be ASCII.
	// +optional
	Response *string `json:"response,omitempty" tf:"response"`
}

func (*RegionHealthCheckSpecTcpHealthCheck) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckSpecTcpHealthCheck.

func (*RegionHealthCheckSpecTcpHealthCheck) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionHealthCheckSpecTcpHealthCheckCodec

type RegionHealthCheckSpecTcpHealthCheckCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionHealthCheckSpecTcpHealthCheckCodec) Decode

func (RegionHealthCheckSpecTcpHealthCheckCodec) Encode

func (RegionHealthCheckSpecTcpHealthCheckCodec) IsEmpty

type RegionHealthCheckStatus

type RegionHealthCheckStatus 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 (*RegionHealthCheckStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionHealthCheckStatus.

func (*RegionHealthCheckStatus) DeepCopyInto

func (in *RegionHealthCheckStatus) DeepCopyInto(out *RegionHealthCheckStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManager

type RegionInstanceGroupManager struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionInstanceGroupManagerSpec   `json:"spec,omitempty"`
	Status            RegionInstanceGroupManagerStatus `json:"status,omitempty"`
}

func (*RegionInstanceGroupManager) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManager.

func (*RegionInstanceGroupManager) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionInstanceGroupManager) DeepCopyObject

func (in *RegionInstanceGroupManager) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionInstanceGroupManager) SetupWebhookWithManager

func (r *RegionInstanceGroupManager) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionInstanceGroupManager) ValidateCreate

func (r *RegionInstanceGroupManager) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionInstanceGroupManager) ValidateDelete

func (r *RegionInstanceGroupManager) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionInstanceGroupManager) ValidateUpdate

func (r *RegionInstanceGroupManager) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionInstanceGroupManagerList

type RegionInstanceGroupManagerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionInstanceGroupManager CRD objects
	Items []RegionInstanceGroupManager `json:"items,omitempty"`
}

RegionInstanceGroupManagerList is a list of RegionInstanceGroupManagers

func (*RegionInstanceGroupManagerList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerList.

func (*RegionInstanceGroupManagerList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionInstanceGroupManagerList) DeepCopyObject

func (in *RegionInstanceGroupManagerList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionInstanceGroupManagerSpec

type RegionInstanceGroupManagerSpec struct {
	State *RegionInstanceGroupManagerSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionInstanceGroupManagerSpecResource `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 (*RegionInstanceGroupManagerSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpec.

func (*RegionInstanceGroupManagerSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecAutoHealingPolicies

type RegionInstanceGroupManagerSpecAutoHealingPolicies struct {
	// The health check resource that signals autohealing.
	HealthCheck *string `json:"healthCheck" tf:"health_check"`
	// The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. Between 0 and 3600.
	InitialDelaySec *int64 `json:"initialDelaySec" tf:"initial_delay_sec"`
}

func (*RegionInstanceGroupManagerSpecAutoHealingPolicies) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecAutoHealingPolicies.

func (*RegionInstanceGroupManagerSpecAutoHealingPolicies) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecAutoHealingPoliciesCodec

type RegionInstanceGroupManagerSpecAutoHealingPoliciesCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionInstanceGroupManagerSpecAutoHealingPoliciesCodec) Decode

func (RegionInstanceGroupManagerSpecAutoHealingPoliciesCodec) Encode

func (RegionInstanceGroupManagerSpecAutoHealingPoliciesCodec) IsEmpty

type RegionInstanceGroupManagerSpecNamedPort

type RegionInstanceGroupManagerSpecNamedPort struct {
	// The name of the port.
	Name *string `json:"name" tf:"name"`
	// The port number.
	Port *int64 `json:"port" tf:"port"`
}

func (*RegionInstanceGroupManagerSpecNamedPort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecNamedPort.

func (*RegionInstanceGroupManagerSpecNamedPort) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecResource

type RegionInstanceGroupManagerSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The autohealing policies for this managed instance group. You can specify only one value.
	// +optional
	AutoHealingPolicies *RegionInstanceGroupManagerSpecAutoHealingPolicies `json:"autoHealingPolicies,omitempty" tf:"auto_healing_policies"`
	// The base instance name to use for instances in this group. The value must be a valid RFC1035 name. Supported characters are lowercase letters, numbers, and hyphens (-). Instances are named by appending a hyphen and a random four-character string to the base instance name.
	BaseInstanceName *string `json:"baseInstanceName" tf:"base_instance_name"`
	// An optional textual description of the instance group manager.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The shape to which the group converges either proactively or on resize events (depending on the value set in updatePolicy.instanceRedistributionType).
	// +optional
	DistributionPolicyTargetShape *string `json:"distributionPolicyTargetShape,omitempty" tf:"distribution_policy_target_shape"`
	// The distribution policy for this managed instance group. You can specify one or more values.
	// +optional
	DistributionPolicyZones []string `json:"distributionPolicyZones,omitempty" tf:"distribution_policy_zones"`
	// The fingerprint of the instance group manager.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// The full URL of the instance group created by the manager.
	// +optional
	InstanceGroup *string `json:"instanceGroup,omitempty" tf:"instance_group"`
	// The name of the instance group manager. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens.
	Name *string `json:"name" tf:"name"`
	// The named port configuration.
	// +optional
	NamedPort []RegionInstanceGroupManagerSpecNamedPort `json:"namedPort,omitempty" tf:"named_port"`
	// 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"`
	// The region where the managed instance group resides.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// The URL of the created resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Disks created on the instances that will be preserved on instance delete, update, etc. Structure is documented below. For more information see the official documentation. Proactive cross zone instance redistribution must be disabled before you can update stateful disks on existing instance group managers. This can be controlled via the update_policy.
	// +optional
	StatefulDisk []RegionInstanceGroupManagerSpecStatefulDisk `json:"statefulDisk,omitempty" tf:"stateful_disk"`
	// The status of this managed instance group.
	// +optional
	Status []RegionInstanceGroupManagerSpecStatus `json:"status,omitempty" tf:"status"`
	// The full URL of all target pools to which new instances in the group are added. Updating the target pools attribute does not affect existing instances.
	// +optional
	TargetPools []string `json:"targetPools,omitempty" tf:"target_pools"`
	// The target number of running instances for this managed instance group. This value should always be explicitly set unless this resource is attached to an autoscaler, in which case it should never be set. Defaults to 0.
	// +optional
	TargetSize *int64 `json:"targetSize,omitempty" tf:"target_size"`
	// The update policy for this managed instance group.
	// +optional
	UpdatePolicy *RegionInstanceGroupManagerSpecUpdatePolicy `json:"updatePolicy,omitempty" tf:"update_policy"`
	// Application versions managed by this instance group. Each version deals with a specific instance template, allowing canary release scenarios.
	Version []RegionInstanceGroupManagerSpecVersion `json:"version" tf:"version"`
	// Whether to wait for all instances to be created/updated before returning. Note that if this is set to true and the operation does not succeed, Terraform will continue trying until it times out.
	// +optional
	WaitForInstances *bool `json:"waitForInstances,omitempty" tf:"wait_for_instances"`
	// When used with wait_for_instances specifies the status to wait for. When STABLE is specified this resource will wait until the instances are stable before returning. When UPDATED is set, it will wait for the version target to be reached and any per instance configs to be effective as well as all instances to be stable before returning.
	// +optional
	WaitForInstancesStatus *string `json:"waitForInstancesStatus,omitempty" tf:"wait_for_instances_status"`
}

func (*RegionInstanceGroupManagerSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecResource.

func (*RegionInstanceGroupManagerSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecStatefulDisk

type RegionInstanceGroupManagerSpecStatefulDisk struct {
	// A value that prescribes what should happen to the stateful disk when the VM instance is deleted. The available options are NEVER and ON_PERMANENT_INSTANCE_DELETION. NEVER - detach the disk when the VM is deleted, but do not delete the disk. ON_PERMANENT_INSTANCE_DELETION will delete the stateful disk when the VM is permanently deleted from the instance group. The default is NEVER.
	// +optional
	DeleteRule *string `json:"deleteRule,omitempty" tf:"delete_rule"`
	// The device name of the disk to be attached.
	DeviceName *string `json:"deviceName" tf:"device_name"`
}

func (*RegionInstanceGroupManagerSpecStatefulDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecStatefulDisk.

func (*RegionInstanceGroupManagerSpecStatefulDisk) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecStatus

type RegionInstanceGroupManagerSpecStatus struct {
	// A bit indicating whether the managed instance group is in a stable state. A stable state means that: none of the instances in the managed instance group is currently undergoing any type of change (for example, creation, restart, or deletion); no future changes are scheduled for instances in the managed instance group; and the managed instance group itself is not being modified.
	// +optional
	IsStable *bool `json:"isStable,omitempty" tf:"is_stable"`
	// Stateful status of the given Instance Group Manager.
	// +optional
	Stateful []RegionInstanceGroupManagerSpecStatusStateful `json:"stateful,omitempty" tf:"stateful"`
	// A status of consistency of Instances' versions with their target version specified by version field on Instance Group Manager.
	// +optional
	VersionTarget []RegionInstanceGroupManagerSpecStatusVersionTarget `json:"versionTarget,omitempty" tf:"version_target"`
}

func (*RegionInstanceGroupManagerSpecStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecStatus.

func (*RegionInstanceGroupManagerSpecStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecStatusStateful

type RegionInstanceGroupManagerSpecStatusStateful struct {
	// A bit indicating whether the managed instance group has stateful configuration, that is, if you have configured any items in a stateful policy or in per-instance configs. The group might report that it has no stateful config even when there is still some preserved state on a managed instance, for example, if you have deleted all PICs but not yet applied those deletions.
	// +optional
	HasStatefulConfig *bool `json:"hasStatefulConfig,omitempty" tf:"has_stateful_config"`
	// Status of per-instance configs on the instance.
	// +optional
	PerInstanceConfigs []RegionInstanceGroupManagerSpecStatusStatefulPerInstanceConfigs `json:"perInstanceConfigs,omitempty" tf:"per_instance_configs"`
}

func (*RegionInstanceGroupManagerSpecStatusStateful) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecStatusStateful.

func (*RegionInstanceGroupManagerSpecStatusStateful) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecStatusStatefulPerInstanceConfigs

type RegionInstanceGroupManagerSpecStatusStatefulPerInstanceConfigs struct {
	// A bit indicating if all of the group's per-instance configs (listed in the output of a listPerInstanceConfigs API call) have status EFFECTIVE or there are no per-instance-configs.
	// +optional
	AllEffective *bool `json:"allEffective,omitempty" tf:"all_effective"`
}

func (*RegionInstanceGroupManagerSpecStatusStatefulPerInstanceConfigs) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecStatusStatefulPerInstanceConfigs.

func (*RegionInstanceGroupManagerSpecStatusStatefulPerInstanceConfigs) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecStatusVersionTarget

type RegionInstanceGroupManagerSpecStatusVersionTarget struct {
	// A bit indicating whether version target has been reached in this managed instance group, i.e. all instances are in their target version. Instances' target version are specified by version field on Instance Group Manager.
	// +optional
	IsReached *bool `json:"isReached,omitempty" tf:"is_reached"`
}

func (*RegionInstanceGroupManagerSpecStatusVersionTarget) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecStatusVersionTarget.

func (*RegionInstanceGroupManagerSpecStatusVersionTarget) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecUpdatePolicy

type RegionInstanceGroupManagerSpecUpdatePolicy struct {
	// The instance redistribution policy for regional managed instance groups. Valid values are: "PROACTIVE", "NONE". If PROACTIVE (default), the group attempts to maintain an even distribution of VM instances across zones in the region. If NONE, proactive redistribution is disabled.
	// +optional
	InstanceRedistributionType *string `json:"instanceRedistributionType,omitempty" tf:"instance_redistribution_type"`
	// The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with max_surge_percent. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of max_unavailable_fixed or max_surge_fixed must be greater than 0.
	// +optional
	MaxSurgeFixed *int64 `json:"maxSurgeFixed,omitempty" tf:"max_surge_fixed"`
	// The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with max_surge_fixed. Percent value is only allowed for regional managed instance groups with size at least 10.
	// +optional
	MaxSurgePercent *int64 `json:"maxSurgePercent,omitempty" tf:"max_surge_percent"`
	// The maximum number of instances that can be unavailable during the update process. Conflicts with max_unavailable_percent. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of max_unavailable_fixed or max_surge_fixed must be greater than 0.
	// +optional
	MaxUnavailableFixed *int64 `json:"maxUnavailableFixed,omitempty" tf:"max_unavailable_fixed"`
	// The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with max_unavailable_fixed. Percent value is only allowed for regional managed instance groups with size at least 10.
	// +optional
	MaxUnavailablePercent *int64 `json:"maxUnavailablePercent,omitempty" tf:"max_unavailable_percent"`
	// Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a RESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.
	MinimalAction *string `json:"minimalAction" tf:"minimal_action"`
	// The instance replacement method for regional managed instance groups. Valid values are: "RECREATE", "SUBSTITUTE". If SUBSTITUTE (default), the group replaces VM instances with new instances that have randomly generated names. If RECREATE, instance names are preserved.  You must also set max_unavailable_fixed or max_unavailable_percent to be greater than 0.
	// +optional
	ReplacementMethod *string `json:"replacementMethod,omitempty" tf:"replacement_method"`
	// The type of update process. You can specify either PROACTIVE so that the instance group manager proactively executes actions in order to bring instances to their target versions or OPPORTUNISTIC so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls).
	Type *string `json:"type" tf:"type"`
}

func (*RegionInstanceGroupManagerSpecUpdatePolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecUpdatePolicy.

func (*RegionInstanceGroupManagerSpecUpdatePolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecUpdatePolicyCodec

type RegionInstanceGroupManagerSpecUpdatePolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionInstanceGroupManagerSpecUpdatePolicyCodec) Decode

func (RegionInstanceGroupManagerSpecUpdatePolicyCodec) Encode

func (RegionInstanceGroupManagerSpecUpdatePolicyCodec) IsEmpty

type RegionInstanceGroupManagerSpecVersion

type RegionInstanceGroupManagerSpecVersion struct {
	// The full URL to an instance template from which all new instances of this version will be created.
	InstanceTemplate *string `json:"instanceTemplate" tf:"instance_template"`
	// Version name.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// The number of instances calculated as a fixed number or a percentage depending on the settings.
	// +optional
	TargetSize *RegionInstanceGroupManagerSpecVersionTargetSize `json:"targetSize,omitempty" tf:"target_size"`
}

func (*RegionInstanceGroupManagerSpecVersion) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecVersion.

func (*RegionInstanceGroupManagerSpecVersion) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecVersionTargetSize

type RegionInstanceGroupManagerSpecVersionTargetSize struct {
	// The number of instances which are managed for this version. Conflicts with percent.
	// +optional
	Fixed *int64 `json:"fixed,omitempty" tf:"fixed"`
	// The number of instances (calculated as percentage) which are managed for this version. Conflicts with fixed. Note that when using percent, rounding will be in favor of explicitly set target_size values; a managed instance group with 2 instances and 2 versions, one of which has a target_size.percent of 60 will create 2 instances of that version.
	// +optional
	Percent *int64 `json:"percent,omitempty" tf:"percent"`
}

func (*RegionInstanceGroupManagerSpecVersionTargetSize) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerSpecVersionTargetSize.

func (*RegionInstanceGroupManagerSpecVersionTargetSize) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionInstanceGroupManagerSpecVersionTargetSizeCodec

type RegionInstanceGroupManagerSpecVersionTargetSizeCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionInstanceGroupManagerSpecVersionTargetSizeCodec) Decode

func (RegionInstanceGroupManagerSpecVersionTargetSizeCodec) Encode

func (RegionInstanceGroupManagerSpecVersionTargetSizeCodec) IsEmpty

type RegionInstanceGroupManagerStatus

type RegionInstanceGroupManagerStatus 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 (*RegionInstanceGroupManagerStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionInstanceGroupManagerStatus.

func (*RegionInstanceGroupManagerStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionNetworkEndpointGroup

type RegionNetworkEndpointGroup struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionNetworkEndpointGroupSpec   `json:"spec,omitempty"`
	Status            RegionNetworkEndpointGroupStatus `json:"status,omitempty"`
}

func (*RegionNetworkEndpointGroup) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionNetworkEndpointGroup.

func (*RegionNetworkEndpointGroup) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionNetworkEndpointGroup) DeepCopyObject

func (in *RegionNetworkEndpointGroup) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionNetworkEndpointGroup) SetupWebhookWithManager

func (r *RegionNetworkEndpointGroup) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionNetworkEndpointGroup) ValidateCreate

func (r *RegionNetworkEndpointGroup) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionNetworkEndpointGroup) ValidateDelete

func (r *RegionNetworkEndpointGroup) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionNetworkEndpointGroup) ValidateUpdate

func (r *RegionNetworkEndpointGroup) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionNetworkEndpointGroupList

type RegionNetworkEndpointGroupList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionNetworkEndpointGroup CRD objects
	Items []RegionNetworkEndpointGroup `json:"items,omitempty"`
}

RegionNetworkEndpointGroupList is a list of RegionNetworkEndpointGroups

func (*RegionNetworkEndpointGroupList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionNetworkEndpointGroupList.

func (*RegionNetworkEndpointGroupList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionNetworkEndpointGroupList) DeepCopyObject

func (in *RegionNetworkEndpointGroupList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionNetworkEndpointGroupSpec

type RegionNetworkEndpointGroupSpec struct {
	State *RegionNetworkEndpointGroupSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionNetworkEndpointGroupSpecResource `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 (*RegionNetworkEndpointGroupSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionNetworkEndpointGroupSpec.

func (*RegionNetworkEndpointGroupSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionNetworkEndpointGroupSpecAppEngine

type RegionNetworkEndpointGroupSpecAppEngine struct {
	// Optional serving service.
	// The service name must be 1-63 characters long, and comply with RFC1035.
	// Example value: "default", "my-service".
	// +optional
	Service *string `json:"service,omitempty" tf:"service"`
	// A template to parse service and version fields from a request URL.
	// URL mask allows for routing to multiple App Engine services without
	// having to create multiple Network Endpoint Groups and backend services.
	//
	// For example, the request URLs "foo1-dot-appname.appspot.com/v1" and
	// "foo1-dot-appname.appspot.com/v2" can be backed by the same Serverless NEG with
	// URL mask "-dot-appname.appspot.com/". The URL mask will parse
	// them to { service = "foo1", version = "v1" } and { service = "foo1", version = "v2" } respectively.
	// +optional
	UrlMask *string `json:"urlMask,omitempty" tf:"url_mask"`
	// Optional serving version.
	// The version must be 1-63 characters long, and comply with RFC1035.
	// Example value: "v1", "v2".
	// +optional
	Version *string `json:"version,omitempty" tf:"version"`
}

func (*RegionNetworkEndpointGroupSpecAppEngine) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionNetworkEndpointGroupSpecAppEngine.

func (*RegionNetworkEndpointGroupSpecAppEngine) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionNetworkEndpointGroupSpecAppEngineCodec

type RegionNetworkEndpointGroupSpecAppEngineCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionNetworkEndpointGroupSpecAppEngineCodec) Decode

func (RegionNetworkEndpointGroupSpecAppEngineCodec) Encode

func (RegionNetworkEndpointGroupSpecAppEngineCodec) IsEmpty

type RegionNetworkEndpointGroupSpecCloudFunction

type RegionNetworkEndpointGroupSpecCloudFunction struct {
	// A user-defined name of the Cloud Function.
	// The function name is case-sensitive and must be 1-63 characters long.
	// Example value: "func1".
	// +optional
	Function *string `json:"function,omitempty" tf:"function"`
	// A template to parse function field from a request URL. URL mask allows
	// for routing to multiple Cloud Functions without having to create
	// multiple Network Endpoint Groups and backend services.
	//
	// For example, request URLs "mydomain.com/function1" and "mydomain.com/function2"
	// can be backed by the same Serverless NEG with URL mask "/". The URL mask
	// will parse them to { function = "function1" } and { function = "function2" } respectively.
	// +optional
	UrlMask *string `json:"urlMask,omitempty" tf:"url_mask"`
}

func (*RegionNetworkEndpointGroupSpecCloudFunction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionNetworkEndpointGroupSpecCloudFunction.

func (*RegionNetworkEndpointGroupSpecCloudFunction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionNetworkEndpointGroupSpecCloudFunctionCodec

type RegionNetworkEndpointGroupSpecCloudFunctionCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionNetworkEndpointGroupSpecCloudFunctionCodec) Decode

func (RegionNetworkEndpointGroupSpecCloudFunctionCodec) Encode

func (RegionNetworkEndpointGroupSpecCloudFunctionCodec) IsEmpty

type RegionNetworkEndpointGroupSpecCloudRun

type RegionNetworkEndpointGroupSpecCloudRun struct {
	// Cloud Run service is the main resource of Cloud Run.
	// The service must be 1-63 characters long, and comply with RFC1035.
	// Example value: "run-service".
	// +optional
	Service *string `json:"service,omitempty" tf:"service"`
	// Cloud Run tag represents the "named-revision" to provide
	// additional fine-grained traffic routing information.
	// The tag must be 1-63 characters long, and comply with RFC1035.
	// Example value: "revision-0010".
	// +optional
	Tag *string `json:"tag,omitempty" tf:"tag"`
	// A template to parse service and tag fields from a request URL.
	// URL mask allows for routing to multiple Run services without having
	// to create multiple network endpoint groups and backend services.
	//
	// For example, request URLs "foo1.domain.com/bar1" and "foo1.domain.com/bar2"
	// an be backed by the same Serverless Network Endpoint Group (NEG) with
	// URL mask ".domain.com/". The URL mask will parse them to { service="bar1", tag="foo1" }
	// and { service="bar2", tag="foo2" } respectively.
	// +optional
	UrlMask *string `json:"urlMask,omitempty" tf:"url_mask"`
}

func (*RegionNetworkEndpointGroupSpecCloudRun) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionNetworkEndpointGroupSpecCloudRun.

func (*RegionNetworkEndpointGroupSpecCloudRun) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionNetworkEndpointGroupSpecCloudRunCodec

type RegionNetworkEndpointGroupSpecCloudRunCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionNetworkEndpointGroupSpecCloudRunCodec) Decode

func (RegionNetworkEndpointGroupSpecCloudRunCodec) Encode

func (RegionNetworkEndpointGroupSpecCloudRunCodec) IsEmpty

type RegionNetworkEndpointGroupSpecResource

type RegionNetworkEndpointGroupSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Only valid when networkEndpointType is "SERVERLESS".
	// Only one of cloud_run, app_engine, cloud_function or serverless_deployment may be set.
	// +optional
	AppEngine *RegionNetworkEndpointGroupSpecAppEngine `json:"appEngine,omitempty" tf:"app_engine"`
	// Only valid when networkEndpointType is "SERVERLESS".
	// Only one of cloud_run, app_engine, cloud_function or serverless_deployment may be set.
	// +optional
	CloudFunction *RegionNetworkEndpointGroupSpecCloudFunction `json:"cloudFunction,omitempty" tf:"cloud_function"`
	// Only valid when networkEndpointType is "SERVERLESS".
	// Only one of cloud_run, app_engine, cloud_function or serverless_deployment may be set.
	// +optional
	CloudRun *RegionNetworkEndpointGroupSpecCloudRun `json:"cloudRun,omitempty" tf:"cloud_run"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource; provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// Type of network endpoints in this network endpoint group. Defaults to SERVERLESS Default value: "SERVERLESS" Possible values: ["SERVERLESS"]
	// +optional
	NetworkEndpointType *string `json:"networkEndpointType,omitempty" tf:"network_endpoint_type"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// A reference to the region where the Serverless NEGs Reside.
	Region *string `json:"region" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*RegionNetworkEndpointGroupSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionNetworkEndpointGroupSpecResource.

func (*RegionNetworkEndpointGroupSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionNetworkEndpointGroupStatus

type RegionNetworkEndpointGroupStatus 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 (*RegionNetworkEndpointGroupStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionNetworkEndpointGroupStatus.

func (*RegionNetworkEndpointGroupStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionPerInstanceConfig

type RegionPerInstanceConfig struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionPerInstanceConfigSpec   `json:"spec,omitempty"`
	Status            RegionPerInstanceConfigStatus `json:"status,omitempty"`
}

func (*RegionPerInstanceConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionPerInstanceConfig.

func (*RegionPerInstanceConfig) DeepCopyInto

func (in *RegionPerInstanceConfig) DeepCopyInto(out *RegionPerInstanceConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionPerInstanceConfig) DeepCopyObject

func (in *RegionPerInstanceConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionPerInstanceConfig) SetupWebhookWithManager

func (r *RegionPerInstanceConfig) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionPerInstanceConfig) ValidateCreate

func (r *RegionPerInstanceConfig) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionPerInstanceConfig) ValidateDelete

func (r *RegionPerInstanceConfig) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionPerInstanceConfig) ValidateUpdate

func (r *RegionPerInstanceConfig) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionPerInstanceConfigList

type RegionPerInstanceConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionPerInstanceConfig CRD objects
	Items []RegionPerInstanceConfig `json:"items,omitempty"`
}

RegionPerInstanceConfigList is a list of RegionPerInstanceConfigs

func (*RegionPerInstanceConfigList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionPerInstanceConfigList.

func (*RegionPerInstanceConfigList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionPerInstanceConfigList) DeepCopyObject

func (in *RegionPerInstanceConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionPerInstanceConfigSpec

type RegionPerInstanceConfigSpec struct {
	State *RegionPerInstanceConfigSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionPerInstanceConfigSpecResource `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 (*RegionPerInstanceConfigSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionPerInstanceConfigSpec.

func (*RegionPerInstanceConfigSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionPerInstanceConfigSpecPreservedState

type RegionPerInstanceConfigSpecPreservedState struct {
	// Stateful disks for the instance.
	// +optional
	Disk []RegionPerInstanceConfigSpecPreservedStateDisk `json:"disk,omitempty" tf:"disk"`
	// Preserved metadata defined for this instance. This is a list of key->value pairs.
	// +optional
	Metadata *map[string]string `json:"metadata,omitempty" tf:"metadata"`
}

func (*RegionPerInstanceConfigSpecPreservedState) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionPerInstanceConfigSpecPreservedState.

func (*RegionPerInstanceConfigSpecPreservedState) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionPerInstanceConfigSpecPreservedStateCodec

type RegionPerInstanceConfigSpecPreservedStateCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionPerInstanceConfigSpecPreservedStateCodec) Decode

func (RegionPerInstanceConfigSpecPreservedStateCodec) Encode

func (RegionPerInstanceConfigSpecPreservedStateCodec) IsEmpty

type RegionPerInstanceConfigSpecPreservedStateDisk

type RegionPerInstanceConfigSpecPreservedStateDisk struct {
	// A value that prescribes what should happen to the stateful disk when the VM instance is deleted.
	// The available options are 'NEVER' and 'ON_PERMANENT_INSTANCE_DELETION'.
	// 'NEVER' - detach the disk when the VM is deleted, but do not delete the disk.
	// 'ON_PERMANENT_INSTANCE_DELETION' will delete the stateful disk when the VM is permanently
	// deleted from the instance group. Default value: "NEVER" Possible values: ["NEVER", "ON_PERMANENT_INSTANCE_DELETION"]
	// +optional
	DeleteRule *string `json:"deleteRule,omitempty" tf:"delete_rule"`
	// A unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance.
	DeviceName *string `json:"deviceName" tf:"device_name"`
	// The mode of the disk. Default value: "READ_WRITE" Possible values: ["READ_ONLY", "READ_WRITE"]
	// +optional
	Mode *string `json:"mode,omitempty" tf:"mode"`
	// The URI of an existing persistent disk to attach under the specified device-name in the format
	// 'projects/project-id/zones/zone/disks/disk-name'.
	Source *string `json:"source" tf:"source"`
}

func (*RegionPerInstanceConfigSpecPreservedStateDisk) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionPerInstanceConfigSpecPreservedStateDisk.

func (*RegionPerInstanceConfigSpecPreservedStateDisk) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionPerInstanceConfigSpecResource

type RegionPerInstanceConfigSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	MinimalAction *string `json:"minimalAction,omitempty" tf:"minimal_action"`
	// +optional
	MostDisruptiveAllowedAction *string `json:"mostDisruptiveAllowedAction,omitempty" tf:"most_disruptive_allowed_action"`
	// The name for this per-instance config and its corresponding instance.
	Name *string `json:"name" tf:"name"`
	// The preserved state for this instance.
	// +optional
	PreservedState *RegionPerInstanceConfigSpecPreservedState `json:"preservedState,omitempty" tf:"preserved_state"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Region where the containing instance group manager is located
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// The region instance group manager this instance config is part of.
	RegionInstanceGroupManager *string `json:"regionInstanceGroupManager" tf:"region_instance_group_manager"`
	// +optional
	RemoveInstanceStateOnDestroy *bool `json:"removeInstanceStateOnDestroy,omitempty" tf:"remove_instance_state_on_destroy"`
}

func (*RegionPerInstanceConfigSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionPerInstanceConfigSpecResource.

func (*RegionPerInstanceConfigSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionPerInstanceConfigStatus

type RegionPerInstanceConfigStatus 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 (*RegionPerInstanceConfigStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionPerInstanceConfigStatus.

func (*RegionPerInstanceConfigStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionSslCertificate

type RegionSslCertificate struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionSslCertificateSpec   `json:"spec,omitempty"`
	Status            RegionSslCertificateStatus `json:"status,omitempty"`
}

func (*RegionSslCertificate) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionSslCertificate.

func (*RegionSslCertificate) DeepCopyInto

func (in *RegionSslCertificate) DeepCopyInto(out *RegionSslCertificate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionSslCertificate) DeepCopyObject

func (in *RegionSslCertificate) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionSslCertificate) SetupWebhookWithManager

func (r *RegionSslCertificate) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionSslCertificate) ValidateCreate

func (r *RegionSslCertificate) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionSslCertificate) ValidateDelete

func (r *RegionSslCertificate) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionSslCertificate) ValidateUpdate

func (r *RegionSslCertificate) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionSslCertificateList

type RegionSslCertificateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionSslCertificate CRD objects
	Items []RegionSslCertificate `json:"items,omitempty"`
}

RegionSslCertificateList is a list of RegionSslCertificates

func (*RegionSslCertificateList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionSslCertificateList.

func (*RegionSslCertificateList) DeepCopyInto

func (in *RegionSslCertificateList) DeepCopyInto(out *RegionSslCertificateList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionSslCertificateList) DeepCopyObject

func (in *RegionSslCertificateList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionSslCertificateSpec

type RegionSslCertificateSpec struct {
	State *RegionSslCertificateSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionSslCertificateSpecResource `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 (*RegionSslCertificateSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionSslCertificateSpec.

func (*RegionSslCertificateSpec) DeepCopyInto

func (in *RegionSslCertificateSpec) DeepCopyInto(out *RegionSslCertificateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionSslCertificateSpecResource

type RegionSslCertificateSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The certificate in PEM format.
	// The certificate chain must be no greater than 5 certs long.
	// The chain must include at least one intermediate cert.
	Certificate *string `json:"-" sensitive:"true" tf:"certificate"`
	// The unique identifier for the resource.
	// +optional
	CertificateID *int64 `json:"certificateID,omitempty" tf:"certificate_id"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	//
	//
	// These are in the same namespace as the managed SSL certificates.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// Creates a unique name beginning with the specified prefix. Conflicts with name.
	// +optional
	NamePrefix *string `json:"namePrefix,omitempty" tf:"name_prefix"`
	// The write-only private key in PEM format.
	PrivateKey *string `json:"-" sensitive:"true" tf:"private_key"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The Region in which the created regional ssl certificate should reside.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*RegionSslCertificateSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionSslCertificateSpecResource.

func (*RegionSslCertificateSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionSslCertificateStatus

type RegionSslCertificateStatus 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 (*RegionSslCertificateStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionSslCertificateStatus.

func (*RegionSslCertificateStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionTargetHTTPProxy

type RegionTargetHTTPProxy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionTargetHTTPProxySpec   `json:"spec,omitempty"`
	Status            RegionTargetHTTPProxyStatus `json:"status,omitempty"`
}

func (*RegionTargetHTTPProxy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPProxy.

func (*RegionTargetHTTPProxy) DeepCopyInto

func (in *RegionTargetHTTPProxy) DeepCopyInto(out *RegionTargetHTTPProxy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionTargetHTTPProxy) DeepCopyObject

func (in *RegionTargetHTTPProxy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionTargetHTTPProxy) SetupWebhookWithManager

func (r *RegionTargetHTTPProxy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionTargetHTTPProxy) ValidateCreate

func (r *RegionTargetHTTPProxy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionTargetHTTPProxy) ValidateDelete

func (r *RegionTargetHTTPProxy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionTargetHTTPProxy) ValidateUpdate

func (r *RegionTargetHTTPProxy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionTargetHTTPProxyList

type RegionTargetHTTPProxyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionTargetHTTPProxy CRD objects
	Items []RegionTargetHTTPProxy `json:"items,omitempty"`
}

RegionTargetHTTPProxyList is a list of RegionTargetHTTPProxys

func (*RegionTargetHTTPProxyList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPProxyList.

func (*RegionTargetHTTPProxyList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionTargetHTTPProxyList) DeepCopyObject

func (in *RegionTargetHTTPProxyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionTargetHTTPProxySpec

type RegionTargetHTTPProxySpec struct {
	State *RegionTargetHTTPProxySpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionTargetHTTPProxySpecResource `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 (*RegionTargetHTTPProxySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPProxySpec.

func (*RegionTargetHTTPProxySpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionTargetHTTPProxySpecResource

type RegionTargetHTTPProxySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The unique identifier for the resource.
	// +optional
	ProxyID *int64 `json:"proxyID,omitempty" tf:"proxy_id"`
	// The Region in which the created target https proxy should reside.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// A reference to the RegionUrlMap resource that defines the mapping from URL
	// to the BackendService.
	UrlMap *string `json:"urlMap" tf:"url_map"`
}

func (*RegionTargetHTTPProxySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPProxySpecResource.

func (*RegionTargetHTTPProxySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionTargetHTTPProxyStatus

type RegionTargetHTTPProxyStatus 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 (*RegionTargetHTTPProxyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPProxyStatus.

func (*RegionTargetHTTPProxyStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionTargetHTTPSProxy

type RegionTargetHTTPSProxy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionTargetHTTPSProxySpec   `json:"spec,omitempty"`
	Status            RegionTargetHTTPSProxyStatus `json:"status,omitempty"`
}

func (*RegionTargetHTTPSProxy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPSProxy.

func (*RegionTargetHTTPSProxy) DeepCopyInto

func (in *RegionTargetHTTPSProxy) DeepCopyInto(out *RegionTargetHTTPSProxy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionTargetHTTPSProxy) DeepCopyObject

func (in *RegionTargetHTTPSProxy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionTargetHTTPSProxy) SetupWebhookWithManager

func (r *RegionTargetHTTPSProxy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionTargetHTTPSProxy) ValidateCreate

func (r *RegionTargetHTTPSProxy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionTargetHTTPSProxy) ValidateDelete

func (r *RegionTargetHTTPSProxy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionTargetHTTPSProxy) ValidateUpdate

func (r *RegionTargetHTTPSProxy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionTargetHTTPSProxyList

type RegionTargetHTTPSProxyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionTargetHTTPSProxy CRD objects
	Items []RegionTargetHTTPSProxy `json:"items,omitempty"`
}

RegionTargetHTTPSProxyList is a list of RegionTargetHTTPSProxys

func (*RegionTargetHTTPSProxyList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPSProxyList.

func (*RegionTargetHTTPSProxyList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionTargetHTTPSProxyList) DeepCopyObject

func (in *RegionTargetHTTPSProxyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionTargetHTTPSProxySpec

type RegionTargetHTTPSProxySpec struct {
	State *RegionTargetHTTPSProxySpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionTargetHTTPSProxySpecResource `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 (*RegionTargetHTTPSProxySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPSProxySpec.

func (*RegionTargetHTTPSProxySpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionTargetHTTPSProxySpecResource

type RegionTargetHTTPSProxySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The unique identifier for the resource.
	// +optional
	ProxyID *int64 `json:"proxyID,omitempty" tf:"proxy_id"`
	// The Region in which the created target https proxy should reside.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// A list of RegionSslCertificate resources that are used to authenticate
	// connections between users and the load balancer. Currently, exactly
	// one SSL certificate must be specified.
	SslCertificates []string `json:"sslCertificates" tf:"ssl_certificates"`
	// A reference to the RegionUrlMap resource that defines the mapping from URL
	// to the RegionBackendService.
	UrlMap *string `json:"urlMap" tf:"url_map"`
}

func (*RegionTargetHTTPSProxySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPSProxySpecResource.

func (*RegionTargetHTTPSProxySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionTargetHTTPSProxyStatus

type RegionTargetHTTPSProxyStatus 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 (*RegionTargetHTTPSProxyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionTargetHTTPSProxyStatus.

func (*RegionTargetHTTPSProxyStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMap

type RegionURLMap struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RegionURLMapSpec   `json:"spec,omitempty"`
	Status            RegionURLMapStatus `json:"status,omitempty"`
}

func (*RegionURLMap) DeepCopy

func (in *RegionURLMap) DeepCopy() *RegionURLMap

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMap.

func (*RegionURLMap) DeepCopyInto

func (in *RegionURLMap) DeepCopyInto(out *RegionURLMap)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionURLMap) DeepCopyObject

func (in *RegionURLMap) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RegionURLMap) SetupWebhookWithManager

func (r *RegionURLMap) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RegionURLMap) ValidateCreate

func (r *RegionURLMap) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RegionURLMap) ValidateDelete

func (r *RegionURLMap) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RegionURLMap) ValidateUpdate

func (r *RegionURLMap) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RegionURLMapList

type RegionURLMapList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RegionURLMap CRD objects
	Items []RegionURLMap `json:"items,omitempty"`
}

RegionURLMapList is a list of RegionURLMaps

func (*RegionURLMapList) DeepCopy

func (in *RegionURLMapList) DeepCopy() *RegionURLMapList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapList.

func (*RegionURLMapList) DeepCopyInto

func (in *RegionURLMapList) DeepCopyInto(out *RegionURLMapList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RegionURLMapList) DeepCopyObject

func (in *RegionURLMapList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RegionURLMapSpec

type RegionURLMapSpec struct {
	State *RegionURLMapSpecResource `json:"state,omitempty" tf:"-"`

	Resource RegionURLMapSpecResource `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 (*RegionURLMapSpec) DeepCopy

func (in *RegionURLMapSpec) DeepCopy() *RegionURLMapSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpec.

func (*RegionURLMapSpec) DeepCopyInto

func (in *RegionURLMapSpec) DeepCopyInto(out *RegionURLMapSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecDefaultURLRedirect

type RegionURLMapSpecDefaultURLRedirect struct {
	// The host that will be used in the redirect response instead of the one that was
	// supplied in the request. The value must be between 1 and 255 characters.
	// +optional
	HostRedirect *string `json:"hostRedirect,omitempty" tf:"host_redirect"`
	// If set to true, the URL scheme in the redirected request is set to https. If set to
	// false, the URL scheme of the redirected request will remain the same as that of the
	// request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this
	// true for TargetHttpsProxy is not permitted. The default is set to false.
	// +optional
	HttpsRedirect *bool `json:"httpsRedirect,omitempty" tf:"https_redirect"`
	// The path that will be used in the redirect response instead of the one that was
	// supplied in the request. pathRedirect cannot be supplied together with
	// prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the
	// original request will be used for the redirect. The value must be between 1 and 1024
	// characters.
	// +optional
	PathRedirect *string `json:"pathRedirect,omitempty" tf:"path_redirect"`
	// The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch,
	// retaining the remaining portion of the URL before redirecting the request.
	// prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or
	// neither. If neither is supplied, the path of the original request will be used for
	// the redirect. The value must be between 1 and 1024 characters.
	// +optional
	PrefixRedirect *string `json:"prefixRedirect,omitempty" tf:"prefix_redirect"`
	// The HTTP Status code to use for this RedirectAction. Supported values are:
	//
	// * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
	//
	// * FOUND, which corresponds to 302.
	//
	// * SEE_OTHER which corresponds to 303.
	//
	// * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
	// will be retained.
	//
	// * PERMANENT_REDIRECT, which corresponds to 308. In this case,
	// the request method will be retained. Possible values: ["FOUND", "MOVED_PERMANENTLY_DEFAULT", "PERMANENT_REDIRECT", "SEE_OTHER", "TEMPORARY_REDIRECT"]
	// +optional
	RedirectResponseCode *string `json:"redirectResponseCode,omitempty" tf:"redirect_response_code"`
	// If set to true, any accompanying query portion of the original URL is removed prior
	// to redirecting the request. If set to false, the query portion of the original URL is
	// retained.
	//  This field is required to ensure an empty block is not set. The normal default value is false.
	StripQuery *bool `json:"stripQuery" tf:"strip_query"`
}

func (*RegionURLMapSpecDefaultURLRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecDefaultURLRedirect.

func (*RegionURLMapSpecDefaultURLRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecDefaultURLRedirectCodec

type RegionURLMapSpecDefaultURLRedirectCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecDefaultURLRedirectCodec) Decode

func (RegionURLMapSpecDefaultURLRedirectCodec) Encode

func (RegionURLMapSpecDefaultURLRedirectCodec) IsEmpty

type RegionURLMapSpecHostRule

type RegionURLMapSpecHostRule struct {
	// An optional description of this HostRule. Provide this property
	// when you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The list of host patterns to match. They must be valid
	// hostnames, except * will match any string of ([a-z0-9-.]*). In
	// that case, * must be the first character and must be followed in
	// the pattern by either - or ..
	Hosts []string `json:"hosts" tf:"hosts"`
	// The name of the PathMatcher to use to match the path portion of
	// the URL if the hostRule matches the URL's host portion.
	PathMatcher *string `json:"pathMatcher" tf:"path_matcher"`
}

func (*RegionURLMapSpecHostRule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecHostRule.

func (*RegionURLMapSpecHostRule) DeepCopyInto

func (in *RegionURLMapSpecHostRule) DeepCopyInto(out *RegionURLMapSpecHostRule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcher

type RegionURLMapSpecPathMatcher struct {
	// A reference to a RegionBackendService resource. This will be used if
	// none of the pathRules defined by this PathMatcher is matched by
	// the URL's path portion.
	// +optional
	DefaultService *string `json:"defaultService,omitempty" tf:"default_service"`
	// When none of the specified hostRules match, the request is redirected to a URL specified
	// by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or
	// defaultRouteAction must not be set.
	// +optional
	DefaultURLRedirect *RegionURLMapSpecPathMatcherDefaultURLRedirect `json:"defaultURLRedirect,omitempty" tf:"default_url_redirect"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The name to which this PathMatcher is referred by the HostRule.
	Name *string `json:"name" tf:"name"`
	// The list of path rules. Use this list instead of routeRules when routing based
	// on simple path matching is all that's required. The order by which path rules
	// are specified does not matter. Matches are always done on the longest-path-first
	// basis. For example: a pathRule with a path /a/b/c/* will match before /a/b/*
	// irrespective of the order in which those paths appear in this list. Within a
	// given pathMatcher, only one of pathRules or routeRules must be set.
	// +optional
	PathRule []RegionURLMapSpecPathMatcherPathRule `json:"pathRule,omitempty" tf:"path_rule"`
	// The list of ordered HTTP route rules. Use this list instead of pathRules when
	// advanced route matching and routing actions are desired. The order of specifying
	// routeRules matters: the first rule that matches will cause its specified routing
	// action to take effect. Within a given pathMatcher, only one of pathRules or
	// routeRules must be set. routeRules are not supported in UrlMaps intended for
	// External load balancers.
	// +optional
	RouteRules []RegionURLMapSpecPathMatcherRouteRules `json:"routeRules,omitempty" tf:"route_rules"`
}

func (*RegionURLMapSpecPathMatcher) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcher.

func (*RegionURLMapSpecPathMatcher) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherDefaultURLRedirect

type RegionURLMapSpecPathMatcherDefaultURLRedirect struct {
	// The host that will be used in the redirect response instead of the one that was
	// supplied in the request. The value must be between 1 and 255 characters.
	// +optional
	HostRedirect *string `json:"hostRedirect,omitempty" tf:"host_redirect"`
	// If set to true, the URL scheme in the redirected request is set to https. If set to
	// false, the URL scheme of the redirected request will remain the same as that of the
	// request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this
	// true for TargetHttpsProxy is not permitted. The default is set to false.
	// +optional
	HttpsRedirect *bool `json:"httpsRedirect,omitempty" tf:"https_redirect"`
	// The path that will be used in the redirect response instead of the one that was
	// supplied in the request. pathRedirect cannot be supplied together with
	// prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the
	// original request will be used for the redirect. The value must be between 1 and 1024
	// characters.
	// +optional
	PathRedirect *string `json:"pathRedirect,omitempty" tf:"path_redirect"`
	// The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch,
	// retaining the remaining portion of the URL before redirecting the request.
	// prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or
	// neither. If neither is supplied, the path of the original request will be used for
	// the redirect. The value must be between 1 and 1024 characters.
	// +optional
	PrefixRedirect *string `json:"prefixRedirect,omitempty" tf:"prefix_redirect"`
	// The HTTP Status code to use for this RedirectAction. Supported values are:
	//
	// * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
	//
	// * FOUND, which corresponds to 302.
	//
	// * SEE_OTHER which corresponds to 303.
	//
	// * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
	// will be retained.
	//
	// * PERMANENT_REDIRECT, which corresponds to 308. In this case,
	// the request method will be retained. Possible values: ["FOUND", "MOVED_PERMANENTLY_DEFAULT", "PERMANENT_REDIRECT", "SEE_OTHER", "TEMPORARY_REDIRECT"]
	// +optional
	RedirectResponseCode *string `json:"redirectResponseCode,omitempty" tf:"redirect_response_code"`
	// If set to true, any accompanying query portion of the original URL is removed prior
	// to redirecting the request. If set to false, the query portion of the original URL is
	// retained.
	//  This field is required to ensure an empty block is not set. The normal default value is false.
	StripQuery *bool `json:"stripQuery" tf:"strip_query"`
}

func (*RegionURLMapSpecPathMatcherDefaultURLRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherDefaultURLRedirect.

func (*RegionURLMapSpecPathMatcherDefaultURLRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherDefaultURLRedirectCodec

type RegionURLMapSpecPathMatcherDefaultURLRedirectCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherDefaultURLRedirectCodec) Decode

func (RegionURLMapSpecPathMatcherDefaultURLRedirectCodec) Encode

func (RegionURLMapSpecPathMatcherDefaultURLRedirectCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRule

type RegionURLMapSpecPathMatcherPathRule struct {
	// The list of path patterns to match. Each must start with / and the only place a
	// \* is allowed is at the end following a /. The string fed to the path matcher
	// does not include any text after the first ? or #, and those chars are not
	// allowed here.
	Paths []string `json:"paths" tf:"paths"`
	// In response to a matching path, the load balancer performs advanced routing
	// actions like URL rewrites, header transformations, etc. prior to forwarding the
	// request to the selected backend. If routeAction specifies any
	// weightedBackendServices, service must not be set. Conversely if service is set,
	// routeAction cannot contain any  weightedBackendServices. Only one of routeAction
	// or urlRedirect must be set.
	// +optional
	RouteAction *RegionURLMapSpecPathMatcherPathRuleRouteAction `json:"routeAction,omitempty" tf:"route_action"`
	// The region backend service resource to which traffic is
	// directed if this rule is matched. If routeAction is additionally specified,
	// advanced routing actions like URL Rewrites, etc. take effect prior to sending
	// the request to the backend. However, if service is specified, routeAction cannot
	// contain any weightedBackendService s. Conversely, if routeAction specifies any
	// weightedBackendServices, service must not be specified. Only one of urlRedirect,
	// service or routeAction.weightedBackendService must be set.
	// +optional
	Service *string `json:"service,omitempty" tf:"service"`
	// When a path pattern is matched, the request is redirected to a URL specified
	// by urlRedirect. If urlRedirect is specified, service or routeAction must not
	// be set.
	// +optional
	UrlRedirect *RegionURLMapSpecPathMatcherPathRuleUrlRedirect `json:"urlRedirect,omitempty" tf:"url_redirect"`
}

func (*RegionURLMapSpecPathMatcherPathRule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRule.

func (*RegionURLMapSpecPathMatcherPathRule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteAction

type RegionURLMapSpecPathMatcherPathRuleRouteAction struct {
	// The specification for allowing client side cross-origin requests. Please see W3C
	// Recommendation for Cross Origin Resource Sharing
	// +optional
	CorsPolicy *RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicy `json:"corsPolicy,omitempty" tf:"cors_policy"`
	// The specification for fault injection introduced into traffic to test the
	// resiliency of clients to backend service failure. As part of fault injection,
	// when clients send requests to a backend service, delays can be introduced by
	// Loadbalancer on a percentage of requests before sending those request to the
	// backend service. Similarly requests from clients can be aborted by the
	// Loadbalancer for a percentage of requests. timeout and retry_policy will be
	// ignored by clients that are configured with a fault_injection_policy.
	// +optional
	FaultInjectionPolicy *RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy `json:"faultInjectionPolicy,omitempty" tf:"fault_injection_policy"`
	// Specifies the policy on how requests intended for the route's backends are
	// shadowed to a separate mirrored backend service. Loadbalancer does not wait for
	// responses from the shadow service. Prior to sending traffic to the shadow
	// service, the host / authority header is suffixed with -shadow.
	// +optional
	RequestMirrorPolicy *RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy `json:"requestMirrorPolicy,omitempty" tf:"request_mirror_policy"`
	// Specifies the retry policy associated with this route.
	// +optional
	RetryPolicy *RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicy `json:"retryPolicy,omitempty" tf:"retry_policy"`
	// Specifies the timeout for the selected route. Timeout is computed from the time
	// the request is has been fully processed (i.e. end-of-stream) up until the
	// response has been completely processed. Timeout includes all retries. If not
	// specified, the default value is 15 seconds.
	// +optional
	Timeout *RegionURLMapSpecPathMatcherPathRuleRouteActionTimeout `json:"timeout,omitempty" tf:"timeout"`
	// The spec to modify the URL of the request, prior to forwarding the request to
	// the matched service
	// +optional
	UrlRewrite *RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewrite `json:"urlRewrite,omitempty" tf:"url_rewrite"`
	// A list of weighted backend services to send traffic to when a route match
	// occurs. The weights determine the fraction of traffic that flows to their
	// corresponding backend service. If all traffic needs to go to a single backend
	// service, there must be one  weightedBackendService with weight set to a non 0
	// number. Once a backendService is identified and before forwarding the request to
	// the backend service, advanced routing actions like Url rewrites and header
	// transformations are applied depending on additional settings specified in this
	// HttpRouteAction.
	// +optional
	WeightedBackendServices []RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices `json:"weightedBackendServices,omitempty" tf:"weighted_backend_services"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteAction.

func (*RegionURLMapSpecPathMatcherPathRuleRouteAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicy

type RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicy struct {
	// In response to a preflight request, setting this to true indicates that the
	// actual request can include user credentials. This translates to the Access-
	// Control-Allow-Credentials header. Defaults to false.
	// +optional
	AllowCredentials *bool `json:"allowCredentials,omitempty" tf:"allow_credentials"`
	// Specifies the content for the Access-Control-Allow-Headers header.
	// +optional
	AllowHeaders []string `json:"allowHeaders,omitempty" tf:"allow_headers"`
	// Specifies the content for the Access-Control-Allow-Methods header.
	// +optional
	AllowMethods []string `json:"allowMethods,omitempty" tf:"allow_methods"`
	// Specifies the regular expression patterns that match allowed origins. For
	// regular expression grammar please see en.cppreference.com/w/cpp/regex/ecmascript
	// An origin is allowed if it matches either allow_origins or allow_origin_regex.
	// +optional
	AllowOriginRegexes []string `json:"allowOriginRegexes,omitempty" tf:"allow_origin_regexes"`
	// Specifies the list of origins that will be allowed to do CORS requests. An
	// origin is allowed if it matches either allow_origins or allow_origin_regex.
	// +optional
	AllowOrigins []string `json:"allowOrigins,omitempty" tf:"allow_origins"`
	// If true, specifies the CORS policy is disabled.
	Disabled *bool `json:"disabled" tf:"disabled"`
	// Specifies the content for the Access-Control-Expose-Headers header.
	// +optional
	ExposeHeaders []string `json:"exposeHeaders,omitempty" tf:"expose_headers"`
	// Specifies how long the results of a preflight request can be cached. This
	// translates to the content for the Access-Control-Max-Age header.
	// +optional
	MaxAge *int64 `json:"maxAge,omitempty" tf:"max_age"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicy.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy struct {
	// The specification for how client requests are aborted as part of fault
	// injection.
	// +optional
	Abort *RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort `json:"abort,omitempty" tf:"abort"`
	// The specification for how client requests are delayed as part of fault
	// injection, before being sent to a backend service.
	// +optional
	Delay *RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay `json:"delay,omitempty" tf:"delay"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort struct {
	// The HTTP status code used to abort the request. The value must be between 200
	// and 599 inclusive.
	HttpStatus *int64 `json:"httpStatus" tf:"http_status"`
	// The percentage of traffic (connections/operations/requests) which will be
	// aborted as part of fault injection. The value must be between 0.0 and 100.0
	// inclusive.
	Percentage *float64 `json:"percentage" tf:"percentage"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay struct {
	// Specifies the value of the fixed delay interval.
	FixedDelay *RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay `json:"fixedDelay" tf:"fixed_delay"`
	// The percentage of traffic (connections/operations/requests) on which delay will
	// be introduced as part of fault injection. The value must be between 0.0 and
	// 100.0 inclusive.
	Percentage *float64 `json:"percentage" tf:"percentage"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy

type RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy struct {
	// The RegionBackendService resource being mirrored to.
	BackendService *string `json:"backendService" tf:"backend_service"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicy

type RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicy struct {
	// Specifies the allowed number retries. This number must be > 0.
	// +optional
	NumRetries *int64 `json:"numRetries,omitempty" tf:"num_retries"`
	// Specifies a non-zero timeout per retry attempt.
	// +optional
	PerTryTimeout *RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout `json:"perTryTimeout,omitempty" tf:"per_try_timeout"`
	// Specifies one or more conditions when this retry rule applies. Valid values are:
	//
	// - 5xx: Loadbalancer will attempt a retry if the backend service responds with
	// any 5xx response code, or if the backend service does not respond at all,
	// example: disconnects, reset, read timeout, connection failure, and refused
	// streams.
	// - gateway-error: Similar to 5xx, but only applies to response codes
	// 502, 503 or 504.
	// - connect-failure: Loadbalancer will retry on failures
	// connecting to backend services, for example due to connection timeouts.
	// - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes.
	// Currently the only retriable error supported is 409.
	// - refused-stream: Loadbalancer will retry if the backend service resets the stream with a
	// REFUSED_STREAM error code. This reset type indicates that it is safe to retry.
	// - cancelled: Loadbalancer will retry if the gRPC status code in the response
	// header is set to cancelled
	// - deadline-exceeded: Loadbalancer will retry if the
	// gRPC status code in the response header is set to deadline-exceeded
	// - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response
	// header is set to resource-exhausted
	// - unavailable: Loadbalancer will retry if
	// the gRPC status code in the response header is set to unavailable
	// +optional
	RetryConditions []string `json:"retryConditions,omitempty" tf:"retry_conditions"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicy.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout

type RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionTimeout

type RegionURLMapSpecPathMatcherPathRuleRouteActionTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionTimeout.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionTimeoutCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionTimeoutCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionTimeoutCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionTimeoutCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewrite

type RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewrite struct {
	// Prior to forwarding the request to the selected service, the request's host
	// header is replaced with contents of hostRewrite. The value must be between 1 and
	// 255 characters.
	// +optional
	HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite"`
	// Prior to forwarding the request to the selected backend service, the matching
	// portion of the request's path is replaced by pathPrefixRewrite. The value must
	// be between 1 and 1024 characters.
	// +optional
	PathPrefixRewrite *string `json:"pathPrefixRewrite,omitempty" tf:"path_prefix_rewrite"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewrite) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewrite.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewrite) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices struct {
	// The default RegionBackendService resource. Before
	// forwarding the request to backendService, the loadbalancer applies any relevant
	// headerActions specified as part of this backendServiceWeight.
	BackendService *string `json:"backendService" tf:"backend_service"`
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService. headerAction specified here take effect before
	// headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap.
	// +optional
	HeaderAction *RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// Specifies the fraction of traffic sent to backendService, computed as weight /
	// (sum of all weightedBackendService weights in routeAction) . The selection of a
	// backend service is determined only for new traffic. Once a user's request has
	// been directed to a backendService, subsequent requests will be sent to the same
	// backendService as determined by the BackendService's session affinity policy.
	// The value must be between 0 and 1000
	Weight *int64 `json:"weight" tf:"weight"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the
	// backendService.
	// +optional
	RequestHeadersToAdd []RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request
	// prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response
	// prior to sending the response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec) IsEmpty

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd

type RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd.

func (*RegionURLMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleUrlRedirect

type RegionURLMapSpecPathMatcherPathRuleUrlRedirect struct {
	// The host that will be used in the redirect response instead of the one
	// that was supplied in the request. The value must be between 1 and 255
	// characters.
	// +optional
	HostRedirect *string `json:"hostRedirect,omitempty" tf:"host_redirect"`
	// If set to true, the URL scheme in the redirected request is set to https.
	// If set to false, the URL scheme of the redirected request will remain the
	// same as that of the request. This must only be set for UrlMaps used in
	// TargetHttpProxys. Setting this true for TargetHttpsProxy is not
	// permitted. The default is set to false.
	// +optional
	HttpsRedirect *bool `json:"httpsRedirect,omitempty" tf:"https_redirect"`
	// The path that will be used in the redirect response instead of the one
	// that was supplied in the request. pathRedirect cannot be supplied
	// together with prefixRedirect. Supply one alone or neither. If neither is
	// supplied, the path of the original request will be used for the redirect.
	// The value must be between 1 and 1024 characters.
	// +optional
	PathRedirect *string `json:"pathRedirect,omitempty" tf:"path_redirect"`
	// The prefix that replaces the prefixMatch specified in the
	// HttpRouteRuleMatch, retaining the remaining portion of the URL before
	// redirecting the request. prefixRedirect cannot be supplied together with
	// pathRedirect. Supply one alone or neither. If neither is supplied, the
	// path of the original request will be used for the redirect. The value
	// must be between 1 and 1024 characters.
	// +optional
	PrefixRedirect *string `json:"prefixRedirect,omitempty" tf:"prefix_redirect"`
	// The HTTP Status code to use for this RedirectAction. Supported values are:
	//
	// * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
	//
	// * FOUND, which corresponds to 302.
	//
	// * SEE_OTHER which corresponds to 303.
	//
	// * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
	// will be retained.
	//
	// * PERMANENT_REDIRECT, which corresponds to 308. In this case,
	// the request method will be retained. Possible values: ["FOUND", "MOVED_PERMANENTLY_DEFAULT", "PERMANENT_REDIRECT", "SEE_OTHER", "TEMPORARY_REDIRECT"]
	// +optional
	RedirectResponseCode *string `json:"redirectResponseCode,omitempty" tf:"redirect_response_code"`
	// If set to true, any accompanying query portion of the original URL is removed
	// prior to redirecting the request. If set to false, the query portion of the
	// original URL is retained.
	//  This field is required to ensure an empty block is not set. The normal default value is false.
	StripQuery *bool `json:"stripQuery" tf:"strip_query"`
}

func (*RegionURLMapSpecPathMatcherPathRuleUrlRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherPathRuleUrlRedirect.

func (*RegionURLMapSpecPathMatcherPathRuleUrlRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherPathRuleUrlRedirectCodec

type RegionURLMapSpecPathMatcherPathRuleUrlRedirectCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherPathRuleUrlRedirectCodec) Decode

func (RegionURLMapSpecPathMatcherPathRuleUrlRedirectCodec) Encode

func (RegionURLMapSpecPathMatcherPathRuleUrlRedirectCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRules

type RegionURLMapSpecPathMatcherRouteRules struct {
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService. The headerAction specified here are applied before
	// the matching pathMatchers[].headerAction and after pathMatchers[].routeRules[].r
	// outeAction.weightedBackendService.backendServiceWeightAction[].headerAction
	// +optional
	HeaderAction *RegionURLMapSpecPathMatcherRouteRulesHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// The rules for determining a match.
	// +optional
	MatchRules []RegionURLMapSpecPathMatcherRouteRulesMatchRules `json:"matchRules,omitempty" tf:"match_rules"`
	// For routeRules within a given pathMatcher, priority determines the order
	// in which load balancer will interpret routeRules. RouteRules are evaluated
	// in order of priority, from the lowest to highest number. The priority of
	// a rule decreases as its number increases (1, 2, 3, N+1). The first rule
	// that matches the request is applied.
	//
	// You cannot configure two or more routeRules with the same priority.
	// Priority for each rule must be set to a number between 0 and
	// 2147483647 inclusive.
	//
	// Priority numbers can have gaps, which enable you to add or remove rules
	// in the future without affecting the rest of the rules. For example,
	// 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to which
	// you could add rules numbered from 6 to 8, 10 to 11, and 13 to 15 in the
	// future without any impact on existing rules.
	Priority *int64 `json:"priority" tf:"priority"`
	// In response to a matching matchRule, the load balancer performs advanced routing
	// actions like URL rewrites, header transformations, etc. prior to forwarding the
	// request to the selected backend. If  routeAction specifies any
	// weightedBackendServices, service must not be set. Conversely if service is set,
	// routeAction cannot contain any  weightedBackendServices. Only one of routeAction
	// or urlRedirect must be set.
	// +optional
	RouteAction *RegionURLMapSpecPathMatcherRouteRulesRouteAction `json:"routeAction,omitempty" tf:"route_action"`
	// The region backend service resource to which traffic is
	// directed if this rule is matched. If routeAction is additionally specified,
	// advanced routing actions like URL Rewrites, etc. take effect prior to sending
	// the request to the backend. However, if service is specified, routeAction cannot
	// contain any weightedBackendService s. Conversely, if routeAction specifies any
	// weightedBackendServices, service must not be specified. Only one of urlRedirect,
	// service or routeAction.weightedBackendService must be set.
	// +optional
	Service *string `json:"service,omitempty" tf:"service"`
	// When this rule is matched, the request is redirected to a URL specified by
	// urlRedirect. If urlRedirect is specified, service or routeAction must not be
	// set.
	// +optional
	UrlRedirect *RegionURLMapSpecPathMatcherRouteRulesUrlRedirect `json:"urlRedirect,omitempty" tf:"url_redirect"`
}

func (*RegionURLMapSpecPathMatcherRouteRules) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRules.

func (*RegionURLMapSpecPathMatcherRouteRules) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesHeaderAction

type RegionURLMapSpecPathMatcherRouteRulesHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the
	// backendService.
	// +optional
	RequestHeadersToAdd []RegionURLMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request
	// prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []RegionURLMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response
	// prior to sending the response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesHeaderAction.

func (*RegionURLMapSpecPathMatcherRouteRulesHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesHeaderActionCodec

type RegionURLMapSpecPathMatcherRouteRulesHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesHeaderActionCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesHeaderActionCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesHeaderActionCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd

type RegionURLMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd.

func (*RegionURLMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd

type RegionURLMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd.

func (*RegionURLMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesMatchRules

type RegionURLMapSpecPathMatcherRouteRulesMatchRules struct {
	// For satisfying the matchRule condition, the path of the request must exactly
	// match the value specified in fullPathMatch after removing any query parameters
	// and anchor that may be part of the original URL. FullPathMatch must be between 1
	// and 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must
	// be specified.
	// +optional
	FullPathMatch *string `json:"fullPathMatch,omitempty" tf:"full_path_match"`
	// Specifies a list of header match criteria, all of which must match corresponding
	// headers in the request.
	// +optional
	HeaderMatches []RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches `json:"headerMatches,omitempty" tf:"header_matches"`
	// Specifies that prefixMatch and fullPathMatch matches are case sensitive.
	// Defaults to false.
	// +optional
	IgnoreCase *bool `json:"ignoreCase,omitempty" tf:"ignore_case"`
	// Opaque filter criteria used by Loadbalancer to restrict routing configuration to
	// a limited set xDS compliant clients. In their xDS requests to Loadbalancer, xDS
	// clients present node metadata. If a match takes place, the relevant routing
	// configuration is made available to those proxies. For each metadataFilter in
	// this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the
	// filterLabels must match the corresponding label provided in the metadata. If its
	// filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match
	// with corresponding labels in the provided metadata. metadataFilters specified
	// here can be overrides those specified in ForwardingRule that refers to this
	// UrlMap. metadataFilters only applies to Loadbalancers that have their
	// loadBalancingScheme set to INTERNAL_SELF_MANAGED.
	// +optional
	MetadataFilters []RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters `json:"metadataFilters,omitempty" tf:"metadata_filters"`
	// For satisfying the matchRule condition, the request's path must begin with the
	// specified prefixMatch. prefixMatch must begin with a /. The value must be
	// between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or
	// regexMatch must be specified.
	// +optional
	PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match"`
	// Specifies a list of query parameter match criteria, all of which must match
	// corresponding query parameters in the request.
	// +optional
	QueryParameterMatches []RegionURLMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches `json:"queryParameterMatches,omitempty" tf:"query_parameter_matches"`
	// For satisfying the matchRule condition, the path of the request must satisfy the
	// regular expression specified in regexMatch after removing any query parameters
	// and anchor supplied with the original URL. For regular expression grammar please
	// see en.cppreference.com/w/cpp/regex/ecmascript  Only one of prefixMatch,
	// fullPathMatch or regexMatch must be specified.
	// +optional
	RegexMatch *string `json:"regexMatch,omitempty" tf:"regex_match"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRules) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesMatchRules.

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRules) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches struct {
	// The value should exactly match contents of exactMatch. Only one of exactMatch,
	// prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
	// +optional
	ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match"`
	// The name of the HTTP header to match. For matching against the HTTP request's
	// authority, use a headerMatch with the header name ":authority". For matching a
	// request's method, use the headerName ":method".
	HeaderName *string `json:"headerName" tf:"header_name"`
	// If set to false, the headerMatch is considered a match if the match criteria
	// above are met. If set to true, the headerMatch is considered a match if the
	// match criteria above are NOT met. Defaults to false.
	// +optional
	InvertMatch *bool `json:"invertMatch,omitempty" tf:"invert_match"`
	// The value of the header must start with the contents of prefixMatch. Only one of
	// exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch
	// must be set.
	// +optional
	PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match"`
	// A header with the contents of headerName must exist. The match takes place
	// whether or not the request's header has a value or not. Only one of exactMatch,
	// prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
	// +optional
	PresentMatch *bool `json:"presentMatch,omitempty" tf:"present_match"`
	// The header value must be an integer and its value must be in the range specified
	// in rangeMatch. If the header does not contain an integer, number or is empty,
	// the match fails. For example for a range [-5, 0]
	//
	// * -3 will match
	// * 0 will not match
	// * 0.25 will not match
	// * -3someString will not match.
	//
	// Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or
	// rangeMatch must be set.
	// +optional
	RangeMatch *RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch `json:"rangeMatch,omitempty" tf:"range_match"`
	// The value of the header must match the regular expression specified in
	// regexMatch. For regular expression grammar, please see:
	// en.cppreference.com/w/cpp/regex/ecmascript  For matching against a port
	// specified in the HTTP request, use a headerMatch with headerName set to PORT and
	// a regular expression that satisfies the RFC2616 Host header's port specifier.
	// Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or
	// rangeMatch must be set.
	// +optional
	RegexMatch *string `json:"regexMatch,omitempty" tf:"regex_match"`
	// The value of the header must end with the contents of suffixMatch. Only one of
	// exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch
	// must be set.
	// +optional
	SuffixMatch *string `json:"suffixMatch,omitempty" tf:"suffix_match"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches.

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch struct {
	// The end of the range (exclusive).
	RangeEnd *int64 `json:"rangeEnd" tf:"range_end"`
	// The start of the range (inclusive).
	RangeStart *int64 `json:"rangeStart" tf:"range_start"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch.

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters struct {
	// The list of label value pairs that must match labels in the provided metadata
	// based on filterMatchCriteria  This list must not be empty and can have at the
	// most 64 entries.
	// +kubebuilder:validation:MaxItems=64
	// +kubebuilder:validation:MinItems=1
	FilterLabels []RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels `json:"filterLabels" tf:"filter_labels"`
	// Specifies how individual filterLabel matches within the list of filterLabels
	// contribute towards the overall metadataFilter match. Supported values are:
	//
	// * MATCH_ANY: At least one of the filterLabels must have a matching label in the
	// provided metadata.
	// * MATCH_ALL: All filterLabels must have matching labels in
	// the provided metadata. Possible values: ["MATCH_ALL", "MATCH_ANY"]
	FilterMatchCriteria *string `json:"filterMatchCriteria" tf:"filter_match_criteria"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters.

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels struct {
	// Name of metadata label. The name can have a maximum length of 1024 characters
	// and must be at least 1 character long.
	Name *string `json:"name" tf:"name"`
	// The value of the label must match the specified value. value can have a maximum
	// length of 1024 characters.
	Value *string `json:"value" tf:"value"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels.

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches

type RegionURLMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches struct {
	// The queryParameterMatch matches if the value of the parameter exactly matches
	// the contents of exactMatch. Only one of presentMatch, exactMatch and regexMatch
	// must be set.
	// +optional
	ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match"`
	// The name of the query parameter to match. The query parameter must exist in the
	// request, in the absence of which the request match fails.
	Name *string `json:"name" tf:"name"`
	// Specifies that the queryParameterMatch matches if the request contains the query
	// parameter, irrespective of whether the parameter has a value or not. Only one of
	// presentMatch, exactMatch and regexMatch must be set.
	// +optional
	PresentMatch *bool `json:"presentMatch,omitempty" tf:"present_match"`
	// The queryParameterMatch matches if the value of the parameter matches the
	// regular expression specified by regexMatch. For the regular expression grammar,
	// please see en.cppreference.com/w/cpp/regex/ecmascript  Only one of presentMatch,
	// exactMatch and regexMatch must be set.
	// +optional
	RegexMatch *string `json:"regexMatch,omitempty" tf:"regex_match"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches.

func (*RegionURLMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteAction

type RegionURLMapSpecPathMatcherRouteRulesRouteAction struct {
	// The specification for allowing client side cross-origin requests. Please see W3C
	// Recommendation for Cross Origin Resource Sharing
	// +optional
	CorsPolicy *RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicy `json:"corsPolicy,omitempty" tf:"cors_policy"`
	// The specification for fault injection introduced into traffic to test the
	// resiliency of clients to backend service failure. As part of fault injection,
	// when clients send requests to a backend service, delays can be introduced by
	// Loadbalancer on a percentage of requests before sending those request to the
	// backend service. Similarly requests from clients can be aborted by the
	// Loadbalancer for a percentage of requests. timeout and retry_policy will be
	// ignored by clients that are configured with a fault_injection_policy.
	// +optional
	FaultInjectionPolicy *RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy `json:"faultInjectionPolicy,omitempty" tf:"fault_injection_policy"`
	// Specifies the policy on how requests intended for the route's backends are
	// shadowed to a separate mirrored backend service. Loadbalancer does not wait for
	// responses from the shadow service. Prior to sending traffic to the shadow
	// service, the host / authority header is suffixed with -shadow.
	// +optional
	RequestMirrorPolicy *RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy `json:"requestMirrorPolicy,omitempty" tf:"request_mirror_policy"`
	// Specifies the retry policy associated with this route.
	// +optional
	RetryPolicy *RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicy `json:"retryPolicy,omitempty" tf:"retry_policy"`
	// Specifies the timeout for the selected route. Timeout is computed from the time
	// the request is has been fully processed (i.e. end-of-stream) up until the
	// response has been completely processed. Timeout includes all retries. If not
	// specified, the default value is 15 seconds.
	// +optional
	Timeout *RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeout `json:"timeout,omitempty" tf:"timeout"`
	// The spec to modify the URL of the request, prior to forwarding the request to
	// the matched service
	// +optional
	UrlRewrite *RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewrite `json:"urlRewrite,omitempty" tf:"url_rewrite"`
	// A list of weighted backend services to send traffic to when a route match
	// occurs. The weights determine the fraction of traffic that flows to their
	// corresponding backend service. If all traffic needs to go to a single backend
	// service, there must be one  weightedBackendService with weight set to a non 0
	// number. Once a backendService is identified and before forwarding the request to
	// the backend service, advanced routing actions like Url rewrites and header
	// transformations are applied depending on additional settings specified in this
	// HttpRouteAction.
	// +optional
	WeightedBackendServices []RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices `json:"weightedBackendServices,omitempty" tf:"weighted_backend_services"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteAction.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicy

type RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicy struct {
	// In response to a preflight request, setting this to true indicates that the
	// actual request can include user credentials. This translates to the Access-
	// Control-Allow-Credentials header. Defaults to false.
	// +optional
	AllowCredentials *bool `json:"allowCredentials,omitempty" tf:"allow_credentials"`
	// Specifies the content for the Access-Control-Allow-Headers header.
	// +optional
	AllowHeaders []string `json:"allowHeaders,omitempty" tf:"allow_headers"`
	// Specifies the content for the Access-Control-Allow-Methods header.
	// +optional
	AllowMethods []string `json:"allowMethods,omitempty" tf:"allow_methods"`
	// Specifies the regular expression patterns that match allowed origins. For
	// regular expression grammar please see en.cppreference.com/w/cpp/regex/ecmascript
	// An origin is allowed if it matches either allow_origins or allow_origin_regex.
	// +optional
	AllowOriginRegexes []string `json:"allowOriginRegexes,omitempty" tf:"allow_origin_regexes"`
	// Specifies the list of origins that will be allowed to do CORS requests. An
	// origin is allowed if it matches either allow_origins or allow_origin_regex.
	// +optional
	AllowOrigins []string `json:"allowOrigins,omitempty" tf:"allow_origins"`
	// If true, specifies the CORS policy is disabled.
	// which indicates that the CORS policy is in effect. Defaults to false.
	// +optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled"`
	// Specifies the content for the Access-Control-Expose-Headers header.
	// +optional
	ExposeHeaders []string `json:"exposeHeaders,omitempty" tf:"expose_headers"`
	// Specifies how long the results of a preflight request can be cached. This
	// translates to the content for the Access-Control-Max-Age header.
	// +optional
	MaxAge *int64 `json:"maxAge,omitempty" tf:"max_age"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicy.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy struct {
	// The specification for how client requests are aborted as part of fault
	// injection.
	// +optional
	Abort *RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort `json:"abort,omitempty" tf:"abort"`
	// The specification for how client requests are delayed as part of fault
	// injection, before being sent to a backend service.
	// +optional
	Delay *RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay `json:"delay,omitempty" tf:"delay"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort struct {
	// The HTTP status code used to abort the request. The value must be between 200
	// and 599 inclusive.
	// +optional
	HttpStatus *int64 `json:"httpStatus,omitempty" tf:"http_status"`
	// The percentage of traffic (connections/operations/requests) which will be
	// aborted as part of fault injection. The value must be between 0.0 and 100.0
	// inclusive.
	// +optional
	Percentage *float64 `json:"percentage,omitempty" tf:"percentage"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay struct {
	// Specifies the value of the fixed delay interval.
	// +optional
	FixedDelay *RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay `json:"fixedDelay,omitempty" tf:"fixed_delay"`
	// The percentage of traffic (connections/operations/requests) on which delay will
	// be introduced as part of fault injection. The value must be between 0.0 and
	// 100.0 inclusive.
	// +optional
	Percentage *float64 `json:"percentage,omitempty" tf:"percentage"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy struct {
	// The RegionBackendService resource being mirrored to.
	BackendService *string `json:"backendService" tf:"backend_service"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicy

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicy struct {
	// Specifies the allowed number retries. This number must be > 0.
	NumRetries *int64 `json:"numRetries" tf:"num_retries"`
	// Specifies a non-zero timeout per retry attempt.
	// +optional
	PerTryTimeout *RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout `json:"perTryTimeout,omitempty" tf:"per_try_timeout"`
	// Specifies one or more conditions when this retry rule applies. Valid values are:
	//
	// * 5xx: Loadbalancer will attempt a retry if the backend service responds with
	//   any 5xx response code, or if the backend service does not respond at all,
	//   example: disconnects, reset, read timeout, connection failure, and refused
	//   streams.
	// * gateway-error: Similar to 5xx, but only applies to response codes
	//   502, 503 or 504.
	// * connect-failure: Loadbalancer will retry on failures
	//   connecting to backend services, for example due to connection timeouts.
	// * retriable-4xx: Loadbalancer will retry for retriable 4xx response codes.
	//   Currently the only retriable error supported is 409.
	// * refused-stream: Loadbalancer will retry if the backend service resets the stream with a
	//   REFUSED_STREAM error code. This reset type indicates that it is safe to retry.
	// * cancelled: Loadbalancer will retry if the gRPC status code in the response
	//   header is set to cancelled
	// * deadline-exceeded: Loadbalancer will retry if the
	//   gRPC status code in the response header is set to deadline-exceeded
	// * resource-exhausted: Loadbalancer will retry if the gRPC status code in the response
	//   header is set to resource-exhausted
	// * unavailable: Loadbalancer will retry if the gRPC status code in
	//   the response header is set to unavailable
	// +optional
	RetryConditions []string `json:"retryConditions,omitempty" tf:"retry_conditions"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicy.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeout

type RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeout.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewrite

type RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewrite struct {
	// Prior to forwarding the request to the selected service, the request's host
	// header is replaced with contents of hostRewrite. The value must be between 1 and
	// 255 characters.
	// +optional
	HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite"`
	// Prior to forwarding the request to the selected backend service, the matching
	// portion of the request's path is replaced by pathPrefixRewrite. The value must
	// be between 1 and 1024 characters.
	// +optional
	PathPrefixRewrite *string `json:"pathPrefixRewrite,omitempty" tf:"path_prefix_rewrite"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewrite) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewrite.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewrite) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices struct {
	// The default RegionBackendService resource. Before
	// forwarding the request to backendService, the loadbalancer applies any relevant
	// headerActions specified as part of this backendServiceWeight.
	BackendService *string `json:"backendService" tf:"backend_service"`
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService. headerAction specified here take effect before
	// headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap.
	// +optional
	HeaderAction *RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// Specifies the fraction of traffic sent to backendService, computed as weight /
	// (sum of all weightedBackendService weights in routeAction) . The selection of a
	// backend service is determined only for new traffic. Once a user's request has
	// been directed to a backendService, subsequent requests will be sent to the same
	// backendService as determined by the BackendService's session affinity policy.
	// The value must be between 0 and 1000
	Weight *int64 `json:"weight" tf:"weight"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the
	// backendService.
	// +optional
	RequestHeadersToAdd []RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request
	// prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response
	// prior to sending the response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec) IsEmpty

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd

type RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd.

func (*RegionURLMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesUrlRedirect

type RegionURLMapSpecPathMatcherRouteRulesUrlRedirect struct {
	// The host that will be used in the redirect response instead of the one
	// that was supplied in the request. The value must be between 1 and 255
	// characters.
	// +optional
	HostRedirect *string `json:"hostRedirect,omitempty" tf:"host_redirect"`
	// If set to true, the URL scheme in the redirected request is set to https.
	// If set to false, the URL scheme of the redirected request will remain the
	// same as that of the request. This must only be set for UrlMaps used in
	// TargetHttpProxys. Setting this true for TargetHttpsProxy is not
	// permitted. The default is set to false.
	// +optional
	HttpsRedirect *bool `json:"httpsRedirect,omitempty" tf:"https_redirect"`
	// The path that will be used in the redirect response instead of the one
	// that was supplied in the request. pathRedirect cannot be supplied
	// together with prefixRedirect. Supply one alone or neither. If neither is
	// supplied, the path of the original request will be used for the redirect.
	// The value must be between 1 and 1024 characters.
	// +optional
	PathRedirect *string `json:"pathRedirect,omitempty" tf:"path_redirect"`
	// The prefix that replaces the prefixMatch specified in the
	// HttpRouteRuleMatch, retaining the remaining portion of the URL before
	// redirecting the request. prefixRedirect cannot be supplied together with
	// pathRedirect. Supply one alone or neither. If neither is supplied, the
	// path of the original request will be used for the redirect. The value
	// must be between 1 and 1024 characters.
	// +optional
	PrefixRedirect *string `json:"prefixRedirect,omitempty" tf:"prefix_redirect"`
	// The HTTP Status code to use for this RedirectAction. Supported values are:
	//
	// * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
	//
	// * FOUND, which corresponds to 302.
	//
	// * SEE_OTHER which corresponds to 303.
	//
	// * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
	// will be retained.
	//
	// * PERMANENT_REDIRECT, which corresponds to 308. In this case,
	// the request method will be retained. Possible values: ["FOUND", "MOVED_PERMANENTLY_DEFAULT", "PERMANENT_REDIRECT", "SEE_OTHER", "TEMPORARY_REDIRECT"]
	// +optional
	RedirectResponseCode *string `json:"redirectResponseCode,omitempty" tf:"redirect_response_code"`
	// If set to true, any accompanying query portion of the original URL is
	// removed prior to redirecting the request. If set to false, the query
	// portion of the original URL is retained. The default value is false.
	// +optional
	StripQuery *bool `json:"stripQuery,omitempty" tf:"strip_query"`
}

func (*RegionURLMapSpecPathMatcherRouteRulesUrlRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecPathMatcherRouteRulesUrlRedirect.

func (*RegionURLMapSpecPathMatcherRouteRulesUrlRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecPathMatcherRouteRulesUrlRedirectCodec

type RegionURLMapSpecPathMatcherRouteRulesUrlRedirectCodec struct {
}

+k8s:deepcopy-gen=false

func (RegionURLMapSpecPathMatcherRouteRulesUrlRedirectCodec) Decode

func (RegionURLMapSpecPathMatcherRouteRulesUrlRedirectCodec) Encode

func (RegionURLMapSpecPathMatcherRouteRulesUrlRedirectCodec) IsEmpty

type RegionURLMapSpecResource

type RegionURLMapSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// The full or partial URL of the defaultService resource to which traffic is directed if
	// none of the hostRules match. If defaultRouteAction is additionally specified, advanced
	// routing actions like URL Rewrites, etc. take effect prior to sending the request to the
	// backend. However, if defaultService is specified, defaultRouteAction cannot contain any
	// weightedBackendServices. Conversely, if routeAction specifies any
	// weightedBackendServices, service must not be specified.  Only one of defaultService,
	// defaultUrlRedirect or defaultRouteAction.weightedBackendService must be set.
	// +optional
	DefaultService *string `json:"defaultService,omitempty" tf:"default_service"`
	// When none of the specified hostRules match, the request is redirected to a URL specified
	// by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or
	// defaultRouteAction must not be set.
	// +optional
	DefaultURLRedirect *RegionURLMapSpecDefaultURLRedirect `json:"defaultURLRedirect,omitempty" tf:"default_url_redirect"`
	// An optional description of this resource. Provide this property when
	// you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Fingerprint of this resource. This field is used internally during
	// updates of this resource.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// The list of HostRules to use against the URL.
	// +optional
	HostRule []RegionURLMapSpecHostRule `json:"hostRule,omitempty" tf:"host_rule"`
	// The unique identifier for the resource.
	// +optional
	MapID *int64 `json:"mapID,omitempty" tf:"map_id"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The list of named PathMatchers to use against the URL.
	// +optional
	PathMatcher []RegionURLMapSpecPathMatcher `json:"pathMatcher,omitempty" tf:"path_matcher"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The Region in which the url map should reside.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The list of expected URL mappings. Requests to update this UrlMap will
	// succeed only if all of the test cases pass.
	// +optional
	Test []RegionURLMapSpecTest `json:"test,omitempty" tf:"test"`
}

func (*RegionURLMapSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecResource.

func (*RegionURLMapSpecResource) DeepCopyInto

func (in *RegionURLMapSpecResource) DeepCopyInto(out *RegionURLMapSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapSpecTest

type RegionURLMapSpecTest struct {
	// Description of this test case.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Host portion of the URL.
	Host *string `json:"host" tf:"host"`
	// Path portion of the URL.
	Path *string `json:"path" tf:"path"`
	// A reference to expected RegionBackendService resource the given URL should be mapped to.
	Service *string `json:"service" tf:"service"`
}

func (*RegionURLMapSpecTest) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapSpecTest.

func (*RegionURLMapSpecTest) DeepCopyInto

func (in *RegionURLMapSpecTest) DeepCopyInto(out *RegionURLMapSpecTest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RegionURLMapStatus

type RegionURLMapStatus 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 (*RegionURLMapStatus) DeepCopy

func (in *RegionURLMapStatus) DeepCopy() *RegionURLMapStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RegionURLMapStatus.

func (*RegionURLMapStatus) DeepCopyInto

func (in *RegionURLMapStatus) DeepCopyInto(out *RegionURLMapStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Reservation

type Reservation struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ReservationSpec   `json:"spec,omitempty"`
	Status            ReservationStatus `json:"status,omitempty"`
}

func (*Reservation) DeepCopy

func (in *Reservation) DeepCopy() *Reservation

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Reservation.

func (*Reservation) DeepCopyInto

func (in *Reservation) DeepCopyInto(out *Reservation)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Reservation) DeepCopyObject

func (in *Reservation) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Reservation) SetupWebhookWithManager

func (r *Reservation) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Reservation) ValidateCreate

func (r *Reservation) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Reservation) ValidateDelete

func (r *Reservation) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Reservation) ValidateUpdate

func (r *Reservation) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ReservationList

type ReservationList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Reservation CRD objects
	Items []Reservation `json:"items,omitempty"`
}

ReservationList is a list of Reservations

func (*ReservationList) DeepCopy

func (in *ReservationList) DeepCopy() *ReservationList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationList.

func (*ReservationList) DeepCopyInto

func (in *ReservationList) DeepCopyInto(out *ReservationList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ReservationList) DeepCopyObject

func (in *ReservationList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ReservationSpec

type ReservationSpec struct {
	State *ReservationSpecResource `json:"state,omitempty" tf:"-"`

	Resource ReservationSpecResource `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 (*ReservationSpec) DeepCopy

func (in *ReservationSpec) DeepCopy() *ReservationSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationSpec.

func (*ReservationSpec) DeepCopyInto

func (in *ReservationSpec) DeepCopyInto(out *ReservationSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationSpecResource

type ReservationSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Full or partial URL to a parent commitment. This field displays for
	// reservations that are tied to a commitment.
	// +optional
	Commitment *string `json:"commitment,omitempty" tf:"commitment"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The share setting for reservations.
	// +optional
	ShareSettings *ReservationSpecShareSettings `json:"shareSettings,omitempty" tf:"share_settings"`
	// Reservation for instances with specific machine shapes.
	SpecificReservation *ReservationSpecSpecificReservation `json:"specificReservation" tf:"specific_reservation"`
	// When set to true, only VMs that target this reservation by name can
	// consume this reservation. Otherwise, it can be consumed by VMs with
	// affinity for any reservation. Defaults to false.
	// +optional
	SpecificReservationRequired *bool `json:"specificReservationRequired,omitempty" tf:"specific_reservation_required"`
	// The status of the reservation.
	// +optional
	Status *string `json:"status,omitempty" tf:"status"`
	// The zone where the reservation is made.
	Zone *string `json:"zone" tf:"zone"`
}

func (*ReservationSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationSpecResource.

func (*ReservationSpecResource) DeepCopyInto

func (in *ReservationSpecResource) DeepCopyInto(out *ReservationSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationSpecShareSettings added in v0.5.0

type ReservationSpecShareSettings struct {
	// A map of project number and project config. This is only valid when shareType's value is SPECIFIC_PROJECTS.
	// +optional
	ProjectMap []ReservationSpecShareSettingsProjectMap `json:"projectMap,omitempty" tf:"project_map"`
	// Type of sharing for this shared-reservation Possible values: ["LOCAL", "SPECIFIC_PROJECTS"]
	// +optional
	ShareType *string `json:"shareType,omitempty" tf:"share_type"`
}

func (*ReservationSpecShareSettings) DeepCopy added in v0.5.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationSpecShareSettings.

func (*ReservationSpecShareSettings) DeepCopyInto added in v0.5.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationSpecShareSettingsCodec added in v0.5.0

type ReservationSpecShareSettingsCodec struct {
}

+k8s:deepcopy-gen=false

func (ReservationSpecShareSettingsCodec) Decode added in v0.5.0

func (ReservationSpecShareSettingsCodec) Encode added in v0.5.0

func (ReservationSpecShareSettingsCodec) IsEmpty added in v0.5.0

type ReservationSpecShareSettingsProjectMap added in v0.5.0

type ReservationSpecShareSettingsProjectMap struct {
	ID *string `json:"ID" tf:"id"`
	// The project id/number, should be same as the key of this project config in the project map.
	// +optional
	ProjectID *string `json:"projectID,omitempty" tf:"project_id"`
}

func (*ReservationSpecShareSettingsProjectMap) DeepCopy added in v0.5.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationSpecShareSettingsProjectMap.

func (*ReservationSpecShareSettingsProjectMap) DeepCopyInto added in v0.5.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationSpecSpecificReservation

type ReservationSpecSpecificReservation struct {
	// The number of resources that are allocated.
	Count *int64 `json:"count" tf:"count"`
	// How many instances are in use.
	// +optional
	InUseCount *int64 `json:"inUseCount,omitempty" tf:"in_use_count"`
	// The instance properties for the reservation.
	InstanceProperties *ReservationSpecSpecificReservationInstanceProperties `json:"instanceProperties" tf:"instance_properties"`
}

func (*ReservationSpecSpecificReservation) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationSpecSpecificReservation.

func (*ReservationSpecSpecificReservation) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationSpecSpecificReservationCodec

type ReservationSpecSpecificReservationCodec struct {
}

+k8s:deepcopy-gen=false

func (ReservationSpecSpecificReservationCodec) Decode

func (ReservationSpecSpecificReservationCodec) Encode

func (ReservationSpecSpecificReservationCodec) IsEmpty

type ReservationSpecSpecificReservationInstanceProperties

type ReservationSpecSpecificReservationInstanceProperties struct {
	// Guest accelerator type and count.
	// +optional
	GuestAccelerators []ReservationSpecSpecificReservationInstancePropertiesGuestAccelerators `json:"guestAccelerators,omitempty" tf:"guest_accelerators"`
	// The amount of local ssd to reserve with each instance. This
	// reserves disks of type 'local-ssd'.
	// +optional
	LocalSsds []ReservationSpecSpecificReservationInstancePropertiesLocalSsds `json:"localSsds,omitempty" tf:"local_ssds"`
	// The name of the machine type to reserve.
	MachineType *string `json:"machineType" tf:"machine_type"`
	// The minimum CPU platform for the reservation. For example,
	// '"Intel Skylake"'. See
	// the CPU platform availability reference](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform#availablezones)
	// for information on available CPU platforms.
	// +optional
	MinCPUPlatform *string `json:"minCPUPlatform,omitempty" tf:"min_cpu_platform"`
}

func (*ReservationSpecSpecificReservationInstanceProperties) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationSpecSpecificReservationInstanceProperties.

func (*ReservationSpecSpecificReservationInstanceProperties) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationSpecSpecificReservationInstancePropertiesCodec

type ReservationSpecSpecificReservationInstancePropertiesCodec struct {
}

+k8s:deepcopy-gen=false

func (ReservationSpecSpecificReservationInstancePropertiesCodec) Decode

func (ReservationSpecSpecificReservationInstancePropertiesCodec) Encode

func (ReservationSpecSpecificReservationInstancePropertiesCodec) IsEmpty

type ReservationSpecSpecificReservationInstancePropertiesGuestAccelerators

type ReservationSpecSpecificReservationInstancePropertiesGuestAccelerators struct {
	// The number of the guest accelerator cards exposed to
	// this instance.
	AcceleratorCount *int64 `json:"acceleratorCount" tf:"accelerator_count"`
	// The full or partial URL of the accelerator type to
	// attach to this instance. For example:
	// 'projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100'
	//
	// If you are creating an instance template, specify only the accelerator name.
	AcceleratorType *string `json:"acceleratorType" tf:"accelerator_type"`
}

func (*ReservationSpecSpecificReservationInstancePropertiesGuestAccelerators) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationSpecSpecificReservationInstancePropertiesGuestAccelerators.

func (*ReservationSpecSpecificReservationInstancePropertiesGuestAccelerators) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationSpecSpecificReservationInstancePropertiesLocalSsds

type ReservationSpecSpecificReservationInstancePropertiesLocalSsds struct {
	// The size of the disk in base-2 GB.
	DiskSizeGb *int64 `json:"diskSizeGb" tf:"disk_size_gb"`
	// The disk interface to use for attaching this disk. Default value: "SCSI" Possible values: ["SCSI", "NVME"]
	// +optional
	Interface *string `json:"interface,omitempty" tf:"interface"`
}

func (*ReservationSpecSpecificReservationInstancePropertiesLocalSsds) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationSpecSpecificReservationInstancePropertiesLocalSsds.

func (*ReservationSpecSpecificReservationInstancePropertiesLocalSsds) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReservationStatus

type ReservationStatus 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 (*ReservationStatus) DeepCopy

func (in *ReservationStatus) DeepCopy() *ReservationStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReservationStatus.

func (*ReservationStatus) DeepCopyInto

func (in *ReservationStatus) DeepCopyInto(out *ReservationStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicy

type ResourcePolicy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ResourcePolicySpec   `json:"spec,omitempty"`
	Status            ResourcePolicyStatus `json:"status,omitempty"`
}

func (*ResourcePolicy) DeepCopy

func (in *ResourcePolicy) DeepCopy() *ResourcePolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicy.

func (*ResourcePolicy) DeepCopyInto

func (in *ResourcePolicy) DeepCopyInto(out *ResourcePolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ResourcePolicy) DeepCopyObject

func (in *ResourcePolicy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ResourcePolicy) SetupWebhookWithManager

func (r *ResourcePolicy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ResourcePolicy) ValidateCreate

func (r *ResourcePolicy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ResourcePolicy) ValidateDelete

func (r *ResourcePolicy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ResourcePolicy) ValidateUpdate

func (r *ResourcePolicy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ResourcePolicyList

type ResourcePolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ResourcePolicy CRD objects
	Items []ResourcePolicy `json:"items,omitempty"`
}

ResourcePolicyList is a list of ResourcePolicys

func (*ResourcePolicyList) DeepCopy

func (in *ResourcePolicyList) DeepCopy() *ResourcePolicyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyList.

func (*ResourcePolicyList) DeepCopyInto

func (in *ResourcePolicyList) DeepCopyInto(out *ResourcePolicyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ResourcePolicyList) DeepCopyObject

func (in *ResourcePolicyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ResourcePolicySpec

type ResourcePolicySpec struct {
	State *ResourcePolicySpecResource `json:"state,omitempty" tf:"-"`

	Resource ResourcePolicySpecResource `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 (*ResourcePolicySpec) DeepCopy

func (in *ResourcePolicySpec) DeepCopy() *ResourcePolicySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpec.

func (*ResourcePolicySpec) DeepCopyInto

func (in *ResourcePolicySpec) DeepCopyInto(out *ResourcePolicySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecGroupPlacementPolicy

type ResourcePolicySpecGroupPlacementPolicy struct {
	// The number of availability domains instances will be spread across. If two instances are in different
	// availability domain, they will not be put in the same low latency network
	// +optional
	AvailabilityDomainCount *int64 `json:"availabilityDomainCount,omitempty" tf:"availability_domain_count"`
	// Collocation specifies whether to place VMs inside the same availability domain on the same low-latency network.
	// Specify 'COLLOCATED' to enable collocation. Can only be specified with 'vm_count'. If compute instances are created
	// with a COLLOCATED policy, then exactly 'vm_count' instances must be created at the same time with the resource policy
	// attached. Possible values: ["COLLOCATED"]
	// +optional
	Collocation *string `json:"collocation,omitempty" tf:"collocation"`
	// Number of vms in this placement group.
	// +optional
	VmCount *int64 `json:"vmCount,omitempty" tf:"vm_count"`
}

func (*ResourcePolicySpecGroupPlacementPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecGroupPlacementPolicy.

func (*ResourcePolicySpecGroupPlacementPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecGroupPlacementPolicyCodec

type ResourcePolicySpecGroupPlacementPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecGroupPlacementPolicyCodec) Decode

func (ResourcePolicySpecGroupPlacementPolicyCodec) Encode

func (ResourcePolicySpecGroupPlacementPolicyCodec) IsEmpty

type ResourcePolicySpecInstanceSchedulePolicy

type ResourcePolicySpecInstanceSchedulePolicy struct {
	// The expiration time of the schedule. The timestamp is an RFC3339 string.
	// +optional
	ExpirationTime *string `json:"expirationTime,omitempty" tf:"expiration_time"`
	// The start time of the schedule. The timestamp is an RFC3339 string.
	// +optional
	StartTime *string `json:"startTime,omitempty" tf:"start_time"`
	// Specifies the time zone to be used in interpreting the schedule. The value of this field must be a time zone name
	// from the tz database: http://en.wikipedia.org/wiki/Tz_database.
	TimeZone *string `json:"timeZone" tf:"time_zone"`
	// Specifies the schedule for starting instances.
	// +optional
	VmStartSchedule *ResourcePolicySpecInstanceSchedulePolicyVmStartSchedule `json:"vmStartSchedule,omitempty" tf:"vm_start_schedule"`
	// Specifies the schedule for stopping instances.
	// +optional
	VmStopSchedule *ResourcePolicySpecInstanceSchedulePolicyVmStopSchedule `json:"vmStopSchedule,omitempty" tf:"vm_stop_schedule"`
}

func (*ResourcePolicySpecInstanceSchedulePolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecInstanceSchedulePolicy.

func (*ResourcePolicySpecInstanceSchedulePolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecInstanceSchedulePolicyCodec

type ResourcePolicySpecInstanceSchedulePolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecInstanceSchedulePolicyCodec) Decode

func (ResourcePolicySpecInstanceSchedulePolicyCodec) Encode

func (ResourcePolicySpecInstanceSchedulePolicyCodec) IsEmpty

type ResourcePolicySpecInstanceSchedulePolicyVmStartSchedule

type ResourcePolicySpecInstanceSchedulePolicyVmStartSchedule struct {
	// Specifies the frequency for the operation, using the unix-cron format.
	Schedule *string `json:"schedule" tf:"schedule"`
}

func (*ResourcePolicySpecInstanceSchedulePolicyVmStartSchedule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecInstanceSchedulePolicyVmStartSchedule.

func (*ResourcePolicySpecInstanceSchedulePolicyVmStartSchedule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecInstanceSchedulePolicyVmStartScheduleCodec

type ResourcePolicySpecInstanceSchedulePolicyVmStartScheduleCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecInstanceSchedulePolicyVmStartScheduleCodec) Decode

func (ResourcePolicySpecInstanceSchedulePolicyVmStartScheduleCodec) Encode

func (ResourcePolicySpecInstanceSchedulePolicyVmStartScheduleCodec) IsEmpty

type ResourcePolicySpecInstanceSchedulePolicyVmStopSchedule

type ResourcePolicySpecInstanceSchedulePolicyVmStopSchedule struct {
	// Specifies the frequency for the operation, using the unix-cron format.
	Schedule *string `json:"schedule" tf:"schedule"`
}

func (*ResourcePolicySpecInstanceSchedulePolicyVmStopSchedule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecInstanceSchedulePolicyVmStopSchedule.

func (*ResourcePolicySpecInstanceSchedulePolicyVmStopSchedule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecInstanceSchedulePolicyVmStopScheduleCodec

type ResourcePolicySpecInstanceSchedulePolicyVmStopScheduleCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecInstanceSchedulePolicyVmStopScheduleCodec) Decode

func (ResourcePolicySpecInstanceSchedulePolicyVmStopScheduleCodec) Encode

func (ResourcePolicySpecInstanceSchedulePolicyVmStopScheduleCodec) IsEmpty

type ResourcePolicySpecResource

type ResourcePolicySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// An optional description of this resource. Provide this property when you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Resource policy for instances used for placement configuration.
	// +optional
	GroupPlacementPolicy *ResourcePolicySpecGroupPlacementPolicy `json:"groupPlacementPolicy,omitempty" tf:"group_placement_policy"`
	// Resource policy for scheduling instance operations.
	// +optional
	InstanceSchedulePolicy *ResourcePolicySpecInstanceSchedulePolicy `json:"instanceSchedulePolicy,omitempty" tf:"instance_schedule_policy"`
	// The name of the resource, provided by the client when initially creating
	// the resource. The resource name must be 1-63 characters long, and comply
	// with RFC1035. Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])'? which means the
	// first character must be a lowercase letter, and all following characters
	// must be a dash, lowercase letter, or digit, except the last character,
	// which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Region where resource policy resides.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Policy for creating snapshots of persistent disks.
	// +optional
	SnapshotSchedulePolicy *ResourcePolicySpecSnapshotSchedulePolicy `json:"snapshotSchedulePolicy,omitempty" tf:"snapshot_schedule_policy"`
}

func (*ResourcePolicySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecResource.

func (*ResourcePolicySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecSnapshotSchedulePolicy

type ResourcePolicySpecSnapshotSchedulePolicy struct {
	// Retention policy applied to snapshots created by this resource policy.
	// +optional
	RetentionPolicy *ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicy `json:"retentionPolicy,omitempty" tf:"retention_policy"`
	// Contains one of an 'hourlySchedule', 'dailySchedule', or 'weeklySchedule'.
	Schedule *ResourcePolicySpecSnapshotSchedulePolicySchedule `json:"schedule" tf:"schedule"`
	// Properties with which the snapshots are created, such as labels.
	// +optional
	SnapshotProperties *ResourcePolicySpecSnapshotSchedulePolicySnapshotProperties `json:"snapshotProperties,omitempty" tf:"snapshot_properties"`
}

func (*ResourcePolicySpecSnapshotSchedulePolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecSnapshotSchedulePolicy.

func (*ResourcePolicySpecSnapshotSchedulePolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecSnapshotSchedulePolicyCodec

type ResourcePolicySpecSnapshotSchedulePolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecSnapshotSchedulePolicyCodec) Decode

func (ResourcePolicySpecSnapshotSchedulePolicyCodec) Encode

func (ResourcePolicySpecSnapshotSchedulePolicyCodec) IsEmpty

type ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicy

type ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicy struct {
	// Maximum age of the snapshot that is allowed to be kept.
	MaxRetentionDays *int64 `json:"maxRetentionDays" tf:"max_retention_days"`
	// Specifies the behavior to apply to scheduled snapshots when
	// the source disk is deleted. Default value: "KEEP_AUTO_SNAPSHOTS" Possible values: ["KEEP_AUTO_SNAPSHOTS", "APPLY_RETENTION_POLICY"]
	// +optional
	OnSourceDiskDelete *string `json:"onSourceDiskDelete,omitempty" tf:"on_source_disk_delete"`
}

func (*ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicy.

func (*ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicyCodec

type ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicyCodec) Decode

func (ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicyCodec) Encode

func (ResourcePolicySpecSnapshotSchedulePolicyRetentionPolicyCodec) IsEmpty

type ResourcePolicySpecSnapshotSchedulePolicySchedule

type ResourcePolicySpecSnapshotSchedulePolicySchedule struct {
	// The policy will execute every nth day at the specified time.
	// +optional
	DailySchedule *ResourcePolicySpecSnapshotSchedulePolicyScheduleDailySchedule `json:"dailySchedule,omitempty" tf:"daily_schedule"`
	// The policy will execute every nth hour starting at the specified time.
	// +optional
	HourlySchedule *ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlySchedule `json:"hourlySchedule,omitempty" tf:"hourly_schedule"`
	// Allows specifying a snapshot time for each day of the week.
	// +optional
	WeeklySchedule *ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklySchedule `json:"weeklySchedule,omitempty" tf:"weekly_schedule"`
}

func (*ResourcePolicySpecSnapshotSchedulePolicySchedule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecSnapshotSchedulePolicySchedule.

func (*ResourcePolicySpecSnapshotSchedulePolicySchedule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecSnapshotSchedulePolicyScheduleCodec

type ResourcePolicySpecSnapshotSchedulePolicyScheduleCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleCodec) Decode

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleCodec) Encode

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleCodec) IsEmpty

type ResourcePolicySpecSnapshotSchedulePolicyScheduleDailySchedule

type ResourcePolicySpecSnapshotSchedulePolicyScheduleDailySchedule struct {
	// The number of days between snapshots.
	DaysInCycle *int64 `json:"daysInCycle" tf:"days_in_cycle"`
	// This must be in UTC format that resolves to one of
	// 00:00, 04:00, 08:00, 12:00, 16:00, or 20:00. For example,
	// both 13:00-5 and 08:00 are valid.
	StartTime *string `json:"startTime" tf:"start_time"`
}

func (*ResourcePolicySpecSnapshotSchedulePolicyScheduleDailySchedule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecSnapshotSchedulePolicyScheduleDailySchedule.

func (*ResourcePolicySpecSnapshotSchedulePolicyScheduleDailySchedule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecSnapshotSchedulePolicyScheduleDailyScheduleCodec

type ResourcePolicySpecSnapshotSchedulePolicyScheduleDailyScheduleCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleDailyScheduleCodec) Decode

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleDailyScheduleCodec) Encode

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleDailyScheduleCodec) IsEmpty

type ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlySchedule

type ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlySchedule struct {
	// The number of hours between snapshots.
	HoursInCycle *int64 `json:"hoursInCycle" tf:"hours_in_cycle"`
	// Time within the window to start the operations.
	// It must be in an hourly format "HH:MM",
	// where HH : [00-23] and MM : [00] GMT.
	// eg: 21:00
	StartTime *string `json:"startTime" tf:"start_time"`
}

func (*ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlySchedule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlySchedule.

func (*ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlySchedule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlyScheduleCodec

type ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlyScheduleCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlyScheduleCodec) Decode

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlyScheduleCodec) Encode

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleHourlyScheduleCodec) IsEmpty

type ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklySchedule

type ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklySchedule struct {
	// May contain up to seven (one for each day of the week) snapshot times.
	// +kubebuilder:validation:MaxItems=7
	// +kubebuilder:validation:MinItems=1
	DayOfWeeks []ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleDayOfWeeks `json:"dayOfWeeks" tf:"day_of_weeks"`
}

func (*ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklySchedule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklySchedule.

func (*ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklySchedule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleCodec

type ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleCodec) Decode

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleCodec) Encode

func (ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleCodec) IsEmpty

type ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleDayOfWeeks

type ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleDayOfWeeks struct {
	// The day of the week to create the snapshot. e.g. MONDAY Possible values: ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY", "SATURDAY", "SUNDAY"]
	Day *string `json:"day" tf:"day"`
	// Time within the window to start the operations.
	// It must be in format "HH:MM", where HH : [00-23] and MM : [00-00] GMT.
	StartTime *string `json:"startTime" tf:"start_time"`
}

func (*ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleDayOfWeeks) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleDayOfWeeks.

func (*ResourcePolicySpecSnapshotSchedulePolicyScheduleWeeklyScheduleDayOfWeeks) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecSnapshotSchedulePolicySnapshotProperties

type ResourcePolicySpecSnapshotSchedulePolicySnapshotProperties struct {
	// Whether to perform a 'guest aware' snapshot.
	// +optional
	GuestFlush *bool `json:"guestFlush,omitempty" tf:"guest_flush"`
	// A set of key-value pairs.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// Cloud Storage bucket location to store the auto snapshot
	// (regional or multi-regional)
	// +optional
	StorageLocations []string `json:"storageLocations,omitempty" tf:"storage_locations"`
}

func (*ResourcePolicySpecSnapshotSchedulePolicySnapshotProperties) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicySpecSnapshotSchedulePolicySnapshotProperties.

func (*ResourcePolicySpecSnapshotSchedulePolicySnapshotProperties) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ResourcePolicySpecSnapshotSchedulePolicySnapshotPropertiesCodec

type ResourcePolicySpecSnapshotSchedulePolicySnapshotPropertiesCodec struct {
}

+k8s:deepcopy-gen=false

func (ResourcePolicySpecSnapshotSchedulePolicySnapshotPropertiesCodec) Decode

func (ResourcePolicySpecSnapshotSchedulePolicySnapshotPropertiesCodec) Encode

func (ResourcePolicySpecSnapshotSchedulePolicySnapshotPropertiesCodec) IsEmpty

type ResourcePolicyStatus

type ResourcePolicyStatus 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 (*ResourcePolicyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourcePolicyStatus.

func (*ResourcePolicyStatus) DeepCopyInto

func (in *ResourcePolicyStatus) DeepCopyInto(out *ResourcePolicyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Route

type Route struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RouteSpec   `json:"spec,omitempty"`
	Status            RouteStatus `json:"status,omitempty"`
}

func (*Route) DeepCopy

func (in *Route) DeepCopy() *Route

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Route.

func (*Route) DeepCopyInto

func (in *Route) DeepCopyInto(out *Route)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Route) DeepCopyObject

func (in *Route) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Route) SetupWebhookWithManager

func (r *Route) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Route) ValidateCreate

func (r *Route) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Route) ValidateDelete

func (r *Route) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Route) ValidateUpdate

func (r *Route) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RouteList

type RouteList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Route CRD objects
	Items []Route `json:"items,omitempty"`
}

RouteList is a list of Routes

func (*RouteList) DeepCopy

func (in *RouteList) DeepCopy() *RouteList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteList.

func (*RouteList) DeepCopyInto

func (in *RouteList) DeepCopyInto(out *RouteList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RouteList) DeepCopyObject

func (in *RouteList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RouteSpec

type RouteSpec struct {
	State *RouteSpecResource `json:"state,omitempty" tf:"-"`

	Resource RouteSpecResource `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 (*RouteSpec) DeepCopy

func (in *RouteSpec) DeepCopy() *RouteSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpec.

func (*RouteSpec) DeepCopyInto

func (in *RouteSpec) DeepCopyInto(out *RouteSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouteSpecResource

type RouteSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// An optional description of this resource. Provide this property
	// when you create the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The destination range of outgoing packets that this route applies to.
	// Only IPv4 is supported.
	DestRange *string `json:"destRange" tf:"dest_range"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the
	// last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The network that this route applies to.
	Network *string `json:"network" tf:"network"`
	// URL to a gateway that should handle matching packets.
	// Currently, you can only specify the internet gateway, using a full or
	// partial valid URL:
	// * 'https://www.googleapis.com/compute/v1/projects/project/global/gateways/default-internet-gateway'
	// * 'projects/project/global/gateways/default-internet-gateway'
	// * 'global/gateways/default-internet-gateway'
	// * The string 'default-internet-gateway'.
	// +optional
	NextHopGateway *string `json:"nextHopGateway,omitempty" tf:"next_hop_gateway"`
	// The IP address or URL to a forwarding rule of type
	// loadBalancingScheme=INTERNAL that should handle matching
	// packets.
	//
	// With the GA provider you can only specify the forwarding
	// rule as a partial or full URL. For example, the following
	// are all valid values:
	// * 10.128.0.56
	// * https://www.googleapis.com/compute/v1/projects/project/regions/region/forwardingRules/forwardingRule
	// * regions/region/forwardingRules/forwardingRule
	//
	// When the beta provider, you can also specify the IP address
	// of a forwarding rule from the same VPC or any peered VPC.
	//
	// Note that this can only be used when the destinationRange is
	// a public (non-RFC 1918) IP CIDR range.
	// +optional
	NextHopIlb *string `json:"nextHopIlb,omitempty" tf:"next_hop_ilb"`
	// URL to an instance that should handle matching packets.
	// You can specify this as a full or partial URL. For example:
	// * 'https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance'
	// * 'projects/project/zones/zone/instances/instance'
	// * 'zones/zone/instances/instance'
	// * Just the instance name, with the zone in 'next_hop_instance_zone'.
	// +optional
	NextHopInstance *string `json:"nextHopInstance,omitempty" tf:"next_hop_instance"`
	// The zone of the instance specified in next_hop_instance. Omit if next_hop_instance is specified as a URL.
	// +optional
	NextHopInstanceZone *string `json:"nextHopInstanceZone,omitempty" tf:"next_hop_instance_zone"`
	// Network IP address of an instance that should handle matching packets.
	// +optional
	NextHopIP *string `json:"nextHopIP,omitempty" tf:"next_hop_ip"`
	// URL to a Network that should handle matching packets.
	// +optional
	NextHopNetwork *string `json:"nextHopNetwork,omitempty" tf:"next_hop_network"`
	// URL to a VpnTunnel that should handle matching packets.
	// +optional
	NextHopVPNTunnel *string `json:"nextHopVPNTunnel,omitempty" tf:"next_hop_vpn_tunnel"`
	// The priority of this route. Priority is used to break ties in cases
	// where there is more than one matching route of equal prefix length.
	//
	// In the case of two routes with equal prefix length, the one with the
	// lowest-numbered priority value wins.
	//
	// Default value is 1000. Valid range is 0 through 65535.
	// +optional
	Priority *int64 `json:"priority,omitempty" tf:"priority"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// A list of instance tags to which this route applies.
	// +optional
	Tags []string `json:"tags,omitempty" tf:"tags"`
}

func (*RouteSpecResource) DeepCopy

func (in *RouteSpecResource) DeepCopy() *RouteSpecResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpecResource.

func (*RouteSpecResource) DeepCopyInto

func (in *RouteSpecResource) DeepCopyInto(out *RouteSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouteStatus

type RouteStatus 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 (*RouteStatus) DeepCopy

func (in *RouteStatus) DeepCopy() *RouteStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteStatus.

func (*RouteStatus) DeepCopyInto

func (in *RouteStatus) DeepCopyInto(out *RouteStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Router

type Router struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RouterSpec   `json:"spec,omitempty"`
	Status            RouterStatus `json:"status,omitempty"`
}

func (*Router) DeepCopy

func (in *Router) DeepCopy() *Router

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Router.

func (*Router) DeepCopyInto

func (in *Router) DeepCopyInto(out *Router)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Router) DeepCopyObject

func (in *Router) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Router) SetupWebhookWithManager

func (r *Router) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Router) ValidateCreate

func (r *Router) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Router) ValidateDelete

func (r *Router) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Router) ValidateUpdate

func (r *Router) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RouterInterface

type RouterInterface struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RouterInterfaceSpec   `json:"spec,omitempty"`
	Status            RouterInterfaceStatus `json:"status,omitempty"`
}

func (*RouterInterface) DeepCopy

func (in *RouterInterface) DeepCopy() *RouterInterface

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterInterface.

func (*RouterInterface) DeepCopyInto

func (in *RouterInterface) DeepCopyInto(out *RouterInterface)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RouterInterface) DeepCopyObject

func (in *RouterInterface) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RouterInterface) SetupWebhookWithManager

func (r *RouterInterface) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RouterInterface) ValidateCreate

func (r *RouterInterface) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RouterInterface) ValidateDelete

func (r *RouterInterface) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RouterInterface) ValidateUpdate

func (r *RouterInterface) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RouterInterfaceList

type RouterInterfaceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RouterInterface CRD objects
	Items []RouterInterface `json:"items,omitempty"`
}

RouterInterfaceList is a list of RouterInterfaces

func (*RouterInterfaceList) DeepCopy

func (in *RouterInterfaceList) DeepCopy() *RouterInterfaceList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterInterfaceList.

func (*RouterInterfaceList) DeepCopyInto

func (in *RouterInterfaceList) DeepCopyInto(out *RouterInterfaceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RouterInterfaceList) DeepCopyObject

func (in *RouterInterfaceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RouterInterfaceSpec

type RouterInterfaceSpec struct {
	State *RouterInterfaceSpecResource `json:"state,omitempty" tf:"-"`

	Resource RouterInterfaceSpecResource `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 (*RouterInterfaceSpec) DeepCopy

func (in *RouterInterfaceSpec) DeepCopy() *RouterInterfaceSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterInterfaceSpec.

func (*RouterInterfaceSpec) DeepCopyInto

func (in *RouterInterfaceSpec) DeepCopyInto(out *RouterInterfaceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterInterfaceSpecResource

type RouterInterfaceSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The name or resource link to the VLAN interconnect for this interface. Changing this forces a new interface to be created. Only one of vpn_tunnel and interconnect_attachment can be specified.
	// +optional
	InterconnectAttachment *string `json:"interconnectAttachment,omitempty" tf:"interconnect_attachment"`
	// IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. Changing this forces a new interface to be created.
	// +optional
	IpRange *string `json:"ipRange,omitempty" tf:"ip_range"`
	// A unique name for the interface, required by GCE. Changing this forces a new interface to be created.
	Name *string `json:"name" tf:"name"`
	// The ID of the project in which this interface's router belongs. If it is not provided, the provider project is used. Changing this forces a new interface to be created.
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The region this interface's router sits in. If not specified, the project region will be used. Changing this forces a new interface to be created.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// The name of the router this interface will be attached to. Changing this forces a new interface to be created.
	Router *string `json:"router" tf:"router"`
	// The name or resource link to the VPN tunnel this interface will be linked to. Changing this forces a new interface to be created. Only one of vpn_tunnel and interconnect_attachment can be specified.
	// +optional
	VpnTunnel *string `json:"vpnTunnel,omitempty" tf:"vpn_tunnel"`
}

func (*RouterInterfaceSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterInterfaceSpecResource.

func (*RouterInterfaceSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterInterfaceStatus

type RouterInterfaceStatus 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 (*RouterInterfaceStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterInterfaceStatus.

func (*RouterInterfaceStatus) DeepCopyInto

func (in *RouterInterfaceStatus) DeepCopyInto(out *RouterInterfaceStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterList

type RouterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Router CRD objects
	Items []Router `json:"items,omitempty"`
}

RouterList is a list of Routers

func (*RouterList) DeepCopy

func (in *RouterList) DeepCopy() *RouterList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterList.

func (*RouterList) DeepCopyInto

func (in *RouterList) DeepCopyInto(out *RouterList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RouterList) DeepCopyObject

func (in *RouterList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RouterNAT

type RouterNAT struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RouterNATSpec   `json:"spec,omitempty"`
	Status            RouterNATStatus `json:"status,omitempty"`
}

func (*RouterNAT) DeepCopy

func (in *RouterNAT) DeepCopy() *RouterNAT

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterNAT.

func (*RouterNAT) DeepCopyInto

func (in *RouterNAT) DeepCopyInto(out *RouterNAT)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RouterNAT) DeepCopyObject

func (in *RouterNAT) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RouterNAT) SetupWebhookWithManager

func (r *RouterNAT) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RouterNAT) ValidateCreate

func (r *RouterNAT) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RouterNAT) ValidateDelete

func (r *RouterNAT) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RouterNAT) ValidateUpdate

func (r *RouterNAT) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RouterNATList

type RouterNATList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RouterNAT CRD objects
	Items []RouterNAT `json:"items,omitempty"`
}

RouterNATList is a list of RouterNATs

func (*RouterNATList) DeepCopy

func (in *RouterNATList) DeepCopy() *RouterNATList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterNATList.

func (*RouterNATList) DeepCopyInto

func (in *RouterNATList) DeepCopyInto(out *RouterNATList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RouterNATList) DeepCopyObject

func (in *RouterNATList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RouterNATSpec

type RouterNATSpec struct {
	State *RouterNATSpecResource `json:"state,omitempty" tf:"-"`

	Resource RouterNATSpecResource `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 (*RouterNATSpec) DeepCopy

func (in *RouterNATSpec) DeepCopy() *RouterNATSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterNATSpec.

func (*RouterNATSpec) DeepCopyInto

func (in *RouterNATSpec) DeepCopyInto(out *RouterNATSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterNATSpecLogConfig

type RouterNATSpecLogConfig struct {
	// Indicates whether or not to export logs.
	Enable *bool `json:"enable" tf:"enable"`
	// Specifies the desired filtering of logs on this NAT. Possible values: ["ERRORS_ONLY", "TRANSLATIONS_ONLY", "ALL"]
	Filter *string `json:"filter" tf:"filter"`
}

func (*RouterNATSpecLogConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterNATSpecLogConfig.

func (*RouterNATSpecLogConfig) DeepCopyInto

func (in *RouterNATSpecLogConfig) DeepCopyInto(out *RouterNATSpecLogConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterNATSpecLogConfigCodec

type RouterNATSpecLogConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (RouterNATSpecLogConfigCodec) Decode

func (RouterNATSpecLogConfigCodec) Encode

func (RouterNATSpecLogConfigCodec) IsEmpty

type RouterNATSpecResource

type RouterNATSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// A list of URLs of the IP resources to be drained. These IPs must be
	// valid static external IPs that have been assigned to the NAT.
	// +optional
	DrainNATIPS []string `json:"drainNATIPS,omitempty" tf:"drain_nat_ips"`
	// Specifies if endpoint independent mapping is enabled. This is enabled by default. For more information
	// see the [official documentation](https://cloud.google.com/nat/docs/overview#specs-rfcs).
	// +optional
	EnableEndpointIndependentMapping *bool `json:"enableEndpointIndependentMapping,omitempty" tf:"enable_endpoint_independent_mapping"`
	// Timeout (in seconds) for ICMP connections. Defaults to 30s if not set.
	// +optional
	IcmpIdleTimeoutSec *int64 `json:"icmpIdleTimeoutSec,omitempty" tf:"icmp_idle_timeout_sec"`
	// Configuration for logging on NAT
	// +optional
	LogConfig *RouterNATSpecLogConfig `json:"logConfig,omitempty" tf:"log_config"`
	// Minimum number of ports allocated to a VM from this NAT.
	// +optional
	MinPortsPerVm *int64 `json:"minPortsPerVm,omitempty" tf:"min_ports_per_vm"`
	// Name of the NAT service. The name must be 1-63 characters long and
	// comply with RFC1035.
	Name *string `json:"name" tf:"name"`
	// How external IPs should be allocated for this NAT. Valid values are
	// 'AUTO_ONLY' for only allowing NAT IPs allocated by Google Cloud
	// Platform, or 'MANUAL_ONLY' for only user-allocated NAT IP addresses. Possible values: ["MANUAL_ONLY", "AUTO_ONLY"]
	NatIPAllocateOption *string `json:"natIPAllocateOption" tf:"nat_ip_allocate_option"`
	// Self-links of NAT IPs. Only valid if natIpAllocateOption
	// is set to MANUAL_ONLY.
	// +optional
	NatIPS []string `json:"natIPS,omitempty" tf:"nat_ips"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Region where the router and NAT reside.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// The name of the Cloud Router in which this NAT will be configured.
	Router *string `json:"router" tf:"router"`
	// How NAT should be configured per Subnetwork.
	// If 'ALL_SUBNETWORKS_ALL_IP_RANGES', all of the
	// IP ranges in every Subnetwork are allowed to Nat.
	// If 'ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES', all of the primary IP
	// ranges in every Subnetwork are allowed to Nat.
	// 'LIST_OF_SUBNETWORKS': A list of Subnetworks are allowed to Nat
	// (specified in the field subnetwork below). Note that if this field
	// contains ALL_SUBNETWORKS_ALL_IP_RANGES or
	// ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES, then there should not be any
	// other RouterNat section in any Router for this network in this region. Possible values: ["ALL_SUBNETWORKS_ALL_IP_RANGES", "ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES", "LIST_OF_SUBNETWORKS"]
	SourceSubnetworkIPRangesToNAT *string `json:"sourceSubnetworkIPRangesToNAT" tf:"source_subnetwork_ip_ranges_to_nat"`
	// One or more subnetwork NAT configurations. Only used if
	// 'source_subnetwork_ip_ranges_to_nat' is set to 'LIST_OF_SUBNETWORKS'
	// +optional
	Subnetwork []RouterNATSpecSubnetwork `json:"subnetwork,omitempty" tf:"subnetwork"`
	// Timeout (in seconds) for TCP established connections.
	// Defaults to 1200s if not set.
	// +optional
	TcpEstablishedIdleTimeoutSec *int64 `json:"tcpEstablishedIdleTimeoutSec,omitempty" tf:"tcp_established_idle_timeout_sec"`
	// Timeout (in seconds) for TCP transitory connections.
	// Defaults to 30s if not set.
	// +optional
	TcpTransitoryIdleTimeoutSec *int64 `json:"tcpTransitoryIdleTimeoutSec,omitempty" tf:"tcp_transitory_idle_timeout_sec"`
	// Timeout (in seconds) for UDP connections. Defaults to 30s if not set.
	// +optional
	UdpIdleTimeoutSec *int64 `json:"udpIdleTimeoutSec,omitempty" tf:"udp_idle_timeout_sec"`
}

func (*RouterNATSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterNATSpecResource.

func (*RouterNATSpecResource) DeepCopyInto

func (in *RouterNATSpecResource) DeepCopyInto(out *RouterNATSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterNATSpecSubnetwork

type RouterNATSpecSubnetwork struct {
	// Self-link of subnetwork to NAT
	Name *string `json:"name" tf:"name"`
	// List of the secondary ranges of the subnetwork that are allowed
	// to use NAT. This can be populated only if
	// 'LIST_OF_SECONDARY_IP_RANGES' is one of the values in
	// sourceIpRangesToNat
	// +optional
	SecondaryIPRangeNames []string `json:"secondaryIPRangeNames,omitempty" tf:"secondary_ip_range_names"`
	// List of options for which source IPs in the subnetwork
	// should have NAT enabled. Supported values include:
	// 'ALL_IP_RANGES', 'LIST_OF_SECONDARY_IP_RANGES',
	// 'PRIMARY_IP_RANGE'.
	// +kubebuilder:validation:MinItems=1
	SourceIPRangesToNAT []string `json:"sourceIPRangesToNAT" tf:"source_ip_ranges_to_nat"`
}

func (*RouterNATSpecSubnetwork) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterNATSpecSubnetwork.

func (*RouterNATSpecSubnetwork) DeepCopyInto

func (in *RouterNATSpecSubnetwork) DeepCopyInto(out *RouterNATSpecSubnetwork)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterNATStatus

type RouterNATStatus 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 (*RouterNATStatus) DeepCopy

func (in *RouterNATStatus) DeepCopy() *RouterNATStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterNATStatus.

func (*RouterNATStatus) DeepCopyInto

func (in *RouterNATStatus) DeepCopyInto(out *RouterNATStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterPeer

type RouterPeer struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              RouterPeerSpec   `json:"spec,omitempty"`
	Status            RouterPeerStatus `json:"status,omitempty"`
}

func (*RouterPeer) DeepCopy

func (in *RouterPeer) DeepCopy() *RouterPeer

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterPeer.

func (*RouterPeer) DeepCopyInto

func (in *RouterPeer) DeepCopyInto(out *RouterPeer)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RouterPeer) DeepCopyObject

func (in *RouterPeer) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*RouterPeer) SetupWebhookWithManager

func (r *RouterPeer) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*RouterPeer) ValidateCreate

func (r *RouterPeer) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*RouterPeer) ValidateDelete

func (r *RouterPeer) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*RouterPeer) ValidateUpdate

func (r *RouterPeer) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type RouterPeerList

type RouterPeerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of RouterPeer CRD objects
	Items []RouterPeer `json:"items,omitempty"`
}

RouterPeerList is a list of RouterPeers

func (*RouterPeerList) DeepCopy

func (in *RouterPeerList) DeepCopy() *RouterPeerList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterPeerList.

func (*RouterPeerList) DeepCopyInto

func (in *RouterPeerList) DeepCopyInto(out *RouterPeerList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*RouterPeerList) DeepCopyObject

func (in *RouterPeerList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type RouterPeerSpec

type RouterPeerSpec struct {
	State *RouterPeerSpecResource `json:"state,omitempty" tf:"-"`

	Resource RouterPeerSpecResource `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 (*RouterPeerSpec) DeepCopy

func (in *RouterPeerSpec) DeepCopy() *RouterPeerSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterPeerSpec.

func (*RouterPeerSpec) DeepCopyInto

func (in *RouterPeerSpec) DeepCopyInto(out *RouterPeerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterPeerSpecAdvertisedIPRanges

type RouterPeerSpecAdvertisedIPRanges struct {
	// User-specified description for the IP range.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The IP range to advertise. The value must be a
	// CIDR-formatted string.
	Range *string `json:"range" tf:"range"`
}

func (*RouterPeerSpecAdvertisedIPRanges) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterPeerSpecAdvertisedIPRanges.

func (*RouterPeerSpecAdvertisedIPRanges) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterPeerSpecBfd added in v0.5.0

type RouterPeerSpecBfd struct {
	// The minimum interval, in milliseconds, between BFD control packets
	// received from the peer router. The actual value is negotiated
	// between the two routers and is equal to the greater of this value
	// and the transmit interval of the other router. If set, this value
	// must be between 1000 and 30000.
	// +optional
	MinReceiveInterval *int64 `json:"minReceiveInterval,omitempty" tf:"min_receive_interval"`
	// The minimum interval, in milliseconds, between BFD control packets
	// transmitted to the peer router. The actual value is negotiated
	// between the two routers and is equal to the greater of this value
	// and the corresponding receive interval of the other router. If set,
	// this value must be between 1000 and 30000.
	// +optional
	MinTransmitInterval *int64 `json:"minTransmitInterval,omitempty" tf:"min_transmit_interval"`
	// The number of consecutive BFD packets that must be missed before
	// BFD declares that a peer is unavailable. If set, the value must
	// be a value between 5 and 16.
	// +optional
	Multiplier *int64 `json:"multiplier,omitempty" tf:"multiplier"`
	// The BFD session initialization mode for this BGP peer.
	// If set to 'ACTIVE', the Cloud Router will initiate the BFD session
	// for this BGP peer. If set to 'PASSIVE', the Cloud Router will wait
	// for the peer router to initiate the BFD session for this BGP peer.
	// If set to 'DISABLED', BFD is disabled for this BGP peer. Possible values: ["ACTIVE", "DISABLED", "PASSIVE"]
	SessionInitializationMode *string `json:"sessionInitializationMode" tf:"session_initialization_mode"`
}

func (*RouterPeerSpecBfd) DeepCopy added in v0.5.0

func (in *RouterPeerSpecBfd) DeepCopy() *RouterPeerSpecBfd

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterPeerSpecBfd.

func (*RouterPeerSpecBfd) DeepCopyInto added in v0.5.0

func (in *RouterPeerSpecBfd) DeepCopyInto(out *RouterPeerSpecBfd)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterPeerSpecBfdCodec added in v0.5.0

type RouterPeerSpecBfdCodec struct {
}

+k8s:deepcopy-gen=false

func (RouterPeerSpecBfdCodec) Decode added in v0.5.0

func (RouterPeerSpecBfdCodec) Encode added in v0.5.0

func (RouterPeerSpecBfdCodec) Encode(ptr unsafe.Pointer, stream *jsoniter.Stream)

func (RouterPeerSpecBfdCodec) IsEmpty added in v0.5.0

type RouterPeerSpecResource

type RouterPeerSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// User-specified flag to indicate which mode to use for advertisement.
	// Valid values of this enum field are: 'DEFAULT', 'CUSTOM' Default value: "DEFAULT" Possible values: ["DEFAULT", "CUSTOM"]
	// +optional
	AdvertiseMode *string `json:"advertiseMode,omitempty" tf:"advertise_mode"`
	// User-specified list of prefix groups to advertise in custom
	// mode, which can take one of the following options:
	//
	// * 'ALL_SUBNETS': Advertises all available subnets, including peer VPC subnets.
	// * 'ALL_VPC_SUBNETS': Advertises the router's own VPC subnets.
	// * 'ALL_PEER_VPC_SUBNETS': Advertises peer subnets of the router's VPC network.
	//
	//
	// Note that this field can only be populated if advertiseMode is 'CUSTOM'
	// and overrides the list defined for the router (in the "bgp" message).
	// These groups are advertised in addition to any specified prefixes.
	// Leave this field blank to advertise no custom groups.
	// +optional
	AdvertisedGroups []string `json:"advertisedGroups,omitempty" tf:"advertised_groups"`
	// User-specified list of individual IP ranges to advertise in
	// custom mode. This field can only be populated if advertiseMode
	// is 'CUSTOM' and is advertised to all peers of the router. These IP
	// ranges will be advertised in addition to any specified groups.
	// Leave this field blank to advertise no custom IP ranges.
	// +optional
	AdvertisedIPRanges []RouterPeerSpecAdvertisedIPRanges `json:"advertisedIPRanges,omitempty" tf:"advertised_ip_ranges"`
	// The priority of routes advertised to this BGP peer.
	// Where there is more than one matching route of maximum
	// length, the routes with the lowest priority value win.
	// +optional
	AdvertisedRoutePriority *int64 `json:"advertisedRoutePriority,omitempty" tf:"advertised_route_priority"`
	// BFD configuration for the BGP peering.
	// +optional
	Bfd *RouterPeerSpecBfd `json:"bfd,omitempty" tf:"bfd"`
	// The status of the BGP peer connection. If set to false, any active session
	// with the peer is terminated and all associated routing information is removed.
	// If set to true, the peer connection can be established with routing information.
	// The default is true.
	// +optional
	Enable *bool `json:"enable,omitempty" tf:"enable"`
	// Name of the interface the BGP peer is associated with.
	Interface *string `json:"interface" tf:"interface"`
	// IP address of the interface inside Google Cloud Platform.
	// Only IPv4 is supported.
	// +optional
	IpAddress *string `json:"ipAddress,omitempty" tf:"ip_address"`
	// The resource that configures and manages this BGP peer.
	//
	// * 'MANAGED_BY_USER' is the default value and can be managed by
	// you or other users
	// * 'MANAGED_BY_ATTACHMENT' is a BGP peer that is configured and
	// managed by Cloud Interconnect, specifically by an
	// InterconnectAttachment of type PARTNER. Google automatically
	// creates, updates, and deletes this type of BGP peer when the
	// PARTNER InterconnectAttachment is created, updated,
	// or deleted.
	// +optional
	ManagementType *string `json:"managementType,omitempty" tf:"management_type"`
	// Name of this BGP peer. The name must be 1-63 characters long,
	// and comply with RFC1035. Specifically, the name must be 1-63 characters
	// long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which
	// means the first character must be a lowercase letter, and all
	// following characters must be a dash, lowercase letter, or digit,
	// except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// Peer BGP Autonomous System Number (ASN).
	// Each BGP interface may use a different value.
	PeerAsn *int64 `json:"peerAsn" tf:"peer_asn"`
	// IP address of the BGP interface outside Google Cloud Platform.
	// Only IPv4 is supported.
	PeerIPAddress *string `json:"peerIPAddress" tf:"peer_ip_address"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Region where the router and BgpPeer reside.
	// If it is not provided, the provider region is used.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// The name of the Cloud Router in which this BgpPeer will be configured.
	Router *string `json:"router" tf:"router"`
}

func (*RouterPeerSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterPeerSpecResource.

func (*RouterPeerSpecResource) DeepCopyInto

func (in *RouterPeerSpecResource) DeepCopyInto(out *RouterPeerSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterPeerStatus

type RouterPeerStatus 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 (*RouterPeerStatus) DeepCopy

func (in *RouterPeerStatus) DeepCopy() *RouterPeerStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterPeerStatus.

func (*RouterPeerStatus) DeepCopyInto

func (in *RouterPeerStatus) DeepCopyInto(out *RouterPeerStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterSpec

type RouterSpec struct {
	State *RouterSpecResource `json:"state,omitempty" tf:"-"`

	Resource RouterSpecResource `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 (*RouterSpec) DeepCopy

func (in *RouterSpec) DeepCopy() *RouterSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterSpec.

func (*RouterSpec) DeepCopyInto

func (in *RouterSpec) DeepCopyInto(out *RouterSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterSpecBgp

type RouterSpecBgp struct {
	// User-specified flag to indicate which mode to use for advertisement. Default value: "DEFAULT" Possible values: ["DEFAULT", "CUSTOM"]
	// +optional
	AdvertiseMode *string `json:"advertiseMode,omitempty" tf:"advertise_mode"`
	// User-specified list of prefix groups to advertise in custom mode.
	// This field can only be populated if advertiseMode is CUSTOM and
	// is advertised to all peers of the router. These groups will be
	// advertised in addition to any specified prefixes. Leave this field
	// blank to advertise no custom groups.
	//
	// This enum field has the one valid value: ALL_SUBNETS
	// +optional
	AdvertisedGroups []string `json:"advertisedGroups,omitempty" tf:"advertised_groups"`
	// User-specified list of individual IP ranges to advertise in
	// custom mode. This field can only be populated if advertiseMode
	// is CUSTOM and is advertised to all peers of the router. These IP
	// ranges will be advertised in addition to any specified groups.
	// Leave this field blank to advertise no custom IP ranges.
	// +optional
	AdvertisedIPRanges []RouterSpecBgpAdvertisedIPRanges `json:"advertisedIPRanges,omitempty" tf:"advertised_ip_ranges"`
	// Local BGP Autonomous System Number (ASN). Must be an RFC6996
	// private ASN, either 16-bit or 32-bit. The value will be fixed for
	// this router resource. All VPN tunnels that link to this router
	// will have the same local ASN.
	Asn *int64 `json:"asn" tf:"asn"`
	// The interval in seconds between BGP keepalive messages that are sent to the peer.
	// Hold time is three times the interval at which keepalive messages are sent, and the hold time is the
	// maximum number of seconds allowed to elapse between successive keepalive messages that BGP receives from a peer.
	// BGP will use the smaller of either the local hold time value or the peer's hold time value as the hold time for
	// the BGP connection between the two peers. If set, this value must be between 20 and 60. The default is 20.
	// +optional
	KeepaliveInterval *int64 `json:"keepaliveInterval,omitempty" tf:"keepalive_interval"`
}

func (*RouterSpecBgp) DeepCopy

func (in *RouterSpecBgp) DeepCopy() *RouterSpecBgp

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterSpecBgp.

func (*RouterSpecBgp) DeepCopyInto

func (in *RouterSpecBgp) DeepCopyInto(out *RouterSpecBgp)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterSpecBgpAdvertisedIPRanges

type RouterSpecBgpAdvertisedIPRanges struct {
	// User-specified description for the IP range.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The IP range to advertise. The value must be a
	// CIDR-formatted string.
	Range *string `json:"range" tf:"range"`
}

func (*RouterSpecBgpAdvertisedIPRanges) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterSpecBgpAdvertisedIPRanges.

func (*RouterSpecBgpAdvertisedIPRanges) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterSpecBgpCodec

type RouterSpecBgpCodec struct {
}

+k8s:deepcopy-gen=false

func (RouterSpecBgpCodec) Decode

func (RouterSpecBgpCodec) Decode(ptr unsafe.Pointer, iter *jsoniter.Iterator)

func (RouterSpecBgpCodec) Encode

func (RouterSpecBgpCodec) Encode(ptr unsafe.Pointer, stream *jsoniter.Stream)

func (RouterSpecBgpCodec) IsEmpty

func (RouterSpecBgpCodec) IsEmpty(ptr unsafe.Pointer) bool

type RouterSpecResource

type RouterSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// BGP information specific to this router.
	// +optional
	Bgp *RouterSpecBgp `json:"bgp,omitempty" tf:"bgp"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Field to indicate if a router is dedicated to use with encrypted
	// Interconnect Attachment (IPsec-encrypted Cloud Interconnect feature).
	//
	// Not currently available publicly.
	// +optional
	EncryptedInterconnectRouter *bool `json:"encryptedInterconnectRouter,omitempty" tf:"encrypted_interconnect_router"`
	// Name of the resource. The name must be 1-63 characters long, and
	// comply with RFC1035. Specifically, the name must be 1-63 characters
	// long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?'
	// which means the first character must be a lowercase letter, and all
	// following characters must be a dash, lowercase letter, or digit,
	// except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// A reference to the network to which this router belongs.
	Network *string `json:"network" tf:"network"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Region where the router resides.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*RouterSpecResource) DeepCopy

func (in *RouterSpecResource) DeepCopy() *RouterSpecResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterSpecResource.

func (*RouterSpecResource) DeepCopyInto

func (in *RouterSpecResource) DeepCopyInto(out *RouterSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RouterStatus

type RouterStatus 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 (*RouterStatus) DeepCopy

func (in *RouterStatus) DeepCopy() *RouterStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouterStatus.

func (*RouterStatus) DeepCopyInto

func (in *RouterStatus) DeepCopyInto(out *RouterStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecurityPolicy

type SecurityPolicy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SecurityPolicySpec   `json:"spec,omitempty"`
	Status            SecurityPolicyStatus `json:"status,omitempty"`
}

func (*SecurityPolicy) DeepCopy

func (in *SecurityPolicy) DeepCopy() *SecurityPolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicy.

func (*SecurityPolicy) DeepCopyInto

func (in *SecurityPolicy) DeepCopyInto(out *SecurityPolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SecurityPolicy) DeepCopyObject

func (in *SecurityPolicy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SecurityPolicy) SetupWebhookWithManager

func (r *SecurityPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*SecurityPolicy) ValidateCreate

func (r *SecurityPolicy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*SecurityPolicy) ValidateDelete

func (r *SecurityPolicy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*SecurityPolicy) ValidateUpdate

func (r *SecurityPolicy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SecurityPolicyList

type SecurityPolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of SecurityPolicy CRD objects
	Items []SecurityPolicy `json:"items,omitempty"`
}

SecurityPolicyList is a list of SecurityPolicys

func (*SecurityPolicyList) DeepCopy

func (in *SecurityPolicyList) DeepCopy() *SecurityPolicyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicyList.

func (*SecurityPolicyList) DeepCopyInto

func (in *SecurityPolicyList) DeepCopyInto(out *SecurityPolicyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SecurityPolicyList) DeepCopyObject

func (in *SecurityPolicyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SecurityPolicySpec

type SecurityPolicySpec struct {
	State *SecurityPolicySpecResource `json:"state,omitempty" tf:"-"`

	Resource SecurityPolicySpecResource `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 (*SecurityPolicySpec) DeepCopy

func (in *SecurityPolicySpec) DeepCopy() *SecurityPolicySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicySpec.

func (*SecurityPolicySpec) DeepCopyInto

func (in *SecurityPolicySpec) DeepCopyInto(out *SecurityPolicySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecurityPolicySpecResource

type SecurityPolicySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// An optional description of this security policy. Max size is 2048.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Fingerprint of this resource.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// The name of the security policy.
	Name *string `json:"name" tf:"name"`
	// 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"`
	// The set of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match "*"). If no rules are provided when creating a security policy, a default rule with action "allow" will be added.
	// +optional
	Rule []SecurityPolicySpecRule `json:"rule,omitempty" tf:"rule"`
	// The URI of the created resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*SecurityPolicySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicySpecResource.

func (*SecurityPolicySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecurityPolicySpecRule

type SecurityPolicySpecRule struct {
	// Action to take when match matches the request.
	Action *string `json:"action" tf:"action"`
	// An optional description of this rule. Max size is 64.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding action is enforced.
	Match *SecurityPolicySpecRuleMatch `json:"match" tf:"match"`
	// When set to true, the action specified above is not enforced. Stackdriver logs for requests that trigger a preview action are annotated as such.
	// +optional
	Preview *bool `json:"preview,omitempty" tf:"preview"`
	// An unique positive integer indicating the priority of evaluation for a rule. Rules are evaluated from highest priority (lowest numerically) to lowest priority (highest numerically) in order.
	Priority *int64 `json:"priority" tf:"priority"`
}

func (*SecurityPolicySpecRule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicySpecRule.

func (*SecurityPolicySpecRule) DeepCopyInto

func (in *SecurityPolicySpecRule) DeepCopyInto(out *SecurityPolicySpecRule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecurityPolicySpecRuleMatch

type SecurityPolicySpecRuleMatch struct {
	// The configuration options available when specifying versioned_expr. This field must be specified if versioned_expr is specified and cannot be specified if versioned_expr is not specified.
	// +optional
	Config *SecurityPolicySpecRuleMatchConfig `json:"config,omitempty" tf:"config"`
	// User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header.
	// +optional
	Expr *SecurityPolicySpecRuleMatchExpr `json:"expr,omitempty" tf:"expr"`
	// Predefined rule expression. If this field is specified, config must also be specified. Available options:   SRC_IPS_V1: Must specify the corresponding src_ip_ranges field in config.
	// +optional
	VersionedExpr *string `json:"versionedExpr,omitempty" tf:"versioned_expr"`
}

func (*SecurityPolicySpecRuleMatch) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicySpecRuleMatch.

func (*SecurityPolicySpecRuleMatch) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecurityPolicySpecRuleMatchCodec

type SecurityPolicySpecRuleMatchCodec struct {
}

+k8s:deepcopy-gen=false

func (SecurityPolicySpecRuleMatchCodec) Decode

func (SecurityPolicySpecRuleMatchCodec) Encode

func (SecurityPolicySpecRuleMatchCodec) IsEmpty

type SecurityPolicySpecRuleMatchConfig

type SecurityPolicySpecRuleMatchConfig struct {
	// Set of IP addresses or ranges (IPV4 or IPV6) in CIDR notation to match against inbound traffic. There is a limit of 10 IP ranges per rule. A value of '*' matches all IPs (can be used to override the default behavior).
	// +kubebuilder:validation:MaxItems=10
	// +kubebuilder:validation:MinItems=1
	SrcIPRanges []string `json:"srcIPRanges" tf:"src_ip_ranges"`
}

func (*SecurityPolicySpecRuleMatchConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicySpecRuleMatchConfig.

func (*SecurityPolicySpecRuleMatchConfig) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecurityPolicySpecRuleMatchConfigCodec

type SecurityPolicySpecRuleMatchConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (SecurityPolicySpecRuleMatchConfigCodec) Decode

func (SecurityPolicySpecRuleMatchConfigCodec) Encode

func (SecurityPolicySpecRuleMatchConfigCodec) IsEmpty

type SecurityPolicySpecRuleMatchExpr

type SecurityPolicySpecRuleMatchExpr struct {
	// Textual representation of an expression in Common Expression Language syntax. The application context of the containing message determines which well-known feature set of CEL is supported.
	Expression *string `json:"expression" tf:"expression"`
}

func (*SecurityPolicySpecRuleMatchExpr) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicySpecRuleMatchExpr.

func (*SecurityPolicySpecRuleMatchExpr) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SecurityPolicySpecRuleMatchExprCodec

type SecurityPolicySpecRuleMatchExprCodec struct {
}

+k8s:deepcopy-gen=false

func (SecurityPolicySpecRuleMatchExprCodec) Decode

func (SecurityPolicySpecRuleMatchExprCodec) Encode

func (SecurityPolicySpecRuleMatchExprCodec) IsEmpty

type SecurityPolicyStatus

type SecurityPolicyStatus 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 (*SecurityPolicyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityPolicyStatus.

func (*SecurityPolicyStatus) DeepCopyInto

func (in *SecurityPolicyStatus) DeepCopyInto(out *SecurityPolicyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceAttachment added in v0.4.0

type ServiceAttachment struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              ServiceAttachmentSpec   `json:"spec,omitempty"`
	Status            ServiceAttachmentStatus `json:"status,omitempty"`
}

func (*ServiceAttachment) DeepCopy added in v0.4.0

func (in *ServiceAttachment) DeepCopy() *ServiceAttachment

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAttachment.

func (*ServiceAttachment) DeepCopyInto added in v0.4.0

func (in *ServiceAttachment) DeepCopyInto(out *ServiceAttachment)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ServiceAttachment) DeepCopyObject added in v0.4.0

func (in *ServiceAttachment) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*ServiceAttachment) SetupWebhookWithManager added in v0.4.0

func (r *ServiceAttachment) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*ServiceAttachment) ValidateCreate added in v0.4.0

func (r *ServiceAttachment) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*ServiceAttachment) ValidateDelete added in v0.4.0

func (r *ServiceAttachment) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*ServiceAttachment) ValidateUpdate added in v0.4.0

func (r *ServiceAttachment) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type ServiceAttachmentList added in v0.4.0

type ServiceAttachmentList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of ServiceAttachment CRD objects
	Items []ServiceAttachment `json:"items,omitempty"`
}

ServiceAttachmentList is a list of ServiceAttachments

func (*ServiceAttachmentList) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAttachmentList.

func (*ServiceAttachmentList) DeepCopyInto added in v0.4.0

func (in *ServiceAttachmentList) DeepCopyInto(out *ServiceAttachmentList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ServiceAttachmentList) DeepCopyObject added in v0.4.0

func (in *ServiceAttachmentList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ServiceAttachmentSpec added in v0.4.0

type ServiceAttachmentSpec struct {
	State *ServiceAttachmentSpecResource `json:"state,omitempty" tf:"-"`

	Resource ServiceAttachmentSpecResource `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 (*ServiceAttachmentSpec) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAttachmentSpec.

func (*ServiceAttachmentSpec) DeepCopyInto added in v0.4.0

func (in *ServiceAttachmentSpec) DeepCopyInto(out *ServiceAttachmentSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceAttachmentSpecConnectedEndpoints added in v0.4.0

type ServiceAttachmentSpecConnectedEndpoints struct {
	// The URL of the consumer forwarding rule.
	// +optional
	Endpoint *string `json:"endpoint,omitempty" tf:"endpoint"`
	// The status of the connection from the consumer forwarding rule to
	// this service attachment.
	// +optional
	Status *string `json:"status,omitempty" tf:"status"`
}

func (*ServiceAttachmentSpecConnectedEndpoints) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAttachmentSpecConnectedEndpoints.

func (*ServiceAttachmentSpecConnectedEndpoints) DeepCopyInto added in v0.4.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceAttachmentSpecConsumerAcceptLists added in v0.4.0

type ServiceAttachmentSpecConsumerAcceptLists struct {
	// The number of consumer forwarding rules the consumer project can
	// create.
	ConnectionLimit *int64 `json:"connectionLimit" tf:"connection_limit"`
	// A project that is allowed to connect to this service attachment.
	ProjectIDOrNum *string `json:"projectIDOrNum" tf:"project_id_or_num"`
}

func (*ServiceAttachmentSpecConsumerAcceptLists) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAttachmentSpecConsumerAcceptLists.

func (*ServiceAttachmentSpecConsumerAcceptLists) DeepCopyInto added in v0.4.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceAttachmentSpecResource added in v0.4.0

type ServiceAttachmentSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// An array of the consumer forwarding rules connected to this service
	// attachment.
	// +optional
	ConnectedEndpoints []ServiceAttachmentSpecConnectedEndpoints `json:"connectedEndpoints,omitempty" tf:"connected_endpoints"`
	// The connection preference to use for this service attachment. Valid
	// values include "ACCEPT_AUTOMATIC", "ACCEPT_MANUAL".
	ConnectionPreference *string `json:"connectionPreference" tf:"connection_preference"`
	// An array of projects that are allowed to connect to this service
	// attachment.
	// +optional
	ConsumerAcceptLists []ServiceAttachmentSpecConsumerAcceptLists `json:"consumerAcceptLists,omitempty" tf:"consumer_accept_lists"`
	// An array of projects that are not allowed to connect to this service
	// attachment.
	// +optional
	ConsumerRejectLists []string `json:"consumerRejectLists,omitempty" tf:"consumer_reject_lists"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// If true, enable the proxy protocol which is for supplying client TCP/IP
	// address data in TCP connections that traverse proxies on their way to
	// destination servers.
	EnableProxyProtocol *bool `json:"enableProxyProtocol" tf:"enable_proxy_protocol"`
	// Fingerprint of this resource. This field is used internally during
	// updates of this resource.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// Name of the resource. The name must be 1-63 characters long, and
	// comply with RFC1035. Specifically, the name must be 1-63 characters
	// long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?'
	// which means the first character must be a lowercase letter, and all
	// following characters must be a dash, lowercase letter, or digit,
	// except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// An array of subnets that is provided for NAT in this service attachment.
	NatSubnets []string `json:"natSubnets" tf:"nat_subnets"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// URL of the region where the resource resides.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The URL of a forwarding rule that represents the service identified by
	// this service attachment.
	TargetService *string `json:"targetService" tf:"target_service"`
}

func (*ServiceAttachmentSpecResource) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAttachmentSpecResource.

func (*ServiceAttachmentSpecResource) DeepCopyInto added in v0.4.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ServiceAttachmentStatus added in v0.4.0

type ServiceAttachmentStatus 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 (*ServiceAttachmentStatus) DeepCopy added in v0.4.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceAttachmentStatus.

func (*ServiceAttachmentStatus) DeepCopyInto added in v0.4.0

func (in *ServiceAttachmentStatus) DeepCopyInto(out *ServiceAttachmentStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedVpcHostProject

type SharedVpcHostProject struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SharedVpcHostProjectSpec   `json:"spec,omitempty"`
	Status            SharedVpcHostProjectStatus `json:"status,omitempty"`
}

func (*SharedVpcHostProject) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcHostProject.

func (*SharedVpcHostProject) DeepCopyInto

func (in *SharedVpcHostProject) DeepCopyInto(out *SharedVpcHostProject)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SharedVpcHostProject) DeepCopyObject

func (in *SharedVpcHostProject) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SharedVpcHostProject) SetupWebhookWithManager

func (r *SharedVpcHostProject) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*SharedVpcHostProject) ValidateCreate

func (r *SharedVpcHostProject) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*SharedVpcHostProject) ValidateDelete

func (r *SharedVpcHostProject) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*SharedVpcHostProject) ValidateUpdate

func (r *SharedVpcHostProject) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SharedVpcHostProjectList

type SharedVpcHostProjectList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of SharedVpcHostProject CRD objects
	Items []SharedVpcHostProject `json:"items,omitempty"`
}

SharedVpcHostProjectList is a list of SharedVpcHostProjects

func (*SharedVpcHostProjectList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcHostProjectList.

func (*SharedVpcHostProjectList) DeepCopyInto

func (in *SharedVpcHostProjectList) DeepCopyInto(out *SharedVpcHostProjectList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SharedVpcHostProjectList) DeepCopyObject

func (in *SharedVpcHostProjectList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SharedVpcHostProjectSpec

type SharedVpcHostProjectSpec struct {
	State *SharedVpcHostProjectSpecResource `json:"state,omitempty" tf:"-"`

	Resource SharedVpcHostProjectSpecResource `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 (*SharedVpcHostProjectSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcHostProjectSpec.

func (*SharedVpcHostProjectSpec) DeepCopyInto

func (in *SharedVpcHostProjectSpec) DeepCopyInto(out *SharedVpcHostProjectSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedVpcHostProjectSpecResource

type SharedVpcHostProjectSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The ID of the project that will serve as a Shared VPC host project
	Project *string `json:"project" tf:"project"`
}

func (*SharedVpcHostProjectSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcHostProjectSpecResource.

func (*SharedVpcHostProjectSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedVpcHostProjectStatus

type SharedVpcHostProjectStatus 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 (*SharedVpcHostProjectStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcHostProjectStatus.

func (*SharedVpcHostProjectStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedVpcServiceProject

type SharedVpcServiceProject struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SharedVpcServiceProjectSpec   `json:"spec,omitempty"`
	Status            SharedVpcServiceProjectStatus `json:"status,omitempty"`
}

func (*SharedVpcServiceProject) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcServiceProject.

func (*SharedVpcServiceProject) DeepCopyInto

func (in *SharedVpcServiceProject) DeepCopyInto(out *SharedVpcServiceProject)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SharedVpcServiceProject) DeepCopyObject

func (in *SharedVpcServiceProject) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SharedVpcServiceProject) SetupWebhookWithManager

func (r *SharedVpcServiceProject) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*SharedVpcServiceProject) ValidateCreate

func (r *SharedVpcServiceProject) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*SharedVpcServiceProject) ValidateDelete

func (r *SharedVpcServiceProject) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*SharedVpcServiceProject) ValidateUpdate

func (r *SharedVpcServiceProject) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SharedVpcServiceProjectList

type SharedVpcServiceProjectList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of SharedVpcServiceProject CRD objects
	Items []SharedVpcServiceProject `json:"items,omitempty"`
}

SharedVpcServiceProjectList is a list of SharedVpcServiceProjects

func (*SharedVpcServiceProjectList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcServiceProjectList.

func (*SharedVpcServiceProjectList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SharedVpcServiceProjectList) DeepCopyObject

func (in *SharedVpcServiceProjectList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SharedVpcServiceProjectSpec

type SharedVpcServiceProjectSpec struct {
	State *SharedVpcServiceProjectSpecResource `json:"state,omitempty" tf:"-"`

	Resource SharedVpcServiceProjectSpecResource `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 (*SharedVpcServiceProjectSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcServiceProjectSpec.

func (*SharedVpcServiceProjectSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedVpcServiceProjectSpecResource

type SharedVpcServiceProjectSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The ID of a host project to associate.
	HostProject *string `json:"hostProject" tf:"host_project"`
	// The ID of the project that will serve as a Shared VPC service project.
	ServiceProject *string `json:"serviceProject" tf:"service_project"`
}

func (*SharedVpcServiceProjectSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcServiceProjectSpecResource.

func (*SharedVpcServiceProjectSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SharedVpcServiceProjectStatus

type SharedVpcServiceProjectStatus 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 (*SharedVpcServiceProjectStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SharedVpcServiceProjectStatus.

func (*SharedVpcServiceProjectStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Snapshot

type Snapshot struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SnapshotSpec   `json:"spec,omitempty"`
	Status            SnapshotStatus `json:"status,omitempty"`
}

func (*Snapshot) DeepCopy

func (in *Snapshot) DeepCopy() *Snapshot

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Snapshot.

func (*Snapshot) DeepCopyInto

func (in *Snapshot) DeepCopyInto(out *Snapshot)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Snapshot) DeepCopyObject

func (in *Snapshot) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Snapshot) SetupWebhookWithManager

func (r *Snapshot) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Snapshot) ValidateCreate

func (r *Snapshot) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Snapshot) ValidateDelete

func (r *Snapshot) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Snapshot) ValidateUpdate

func (r *Snapshot) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SnapshotList

type SnapshotList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Snapshot CRD objects
	Items []Snapshot `json:"items,omitempty"`
}

SnapshotList is a list of Snapshots

func (*SnapshotList) DeepCopy

func (in *SnapshotList) DeepCopy() *SnapshotList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotList.

func (*SnapshotList) DeepCopyInto

func (in *SnapshotList) DeepCopyInto(out *SnapshotList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SnapshotList) DeepCopyObject

func (in *SnapshotList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SnapshotSpec

type SnapshotSpec struct {
	State *SnapshotSpecResource `json:"state,omitempty" tf:"-"`

	Resource SnapshotSpecResource `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 (*SnapshotSpec) DeepCopy

func (in *SnapshotSpec) DeepCopy() *SnapshotSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotSpec.

func (*SnapshotSpec) DeepCopyInto

func (in *SnapshotSpec) DeepCopyInto(out *SnapshotSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotSpecResource

type SnapshotSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Size of the snapshot, specified in GB.
	// +optional
	DiskSizeGb *int64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb"`
	// The fingerprint used for optimistic locking of this resource. Used
	// internally during updates.
	// +optional
	LabelFingerprint *string `json:"labelFingerprint,omitempty" tf:"label_fingerprint"`
	// Labels to apply to this Snapshot.
	// +optional
	Labels *map[string]string `json:"labels,omitempty" tf:"labels"`
	// A list of public visible licenses that apply to this snapshot. This
	// can be because the original image had licenses attached (such as a
	// Windows image).  snapshotEncryptionKey nested object Encrypts the
	// snapshot using a customer-supplied encryption key.
	// +optional
	Licenses []string `json:"licenses,omitempty" tf:"licenses"`
	// Name of the resource; provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The customer-supplied encryption key of the snapshot. Required if the
	// source snapshot is protected by a customer-supplied encryption key.
	// +optional
	SnapshotEncryptionKey *SnapshotSpecSnapshotEncryptionKey `json:"snapshotEncryptionKey,omitempty" tf:"snapshot_encryption_key"`
	// The unique identifier for the resource.
	// +optional
	SnapshotID *int64 `json:"snapshotID,omitempty" tf:"snapshot_id"`
	// A reference to the disk used to create this snapshot.
	SourceDisk *string `json:"sourceDisk" tf:"source_disk"`
	// The customer-supplied encryption key of the source snapshot. Required
	// if the source snapshot is protected by a customer-supplied encryption
	// key.
	// +optional
	SourceDiskEncryptionKey *SnapshotSpecSourceDiskEncryptionKey `json:"sourceDiskEncryptionKey,omitempty" tf:"source_disk_encryption_key"`
	// A size of the storage used by the snapshot. As snapshots share
	// storage, this number is expected to change with snapshot
	// creation/deletion.
	// +optional
	StorageBytes *int64 `json:"storageBytes,omitempty" tf:"storage_bytes"`
	// Cloud Storage bucket storage location of the snapshot (regional or multi-regional).
	// +optional
	StorageLocations []string `json:"storageLocations,omitempty" tf:"storage_locations"`
	// A reference to the zone where the disk is hosted.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*SnapshotSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotSpecResource.

func (*SnapshotSpecResource) DeepCopyInto

func (in *SnapshotSpecResource) DeepCopyInto(out *SnapshotSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotSpecSnapshotEncryptionKey

type SnapshotSpecSnapshotEncryptionKey struct {
	// The name of the encryption key that is stored in Google Cloud KMS.
	// +optional
	KmsKeySelfLink *string `json:"kmsKeySelfLink,omitempty" tf:"kms_key_self_link"`
	// The service account used for the encryption request for the given KMS key.
	// If absent, the Compute Engine Service Agent service account is used.
	// +optional
	KmsKeyServiceAccount *string `json:"kmsKeyServiceAccount,omitempty" tf:"kms_key_service_account"`
	// Specifies a 256-bit customer-supplied encryption key, encoded in
	// RFC 4648 base64 to either encrypt or decrypt this resource.
	// +optional
	RawKey *string `json:"-" sensitive:"true" tf:"raw_key"`
	// The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied
	// encryption key that protects this resource.
	// +optional
	Sha256 *string `json:"sha256,omitempty" tf:"sha256"`
}

func (*SnapshotSpecSnapshotEncryptionKey) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotSpecSnapshotEncryptionKey.

func (*SnapshotSpecSnapshotEncryptionKey) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotSpecSnapshotEncryptionKeyCodec

type SnapshotSpecSnapshotEncryptionKeyCodec struct {
}

+k8s:deepcopy-gen=false

func (SnapshotSpecSnapshotEncryptionKeyCodec) Decode

func (SnapshotSpecSnapshotEncryptionKeyCodec) Encode

func (SnapshotSpecSnapshotEncryptionKeyCodec) IsEmpty

type SnapshotSpecSourceDiskEncryptionKey

type SnapshotSpecSourceDiskEncryptionKey struct {
	// The service account used for the encryption request for the given KMS key.
	// If absent, the Compute Engine Service Agent service account is used.
	// +optional
	KmsKeyServiceAccount *string `json:"kmsKeyServiceAccount,omitempty" tf:"kms_key_service_account"`
	// Specifies a 256-bit customer-supplied encryption key, encoded in
	// RFC 4648 base64 to either encrypt or decrypt this resource.
	// +optional
	RawKey *string `json:"-" sensitive:"true" tf:"raw_key"`
}

func (*SnapshotSpecSourceDiskEncryptionKey) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotSpecSourceDiskEncryptionKey.

func (*SnapshotSpecSourceDiskEncryptionKey) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnapshotSpecSourceDiskEncryptionKeyCodec

type SnapshotSpecSourceDiskEncryptionKeyCodec struct {
}

+k8s:deepcopy-gen=false

func (SnapshotSpecSourceDiskEncryptionKeyCodec) Decode

func (SnapshotSpecSourceDiskEncryptionKeyCodec) Encode

func (SnapshotSpecSourceDiskEncryptionKeyCodec) IsEmpty

type SnapshotStatus

type SnapshotStatus 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 (*SnapshotStatus) DeepCopy

func (in *SnapshotStatus) DeepCopy() *SnapshotStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnapshotStatus.

func (*SnapshotStatus) DeepCopyInto

func (in *SnapshotStatus) DeepCopyInto(out *SnapshotStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SslCertificate

type SslCertificate struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SslCertificateSpec   `json:"spec,omitempty"`
	Status            SslCertificateStatus `json:"status,omitempty"`
}

func (*SslCertificate) DeepCopy

func (in *SslCertificate) DeepCopy() *SslCertificate

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslCertificate.

func (*SslCertificate) DeepCopyInto

func (in *SslCertificate) DeepCopyInto(out *SslCertificate)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SslCertificate) DeepCopyObject

func (in *SslCertificate) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SslCertificate) SetupWebhookWithManager

func (r *SslCertificate) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*SslCertificate) ValidateCreate

func (r *SslCertificate) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*SslCertificate) ValidateDelete

func (r *SslCertificate) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*SslCertificate) ValidateUpdate

func (r *SslCertificate) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SslCertificateList

type SslCertificateList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of SslCertificate CRD objects
	Items []SslCertificate `json:"items,omitempty"`
}

SslCertificateList is a list of SslCertificates

func (*SslCertificateList) DeepCopy

func (in *SslCertificateList) DeepCopy() *SslCertificateList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslCertificateList.

func (*SslCertificateList) DeepCopyInto

func (in *SslCertificateList) DeepCopyInto(out *SslCertificateList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SslCertificateList) DeepCopyObject

func (in *SslCertificateList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SslCertificateSpec

type SslCertificateSpec struct {
	State *SslCertificateSpecResource `json:"state,omitempty" tf:"-"`

	Resource SslCertificateSpecResource `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 (*SslCertificateSpec) DeepCopy

func (in *SslCertificateSpec) DeepCopy() *SslCertificateSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslCertificateSpec.

func (*SslCertificateSpec) DeepCopyInto

func (in *SslCertificateSpec) DeepCopyInto(out *SslCertificateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SslCertificateSpecResource

type SslCertificateSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// The certificate in PEM format.
	// The certificate chain must be no greater than 5 certs long.
	// The chain must include at least one intermediate cert.
	Certificate *string `json:"-" sensitive:"true" tf:"certificate"`
	// The unique identifier for the resource.
	// +optional
	CertificateID *int64 `json:"certificateID,omitempty" tf:"certificate_id"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	//
	//
	// These are in the same namespace as the managed SSL certificates.
	// +optional
	Name *string `json:"name,omitempty" tf:"name"`
	// Creates a unique name beginning with the specified prefix. Conflicts with name.
	// +optional
	NamePrefix *string `json:"namePrefix,omitempty" tf:"name_prefix"`
	// The write-only private key in PEM format.
	PrivateKey *string `json:"-" sensitive:"true" tf:"private_key"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*SslCertificateSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslCertificateSpecResource.

func (*SslCertificateSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SslCertificateStatus

type SslCertificateStatus 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 (*SslCertificateStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslCertificateStatus.

func (*SslCertificateStatus) DeepCopyInto

func (in *SslCertificateStatus) DeepCopyInto(out *SslCertificateStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SslPolicy

type SslPolicy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SslPolicySpec   `json:"spec,omitempty"`
	Status            SslPolicyStatus `json:"status,omitempty"`
}

func (*SslPolicy) DeepCopy

func (in *SslPolicy) DeepCopy() *SslPolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslPolicy.

func (*SslPolicy) DeepCopyInto

func (in *SslPolicy) DeepCopyInto(out *SslPolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SslPolicy) DeepCopyObject

func (in *SslPolicy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SslPolicy) SetupWebhookWithManager

func (r *SslPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*SslPolicy) ValidateCreate

func (r *SslPolicy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*SslPolicy) ValidateDelete

func (r *SslPolicy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*SslPolicy) ValidateUpdate

func (r *SslPolicy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SslPolicyList

type SslPolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of SslPolicy CRD objects
	Items []SslPolicy `json:"items,omitempty"`
}

SslPolicyList is a list of SslPolicys

func (*SslPolicyList) DeepCopy

func (in *SslPolicyList) DeepCopy() *SslPolicyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslPolicyList.

func (*SslPolicyList) DeepCopyInto

func (in *SslPolicyList) DeepCopyInto(out *SslPolicyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SslPolicyList) DeepCopyObject

func (in *SslPolicyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SslPolicySpec

type SslPolicySpec struct {
	State *SslPolicySpecResource `json:"state,omitempty" tf:"-"`

	Resource SslPolicySpecResource `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 (*SslPolicySpec) DeepCopy

func (in *SslPolicySpec) DeepCopy() *SslPolicySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslPolicySpec.

func (*SslPolicySpec) DeepCopyInto

func (in *SslPolicySpec) DeepCopyInto(out *SslPolicySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SslPolicySpecResource

type SslPolicySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// Profile specifies the set of SSL features that can be used by the
	// load balancer when negotiating SSL with clients. This can be one of
	// 'COMPATIBLE', 'MODERN', 'RESTRICTED', or 'CUSTOM'. If using 'CUSTOM',
	// the set of SSL features to enable must be specified in the
	// 'customFeatures' field.
	//
	// See the [official documentation](https://cloud.google.com/compute/docs/load-balancing/ssl-policies#profilefeaturesupport)
	// for which ciphers are available to use. **Note**: this argument
	// *must* be present when using the 'CUSTOM' profile. This argument
	// *must not* be present when using any other profile.
	// +optional
	CustomFeatures []string `json:"customFeatures,omitempty" tf:"custom_features"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The list of features enabled in the SSL policy.
	// +optional
	EnabledFeatures []string `json:"enabledFeatures,omitempty" tf:"enabled_features"`
	// Fingerprint of this resource. A hash of the contents stored in this
	// object. This field is used in optimistic locking.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// The minimum version of SSL protocol that can be used by the clients
	// to establish a connection with the load balancer. Default value: "TLS_1_0" Possible values: ["TLS_1_0", "TLS_1_1", "TLS_1_2"]
	// +optional
	MinTlsVersion *string `json:"minTlsVersion,omitempty" tf:"min_tls_version"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// Profile specifies the set of SSL features that can be used by the
	// load balancer when negotiating SSL with clients. If using 'CUSTOM',
	// the set of SSL features to enable must be specified in the
	// 'customFeatures' field.
	//
	// See the [official documentation](https://cloud.google.com/compute/docs/load-balancing/ssl-policies#profilefeaturesupport)
	// for information on what cipher suites each profile provides. If
	// 'CUSTOM' is used, the 'custom_features' attribute **must be set**. Default value: "COMPATIBLE" Possible values: ["COMPATIBLE", "MODERN", "RESTRICTED", "CUSTOM"]
	// +optional
	Profile *string `json:"profile,omitempty" tf:"profile"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*SslPolicySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslPolicySpecResource.

func (*SslPolicySpecResource) DeepCopyInto

func (in *SslPolicySpecResource) DeepCopyInto(out *SslPolicySpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SslPolicyStatus

type SslPolicyStatus 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 (*SslPolicyStatus) DeepCopy

func (in *SslPolicyStatus) DeepCopy() *SslPolicyStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SslPolicyStatus.

func (*SslPolicyStatus) DeepCopyInto

func (in *SslPolicyStatus) DeepCopyInto(out *SslPolicyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Subnetwork

type Subnetwork struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SubnetworkSpec   `json:"spec,omitempty"`
	Status            SubnetworkStatus `json:"status,omitempty"`
}

func (*Subnetwork) DeepCopy

func (in *Subnetwork) DeepCopy() *Subnetwork

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subnetwork.

func (*Subnetwork) DeepCopyInto

func (in *Subnetwork) DeepCopyInto(out *Subnetwork)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Subnetwork) DeepCopyObject

func (in *Subnetwork) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Subnetwork) SetupWebhookWithManager

func (r *Subnetwork) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*Subnetwork) ValidateCreate

func (r *Subnetwork) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*Subnetwork) ValidateDelete

func (r *Subnetwork) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*Subnetwork) ValidateUpdate

func (r *Subnetwork) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SubnetworkIamBinding

type SubnetworkIamBinding struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SubnetworkIamBindingSpec   `json:"spec,omitempty"`
	Status            SubnetworkIamBindingStatus `json:"status,omitempty"`
}

func (*SubnetworkIamBinding) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamBinding.

func (*SubnetworkIamBinding) DeepCopyInto

func (in *SubnetworkIamBinding) DeepCopyInto(out *SubnetworkIamBinding)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SubnetworkIamBinding) DeepCopyObject

func (in *SubnetworkIamBinding) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SubnetworkIamBinding) SetupWebhookWithManager

func (r *SubnetworkIamBinding) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*SubnetworkIamBinding) ValidateCreate

func (r *SubnetworkIamBinding) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*SubnetworkIamBinding) ValidateDelete

func (r *SubnetworkIamBinding) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*SubnetworkIamBinding) ValidateUpdate

func (r *SubnetworkIamBinding) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SubnetworkIamBindingList

type SubnetworkIamBindingList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of SubnetworkIamBinding CRD objects
	Items []SubnetworkIamBinding `json:"items,omitempty"`
}

SubnetworkIamBindingList is a list of SubnetworkIamBindings

func (*SubnetworkIamBindingList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamBindingList.

func (*SubnetworkIamBindingList) DeepCopyInto

func (in *SubnetworkIamBindingList) DeepCopyInto(out *SubnetworkIamBindingList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SubnetworkIamBindingList) DeepCopyObject

func (in *SubnetworkIamBindingList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SubnetworkIamBindingSpec

type SubnetworkIamBindingSpec struct {
	State *SubnetworkIamBindingSpecResource `json:"state,omitempty" tf:"-"`

	Resource SubnetworkIamBindingSpecResource `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 (*SubnetworkIamBindingSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamBindingSpec.

func (*SubnetworkIamBindingSpec) DeepCopyInto

func (in *SubnetworkIamBindingSpec) DeepCopyInto(out *SubnetworkIamBindingSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamBindingSpecCondition

type SubnetworkIamBindingSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*SubnetworkIamBindingSpecCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamBindingSpecCondition.

func (*SubnetworkIamBindingSpecCondition) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamBindingSpecConditionCodec

type SubnetworkIamBindingSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (SubnetworkIamBindingSpecConditionCodec) Decode

func (SubnetworkIamBindingSpecConditionCodec) Encode

func (SubnetworkIamBindingSpecConditionCodec) IsEmpty

type SubnetworkIamBindingSpecResource

type SubnetworkIamBindingSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Condition *SubnetworkIamBindingSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag    *string  `json:"etag,omitempty" tf:"etag"`
	Members []string `json:"members" tf:"members"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	Region     *string `json:"region,omitempty" tf:"region"`
	Role       *string `json:"role" tf:"role"`
	Subnetwork *string `json:"subnetwork" tf:"subnetwork"`
}

func (*SubnetworkIamBindingSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamBindingSpecResource.

func (*SubnetworkIamBindingSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamBindingStatus

type SubnetworkIamBindingStatus 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 (*SubnetworkIamBindingStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamBindingStatus.

func (*SubnetworkIamBindingStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamMember

type SubnetworkIamMember struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SubnetworkIamMemberSpec   `json:"spec,omitempty"`
	Status            SubnetworkIamMemberStatus `json:"status,omitempty"`
}

func (*SubnetworkIamMember) DeepCopy

func (in *SubnetworkIamMember) DeepCopy() *SubnetworkIamMember

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamMember.

func (*SubnetworkIamMember) DeepCopyInto

func (in *SubnetworkIamMember) DeepCopyInto(out *SubnetworkIamMember)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SubnetworkIamMember) DeepCopyObject

func (in *SubnetworkIamMember) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SubnetworkIamMember) SetupWebhookWithManager

func (r *SubnetworkIamMember) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*SubnetworkIamMember) ValidateCreate

func (r *SubnetworkIamMember) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*SubnetworkIamMember) ValidateDelete

func (r *SubnetworkIamMember) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*SubnetworkIamMember) ValidateUpdate

func (r *SubnetworkIamMember) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SubnetworkIamMemberList

type SubnetworkIamMemberList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of SubnetworkIamMember CRD objects
	Items []SubnetworkIamMember `json:"items,omitempty"`
}

SubnetworkIamMemberList is a list of SubnetworkIamMembers

func (*SubnetworkIamMemberList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamMemberList.

func (*SubnetworkIamMemberList) DeepCopyInto

func (in *SubnetworkIamMemberList) DeepCopyInto(out *SubnetworkIamMemberList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SubnetworkIamMemberList) DeepCopyObject

func (in *SubnetworkIamMemberList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SubnetworkIamMemberSpec

type SubnetworkIamMemberSpec struct {
	State *SubnetworkIamMemberSpecResource `json:"state,omitempty" tf:"-"`

	Resource SubnetworkIamMemberSpecResource `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 (*SubnetworkIamMemberSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamMemberSpec.

func (*SubnetworkIamMemberSpec) DeepCopyInto

func (in *SubnetworkIamMemberSpec) DeepCopyInto(out *SubnetworkIamMemberSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamMemberSpecCondition

type SubnetworkIamMemberSpecCondition struct {
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	Expression  *string `json:"expression" tf:"expression"`
	Title       *string `json:"title" tf:"title"`
}

func (*SubnetworkIamMemberSpecCondition) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamMemberSpecCondition.

func (*SubnetworkIamMemberSpecCondition) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamMemberSpecConditionCodec

type SubnetworkIamMemberSpecConditionCodec struct {
}

+k8s:deepcopy-gen=false

func (SubnetworkIamMemberSpecConditionCodec) Decode

func (SubnetworkIamMemberSpecConditionCodec) Encode

func (SubnetworkIamMemberSpecConditionCodec) IsEmpty

type SubnetworkIamMemberSpecResource

type SubnetworkIamMemberSpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Condition *SubnetworkIamMemberSpecCondition `json:"condition,omitempty" tf:"condition"`
	// +optional
	Etag   *string `json:"etag,omitempty" tf:"etag"`
	Member *string `json:"member" tf:"member"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	Region     *string `json:"region,omitempty" tf:"region"`
	Role       *string `json:"role" tf:"role"`
	Subnetwork *string `json:"subnetwork" tf:"subnetwork"`
}

func (*SubnetworkIamMemberSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamMemberSpecResource.

func (*SubnetworkIamMemberSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamMemberStatus

type SubnetworkIamMemberStatus 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 (*SubnetworkIamMemberStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamMemberStatus.

func (*SubnetworkIamMemberStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamPolicy

type SubnetworkIamPolicy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              SubnetworkIamPolicySpec   `json:"spec,omitempty"`
	Status            SubnetworkIamPolicyStatus `json:"status,omitempty"`
}

func (*SubnetworkIamPolicy) DeepCopy

func (in *SubnetworkIamPolicy) DeepCopy() *SubnetworkIamPolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamPolicy.

func (*SubnetworkIamPolicy) DeepCopyInto

func (in *SubnetworkIamPolicy) DeepCopyInto(out *SubnetworkIamPolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SubnetworkIamPolicy) DeepCopyObject

func (in *SubnetworkIamPolicy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*SubnetworkIamPolicy) SetupWebhookWithManager

func (r *SubnetworkIamPolicy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*SubnetworkIamPolicy) ValidateCreate

func (r *SubnetworkIamPolicy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*SubnetworkIamPolicy) ValidateDelete

func (r *SubnetworkIamPolicy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*SubnetworkIamPolicy) ValidateUpdate

func (r *SubnetworkIamPolicy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type SubnetworkIamPolicyList

type SubnetworkIamPolicyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of SubnetworkIamPolicy CRD objects
	Items []SubnetworkIamPolicy `json:"items,omitempty"`
}

SubnetworkIamPolicyList is a list of SubnetworkIamPolicys

func (*SubnetworkIamPolicyList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamPolicyList.

func (*SubnetworkIamPolicyList) DeepCopyInto

func (in *SubnetworkIamPolicyList) DeepCopyInto(out *SubnetworkIamPolicyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SubnetworkIamPolicyList) DeepCopyObject

func (in *SubnetworkIamPolicyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SubnetworkIamPolicySpec

type SubnetworkIamPolicySpec struct {
	State *SubnetworkIamPolicySpecResource `json:"state,omitempty" tf:"-"`

	Resource SubnetworkIamPolicySpecResource `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 (*SubnetworkIamPolicySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamPolicySpec.

func (*SubnetworkIamPolicySpec) DeepCopyInto

func (in *SubnetworkIamPolicySpec) DeepCopyInto(out *SubnetworkIamPolicySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamPolicySpecResource

type SubnetworkIamPolicySpecResource struct {
	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// +optional
	Etag       *string `json:"etag,omitempty" tf:"etag"`
	PolicyData *string `json:"policyData" tf:"policy_data"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	Region     *string `json:"region,omitempty" tf:"region"`
	Subnetwork *string `json:"subnetwork" tf:"subnetwork"`
}

func (*SubnetworkIamPolicySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamPolicySpecResource.

func (*SubnetworkIamPolicySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkIamPolicyStatus

type SubnetworkIamPolicyStatus 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 (*SubnetworkIamPolicyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkIamPolicyStatus.

func (*SubnetworkIamPolicyStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkList

type SubnetworkList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of Subnetwork CRD objects
	Items []Subnetwork `json:"items,omitempty"`
}

SubnetworkList is a list of Subnetworks

func (*SubnetworkList) DeepCopy

func (in *SubnetworkList) DeepCopy() *SubnetworkList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkList.

func (*SubnetworkList) DeepCopyInto

func (in *SubnetworkList) DeepCopyInto(out *SubnetworkList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SubnetworkList) DeepCopyObject

func (in *SubnetworkList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SubnetworkSpec

type SubnetworkSpec struct {
	State *SubnetworkSpecResource `json:"state,omitempty" tf:"-"`

	Resource SubnetworkSpecResource `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 (*SubnetworkSpec) DeepCopy

func (in *SubnetworkSpec) DeepCopy() *SubnetworkSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkSpec.

func (*SubnetworkSpec) DeepCopyInto

func (in *SubnetworkSpec) DeepCopyInto(out *SubnetworkSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkSpecLogConfig

type SubnetworkSpecLogConfig struct {
	// Can only be specified if VPC flow logging for this subnetwork is enabled.
	// Toggles the aggregation interval for collecting flow logs. Increasing the
	// interval time will reduce the amount of generated flow logs for long
	// lasting connections. Default is an interval of 5 seconds per connection. Default value: "INTERVAL_5_SEC" Possible values: ["INTERVAL_5_SEC", "INTERVAL_30_SEC", "INTERVAL_1_MIN", "INTERVAL_5_MIN", "INTERVAL_10_MIN", "INTERVAL_15_MIN"]
	// +optional
	AggregationInterval *string `json:"aggregationInterval,omitempty" tf:"aggregation_interval"`
	// Export filter used to define which VPC flow logs should be logged, as as CEL expression. See
	// https://cloud.google.com/vpc/docs/flow-logs#filtering for details on how to format this field.
	// The default value is 'true', which evaluates to include everything.
	// +optional
	FilterExpr *string `json:"filterExpr,omitempty" tf:"filter_expr"`
	// Can only be specified if VPC flow logging for this subnetwork is enabled.
	// The value of the field must be in [0, 1]. Set the sampling rate of VPC
	// flow logs within the subnetwork where 1.0 means all collected logs are
	// reported and 0.0 means no logs are reported. Default is 0.5 which means
	// half of all collected logs are reported.
	// +optional
	FlowSampling *float64 `json:"flowSampling,omitempty" tf:"flow_sampling"`
	// Can only be specified if VPC flow logging for this subnetwork is enabled.
	// Configures whether metadata fields should be added to the reported VPC
	// flow logs. Default value: "INCLUDE_ALL_METADATA" Possible values: ["EXCLUDE_ALL_METADATA", "INCLUDE_ALL_METADATA", "CUSTOM_METADATA"]
	// +optional
	Metadata *string `json:"metadata,omitempty" tf:"metadata"`
	// List of metadata fields that should be added to reported logs.
	// Can only be specified if VPC flow logs for this subnetwork is enabled and "metadata" is set to CUSTOM_METADATA.
	// +optional
	MetadataFields []string `json:"metadataFields,omitempty" tf:"metadata_fields"`
}

func (*SubnetworkSpecLogConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkSpecLogConfig.

func (*SubnetworkSpecLogConfig) DeepCopyInto

func (in *SubnetworkSpecLogConfig) DeepCopyInto(out *SubnetworkSpecLogConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkSpecLogConfigCodec

type SubnetworkSpecLogConfigCodec struct {
}

+k8s:deepcopy-gen=false

func (SubnetworkSpecLogConfigCodec) Decode

func (SubnetworkSpecLogConfigCodec) Encode

func (SubnetworkSpecLogConfigCodec) IsEmpty

type SubnetworkSpecResource

type SubnetworkSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource. Provide this property when
	// you create the resource. This field can be set only at resource
	// creation time.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The range of external IPv6 addresses that are owned by this subnetwork.
	// +optional
	ExternalIpv6Prefix *string `json:"externalIpv6Prefix,omitempty" tf:"external_ipv6_prefix"`
	// Fingerprint of this resource. This field is used internally during updates of this resource.
	// +optional
	// Deprecated
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// The gateway address for default routes to reach destination addresses
	// outside this subnetwork.
	// +optional
	GatewayAddress *string `json:"gatewayAddress,omitempty" tf:"gateway_address"`
	// The range of internal addresses that are owned by this subnetwork.
	// Provide this property when you create the subnetwork. For example,
	// 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and
	// non-overlapping within a network. Only IPv4 is supported.
	IpCIDRRange *string `json:"ipCIDRRange" tf:"ip_cidr_range"`
	// The access type of IPv6 address this subnet holds. It's immutable and can only be specified during creation
	// or the first time the subnet is updated into IPV4_IPV6 dual stack. If the ipv6_type is EXTERNAL then this subnet
	// cannot enable direct path. Possible values: ["EXTERNAL"]
	// +optional
	Ipv6AccessType *string `json:"ipv6AccessType,omitempty" tf:"ipv6_access_type"`
	// The range of internal IPv6 addresses that are owned by this subnetwork.
	// +optional
	Ipv6CIDRRange *string `json:"ipv6CIDRRange,omitempty" tf:"ipv6_cidr_range"`
	// Denotes the logging options for the subnetwork flow logs. If logging is enabled
	// logs will be exported to Stackdriver. This field cannot be set if the 'purpose' of this
	// subnetwork is 'INTERNAL_HTTPS_LOAD_BALANCER'
	// +optional
	LogConfig *SubnetworkSpecLogConfig `json:"logConfig,omitempty" tf:"log_config"`
	// The name of the resource, provided by the client when initially
	// creating the resource. The name must be 1-63 characters long, and
	// comply with RFC1035. Specifically, the name must be 1-63 characters
	// long and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which
	// means the first character must be a lowercase letter, and all
	// following characters must be a dash, lowercase letter, or digit,
	// except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The network this subnet belongs to.
	// Only networks that are in the distributed mode can have subnetworks.
	Network *string `json:"network" tf:"network"`
	// When enabled, VMs in this subnetwork without external IP addresses can
	// access Google APIs and services by using Private Google Access.
	// +optional
	PrivateIPGoogleAccess *bool `json:"privateIPGoogleAccess,omitempty" tf:"private_ip_google_access"`
	// The private IPv6 google access type for the VMs in this subnet.
	// +optional
	PrivateIpv6GoogleAccess *string `json:"privateIpv6GoogleAccess,omitempty" tf:"private_ipv6_google_access"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The purpose of the resource. A subnetwork with purpose set to
	// INTERNAL_HTTPS_LOAD_BALANCER is a user-created subnetwork that is
	// reserved for Internal HTTP(S) Load Balancing.
	//
	// If set to INTERNAL_HTTPS_LOAD_BALANCER you must also set the 'role' field.
	// +optional
	Purpose *string `json:"purpose,omitempty" tf:"purpose"`
	// The GCP region for this subnetwork.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// The role of subnetwork. Currently, this field is only used when
	// purpose = INTERNAL_HTTPS_LOAD_BALANCER. The value can be set to ACTIVE
	// or BACKUP. An ACTIVE subnetwork is one that is currently being used
	// for Internal HTTP(S) Load Balancing. A BACKUP subnetwork is one that
	// is ready to be promoted to ACTIVE or is currently draining. Possible values: ["ACTIVE", "BACKUP"]
	// +optional
	Role *string `json:"role,omitempty" tf:"role"`
	// An array of configurations for secondary IP ranges for VM instances
	// contained in this subnetwork. The primary IP of such VM must belong
	// to the primary ipCidrRange of the subnetwork. The alias IPs may belong
	// to either primary or secondary ranges.
	//
	// **Note**: This field uses [attr-as-block mode](https://www.terraform.io/docs/configuration/attr-as-blocks.html) to avoid
	// breaking users during the 0.12 upgrade. To explicitly send a list
	// of zero objects you must use the following syntax:
	// 'example=[]'
	// For more details about this behavior, see [this section](https://www.terraform.io/docs/configuration/attr-as-blocks.html#defining-a-fixed-object-collection-value).
	// +optional
	SecondaryIPRange []SubnetworkSpecSecondaryIPRange `json:"secondaryIPRange,omitempty" tf:"secondary_ip_range"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The stack type for this subnet to identify whether the IPv6 feature is enabled or not.
	// If not specified IPV4_ONLY will be used. Possible values: ["IPV4_ONLY", "IPV4_IPV6"]
	// +optional
	StackType *string `json:"stackType,omitempty" tf:"stack_type"`
}

func (*SubnetworkSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkSpecResource.

func (*SubnetworkSpecResource) DeepCopyInto

func (in *SubnetworkSpecResource) DeepCopyInto(out *SubnetworkSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkSpecSecondaryIPRange

type SubnetworkSpecSecondaryIPRange struct {
	// The range of IP addresses belonging to this subnetwork secondary
	// range. Provide this property when you create the subnetwork.
	// Ranges must be unique and non-overlapping with all primary and
	// secondary IP ranges within a network. Only IPv4 is supported.
	IpCIDRRange *string `json:"ipCIDRRange" tf:"ip_cidr_range"`
	// The name associated with this subnetwork secondary range, used
	// when adding an alias IP range to a VM instance. The name must
	// be 1-63 characters long, and comply with RFC1035. The name
	// must be unique within the subnetwork.
	RangeName *string `json:"rangeName" tf:"range_name"`
}

func (*SubnetworkSpecSecondaryIPRange) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkSpecSecondaryIPRange.

func (*SubnetworkSpecSecondaryIPRange) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SubnetworkStatus

type SubnetworkStatus 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 (*SubnetworkStatus) DeepCopy

func (in *SubnetworkStatus) DeepCopy() *SubnetworkStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SubnetworkStatus.

func (*SubnetworkStatus) DeepCopyInto

func (in *SubnetworkStatus) DeepCopyInto(out *SubnetworkStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetGrpcProxy

type TargetGrpcProxy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              TargetGrpcProxySpec   `json:"spec,omitempty"`
	Status            TargetGrpcProxyStatus `json:"status,omitempty"`
}

func (*TargetGrpcProxy) DeepCopy

func (in *TargetGrpcProxy) DeepCopy() *TargetGrpcProxy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGrpcProxy.

func (*TargetGrpcProxy) DeepCopyInto

func (in *TargetGrpcProxy) DeepCopyInto(out *TargetGrpcProxy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetGrpcProxy) DeepCopyObject

func (in *TargetGrpcProxy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TargetGrpcProxy) SetupWebhookWithManager

func (r *TargetGrpcProxy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*TargetGrpcProxy) ValidateCreate

func (r *TargetGrpcProxy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*TargetGrpcProxy) ValidateDelete

func (r *TargetGrpcProxy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*TargetGrpcProxy) ValidateUpdate

func (r *TargetGrpcProxy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type TargetGrpcProxyList

type TargetGrpcProxyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of TargetGrpcProxy CRD objects
	Items []TargetGrpcProxy `json:"items,omitempty"`
}

TargetGrpcProxyList is a list of TargetGrpcProxys

func (*TargetGrpcProxyList) DeepCopy

func (in *TargetGrpcProxyList) DeepCopy() *TargetGrpcProxyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGrpcProxyList.

func (*TargetGrpcProxyList) DeepCopyInto

func (in *TargetGrpcProxyList) DeepCopyInto(out *TargetGrpcProxyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetGrpcProxyList) DeepCopyObject

func (in *TargetGrpcProxyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TargetGrpcProxySpec

type TargetGrpcProxySpec struct {
	State *TargetGrpcProxySpecResource `json:"state,omitempty" tf:"-"`

	Resource TargetGrpcProxySpecResource `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 (*TargetGrpcProxySpec) DeepCopy

func (in *TargetGrpcProxySpec) DeepCopy() *TargetGrpcProxySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGrpcProxySpec.

func (*TargetGrpcProxySpec) DeepCopyInto

func (in *TargetGrpcProxySpec) DeepCopyInto(out *TargetGrpcProxySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetGrpcProxySpecResource

type TargetGrpcProxySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Fingerprint of this resource. A hash of the contents stored in
	// this object. This field is used in optimistic locking. This field
	// will be ignored when inserting a TargetGrpcProxy. An up-to-date
	// fingerprint must be provided in order to patch/update the
	// TargetGrpcProxy; otherwise, the request will fail with error
	// 412 conditionNotMet. To see the latest fingerprint, make a get()
	// request to retrieve the TargetGrpcProxy. A base64-encoded string.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// Name of the resource. Provided by the client when the resource
	// is created. The name must be 1-63 characters long, and comply
	// with RFC1035. Specifically, the name must be 1-63 characters long
	// and match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which
	// means the first character must be a lowercase letter, and all
	// following characters must be a dash, lowercase letter, or digit,
	// except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Server-defined URL with id for the resource.
	// +optional
	SelfLinkWithID *string `json:"selfLinkWithID,omitempty" tf:"self_link_with_id"`
	// URL to the UrlMap resource that defines the mapping from URL to
	// the BackendService. The protocol field in the BackendService
	// must be set to GRPC.
	// +optional
	UrlMap *string `json:"urlMap,omitempty" tf:"url_map"`
	// If true, indicates that the BackendServices referenced by
	// the urlMap may be accessed by gRPC applications without using
	// a sidecar proxy. This will enable configuration checks on urlMap
	// and its referenced BackendServices to not allow unsupported features.
	// A gRPC application must use "xds:///" scheme in the target URI
	// of the service it is connecting to. If false, indicates that the
	// BackendServices referenced by the urlMap will be accessed by gRPC
	// applications via a sidecar proxy. In this case, a gRPC application
	// must not use "xds:///" scheme in the target URI of the service
	// it is connecting to
	// +optional
	ValidateForProxyless *bool `json:"validateForProxyless,omitempty" tf:"validate_for_proxyless"`
}

func (*TargetGrpcProxySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGrpcProxySpecResource.

func (*TargetGrpcProxySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetGrpcProxyStatus

type TargetGrpcProxyStatus 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 (*TargetGrpcProxyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetGrpcProxyStatus.

func (*TargetGrpcProxyStatus) DeepCopyInto

func (in *TargetGrpcProxyStatus) DeepCopyInto(out *TargetGrpcProxyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetHTTPProxy

type TargetHTTPProxy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              TargetHTTPProxySpec   `json:"spec,omitempty"`
	Status            TargetHTTPProxyStatus `json:"status,omitempty"`
}

func (*TargetHTTPProxy) DeepCopy

func (in *TargetHTTPProxy) DeepCopy() *TargetHTTPProxy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPProxy.

func (*TargetHTTPProxy) DeepCopyInto

func (in *TargetHTTPProxy) DeepCopyInto(out *TargetHTTPProxy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetHTTPProxy) DeepCopyObject

func (in *TargetHTTPProxy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TargetHTTPProxy) SetupWebhookWithManager

func (r *TargetHTTPProxy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*TargetHTTPProxy) ValidateCreate

func (r *TargetHTTPProxy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*TargetHTTPProxy) ValidateDelete

func (r *TargetHTTPProxy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*TargetHTTPProxy) ValidateUpdate

func (r *TargetHTTPProxy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type TargetHTTPProxyList

type TargetHTTPProxyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of TargetHTTPProxy CRD objects
	Items []TargetHTTPProxy `json:"items,omitempty"`
}

TargetHTTPProxyList is a list of TargetHTTPProxys

func (*TargetHTTPProxyList) DeepCopy

func (in *TargetHTTPProxyList) DeepCopy() *TargetHTTPProxyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPProxyList.

func (*TargetHTTPProxyList) DeepCopyInto

func (in *TargetHTTPProxyList) DeepCopyInto(out *TargetHTTPProxyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetHTTPProxyList) DeepCopyObject

func (in *TargetHTTPProxyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TargetHTTPProxySpec

type TargetHTTPProxySpec struct {
	State *TargetHTTPProxySpecResource `json:"state,omitempty" tf:"-"`

	Resource TargetHTTPProxySpecResource `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 (*TargetHTTPProxySpec) DeepCopy

func (in *TargetHTTPProxySpec) DeepCopy() *TargetHTTPProxySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPProxySpec.

func (*TargetHTTPProxySpec) DeepCopyInto

func (in *TargetHTTPProxySpec) DeepCopyInto(out *TargetHTTPProxySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetHTTPProxySpecResource

type TargetHTTPProxySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// This field only applies when the forwarding rule that references
	// this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.
	// +optional
	ProxyBind *bool `json:"proxyBind,omitempty" tf:"proxy_bind"`
	// The unique identifier for the resource.
	// +optional
	ProxyID *int64 `json:"proxyID,omitempty" tf:"proxy_id"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// A reference to the UrlMap resource that defines the mapping from URL
	// to the BackendService.
	UrlMap *string `json:"urlMap" tf:"url_map"`
}

func (*TargetHTTPProxySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPProxySpecResource.

func (*TargetHTTPProxySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetHTTPProxyStatus

type TargetHTTPProxyStatus 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 (*TargetHTTPProxyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPProxyStatus.

func (*TargetHTTPProxyStatus) DeepCopyInto

func (in *TargetHTTPProxyStatus) DeepCopyInto(out *TargetHTTPProxyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetHTTPSProxy

type TargetHTTPSProxy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              TargetHTTPSProxySpec   `json:"spec,omitempty"`
	Status            TargetHTTPSProxyStatus `json:"status,omitempty"`
}

func (*TargetHTTPSProxy) DeepCopy

func (in *TargetHTTPSProxy) DeepCopy() *TargetHTTPSProxy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPSProxy.

func (*TargetHTTPSProxy) DeepCopyInto

func (in *TargetHTTPSProxy) DeepCopyInto(out *TargetHTTPSProxy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetHTTPSProxy) DeepCopyObject

func (in *TargetHTTPSProxy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TargetHTTPSProxy) SetupWebhookWithManager

func (r *TargetHTTPSProxy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*TargetHTTPSProxy) ValidateCreate

func (r *TargetHTTPSProxy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*TargetHTTPSProxy) ValidateDelete

func (r *TargetHTTPSProxy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*TargetHTTPSProxy) ValidateUpdate

func (r *TargetHTTPSProxy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type TargetHTTPSProxyList

type TargetHTTPSProxyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of TargetHTTPSProxy CRD objects
	Items []TargetHTTPSProxy `json:"items,omitempty"`
}

TargetHTTPSProxyList is a list of TargetHTTPSProxys

func (*TargetHTTPSProxyList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPSProxyList.

func (*TargetHTTPSProxyList) DeepCopyInto

func (in *TargetHTTPSProxyList) DeepCopyInto(out *TargetHTTPSProxyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetHTTPSProxyList) DeepCopyObject

func (in *TargetHTTPSProxyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TargetHTTPSProxySpec

type TargetHTTPSProxySpec struct {
	State *TargetHTTPSProxySpecResource `json:"state,omitempty" tf:"-"`

	Resource TargetHTTPSProxySpecResource `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 (*TargetHTTPSProxySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPSProxySpec.

func (*TargetHTTPSProxySpec) DeepCopyInto

func (in *TargetHTTPSProxySpec) DeepCopyInto(out *TargetHTTPSProxySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetHTTPSProxySpecResource

type TargetHTTPSProxySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// This field only applies when the forwarding rule that references
	// this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.
	// +optional
	ProxyBind *bool `json:"proxyBind,omitempty" tf:"proxy_bind"`
	// The unique identifier for the resource.
	// +optional
	ProxyID *int64 `json:"proxyID,omitempty" tf:"proxy_id"`
	// Specifies the QUIC override policy for this resource. This determines
	// whether the load balancer will attempt to negotiate QUIC with clients
	// or not. Can specify one of NONE, ENABLE, or DISABLE. If NONE is
	// specified, uses the QUIC policy with no user overrides, which is
	// equivalent to DISABLE. Default value: "NONE" Possible values: ["NONE", "ENABLE", "DISABLE"]
	// +optional
	QuicOverride *string `json:"quicOverride,omitempty" tf:"quic_override"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// A list of SslCertificate resources that are used to authenticate
	// connections between users and the load balancer. At least one SSL
	// certificate must be specified.
	SslCertificates []string `json:"sslCertificates" tf:"ssl_certificates"`
	// A reference to the SslPolicy resource that will be associated with
	// the TargetHttpsProxy resource. If not set, the TargetHttpsProxy
	// resource will not have any SSL policy configured.
	// +optional
	SslPolicy *string `json:"sslPolicy,omitempty" tf:"ssl_policy"`
	// A reference to the UrlMap resource that defines the mapping from URL
	// to the BackendService.
	UrlMap *string `json:"urlMap" tf:"url_map"`
}

func (*TargetHTTPSProxySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPSProxySpecResource.

func (*TargetHTTPSProxySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetHTTPSProxyStatus

type TargetHTTPSProxyStatus 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 (*TargetHTTPSProxyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetHTTPSProxyStatus.

func (*TargetHTTPSProxyStatus) DeepCopyInto

func (in *TargetHTTPSProxyStatus) DeepCopyInto(out *TargetHTTPSProxyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetInstance

type TargetInstance struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              TargetInstanceSpec   `json:"spec,omitempty"`
	Status            TargetInstanceStatus `json:"status,omitempty"`
}

func (*TargetInstance) DeepCopy

func (in *TargetInstance) DeepCopy() *TargetInstance

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetInstance.

func (*TargetInstance) DeepCopyInto

func (in *TargetInstance) DeepCopyInto(out *TargetInstance)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetInstance) DeepCopyObject

func (in *TargetInstance) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TargetInstance) SetupWebhookWithManager

func (r *TargetInstance) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*TargetInstance) ValidateCreate

func (r *TargetInstance) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*TargetInstance) ValidateDelete

func (r *TargetInstance) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*TargetInstance) ValidateUpdate

func (r *TargetInstance) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type TargetInstanceList

type TargetInstanceList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of TargetInstance CRD objects
	Items []TargetInstance `json:"items,omitempty"`
}

TargetInstanceList is a list of TargetInstances

func (*TargetInstanceList) DeepCopy

func (in *TargetInstanceList) DeepCopy() *TargetInstanceList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetInstanceList.

func (*TargetInstanceList) DeepCopyInto

func (in *TargetInstanceList) DeepCopyInto(out *TargetInstanceList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetInstanceList) DeepCopyObject

func (in *TargetInstanceList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TargetInstanceSpec

type TargetInstanceSpec struct {
	State *TargetInstanceSpecResource `json:"state,omitempty" tf:"-"`

	Resource TargetInstanceSpecResource `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 (*TargetInstanceSpec) DeepCopy

func (in *TargetInstanceSpec) DeepCopy() *TargetInstanceSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetInstanceSpec.

func (*TargetInstanceSpec) DeepCopyInto

func (in *TargetInstanceSpec) DeepCopyInto(out *TargetInstanceSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetInstanceSpecResource

type TargetInstanceSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The Compute instance VM handling traffic for this target instance.
	// Accepts the instance self-link, relative path
	// (e.g. 'projects/project/zones/zone/instances/instance') or name. If
	// name is given, the zone will default to the given zone or
	// the provider-default zone and the project will default to the
	// provider-level project.
	Instance *string `json:"instance" tf:"instance"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// NAT option controlling how IPs are NAT'ed to the instance.
	// Currently only NO_NAT (default value) is supported. Default value: "NO_NAT" Possible values: ["NO_NAT"]
	// +optional
	NatPolicy *string `json:"natPolicy,omitempty" tf:"nat_policy"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// URL of the zone where the target instance resides.
	// +optional
	Zone *string `json:"zone,omitempty" tf:"zone"`
}

func (*TargetInstanceSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetInstanceSpecResource.

func (*TargetInstanceSpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetInstanceStatus

type TargetInstanceStatus 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 (*TargetInstanceStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetInstanceStatus.

func (*TargetInstanceStatus) DeepCopyInto

func (in *TargetInstanceStatus) DeepCopyInto(out *TargetInstanceStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetPool

type TargetPool struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              TargetPoolSpec   `json:"spec,omitempty"`
	Status            TargetPoolStatus `json:"status,omitempty"`
}

func (*TargetPool) DeepCopy

func (in *TargetPool) DeepCopy() *TargetPool

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetPool.

func (*TargetPool) DeepCopyInto

func (in *TargetPool) DeepCopyInto(out *TargetPool)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetPool) DeepCopyObject

func (in *TargetPool) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TargetPool) SetupWebhookWithManager

func (r *TargetPool) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*TargetPool) ValidateCreate

func (r *TargetPool) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*TargetPool) ValidateDelete

func (r *TargetPool) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*TargetPool) ValidateUpdate

func (r *TargetPool) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type TargetPoolList

type TargetPoolList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of TargetPool CRD objects
	Items []TargetPool `json:"items,omitempty"`
}

TargetPoolList is a list of TargetPools

func (*TargetPoolList) DeepCopy

func (in *TargetPoolList) DeepCopy() *TargetPoolList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetPoolList.

func (*TargetPoolList) DeepCopyInto

func (in *TargetPoolList) DeepCopyInto(out *TargetPoolList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetPoolList) DeepCopyObject

func (in *TargetPoolList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TargetPoolSpec

type TargetPoolSpec struct {
	State *TargetPoolSpecResource `json:"state,omitempty" tf:"-"`

	Resource TargetPoolSpecResource `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 (*TargetPoolSpec) DeepCopy

func (in *TargetPoolSpec) DeepCopy() *TargetPoolSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetPoolSpec.

func (*TargetPoolSpec) DeepCopyInto

func (in *TargetPoolSpec) DeepCopyInto(out *TargetPoolSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetPoolSpecResource

type TargetPoolSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// URL to the backup target pool. Must also set failover_ratio.
	// +optional
	BackupPool *string `json:"backupPool,omitempty" tf:"backup_pool"`
	// Textual description field.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Ratio (0 to 1) of failed nodes before using the backup pool (which must also be set).
	// +optional
	FailoverRatio *float64 `json:"failoverRatio,omitempty" tf:"failover_ratio"`
	// List of zero or one health check name or self_link. Only legacy google_compute_http_health_check is supported.
	// +optional
	HealthChecks []string `json:"healthChecks,omitempty" tf:"health_checks"`
	// List of instances in the pool. They can be given as URLs, or in the form of "zone/name". Note that the instances need not exist at the time of target pool creation, so there is no need to use the Terraform interpolators to create a dependency on the instances from the target pool.
	// +optional
	Instances []string `json:"instances,omitempty" tf:"instances"`
	// A unique name for the resource, required by GCE. Changing this forces a new resource to be created.
	Name *string `json:"name" tf:"name"`
	// 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"`
	// Where the target pool resides. Defaults to project region.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// The URI of the created resource.
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// How to distribute load. Options are "NONE" (no affinity). "CLIENT_IP" (hash of the source/dest addresses / ports), and "CLIENT_IP_PROTO" also includes the protocol (default "NONE").
	// +optional
	SessionAffinity *string `json:"sessionAffinity,omitempty" tf:"session_affinity"`
}

func (*TargetPoolSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetPoolSpecResource.

func (*TargetPoolSpecResource) DeepCopyInto

func (in *TargetPoolSpecResource) DeepCopyInto(out *TargetPoolSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetPoolStatus

type TargetPoolStatus 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 (*TargetPoolStatus) DeepCopy

func (in *TargetPoolStatus) DeepCopy() *TargetPoolStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetPoolStatus.

func (*TargetPoolStatus) DeepCopyInto

func (in *TargetPoolStatus) DeepCopyInto(out *TargetPoolStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetSslProxy

type TargetSslProxy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              TargetSslProxySpec   `json:"spec,omitempty"`
	Status            TargetSslProxyStatus `json:"status,omitempty"`
}

func (*TargetSslProxy) DeepCopy

func (in *TargetSslProxy) DeepCopy() *TargetSslProxy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetSslProxy.

func (*TargetSslProxy) DeepCopyInto

func (in *TargetSslProxy) DeepCopyInto(out *TargetSslProxy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetSslProxy) DeepCopyObject

func (in *TargetSslProxy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TargetSslProxy) SetupWebhookWithManager

func (r *TargetSslProxy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*TargetSslProxy) ValidateCreate

func (r *TargetSslProxy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*TargetSslProxy) ValidateDelete

func (r *TargetSslProxy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*TargetSslProxy) ValidateUpdate

func (r *TargetSslProxy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type TargetSslProxyList

type TargetSslProxyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of TargetSslProxy CRD objects
	Items []TargetSslProxy `json:"items,omitempty"`
}

TargetSslProxyList is a list of TargetSslProxys

func (*TargetSslProxyList) DeepCopy

func (in *TargetSslProxyList) DeepCopy() *TargetSslProxyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetSslProxyList.

func (*TargetSslProxyList) DeepCopyInto

func (in *TargetSslProxyList) DeepCopyInto(out *TargetSslProxyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetSslProxyList) DeepCopyObject

func (in *TargetSslProxyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TargetSslProxySpec

type TargetSslProxySpec struct {
	State *TargetSslProxySpecResource `json:"state,omitempty" tf:"-"`

	Resource TargetSslProxySpecResource `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 (*TargetSslProxySpec) DeepCopy

func (in *TargetSslProxySpec) DeepCopy() *TargetSslProxySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetSslProxySpec.

func (*TargetSslProxySpec) DeepCopyInto

func (in *TargetSslProxySpec) DeepCopyInto(out *TargetSslProxySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetSslProxySpecResource

type TargetSslProxySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// A reference to the BackendService resource.
	BackendService *string `json:"backendService" tf:"backend_service"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// Specifies the type of proxy header to append before sending data to
	// the backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The unique identifier for the resource.
	// +optional
	ProxyID *int64 `json:"proxyID,omitempty" tf:"proxy_id"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// A list of SslCertificate resources that are used to authenticate
	// connections between users and the load balancer. At least one
	// SSL certificate must be specified.
	SslCertificates []string `json:"sslCertificates" tf:"ssl_certificates"`
	// A reference to the SslPolicy resource that will be associated with
	// the TargetSslProxy resource. If not set, the TargetSslProxy
	// resource will not have any SSL policy configured.
	// +optional
	SslPolicy *string `json:"sslPolicy,omitempty" tf:"ssl_policy"`
}

func (*TargetSslProxySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetSslProxySpecResource.

func (*TargetSslProxySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetSslProxyStatus

type TargetSslProxyStatus 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 (*TargetSslProxyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetSslProxyStatus.

func (*TargetSslProxyStatus) DeepCopyInto

func (in *TargetSslProxyStatus) DeepCopyInto(out *TargetSslProxyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetTcpProxy

type TargetTcpProxy struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              TargetTcpProxySpec   `json:"spec,omitempty"`
	Status            TargetTcpProxyStatus `json:"status,omitempty"`
}

func (*TargetTcpProxy) DeepCopy

func (in *TargetTcpProxy) DeepCopy() *TargetTcpProxy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetTcpProxy.

func (*TargetTcpProxy) DeepCopyInto

func (in *TargetTcpProxy) DeepCopyInto(out *TargetTcpProxy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetTcpProxy) DeepCopyObject

func (in *TargetTcpProxy) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TargetTcpProxy) SetupWebhookWithManager

func (r *TargetTcpProxy) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*TargetTcpProxy) ValidateCreate

func (r *TargetTcpProxy) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*TargetTcpProxy) ValidateDelete

func (r *TargetTcpProxy) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*TargetTcpProxy) ValidateUpdate

func (r *TargetTcpProxy) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type TargetTcpProxyList

type TargetTcpProxyList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of TargetTcpProxy CRD objects
	Items []TargetTcpProxy `json:"items,omitempty"`
}

TargetTcpProxyList is a list of TargetTcpProxys

func (*TargetTcpProxyList) DeepCopy

func (in *TargetTcpProxyList) DeepCopy() *TargetTcpProxyList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetTcpProxyList.

func (*TargetTcpProxyList) DeepCopyInto

func (in *TargetTcpProxyList) DeepCopyInto(out *TargetTcpProxyList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TargetTcpProxyList) DeepCopyObject

func (in *TargetTcpProxyList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TargetTcpProxySpec

type TargetTcpProxySpec struct {
	State *TargetTcpProxySpecResource `json:"state,omitempty" tf:"-"`

	Resource TargetTcpProxySpecResource `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 (*TargetTcpProxySpec) DeepCopy

func (in *TargetTcpProxySpec) DeepCopy() *TargetTcpProxySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetTcpProxySpec.

func (*TargetTcpProxySpec) DeepCopyInto

func (in *TargetTcpProxySpec) DeepCopyInto(out *TargetTcpProxySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetTcpProxySpecResource

type TargetTcpProxySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// A reference to the BackendService resource.
	BackendService *string `json:"backendService" tf:"backend_service"`
	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035. Specifically, the name must be 1-63 characters long and match
	// the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means the
	// first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// This field only applies when the forwarding rule that references
	// this target proxy has a loadBalancingScheme set to INTERNAL_SELF_MANAGED.
	// +optional
	ProxyBind *bool `json:"proxyBind,omitempty" tf:"proxy_bind"`
	// Specifies the type of proxy header to append before sending data to
	// the backend. Default value: "NONE" Possible values: ["NONE", "PROXY_V1"]
	// +optional
	ProxyHeader *string `json:"proxyHeader,omitempty" tf:"proxy_header"`
	// The unique identifier for the resource.
	// +optional
	ProxyID *int64 `json:"proxyID,omitempty" tf:"proxy_id"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*TargetTcpProxySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetTcpProxySpecResource.

func (*TargetTcpProxySpecResource) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TargetTcpProxyStatus

type TargetTcpProxyStatus 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 (*TargetTcpProxyStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetTcpProxyStatus.

func (*TargetTcpProxyStatus) DeepCopyInto

func (in *TargetTcpProxyStatus) DeepCopyInto(out *TargetTcpProxyStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMap

type UrlMap struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              UrlMapSpec   `json:"spec,omitempty"`
	Status            UrlMapStatus `json:"status,omitempty"`
}

func (*UrlMap) DeepCopy

func (in *UrlMap) DeepCopy() *UrlMap

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMap.

func (*UrlMap) DeepCopyInto

func (in *UrlMap) DeepCopyInto(out *UrlMap)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*UrlMap) DeepCopyObject

func (in *UrlMap) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*UrlMap) SetupWebhookWithManager

func (r *UrlMap) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*UrlMap) ValidateCreate

func (r *UrlMap) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*UrlMap) ValidateDelete

func (r *UrlMap) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*UrlMap) ValidateUpdate

func (r *UrlMap) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type UrlMapList

type UrlMapList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of UrlMap CRD objects
	Items []UrlMap `json:"items,omitempty"`
}

UrlMapList is a list of UrlMaps

func (*UrlMapList) DeepCopy

func (in *UrlMapList) DeepCopy() *UrlMapList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapList.

func (*UrlMapList) DeepCopyInto

func (in *UrlMapList) DeepCopyInto(out *UrlMapList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*UrlMapList) DeepCopyObject

func (in *UrlMapList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type UrlMapSpec

type UrlMapSpec struct {
	State *UrlMapSpecResource `json:"state,omitempty" tf:"-"`

	Resource UrlMapSpecResource `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 (*UrlMapSpec) DeepCopy

func (in *UrlMapSpec) DeepCopy() *UrlMapSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpec.

func (*UrlMapSpec) DeepCopyInto

func (in *UrlMapSpec) DeepCopyInto(out *UrlMapSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteAction

type UrlMapSpecDefaultRouteAction struct {
	// The specification for allowing client side cross-origin requests. Please see
	// [W3C Recommendation for Cross Origin Resource Sharing](https://www.w3.org/TR/cors/)
	// +optional
	CorsPolicy *UrlMapSpecDefaultRouteActionCorsPolicy `json:"corsPolicy,omitempty" tf:"cors_policy"`
	// The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure.
	// As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a
	// percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted
	// by the Loadbalancer for a percentage of requests.
	//
	// timeout and retryPolicy will be ignored by clients that are configured with a faultInjectionPolicy.
	// +optional
	FaultInjectionPolicy *UrlMapSpecDefaultRouteActionFaultInjectionPolicy `json:"faultInjectionPolicy,omitempty" tf:"fault_injection_policy"`
	// Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service.
	// Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service,
	// the host / authority header is suffixed with -shadow.
	// +optional
	RequestMirrorPolicy *UrlMapSpecDefaultRouteActionRequestMirrorPolicy `json:"requestMirrorPolicy,omitempty" tf:"request_mirror_policy"`
	// Specifies the retry policy associated with this route.
	// +optional
	RetryPolicy *UrlMapSpecDefaultRouteActionRetryPolicy `json:"retryPolicy,omitempty" tf:"retry_policy"`
	// Specifies the timeout for the selected route. Timeout is computed from the time the request has been
	// fully processed (i.e. end-of-stream) up until the response has been completely processed. Timeout includes all retries.
	//
	// If not specified, will use the largest timeout among all backend services associated with the route.
	// +optional
	Timeout *UrlMapSpecDefaultRouteActionTimeout `json:"timeout,omitempty" tf:"timeout"`
	// The spec to modify the URL of the request, prior to forwarding the request to the matched service.
	// +optional
	UrlRewrite *UrlMapSpecDefaultRouteActionUrlRewrite `json:"urlRewrite,omitempty" tf:"url_rewrite"`
	// A list of weighted backend services to send traffic to when a route match occurs.
	// The weights determine the fraction of traffic that flows to their corresponding backend service.
	// If all traffic needs to go to a single backend service, there must be one weightedBackendService
	// with weight set to a non 0 number.
	//
	// Once a backendService is identified and before forwarding the request to the backend service,
	// advanced routing actions like Url rewrites and header transformations are applied depending on
	// additional settings specified in this HttpRouteAction.
	// +optional
	WeightedBackendServices []UrlMapSpecDefaultRouteActionWeightedBackendServices `json:"weightedBackendServices,omitempty" tf:"weighted_backend_services"`
}

func (*UrlMapSpecDefaultRouteAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteAction.

func (*UrlMapSpecDefaultRouteAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionCodec

type UrlMapSpecDefaultRouteActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionCodec) Decode

func (UrlMapSpecDefaultRouteActionCodec) Encode

func (UrlMapSpecDefaultRouteActionCodec) IsEmpty

type UrlMapSpecDefaultRouteActionCorsPolicy

type UrlMapSpecDefaultRouteActionCorsPolicy struct {
	// In response to a preflight request, setting this to true indicates that the actual request can include user credentials.
	// This translates to the Access-Control-Allow-Credentials header.
	// +optional
	AllowCredentials *bool `json:"allowCredentials,omitempty" tf:"allow_credentials"`
	// Specifies the content for the Access-Control-Allow-Headers header.
	// +optional
	AllowHeaders []string `json:"allowHeaders,omitempty" tf:"allow_headers"`
	// Specifies the content for the Access-Control-Allow-Methods header.
	// +optional
	AllowMethods []string `json:"allowMethods,omitempty" tf:"allow_methods"`
	// Specifies the regular expression patterns that match allowed origins. For regular expression grammar
	// please see en.cppreference.com/w/cpp/regex/ecmascript
	// An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
	// +optional
	AllowOriginRegexes []string `json:"allowOriginRegexes,omitempty" tf:"allow_origin_regexes"`
	// Specifies the list of origins that will be allowed to do CORS requests.
	// An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
	// +optional
	AllowOrigins []string `json:"allowOrigins,omitempty" tf:"allow_origins"`
	// If true, specifies the CORS policy is disabled. The default value is false, which indicates that the CORS policy is in effect.
	// +optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled"`
	// Specifies the content for the Access-Control-Expose-Headers header.
	// +optional
	ExposeHeaders []string `json:"exposeHeaders,omitempty" tf:"expose_headers"`
	// Specifies how long results of a preflight request can be cached in seconds.
	// This translates to the Access-Control-Max-Age header.
	// +optional
	MaxAge *int64 `json:"maxAge,omitempty" tf:"max_age"`
}

func (*UrlMapSpecDefaultRouteActionCorsPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionCorsPolicy.

func (*UrlMapSpecDefaultRouteActionCorsPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionCorsPolicyCodec

type UrlMapSpecDefaultRouteActionCorsPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionCorsPolicyCodec) Decode

func (UrlMapSpecDefaultRouteActionCorsPolicyCodec) Encode

func (UrlMapSpecDefaultRouteActionCorsPolicyCodec) IsEmpty

type UrlMapSpecDefaultRouteActionFaultInjectionPolicy

type UrlMapSpecDefaultRouteActionFaultInjectionPolicy struct {
	// The specification for how client requests are aborted as part of fault injection.
	// +optional
	Abort *UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbort `json:"abort,omitempty" tf:"abort"`
	// The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
	// +optional
	Delay *UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelay `json:"delay,omitempty" tf:"delay"`
}

func (*UrlMapSpecDefaultRouteActionFaultInjectionPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionFaultInjectionPolicy.

func (*UrlMapSpecDefaultRouteActionFaultInjectionPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbort

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbort struct {
	// The HTTP status code used to abort the request.
	// The value must be between 200 and 599 inclusive.
	// +optional
	HttpStatus *int64 `json:"httpStatus,omitempty" tf:"http_status"`
	// The percentage of traffic (connections/operations/requests) which will be aborted as part of fault injection.
	// The value must be between 0.0 and 100.0 inclusive.
	// +optional
	Percentage *float64 `json:"percentage,omitempty" tf:"percentage"`
}

func (*UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbort.

func (*UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbort) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbortCodec

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbortCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbortCodec) Decode

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbortCodec) Encode

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyAbortCodec) IsEmpty

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyCodec

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyCodec) Decode

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyCodec) Encode

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyCodec) IsEmpty

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelay

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelay struct {
	// Specifies the value of the fixed delay interval.
	// +optional
	FixedDelay *UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelay `json:"fixedDelay,omitempty" tf:"fixed_delay"`
	// The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection.
	// The value must be between 0.0 and 100.0 inclusive.
	// +optional
	Percentage *float64 `json:"percentage,omitempty" tf:"percentage"`
}

func (*UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelay.

func (*UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayCodec

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayCodec) Decode

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayCodec) Encode

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayCodec) IsEmpty

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelay

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelay struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are
	// represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.
	// Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
	// +optional
	Seconds *string `json:"seconds,omitempty" tf:"seconds"`
}

func (*UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelay.

func (*UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec

type UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Decode

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Encode

func (UrlMapSpecDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec) IsEmpty

type UrlMapSpecDefaultRouteActionRequestMirrorPolicy

type UrlMapSpecDefaultRouteActionRequestMirrorPolicy struct {
	// The full or partial URL to the BackendService resource being mirrored to.
	BackendService *string `json:"backendService" tf:"backend_service"`
}

func (*UrlMapSpecDefaultRouteActionRequestMirrorPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionRequestMirrorPolicy.

func (*UrlMapSpecDefaultRouteActionRequestMirrorPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionRequestMirrorPolicyCodec

type UrlMapSpecDefaultRouteActionRequestMirrorPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionRequestMirrorPolicyCodec) Decode

func (UrlMapSpecDefaultRouteActionRequestMirrorPolicyCodec) Encode

func (UrlMapSpecDefaultRouteActionRequestMirrorPolicyCodec) IsEmpty

type UrlMapSpecDefaultRouteActionRetryPolicy

type UrlMapSpecDefaultRouteActionRetryPolicy struct {
	// Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
	// +optional
	NumRetries *int64 `json:"numRetries,omitempty" tf:"num_retries"`
	// Specifies a non-zero timeout per retry attempt.
	//
	// If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction is not set,
	// will use the largest timeout among all backend services associated with the route.
	// +optional
	PerTryTimeout *UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeout `json:"perTryTimeout,omitempty" tf:"per_try_timeout"`
	// Specfies one or more conditions when this retry rule applies. Valid values are:
	//
	// * 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code,
	//   or if the backend service does not respond at all, example: disconnects, reset, read timeout,
	// * connection failure, and refused streams.
	// * gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504.
	// * connect-failure: Loadbalancer will retry on failures connecting to backend services,
	//   for example due to connection timeouts.
	// * retriable-4xx: Loadbalancer will retry for retriable 4xx response codes.
	//   Currently the only retriable error supported is 409.
	// * refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code.
	//   This reset type indicates that it is safe to retry.
	// * cancelled: Loadbalancer will retry if the gRPC status code in the response header is set to cancelled
	// * deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded
	// * resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted
	// * unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable
	// +optional
	RetryConditions []string `json:"retryConditions,omitempty" tf:"retry_conditions"`
}

func (*UrlMapSpecDefaultRouteActionRetryPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionRetryPolicy.

func (*UrlMapSpecDefaultRouteActionRetryPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionRetryPolicyCodec

type UrlMapSpecDefaultRouteActionRetryPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionRetryPolicyCodec) Decode

func (UrlMapSpecDefaultRouteActionRetryPolicyCodec) Encode

func (UrlMapSpecDefaultRouteActionRetryPolicyCodec) IsEmpty

type UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeout

type UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are
	// represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.
	// Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
	// +optional
	Seconds *string `json:"seconds,omitempty" tf:"seconds"`
}

func (*UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeout.

func (*UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeoutCodec

type UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeoutCodec) Decode

func (UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeoutCodec) Encode

func (UrlMapSpecDefaultRouteActionRetryPolicyPerTryTimeoutCodec) IsEmpty

type UrlMapSpecDefaultRouteActionTimeout

type UrlMapSpecDefaultRouteActionTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented
	// with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.
	// Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
	// +optional
	Seconds *string `json:"seconds,omitempty" tf:"seconds"`
}

func (*UrlMapSpecDefaultRouteActionTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionTimeout.

func (*UrlMapSpecDefaultRouteActionTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionTimeoutCodec

type UrlMapSpecDefaultRouteActionTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionTimeoutCodec) Decode

func (UrlMapSpecDefaultRouteActionTimeoutCodec) Encode

func (UrlMapSpecDefaultRouteActionTimeoutCodec) IsEmpty

type UrlMapSpecDefaultRouteActionUrlRewrite

type UrlMapSpecDefaultRouteActionUrlRewrite struct {
	// Prior to forwarding the request to the selected service, the request's host header is replaced
	// with contents of hostRewrite.
	//
	// The value must be between 1 and 255 characters.
	// +optional
	HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite"`
	// Prior to forwarding the request to the selected backend service, the matching portion of the
	// request's path is replaced by pathPrefixRewrite.
	//
	// The value must be between 1 and 1024 characters.
	// +optional
	PathPrefixRewrite *string `json:"pathPrefixRewrite,omitempty" tf:"path_prefix_rewrite"`
}

func (*UrlMapSpecDefaultRouteActionUrlRewrite) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionUrlRewrite.

func (*UrlMapSpecDefaultRouteActionUrlRewrite) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionUrlRewriteCodec

type UrlMapSpecDefaultRouteActionUrlRewriteCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionUrlRewriteCodec) Decode

func (UrlMapSpecDefaultRouteActionUrlRewriteCodec) Encode

func (UrlMapSpecDefaultRouteActionUrlRewriteCodec) IsEmpty

type UrlMapSpecDefaultRouteActionWeightedBackendServices

type UrlMapSpecDefaultRouteActionWeightedBackendServices struct {
	// The full or partial URL to the default BackendService resource. Before forwarding the
	// request to backendService, the loadbalancer applies any relevant headerActions
	// specified as part of this backendServiceWeight.
	// +optional
	BackendService *string `json:"backendService,omitempty" tf:"backend_service"`
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService.
	//
	// headerAction specified here take effect before headerAction in the enclosing
	// HttpRouteRule, PathMatcher and UrlMap.
	// +optional
	HeaderAction *UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// Specifies the fraction of traffic sent to backendService, computed as
	// weight / (sum of all weightedBackendService weights in routeAction) .
	//
	// The selection of a backend service is determined only for new traffic. Once a user's request
	// has been directed to a backendService, subsequent requests will be sent to the same backendService
	// as determined by the BackendService's session affinity policy.
	//
	// The value must be between 0 and 1000
	// +optional
	Weight *int64 `json:"weight,omitempty" tf:"weight"`
}

func (*UrlMapSpecDefaultRouteActionWeightedBackendServices) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionWeightedBackendServices.

func (*UrlMapSpecDefaultRouteActionWeightedBackendServices) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderAction

type UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToAdd []UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request prior to
	// forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response prior to sending the
	// response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderAction.

func (*UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionCodec

type UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionCodec) Decode

func (UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionCodec) Encode

func (UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionCodec) IsEmpty

type UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd

type UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd struct {
	// The name of the header to add.
	// +optional
	HeaderName *string `json:"headerName,omitempty" tf:"header_name"`
	// The value of the header to add.
	// +optional
	HeaderValue *string `json:"headerValue,omitempty" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the header.
	// If true, headerValue is set for the header, discarding any values that were set for that header.
	// +optional
	Replace *bool `json:"replace,omitempty" tf:"replace"`
}

func (*UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd.

func (*UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd

type UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd struct {
	// The name of the header to add.
	// +optional
	HeaderName *string `json:"headerName,omitempty" tf:"header_name"`
	// The value of the header to add.
	// +optional
	HeaderValue *string `json:"headerValue,omitempty" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the header.
	// If true, headerValue is set for the header, discarding any values that were set for that header.
	// +optional
	Replace *bool `json:"replace,omitempty" tf:"replace"`
}

func (*UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd.

func (*UrlMapSpecDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultURLRedirect

type UrlMapSpecDefaultURLRedirect struct {
	// The host that will be used in the redirect response instead of the one that was
	// supplied in the request. The value must be between 1 and 255 characters.
	// +optional
	HostRedirect *string `json:"hostRedirect,omitempty" tf:"host_redirect"`
	// If set to true, the URL scheme in the redirected request is set to https. If set to
	// false, the URL scheme of the redirected request will remain the same as that of the
	// request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this
	// true for TargetHttpsProxy is not permitted. The default is set to false.
	// +optional
	HttpsRedirect *bool `json:"httpsRedirect,omitempty" tf:"https_redirect"`
	// The path that will be used in the redirect response instead of the one that was
	// supplied in the request. pathRedirect cannot be supplied together with
	// prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the
	// original request will be used for the redirect. The value must be between 1 and 1024
	// characters.
	// +optional
	PathRedirect *string `json:"pathRedirect,omitempty" tf:"path_redirect"`
	// The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch,
	// retaining the remaining portion of the URL before redirecting the request.
	// prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or
	// neither. If neither is supplied, the path of the original request will be used for
	// the redirect. The value must be between 1 and 1024 characters.
	// +optional
	PrefixRedirect *string `json:"prefixRedirect,omitempty" tf:"prefix_redirect"`
	// The HTTP Status code to use for this RedirectAction. Supported values are:
	//
	// * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
	//
	// * FOUND, which corresponds to 302.
	//
	// * SEE_OTHER which corresponds to 303.
	//
	// * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
	// will be retained.
	//
	// * PERMANENT_REDIRECT, which corresponds to 308. In this case,
	// the request method will be retained. Possible values: ["FOUND", "MOVED_PERMANENTLY_DEFAULT", "PERMANENT_REDIRECT", "SEE_OTHER", "TEMPORARY_REDIRECT"]
	// +optional
	RedirectResponseCode *string `json:"redirectResponseCode,omitempty" tf:"redirect_response_code"`
	// If set to true, any accompanying query portion of the original URL is removed prior
	// to redirecting the request. If set to false, the query portion of the original URL is
	// retained. The default is set to false.
	//  This field is required to ensure an empty block is not set. The normal default value is false.
	StripQuery *bool `json:"stripQuery" tf:"strip_query"`
}

func (*UrlMapSpecDefaultURLRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecDefaultURLRedirect.

func (*UrlMapSpecDefaultURLRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecDefaultURLRedirectCodec

type UrlMapSpecDefaultURLRedirectCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecDefaultURLRedirectCodec) Decode

func (UrlMapSpecDefaultURLRedirectCodec) Encode

func (UrlMapSpecDefaultURLRedirectCodec) IsEmpty

type UrlMapSpecHeaderAction

type UrlMapSpecHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the
	// backendService.
	// +optional
	RequestHeadersToAdd []UrlMapSpecHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request
	// prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []UrlMapSpecHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response
	// prior to sending the response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*UrlMapSpecHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecHeaderAction.

func (*UrlMapSpecHeaderAction) DeepCopyInto

func (in *UrlMapSpecHeaderAction) DeepCopyInto(out *UrlMapSpecHeaderAction)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecHeaderActionCodec

type UrlMapSpecHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecHeaderActionCodec) Decode

func (UrlMapSpecHeaderActionCodec) Encode

func (UrlMapSpecHeaderActionCodec) IsEmpty

type UrlMapSpecHeaderActionRequestHeadersToAdd

type UrlMapSpecHeaderActionRequestHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecHeaderActionRequestHeadersToAdd.

func (*UrlMapSpecHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecHeaderActionResponseHeadersToAdd

type UrlMapSpecHeaderActionResponseHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecHeaderActionResponseHeadersToAdd.

func (*UrlMapSpecHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecHostRule

type UrlMapSpecHostRule struct {
	// An optional description of this resource. Provide this property when you create
	// the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The list of host patterns to match. They must be valid hostnames, except * will
	// match any string of ([a-z0-9-.]*). In that case, * must be the first character
	// and must be followed in the pattern by either - or ..
	Hosts []string `json:"hosts" tf:"hosts"`
	// The name of the PathMatcher to use to match the path portion of the URL if the
	// hostRule matches the URL's host portion.
	PathMatcher *string `json:"pathMatcher" tf:"path_matcher"`
}

func (*UrlMapSpecHostRule) DeepCopy

func (in *UrlMapSpecHostRule) DeepCopy() *UrlMapSpecHostRule

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecHostRule.

func (*UrlMapSpecHostRule) DeepCopyInto

func (in *UrlMapSpecHostRule) DeepCopyInto(out *UrlMapSpecHostRule)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcher

type UrlMapSpecPathMatcher struct {
	// defaultRouteAction takes effect when none of the pathRules or routeRules match. The load balancer performs
	// advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request
	// to the selected backend. If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set.
	// Conversely if defaultService is set, defaultRouteAction cannot contain any weightedBackendServices.
	//
	// Only one of defaultRouteAction or defaultUrlRedirect must be set.
	// +optional
	DefaultRouteAction *UrlMapSpecPathMatcherDefaultRouteAction `json:"defaultRouteAction,omitempty" tf:"default_route_action"`
	// The backend service or backend bucket to use when none of the given paths match.
	// +optional
	DefaultService *string `json:"defaultService,omitempty" tf:"default_service"`
	// When none of the specified hostRules match, the request is redirected to a URL specified
	// by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or
	// defaultRouteAction must not be set.
	// +optional
	DefaultURLRedirect *UrlMapSpecPathMatcherDefaultURLRedirect `json:"defaultURLRedirect,omitempty" tf:"default_url_redirect"`
	// An optional description of this resource. Provide this property when you create
	// the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService. HeaderAction specified here are applied after the
	// matching HttpRouteRule HeaderAction and before the HeaderAction in the UrlMap
	// +optional
	HeaderAction *UrlMapSpecPathMatcherHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// The name to which this PathMatcher is referred by the HostRule.
	Name *string `json:"name" tf:"name"`
	// The list of path rules. Use this list instead of routeRules when routing based
	// on simple path matching is all that's required. The order by which path rules
	// are specified does not matter. Matches are always done on the longest-path-first
	// basis. For example: a pathRule with a path /a/b/c/* will match before /a/b/*
	// irrespective of the order in which those paths appear in this list. Within a
	// given pathMatcher, only one of pathRules or routeRules must be set.
	// +optional
	PathRule []UrlMapSpecPathMatcherPathRule `json:"pathRule,omitempty" tf:"path_rule"`
	// The list of ordered HTTP route rules. Use this list instead of pathRules when
	// advanced route matching and routing actions are desired. The order of specifying
	// routeRules matters: the first rule that matches will cause its specified routing
	// action to take effect. Within a given pathMatcher, only one of pathRules or
	// routeRules must be set. routeRules are not supported in UrlMaps intended for
	// External load balancers.
	// +optional
	RouteRules []UrlMapSpecPathMatcherRouteRules `json:"routeRules,omitempty" tf:"route_rules"`
}

func (*UrlMapSpecPathMatcher) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcher.

func (*UrlMapSpecPathMatcher) DeepCopyInto

func (in *UrlMapSpecPathMatcher) DeepCopyInto(out *UrlMapSpecPathMatcher)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteAction

type UrlMapSpecPathMatcherDefaultRouteAction struct {
	// The specification for allowing client side cross-origin requests. Please see
	// [W3C Recommendation for Cross Origin Resource Sharing](https://www.w3.org/TR/cors/)
	// +optional
	CorsPolicy *UrlMapSpecPathMatcherDefaultRouteActionCorsPolicy `json:"corsPolicy,omitempty" tf:"cors_policy"`
	// The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure.
	// As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a
	// percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted
	// by the Loadbalancer for a percentage of requests.
	//
	// timeout and retryPolicy will be ignored by clients that are configured with a faultInjectionPolicy.
	// +optional
	FaultInjectionPolicy *UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicy `json:"faultInjectionPolicy,omitempty" tf:"fault_injection_policy"`
	// Specifies the policy on how requests intended for the route's backends are shadowed to a separate mirrored backend service.
	// Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service,
	// the host / authority header is suffixed with -shadow.
	// +optional
	RequestMirrorPolicy *UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicy `json:"requestMirrorPolicy,omitempty" tf:"request_mirror_policy"`
	// Specifies the retry policy associated with this route.
	// +optional
	RetryPolicy *UrlMapSpecPathMatcherDefaultRouteActionRetryPolicy `json:"retryPolicy,omitempty" tf:"retry_policy"`
	// Specifies the timeout for the selected route. Timeout is computed from the time the request has been
	// fully processed (i.e. end-of-stream) up until the response has been completely processed. Timeout includes all retries.
	//
	// If not specified, will use the largest timeout among all backend services associated with the route.
	// +optional
	Timeout *UrlMapSpecPathMatcherDefaultRouteActionTimeout `json:"timeout,omitempty" tf:"timeout"`
	// The spec to modify the URL of the request, prior to forwarding the request to the matched service.
	// +optional
	UrlRewrite *UrlMapSpecPathMatcherDefaultRouteActionUrlRewrite `json:"urlRewrite,omitempty" tf:"url_rewrite"`
	// A list of weighted backend services to send traffic to when a route match occurs.
	// The weights determine the fraction of traffic that flows to their corresponding backend service.
	// If all traffic needs to go to a single backend service, there must be one weightedBackendService
	// with weight set to a non 0 number.
	//
	// Once a backendService is identified and before forwarding the request to the backend service,
	// advanced routing actions like Url rewrites and header transformations are applied depending on
	// additional settings specified in this HttpRouteAction.
	// +optional
	WeightedBackendServices []UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServices `json:"weightedBackendServices,omitempty" tf:"weighted_backend_services"`
}

func (*UrlMapSpecPathMatcherDefaultRouteAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteAction.

func (*UrlMapSpecPathMatcherDefaultRouteAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionCodec

type UrlMapSpecPathMatcherDefaultRouteActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionCorsPolicy

type UrlMapSpecPathMatcherDefaultRouteActionCorsPolicy struct {
	// In response to a preflight request, setting this to true indicates that the actual request can include user credentials.
	// This translates to the Access-Control-Allow-Credentials header.
	// +optional
	AllowCredentials *bool `json:"allowCredentials,omitempty" tf:"allow_credentials"`
	// Specifies the content for the Access-Control-Allow-Headers header.
	// +optional
	AllowHeaders []string `json:"allowHeaders,omitempty" tf:"allow_headers"`
	// Specifies the content for the Access-Control-Allow-Methods header.
	// +optional
	AllowMethods []string `json:"allowMethods,omitempty" tf:"allow_methods"`
	// Specifies the regular expression patterns that match allowed origins. For regular expression grammar
	// please see en.cppreference.com/w/cpp/regex/ecmascript
	// An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
	// +optional
	AllowOriginRegexes []string `json:"allowOriginRegexes,omitempty" tf:"allow_origin_regexes"`
	// Specifies the list of origins that will be allowed to do CORS requests.
	// An origin is allowed if it matches either an item in allowOrigins or an item in allowOriginRegexes.
	// +optional
	AllowOrigins []string `json:"allowOrigins,omitempty" tf:"allow_origins"`
	// If true, specifies the CORS policy is disabled. The default value is false, which indicates that the CORS policy is in effect.
	// +optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled"`
	// Specifies the content for the Access-Control-Expose-Headers header.
	// +optional
	ExposeHeaders []string `json:"exposeHeaders,omitempty" tf:"expose_headers"`
	// Specifies how long results of a preflight request can be cached in seconds.
	// This translates to the Access-Control-Max-Age header.
	// +optional
	MaxAge *int64 `json:"maxAge,omitempty" tf:"max_age"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionCorsPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionCorsPolicy.

func (*UrlMapSpecPathMatcherDefaultRouteActionCorsPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionCorsPolicyCodec

type UrlMapSpecPathMatcherDefaultRouteActionCorsPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionCorsPolicyCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionCorsPolicyCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionCorsPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicy

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicy struct {
	// The specification for how client requests are aborted as part of fault injection.
	// +optional
	Abort *UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbort `json:"abort,omitempty" tf:"abort"`
	// The specification for how client requests are delayed as part of fault injection, before being sent to a backend service.
	// +optional
	Delay *UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelay `json:"delay,omitempty" tf:"delay"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicy.

func (*UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbort

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbort struct {
	// The HTTP status code used to abort the request.
	// The value must be between 200 and 599 inclusive.
	// +optional
	HttpStatus *int64 `json:"httpStatus,omitempty" tf:"http_status"`
	// The percentage of traffic (connections/operations/requests) which will be aborted as part of fault injection.
	// The value must be between 0.0 and 100.0 inclusive.
	// +optional
	Percentage *float64 `json:"percentage,omitempty" tf:"percentage"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbort.

func (*UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbort) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbortCodec

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbortCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbortCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbortCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyAbortCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyCodec

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelay

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelay struct {
	// Specifies the value of the fixed delay interval.
	// +optional
	FixedDelay *UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelay `json:"fixedDelay,omitempty" tf:"fixed_delay"`
	// The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection.
	// The value must be between 0.0 and 100.0 inclusive.
	// +optional
	Percentage *float64 `json:"percentage,omitempty" tf:"percentage"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelay.

func (*UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayCodec

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelay

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelay struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are
	// represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.
	// Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
	// +optional
	Seconds *string `json:"seconds,omitempty" tf:"seconds"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelay.

func (*UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec

type UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionFaultInjectionPolicyDelayFixedDelayCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicy

type UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicy struct {
	// The full or partial URL to the BackendService resource being mirrored to.
	BackendService *string `json:"backendService" tf:"backend_service"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicy.

func (*UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicyCodec

type UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicyCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicyCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionRequestMirrorPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionRetryPolicy

type UrlMapSpecPathMatcherDefaultRouteActionRetryPolicy struct {
	// Specifies the allowed number retries. This number must be > 0. If not specified, defaults to 1.
	// +optional
	NumRetries *int64 `json:"numRetries,omitempty" tf:"num_retries"`
	// Specifies a non-zero timeout per retry attempt.
	//
	// If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction is not set,
	// will use the largest timeout among all backend services associated with the route.
	// +optional
	PerTryTimeout *UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeout `json:"perTryTimeout,omitempty" tf:"per_try_timeout"`
	// Specfies one or more conditions when this retry rule applies. Valid values are:
	//
	// * 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code,
	//   or if the backend service does not respond at all, example: disconnects, reset, read timeout,
	// * connection failure, and refused streams.
	// * gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504.
	// * connect-failure: Loadbalancer will retry on failures connecting to backend services,
	//   for example due to connection timeouts.
	// * retriable-4xx: Loadbalancer will retry for retriable 4xx response codes.
	//   Currently the only retriable error supported is 409.
	// * refused-stream:Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code.
	//   This reset type indicates that it is safe to retry.
	// * cancelled: Loadbalancer will retry if the gRPC status code in the response header is set to cancelled
	// * deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded
	// * resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted
	// * unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable
	// +optional
	RetryConditions []string `json:"retryConditions,omitempty" tf:"retry_conditions"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionRetryPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionRetryPolicy.

func (*UrlMapSpecPathMatcherDefaultRouteActionRetryPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyCodec

type UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeout

type UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are
	// represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.
	// Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
	// +optional
	Seconds *string `json:"seconds,omitempty" tf:"seconds"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeout.

func (*UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeoutCodec

type UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeoutCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeoutCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionRetryPolicyPerTryTimeoutCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionTimeout

type UrlMapSpecPathMatcherDefaultRouteActionTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented
	// with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.
	// Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
	// +optional
	Seconds *string `json:"seconds,omitempty" tf:"seconds"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionTimeout.

func (*UrlMapSpecPathMatcherDefaultRouteActionTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionTimeoutCodec

type UrlMapSpecPathMatcherDefaultRouteActionTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionTimeoutCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionTimeoutCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionTimeoutCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionUrlRewrite

type UrlMapSpecPathMatcherDefaultRouteActionUrlRewrite struct {
	// Prior to forwarding the request to the selected service, the request's host header is replaced
	// with contents of hostRewrite.
	//
	// The value must be between 1 and 255 characters.
	// +optional
	HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite"`
	// Prior to forwarding the request to the selected backend service, the matching portion of the
	// request's path is replaced by pathPrefixRewrite.
	//
	// The value must be between 1 and 1024 characters.
	// +optional
	PathPrefixRewrite *string `json:"pathPrefixRewrite,omitempty" tf:"path_prefix_rewrite"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionUrlRewrite) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionUrlRewrite.

func (*UrlMapSpecPathMatcherDefaultRouteActionUrlRewrite) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionUrlRewriteCodec

type UrlMapSpecPathMatcherDefaultRouteActionUrlRewriteCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionUrlRewriteCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionUrlRewriteCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionUrlRewriteCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServices

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServices struct {
	// The full or partial URL to the default BackendService resource. Before forwarding the
	// request to backendService, the loadbalancer applies any relevant headerActions
	// specified as part of this backendServiceWeight.
	// +optional
	BackendService *string `json:"backendService,omitempty" tf:"backend_service"`
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService.
	//
	// headerAction specified here take effect before headerAction in the enclosing
	// HttpRouteRule, PathMatcher and UrlMap.
	// +optional
	HeaderAction *UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// Specifies the fraction of traffic sent to backendService, computed as
	// weight / (sum of all weightedBackendService weights in routeAction) .
	//
	// The selection of a backend service is determined only for new traffic. Once a user's request
	// has been directed to a backendService, subsequent requests will be sent to the same backendService
	// as determined by the BackendService's session affinity policy.
	//
	// The value must be between 0 and 1000
	// +optional
	Weight *int64 `json:"weight,omitempty" tf:"weight"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServices) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServices.

func (*UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServices) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderAction

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToAdd []UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request prior to
	// forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response prior to sending the
	// response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderAction.

func (*UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionCodec

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionCodec) Decode

func (UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionCodec) Encode

func (UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionCodec) IsEmpty

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd struct {
	// The name of the header to add.
	// +optional
	HeaderName *string `json:"headerName,omitempty" tf:"header_name"`
	// The value of the header to add.
	// +optional
	HeaderValue *string `json:"headerValue,omitempty" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the header.
	// If true, headerValue is set for the header, discarding any values that were set for that header.
	// +optional
	Replace *bool `json:"replace,omitempty" tf:"replace"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd.

func (*UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd

type UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd struct {
	// The name of the header to add.
	// +optional
	HeaderName *string `json:"headerName,omitempty" tf:"header_name"`
	// The value of the header to add.
	// +optional
	HeaderValue *string `json:"headerValue,omitempty" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the header.
	// If true, headerValue is set for the header, discarding any values that were set for that header.
	// +optional
	Replace *bool `json:"replace,omitempty" tf:"replace"`
}

func (*UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd.

func (*UrlMapSpecPathMatcherDefaultRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultURLRedirect

type UrlMapSpecPathMatcherDefaultURLRedirect struct {
	// The host that will be used in the redirect response instead of the one that was
	// supplied in the request. The value must be between 1 and 255 characters.
	// +optional
	HostRedirect *string `json:"hostRedirect,omitempty" tf:"host_redirect"`
	// If set to true, the URL scheme in the redirected request is set to https. If set to
	// false, the URL scheme of the redirected request will remain the same as that of the
	// request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this
	// true for TargetHttpsProxy is not permitted. The default is set to false.
	// +optional
	HttpsRedirect *bool `json:"httpsRedirect,omitempty" tf:"https_redirect"`
	// The path that will be used in the redirect response instead of the one that was
	// supplied in the request. pathRedirect cannot be supplied together with
	// prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the
	// original request will be used for the redirect. The value must be between 1 and 1024
	// characters.
	// +optional
	PathRedirect *string `json:"pathRedirect,omitempty" tf:"path_redirect"`
	// The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch,
	// retaining the remaining portion of the URL before redirecting the request.
	// prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or
	// neither. If neither is supplied, the path of the original request will be used for
	// the redirect. The value must be between 1 and 1024 characters.
	// +optional
	PrefixRedirect *string `json:"prefixRedirect,omitempty" tf:"prefix_redirect"`
	// The HTTP Status code to use for this RedirectAction. Supported values are:
	//
	// * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
	//
	// * FOUND, which corresponds to 302.
	//
	// * SEE_OTHER which corresponds to 303.
	//
	// * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
	// will be retained.
	//
	// * PERMANENT_REDIRECT, which corresponds to 308. In this case,
	// the request method will be retained. Possible values: ["FOUND", "MOVED_PERMANENTLY_DEFAULT", "PERMANENT_REDIRECT", "SEE_OTHER", "TEMPORARY_REDIRECT"]
	// +optional
	RedirectResponseCode *string `json:"redirectResponseCode,omitempty" tf:"redirect_response_code"`
	// If set to true, any accompanying query portion of the original URL is removed prior
	// to redirecting the request. If set to false, the query portion of the original URL is
	// retained.
	//  This field is required to ensure an empty block is not set. The normal default value is false.
	StripQuery *bool `json:"stripQuery" tf:"strip_query"`
}

func (*UrlMapSpecPathMatcherDefaultURLRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherDefaultURLRedirect.

func (*UrlMapSpecPathMatcherDefaultURLRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherDefaultURLRedirectCodec

type UrlMapSpecPathMatcherDefaultURLRedirectCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherDefaultURLRedirectCodec) Decode

func (UrlMapSpecPathMatcherDefaultURLRedirectCodec) Encode

func (UrlMapSpecPathMatcherDefaultURLRedirectCodec) IsEmpty

type UrlMapSpecPathMatcherHeaderAction

type UrlMapSpecPathMatcherHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the
	// backendService.
	// +optional
	RequestHeadersToAdd []UrlMapSpecPathMatcherHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request
	// prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []UrlMapSpecPathMatcherHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response
	// prior to sending the response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*UrlMapSpecPathMatcherHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherHeaderAction.

func (*UrlMapSpecPathMatcherHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherHeaderActionCodec

type UrlMapSpecPathMatcherHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherHeaderActionCodec) Decode

func (UrlMapSpecPathMatcherHeaderActionCodec) Encode

func (UrlMapSpecPathMatcherHeaderActionCodec) IsEmpty

type UrlMapSpecPathMatcherHeaderActionRequestHeadersToAdd

type UrlMapSpecPathMatcherHeaderActionRequestHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecPathMatcherHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherHeaderActionRequestHeadersToAdd.

func (*UrlMapSpecPathMatcherHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherHeaderActionResponseHeadersToAdd

type UrlMapSpecPathMatcherHeaderActionResponseHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecPathMatcherHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherHeaderActionResponseHeadersToAdd.

func (*UrlMapSpecPathMatcherHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRule

type UrlMapSpecPathMatcherPathRule struct {
	// The list of path patterns to match. Each must start with / and the only place a
	// \* is allowed is at the end following a /. The string fed to the path matcher
	// does not include any text after the first ? or #, and those chars are not
	// allowed here.
	Paths []string `json:"paths" tf:"paths"`
	// In response to a matching path, the load balancer performs advanced routing
	// actions like URL rewrites, header transformations, etc. prior to forwarding the
	// request to the selected backend. If routeAction specifies any
	// weightedBackendServices, service must not be set. Conversely if service is set,
	// routeAction cannot contain any  weightedBackendServices. Only one of routeAction
	// or urlRedirect must be set.
	// +optional
	RouteAction *UrlMapSpecPathMatcherPathRuleRouteAction `json:"routeAction,omitempty" tf:"route_action"`
	// The backend service or backend bucket to use if any of the given paths match.
	// +optional
	Service *string `json:"service,omitempty" tf:"service"`
	// When a path pattern is matched, the request is redirected to a URL specified
	// by urlRedirect. If urlRedirect is specified, service or routeAction must not
	// be set.
	// +optional
	UrlRedirect *UrlMapSpecPathMatcherPathRuleUrlRedirect `json:"urlRedirect,omitempty" tf:"url_redirect"`
}

func (*UrlMapSpecPathMatcherPathRule) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRule.

func (*UrlMapSpecPathMatcherPathRule) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteAction

type UrlMapSpecPathMatcherPathRuleRouteAction struct {
	// The specification for allowing client side cross-origin requests. Please see W3C
	// Recommendation for Cross Origin Resource Sharing
	// +optional
	CorsPolicy *UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicy `json:"corsPolicy,omitempty" tf:"cors_policy"`
	// The specification for fault injection introduced into traffic to test the
	// resiliency of clients to backend service failure. As part of fault injection,
	// when clients send requests to a backend service, delays can be introduced by
	// Loadbalancer on a percentage of requests before sending those request to the
	// backend service. Similarly requests from clients can be aborted by the
	// Loadbalancer for a percentage of requests. timeout and retry_policy will be
	// ignored by clients that are configured with a fault_injection_policy.
	// +optional
	FaultInjectionPolicy *UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy `json:"faultInjectionPolicy,omitempty" tf:"fault_injection_policy"`
	// Specifies the policy on how requests intended for the route's backends are
	// shadowed to a separate mirrored backend service. Loadbalancer does not wait for
	// responses from the shadow service. Prior to sending traffic to the shadow
	// service, the host / authority header is suffixed with -shadow.
	// +optional
	RequestMirrorPolicy *UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy `json:"requestMirrorPolicy,omitempty" tf:"request_mirror_policy"`
	// Specifies the retry policy associated with this route.
	// +optional
	RetryPolicy *UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicy `json:"retryPolicy,omitempty" tf:"retry_policy"`
	// Specifies the timeout for the selected route. Timeout is computed from the time
	// the request is has been fully processed (i.e. end-of-stream) up until the
	// response has been completely processed. Timeout includes all retries. If not
	// specified, the default value is 15 seconds.
	// +optional
	Timeout *UrlMapSpecPathMatcherPathRuleRouteActionTimeout `json:"timeout,omitempty" tf:"timeout"`
	// The spec to modify the URL of the request, prior to forwarding the request to
	// the matched service
	// +optional
	UrlRewrite *UrlMapSpecPathMatcherPathRuleRouteActionUrlRewrite `json:"urlRewrite,omitempty" tf:"url_rewrite"`
	// A list of weighted backend services to send traffic to when a route match
	// occurs. The weights determine the fraction of traffic that flows to their
	// corresponding backend service. If all traffic needs to go to a single backend
	// service, there must be one  weightedBackendService with weight set to a non 0
	// number. Once a backendService is identified and before forwarding the request to
	// the backend service, advanced routing actions like Url rewrites and header
	// transformations are applied depending on additional settings specified in this
	// HttpRouteAction.
	// +optional
	WeightedBackendServices []UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices `json:"weightedBackendServices,omitempty" tf:"weighted_backend_services"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteAction.

func (*UrlMapSpecPathMatcherPathRuleRouteAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionCodec

type UrlMapSpecPathMatcherPathRuleRouteActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicy

type UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicy struct {
	// In response to a preflight request, setting this to true indicates that the
	// actual request can include user credentials. This translates to the Access-
	// Control-Allow-Credentials header. Defaults to false.
	// +optional
	AllowCredentials *bool `json:"allowCredentials,omitempty" tf:"allow_credentials"`
	// Specifies the content for the Access-Control-Allow-Headers header.
	// +optional
	AllowHeaders []string `json:"allowHeaders,omitempty" tf:"allow_headers"`
	// Specifies the content for the Access-Control-Allow-Methods header.
	// +optional
	AllowMethods []string `json:"allowMethods,omitempty" tf:"allow_methods"`
	// Specifies the regular expression patterns that match allowed origins. For
	// regular expression grammar please see en.cppreference.com/w/cpp/regex/ecmascript
	// An origin is allowed if it matches either allow_origins or allow_origin_regex.
	// +optional
	AllowOriginRegexes []string `json:"allowOriginRegexes,omitempty" tf:"allow_origin_regexes"`
	// Specifies the list of origins that will be allowed to do CORS requests. An
	// origin is allowed if it matches either allow_origins or allow_origin_regex.
	// +optional
	AllowOrigins []string `json:"allowOrigins,omitempty" tf:"allow_origins"`
	// If true, specifies the CORS policy is disabled.
	Disabled *bool `json:"disabled" tf:"disabled"`
	// Specifies the content for the Access-Control-Expose-Headers header.
	// +optional
	ExposeHeaders []string `json:"exposeHeaders,omitempty" tf:"expose_headers"`
	// Specifies how long the results of a preflight request can be cached. This
	// translates to the content for the Access-Control-Max-Age header.
	// +optional
	MaxAge *int64 `json:"maxAge,omitempty" tf:"max_age"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicy.

func (*UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec

type UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionCorsPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy struct {
	// The specification for how client requests are aborted as part of fault
	// injection.
	// +optional
	Abort *UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort `json:"abort,omitempty" tf:"abort"`
	// The specification for how client requests are delayed as part of fault
	// injection, before being sent to a backend service.
	// +optional
	Delay *UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay `json:"delay,omitempty" tf:"delay"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy.

func (*UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort struct {
	// The HTTP status code used to abort the request. The value must be between 200
	// and 599 inclusive.
	HttpStatus *int64 `json:"httpStatus" tf:"http_status"`
	// The percentage of traffic (connections/operations/requests) which will be
	// aborted as part of fault injection. The value must be between 0.0 and 100.0
	// inclusive.
	Percentage *float64 `json:"percentage" tf:"percentage"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort.

func (*UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyAbortCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay struct {
	// Specifies the value of the fixed delay interval.
	FixedDelay *UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay `json:"fixedDelay" tf:"fixed_delay"`
	// The percentage of traffic (connections/operations/requests) on which delay will
	// be introduced as part of fault injection. The value must be between 0.0 and
	// 100.0 inclusive.
	Percentage *float64 `json:"percentage" tf:"percentage"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay.

func (*UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay.

func (*UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec

type UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelayCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy

type UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy struct {
	// The BackendService resource being mirrored to.
	BackendService *string `json:"backendService" tf:"backend_service"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy.

func (*UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec

type UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionRequestMirrorPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicy

type UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicy struct {
	// Specifies the allowed number retries. This number must be > 0.
	// +optional
	NumRetries *int64 `json:"numRetries,omitempty" tf:"num_retries"`
	// Specifies a non-zero timeout per retry attempt.
	// +optional
	PerTryTimeout *UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout `json:"perTryTimeout,omitempty" tf:"per_try_timeout"`
	// Specifies one or more conditions when this retry rule applies. Valid values are:
	//
	// * 5xx: Loadbalancer will attempt a retry if the backend service responds with
	// any 5xx response code, or if the backend service does not respond at all,
	// example: disconnects, reset, read timeout, connection failure, and refused
	// streams.
	// * gateway-error: Similar to 5xx, but only applies to response codes
	// 502, 503 or 504.
	// * connect-failure: Loadbalancer will retry on failures
	// connecting to backend services, for example due to connection timeouts.
	// * retriable-4xx: Loadbalancer will retry for retriable 4xx response codes.
	// Currently the only retriable error supported is 409.
	// * refused-stream: Loadbalancer will retry if the backend service resets the stream with a
	// REFUSED_STREAM error code. This reset type indicates that it is safe to retry.
	// * cancelled: Loadbalancer will retry if the gRPC status code in the response
	// header is set to cancelled
	// * deadline-exceeded: Loadbalancer will retry if the
	// gRPC status code in the response header is set to deadline-exceeded
	// * resource-exhausted: Loadbalancer will retry if the gRPC status code in the response
	// header is set to resource-exhausted
	// * unavailable: Loadbalancer will retry if
	// the gRPC status code in the response header is set to unavailable
	// +optional
	RetryConditions []string `json:"retryConditions,omitempty" tf:"retry_conditions"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicy.

func (*UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec

type UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout

type UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout.

func (*UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec

type UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeoutCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionTimeout

type UrlMapSpecPathMatcherPathRuleRouteActionTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionTimeout.

func (*UrlMapSpecPathMatcherPathRuleRouteActionTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionTimeoutCodec

type UrlMapSpecPathMatcherPathRuleRouteActionTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionTimeoutCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionTimeoutCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionTimeoutCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionUrlRewrite

type UrlMapSpecPathMatcherPathRuleRouteActionUrlRewrite struct {
	// Prior to forwarding the request to the selected service, the request's host
	// header is replaced with contents of hostRewrite. The value must be between 1 and
	// 255 characters.
	// +optional
	HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite"`
	// Prior to forwarding the request to the selected backend service, the matching
	// portion of the request's path is replaced by pathPrefixRewrite. The value must
	// be between 1 and 1024 characters.
	// +optional
	PathPrefixRewrite *string `json:"pathPrefixRewrite,omitempty" tf:"path_prefix_rewrite"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionUrlRewrite) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionUrlRewrite.

func (*UrlMapSpecPathMatcherPathRuleRouteActionUrlRewrite) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec

type UrlMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionUrlRewriteCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices struct {
	// The default BackendService resource. Before
	// forwarding the request to backendService, the loadbalancer applies any relevant
	// headerActions specified as part of this backendServiceWeight.
	BackendService *string `json:"backendService" tf:"backend_service"`
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService. headerAction specified here take effect before
	// headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap.
	// +optional
	HeaderAction *UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// Specifies the fraction of traffic sent to backendService, computed as weight /
	// (sum of all weightedBackendService weights in routeAction) . The selection of a
	// backend service is determined only for new traffic. Once a user's request has
	// been directed to a backendService, subsequent requests will be sent to the same
	// backendService as determined by the BackendService's session affinity policy.
	// The value must be between 0 and 1000
	Weight *int64 `json:"weight" tf:"weight"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices.

func (*UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServices) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the
	// backendService.
	// +optional
	RequestHeadersToAdd []UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request
	// prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response
	// prior to sending the response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction.

func (*UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec) Decode

func (UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec) Encode

func (UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionCodec) IsEmpty

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd.

func (*UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd

type UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd.

func (*UrlMapSpecPathMatcherPathRuleRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleUrlRedirect

type UrlMapSpecPathMatcherPathRuleUrlRedirect struct {
	// The host that will be used in the redirect response instead of the one
	// that was supplied in the request. The value must be between 1 and 255
	// characters.
	// +optional
	HostRedirect *string `json:"hostRedirect,omitempty" tf:"host_redirect"`
	// If set to true, the URL scheme in the redirected request is set to https.
	// If set to false, the URL scheme of the redirected request will remain the
	// same as that of the request. This must only be set for UrlMaps used in
	// TargetHttpProxys. Setting this true for TargetHttpsProxy is not
	// permitted. The default is set to false.
	// +optional
	HttpsRedirect *bool `json:"httpsRedirect,omitempty" tf:"https_redirect"`
	// The path that will be used in the redirect response instead of the one
	// that was supplied in the request. pathRedirect cannot be supplied
	// together with prefixRedirect. Supply one alone or neither. If neither is
	// supplied, the path of the original request will be used for the redirect.
	// The value must be between 1 and 1024 characters.
	// +optional
	PathRedirect *string `json:"pathRedirect,omitempty" tf:"path_redirect"`
	// The prefix that replaces the prefixMatch specified in the
	// HttpRouteRuleMatch, retaining the remaining portion of the URL before
	// redirecting the request. prefixRedirect cannot be supplied together with
	// pathRedirect. Supply one alone or neither. If neither is supplied, the
	// path of the original request will be used for the redirect. The value
	// must be between 1 and 1024 characters.
	// +optional
	PrefixRedirect *string `json:"prefixRedirect,omitempty" tf:"prefix_redirect"`
	// The HTTP Status code to use for this RedirectAction. Supported values are:
	//
	// * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
	//
	// * FOUND, which corresponds to 302.
	//
	// * SEE_OTHER which corresponds to 303.
	//
	// * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
	// will be retained.
	//
	// * PERMANENT_REDIRECT, which corresponds to 308. In this case,
	// the request method will be retained. Possible values: ["FOUND", "MOVED_PERMANENTLY_DEFAULT", "PERMANENT_REDIRECT", "SEE_OTHER", "TEMPORARY_REDIRECT"]
	// +optional
	RedirectResponseCode *string `json:"redirectResponseCode,omitempty" tf:"redirect_response_code"`
	// If set to true, any accompanying query portion of the original URL is
	// removed prior to redirecting the request. If set to false, the query
	// portion of the original URL is retained.
	//  This field is required to ensure an empty block is not set. The normal default value is false.
	StripQuery *bool `json:"stripQuery" tf:"strip_query"`
}

func (*UrlMapSpecPathMatcherPathRuleUrlRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherPathRuleUrlRedirect.

func (*UrlMapSpecPathMatcherPathRuleUrlRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherPathRuleUrlRedirectCodec

type UrlMapSpecPathMatcherPathRuleUrlRedirectCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherPathRuleUrlRedirectCodec) Decode

func (UrlMapSpecPathMatcherPathRuleUrlRedirectCodec) Encode

func (UrlMapSpecPathMatcherPathRuleUrlRedirectCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRules

type UrlMapSpecPathMatcherRouteRules struct {
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService. The headerAction specified here are applied before
	// the matching pathMatchers[].headerAction and after pathMatchers[].routeRules[].r
	// outeAction.weightedBackendService.backendServiceWeightAction[].headerAction
	// +optional
	HeaderAction *UrlMapSpecPathMatcherRouteRulesHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// The rules for determining a match.
	// +optional
	MatchRules []UrlMapSpecPathMatcherRouteRulesMatchRules `json:"matchRules,omitempty" tf:"match_rules"`
	// For routeRules within a given pathMatcher, priority determines the order
	// in which load balancer will interpret routeRules. RouteRules are evaluated
	// in order of priority, from the lowest to highest number. The priority of
	// a rule decreases as its number increases (1, 2, 3, N+1). The first rule
	// that matches the request is applied.
	//
	// You cannot configure two or more routeRules with the same priority.
	// Priority for each rule must be set to a number between 0 and
	// 2147483647 inclusive.
	//
	// Priority numbers can have gaps, which enable you to add or remove rules
	// in the future without affecting the rest of the rules. For example,
	// 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to which
	// you could add rules numbered from 6 to 8, 10 to 11, and 13 to 15 in the
	// future without any impact on existing rules.
	Priority *int64 `json:"priority" tf:"priority"`
	// In response to a matching matchRule, the load balancer performs advanced routing
	// actions like URL rewrites, header transformations, etc. prior to forwarding the
	// request to the selected backend. If  routeAction specifies any
	// weightedBackendServices, service must not be set. Conversely if service is set,
	// routeAction cannot contain any  weightedBackendServices. Only one of routeAction
	// or urlRedirect must be set.
	// +optional
	RouteAction *UrlMapSpecPathMatcherRouteRulesRouteAction `json:"routeAction,omitempty" tf:"route_action"`
	// The backend service resource to which traffic is
	// directed if this rule is matched. If routeAction is additionally specified,
	// advanced routing actions like URL Rewrites, etc. take effect prior to sending
	// the request to the backend. However, if service is specified, routeAction cannot
	// contain any weightedBackendService s. Conversely, if routeAction specifies any
	// weightedBackendServices, service must not be specified. Only one of urlRedirect,
	// service or routeAction.weightedBackendService must be set.
	// +optional
	Service *string `json:"service,omitempty" tf:"service"`
	// When this rule is matched, the request is redirected to a URL specified by
	// urlRedirect. If urlRedirect is specified, service or routeAction must not be
	// set.
	// +optional
	UrlRedirect *UrlMapSpecPathMatcherRouteRulesUrlRedirect `json:"urlRedirect,omitempty" tf:"url_redirect"`
}

func (*UrlMapSpecPathMatcherRouteRules) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRules.

func (*UrlMapSpecPathMatcherRouteRules) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesHeaderAction

type UrlMapSpecPathMatcherRouteRulesHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the
	// backendService.
	// +optional
	RequestHeadersToAdd []UrlMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request
	// prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []UrlMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response
	// prior to sending the response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*UrlMapSpecPathMatcherRouteRulesHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesHeaderAction.

func (*UrlMapSpecPathMatcherRouteRulesHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesHeaderActionCodec

type UrlMapSpecPathMatcherRouteRulesHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesHeaderActionCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesHeaderActionCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesHeaderActionCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd

type UrlMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd.

func (*UrlMapSpecPathMatcherRouteRulesHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd

type UrlMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd.

func (*UrlMapSpecPathMatcherRouteRulesHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesMatchRules

type UrlMapSpecPathMatcherRouteRulesMatchRules struct {
	// For satisfying the matchRule condition, the path of the request must exactly
	// match the value specified in fullPathMatch after removing any query parameters
	// and anchor that may be part of the original URL. FullPathMatch must be between 1
	// and 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must
	// be specified.
	// +optional
	FullPathMatch *string `json:"fullPathMatch,omitempty" tf:"full_path_match"`
	// Specifies a list of header match criteria, all of which must match corresponding
	// headers in the request.
	// +optional
	HeaderMatches []UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches `json:"headerMatches,omitempty" tf:"header_matches"`
	// Specifies that prefixMatch and fullPathMatch matches are case sensitive.
	// Defaults to false.
	// +optional
	IgnoreCase *bool `json:"ignoreCase,omitempty" tf:"ignore_case"`
	// Opaque filter criteria used by Loadbalancer to restrict routing configuration to
	// a limited set xDS compliant clients. In their xDS requests to Loadbalancer, xDS
	// clients present node metadata. If a match takes place, the relevant routing
	// configuration is made available to those proxies. For each metadataFilter in
	// this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the
	// filterLabels must match the corresponding label provided in the metadata. If its
	// filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match
	// with corresponding labels in the provided metadata. metadataFilters specified
	// here can be overrides those specified in ForwardingRule that refers to this
	// UrlMap. metadataFilters only applies to Loadbalancers that have their
	// loadBalancingScheme set to INTERNAL_SELF_MANAGED.
	// +optional
	MetadataFilters []UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters `json:"metadataFilters,omitempty" tf:"metadata_filters"`
	// For satisfying the matchRule condition, the request's path must begin with the
	// specified prefixMatch. prefixMatch must begin with a /. The value must be
	// between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or
	// regexMatch must be specified.
	// +optional
	PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match"`
	// Specifies a list of query parameter match criteria, all of which must match
	// corresponding query parameters in the request.
	// +optional
	QueryParameterMatches []UrlMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches `json:"queryParameterMatches,omitempty" tf:"query_parameter_matches"`
	// For satisfying the matchRule condition, the path of the request must satisfy the
	// regular expression specified in regexMatch after removing any query parameters
	// and anchor supplied with the original URL. For regular expression grammar please
	// see en.cppreference.com/w/cpp/regex/ecmascript  Only one of prefixMatch,
	// fullPathMatch or regexMatch must be specified.
	// +optional
	RegexMatch *string `json:"regexMatch,omitempty" tf:"regex_match"`
}

func (*UrlMapSpecPathMatcherRouteRulesMatchRules) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesMatchRules.

func (*UrlMapSpecPathMatcherRouteRulesMatchRules) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches

type UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches struct {
	// The value should exactly match contents of exactMatch. Only one of exactMatch,
	// prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
	// +optional
	ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match"`
	// The name of the HTTP header to match. For matching against the HTTP request's
	// authority, use a headerMatch with the header name ":authority". For matching a
	// request's method, use the headerName ":method".
	HeaderName *string `json:"headerName" tf:"header_name"`
	// If set to false, the headerMatch is considered a match if the match criteria
	// above are met. If set to true, the headerMatch is considered a match if the
	// match criteria above are NOT met. Defaults to false.
	// +optional
	InvertMatch *bool `json:"invertMatch,omitempty" tf:"invert_match"`
	// The value of the header must start with the contents of prefixMatch. Only one of
	// exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch
	// must be set.
	// +optional
	PrefixMatch *string `json:"prefixMatch,omitempty" tf:"prefix_match"`
	// A header with the contents of headerName must exist. The match takes place
	// whether or not the request's header has a value or not. Only one of exactMatch,
	// prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
	// +optional
	PresentMatch *bool `json:"presentMatch,omitempty" tf:"present_match"`
	// The header value must be an integer and its value must be in the range specified
	// in rangeMatch. If the header does not contain an integer, number or is empty,
	// the match fails. For example for a range [-5, 0]   - -3 will match.  - 0 will
	// not match.  - 0.25 will not match.  - -3someString will not match.   Only one of
	// exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch
	// must be set.
	// +optional
	RangeMatch *UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch `json:"rangeMatch,omitempty" tf:"range_match"`
	// The value of the header must match the regular expression specified in
	// regexMatch. For regular expression grammar, please see:
	// en.cppreference.com/w/cpp/regex/ecmascript  For matching against a port
	// specified in the HTTP request, use a headerMatch with headerName set to PORT and
	// a regular expression that satisfies the RFC2616 Host header's port specifier.
	// Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or
	// rangeMatch must be set.
	// +optional
	RegexMatch *string `json:"regexMatch,omitempty" tf:"regex_match"`
	// The value of the header must end with the contents of suffixMatch. Only one of
	// exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch
	// must be set.
	// +optional
	SuffixMatch *string `json:"suffixMatch,omitempty" tf:"suffix_match"`
}

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches.

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatches) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch

type UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch struct {
	// The end of the range (exclusive).
	RangeEnd *int64 `json:"rangeEnd" tf:"range_end"`
	// The start of the range (inclusive).
	RangeStart *int64 `json:"rangeStart" tf:"range_start"`
}

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch.

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatch) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec

type UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesMatchRulesHeaderMatchesRangeMatchCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters

type UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters struct {
	// The list of label value pairs that must match labels in the provided metadata
	// based on filterMatchCriteria  This list must not be empty and can have at the
	// most 64 entries.
	// +kubebuilder:validation:MaxItems=64
	// +kubebuilder:validation:MinItems=1
	FilterLabels []UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels `json:"filterLabels" tf:"filter_labels"`
	// Specifies how individual filterLabel matches within the list of filterLabels
	// contribute towards the overall metadataFilter match. Supported values are:
	//   - MATCH_ANY: At least one of the filterLabels must have a matching label in the
	// provided metadata.
	//   - MATCH_ALL: All filterLabels must have matching labels in
	// the provided metadata. Possible values: ["MATCH_ALL", "MATCH_ANY"]
	FilterMatchCriteria *string `json:"filterMatchCriteria" tf:"filter_match_criteria"`
}

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters.

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFilters) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels

type UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels struct {
	// Name of metadata label. The name can have a maximum length of 1024 characters
	// and must be at least 1 character long.
	Name *string `json:"name" tf:"name"`
	// The value of the label must match the specified value. value can have a maximum
	// length of 1024 characters.
	Value *string `json:"value" tf:"value"`
}

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels.

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesMetadataFiltersFilterLabels) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches

type UrlMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches struct {
	// The queryParameterMatch matches if the value of the parameter exactly matches
	// the contents of exactMatch. Only one of presentMatch, exactMatch and regexMatch
	// must be set.
	// +optional
	ExactMatch *string `json:"exactMatch,omitempty" tf:"exact_match"`
	// The name of the query parameter to match. The query parameter must exist in the
	// request, in the absence of which the request match fails.
	Name *string `json:"name" tf:"name"`
	// Specifies that the queryParameterMatch matches if the request contains the query
	// parameter, irrespective of whether the parameter has a value or not. Only one of
	// presentMatch, exactMatch and regexMatch must be set.
	// +optional
	PresentMatch *bool `json:"presentMatch,omitempty" tf:"present_match"`
	// The queryParameterMatch matches if the value of the parameter matches the
	// regular expression specified by regexMatch. For the regular expression grammar,
	// please see en.cppreference.com/w/cpp/regex/ecmascript  Only one of presentMatch,
	// exactMatch and regexMatch must be set.
	// +optional
	RegexMatch *string `json:"regexMatch,omitempty" tf:"regex_match"`
}

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches.

func (*UrlMapSpecPathMatcherRouteRulesMatchRulesQueryParameterMatches) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteAction

type UrlMapSpecPathMatcherRouteRulesRouteAction struct {
	// The specification for allowing client side cross-origin requests. Please see W3C
	// Recommendation for Cross Origin Resource Sharing
	// +optional
	CorsPolicy *UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicy `json:"corsPolicy,omitempty" tf:"cors_policy"`
	// The specification for fault injection introduced into traffic to test the
	// resiliency of clients to backend service failure. As part of fault injection,
	// when clients send requests to a backend service, delays can be introduced by
	// Loadbalancer on a percentage of requests before sending those request to the
	// backend service. Similarly requests from clients can be aborted by the
	// Loadbalancer for a percentage of requests. timeout and retry_policy will be
	// ignored by clients that are configured with a fault_injection_policy.
	// +optional
	FaultInjectionPolicy *UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy `json:"faultInjectionPolicy,omitempty" tf:"fault_injection_policy"`
	// Specifies the policy on how requests intended for the route's backends are
	// shadowed to a separate mirrored backend service. Loadbalancer does not wait for
	// responses from the shadow service. Prior to sending traffic to the shadow
	// service, the host / authority header is suffixed with -shadow.
	// +optional
	RequestMirrorPolicy *UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy `json:"requestMirrorPolicy,omitempty" tf:"request_mirror_policy"`
	// Specifies the retry policy associated with this route.
	// +optional
	RetryPolicy *UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicy `json:"retryPolicy,omitempty" tf:"retry_policy"`
	// Specifies the timeout for the selected route. Timeout is computed from the time
	// the request is has been fully processed (i.e. end-of-stream) up until the
	// response has been completely processed. Timeout includes all retries. If not
	// specified, the default value is 15 seconds.
	// +optional
	Timeout *UrlMapSpecPathMatcherRouteRulesRouteActionTimeout `json:"timeout,omitempty" tf:"timeout"`
	// The spec to modify the URL of the request, prior to forwarding the request to
	// the matched service
	// +optional
	UrlRewrite *UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewrite `json:"urlRewrite,omitempty" tf:"url_rewrite"`
	// A list of weighted backend services to send traffic to when a route match
	// occurs. The weights determine the fraction of traffic that flows to their
	// corresponding backend service. If all traffic needs to go to a single backend
	// service, there must be one  weightedBackendService with weight set to a non 0
	// number. Once a backendService is identified and before forwarding the request to
	// the backend service, advanced routing actions like Url rewrites and header
	// transformations are applied depending on additional settings specified in this
	// HttpRouteAction.
	// +optional
	WeightedBackendServices []UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices `json:"weightedBackendServices,omitempty" tf:"weighted_backend_services"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteAction.

func (*UrlMapSpecPathMatcherRouteRulesRouteAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicy

type UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicy struct {
	// In response to a preflight request, setting this to true indicates that the
	// actual request can include user credentials. This translates to the Access-
	// Control-Allow-Credentials header. Defaults to false.
	// +optional
	AllowCredentials *bool `json:"allowCredentials,omitempty" tf:"allow_credentials"`
	// Specifies the content for the Access-Control-Allow-Headers header.
	// +optional
	AllowHeaders []string `json:"allowHeaders,omitempty" tf:"allow_headers"`
	// Specifies the content for the Access-Control-Allow-Methods header.
	// +optional
	AllowMethods []string `json:"allowMethods,omitempty" tf:"allow_methods"`
	// Specifies the regular expression patterns that match allowed origins. For
	// regular expression grammar please see en.cppreference.com/w/cpp/regex/ecmascript
	// An origin is allowed if it matches either allow_origins or allow_origin_regex.
	// +optional
	AllowOriginRegexes []string `json:"allowOriginRegexes,omitempty" tf:"allow_origin_regexes"`
	// Specifies the list of origins that will be allowed to do CORS requests. An
	// origin is allowed if it matches either allow_origins or allow_origin_regex.
	// +optional
	AllowOrigins []string `json:"allowOrigins,omitempty" tf:"allow_origins"`
	// If true, specifies the CORS policy is disabled.
	// which indicates that the CORS policy is in effect. Defaults to false.
	// +optional
	Disabled *bool `json:"disabled,omitempty" tf:"disabled"`
	// Specifies the content for the Access-Control-Expose-Headers header.
	// +optional
	ExposeHeaders []string `json:"exposeHeaders,omitempty" tf:"expose_headers"`
	// Specifies how long the results of a preflight request can be cached. This
	// translates to the content for the Access-Control-Max-Age header.
	// +optional
	MaxAge *int64 `json:"maxAge,omitempty" tf:"max_age"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicy.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionCorsPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy struct {
	// The specification for how client requests are aborted as part of fault
	// injection.
	// +optional
	Abort *UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort `json:"abort,omitempty" tf:"abort"`
	// The specification for how client requests are delayed as part of fault
	// injection, before being sent to a backend service.
	// +optional
	Delay *UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay `json:"delay,omitempty" tf:"delay"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort struct {
	// The HTTP status code used to abort the request. The value must be between 200
	// and 599 inclusive.
	// +optional
	HttpStatus *int64 `json:"httpStatus,omitempty" tf:"http_status"`
	// The percentage of traffic (connections/operations/requests) which will be
	// aborted as part of fault injection. The value must be between 0.0 and 100.0
	// inclusive.
	// +optional
	Percentage *float64 `json:"percentage,omitempty" tf:"percentage"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbort) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyAbortCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay struct {
	// Specifies the value of the fixed delay interval.
	// +optional
	FixedDelay *UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay `json:"fixedDelay,omitempty" tf:"fixed_delay"`
	// The percentage of traffic (connections/operations/requests) on which delay will
	// be introduced as part of fault injection. The value must be between 0.0 and
	// 100.0 inclusive.
	// +optional
	Percentage *float64 `json:"percentage,omitempty" tf:"percentage"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelay) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionFaultInjectionPolicyDelayFixedDelayCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy

type UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy struct {
	// The BackendService resource being mirrored to.
	BackendService *string `json:"backendService" tf:"backend_service"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionRequestMirrorPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicy

type UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicy struct {
	// Specifies the allowed number retries. This number must be > 0.
	NumRetries *int64 `json:"numRetries" tf:"num_retries"`
	// Specifies a non-zero timeout per retry attempt.
	// If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction
	// is not set, will use the largest timeout among all backend services associated with the route.
	// +optional
	PerTryTimeout *UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout `json:"perTryTimeout,omitempty" tf:"per_try_timeout"`
	// Specfies one or more conditions when this retry rule applies. Valid values are:
	//
	// * 5xx: Loadbalancer will attempt a retry if the backend service responds with
	//   any 5xx response code, or if the backend service does not respond at all,
	//   example: disconnects, reset, read timeout, connection failure, and refused
	//   streams.
	// * gateway-error: Similar to 5xx, but only applies to response codes
	//   502, 503 or 504.
	// * connect-failure: Loadbalancer will retry on failures
	//   connecting to backend services, for example due to connection timeouts.
	// * retriable-4xx: Loadbalancer will retry for retriable 4xx response codes.
	//   Currently the only retriable error supported is 409.
	// * refused-stream: Loadbalancer will retry if the backend service resets the stream with a
	//   REFUSED_STREAM error code. This reset type indicates that it is safe to retry.
	// * cancelled: Loadbalancer will retry if the gRPC status code in the response
	//   header is set to cancelled
	// * deadline-exceeded: Loadbalancer will retry if the
	//   gRPC status code in the response header is set to deadline-exceeded
	// * resource-exhausted: Loadbalancer will retry if the gRPC status code in the response
	//   header is set to resource-exhausted
	// * unavailable: Loadbalancer will retry if the gRPC status code in
	//   the response header is set to unavailable
	// +optional
	RetryConditions []string `json:"retryConditions,omitempty" tf:"retry_conditions"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicy) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicy.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicy) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout

type UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionRetryPolicyPerTryTimeoutCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionTimeout

type UrlMapSpecPathMatcherRouteRulesRouteActionTimeout struct {
	// Span of time that's a fraction of a second at nanosecond resolution. Durations
	// less than one second are represented with a 0 'seconds' field and a positive
	// 'nanos' field. Must be from 0 to 999,999,999 inclusive.
	// +optional
	Nanos *int64 `json:"nanos,omitempty" tf:"nanos"`
	// Span of time at a resolution of a second. Must be from 0 to 315,576,000,000
	// inclusive.
	Seconds *string `json:"seconds" tf:"seconds"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionTimeout) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionTimeout.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionTimeout) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionTimeoutCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewrite

type UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewrite struct {
	// Prior to forwarding the request to the selected service, the request's host
	// header is replaced with contents of hostRewrite. The value must be between 1 and
	// 255 characters.
	// +optional
	HostRewrite *string `json:"hostRewrite,omitempty" tf:"host_rewrite"`
	// Prior to forwarding the request to the selected backend service, the matching
	// portion of the request's path is replaced by pathPrefixRewrite. The value must
	// be between 1 and 1024 characters.
	// +optional
	PathPrefixRewrite *string `json:"pathPrefixRewrite,omitempty" tf:"path_prefix_rewrite"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewrite) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewrite.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewrite) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionUrlRewriteCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices struct {
	// The default BackendService resource. Before
	// forwarding the request to backendService, the loadbalancer applies any relevant
	// headerActions specified as part of this backendServiceWeight.
	BackendService *string `json:"backendService" tf:"backend_service"`
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService. headerAction specified here take effect before
	// headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap.
	// +optional
	HeaderAction *UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// Specifies the fraction of traffic sent to backendService, computed as weight /
	// (sum of all weightedBackendService weights in routeAction) . The selection of a
	// backend service is determined only for new traffic. Once a user's request has
	// been directed to a backendService, subsequent requests will be sent to the same
	// backendService as determined by the BackendService's session affinity policy.
	// The value must be between 0 and 1000
	Weight *int64 `json:"weight" tf:"weight"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServices) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction struct {
	// Headers to add to a matching request prior to forwarding the request to the
	// backendService.
	// +optional
	RequestHeadersToAdd []UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd `json:"requestHeadersToAdd,omitempty" tf:"request_headers_to_add"`
	// A list of header names for headers that need to be removed from the request
	// prior to forwarding the request to the backendService.
	// +optional
	RequestHeadersToRemove []string `json:"requestHeadersToRemove,omitempty" tf:"request_headers_to_remove"`
	// Headers to add the response prior to sending the response back to the client.
	// +optional
	ResponseHeadersToAdd []UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd `json:"responseHeadersToAdd,omitempty" tf:"response_headers_to_add"`
	// A list of header names for headers that need to be removed from the response
	// prior to sending the response back to the client.
	// +optional
	ResponseHeadersToRemove []string `json:"responseHeadersToRemove,omitempty" tf:"response_headers_to_remove"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderAction) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionCodec) IsEmpty

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionRequestHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd

type UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd struct {
	// The name of the header.
	HeaderName *string `json:"headerName" tf:"header_name"`
	// The value of the header to add.
	HeaderValue *string `json:"headerValue" tf:"header_value"`
	// If false, headerValue is appended to any values that already exist for the
	// header. If true, headerValue is set for the header, discarding any values that
	// were set for that header.
	Replace *bool `json:"replace" tf:"replace"`
}

func (*UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd.

func (*UrlMapSpecPathMatcherRouteRulesRouteActionWeightedBackendServicesHeaderActionResponseHeadersToAdd) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesUrlRedirect

type UrlMapSpecPathMatcherRouteRulesUrlRedirect struct {
	// The host that will be used in the redirect response instead of the one that was
	// supplied in the request. The value must be between 1 and 255 characters.
	// +optional
	HostRedirect *string `json:"hostRedirect,omitempty" tf:"host_redirect"`
	// If set to true, the URL scheme in the redirected request is set to https. If set
	// to false, the URL scheme of the redirected request will remain the same as that
	// of the request. This must only be set for UrlMaps used in TargetHttpProxys.
	// Setting this true for TargetHttpsProxy is not permitted. Defaults to false.
	// +optional
	HttpsRedirect *bool `json:"httpsRedirect,omitempty" tf:"https_redirect"`
	// The path that will be used in the redirect response instead of the one that was
	// supplied in the request. Only one of pathRedirect or prefixRedirect must be
	// specified. The value must be between 1 and 1024 characters.
	// +optional
	PathRedirect *string `json:"pathRedirect,omitempty" tf:"path_redirect"`
	// The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch,
	// retaining the remaining portion of the URL before redirecting the request.
	// +optional
	PrefixRedirect *string `json:"prefixRedirect,omitempty" tf:"prefix_redirect"`
	// The HTTP Status code to use for this RedirectAction. Supported values are:
	//
	// * MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
	//
	// * FOUND, which corresponds to 302.
	//
	// * SEE_OTHER which corresponds to 303.
	//
	// * TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained.
	//
	// * PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained. Possible values: ["FOUND", "MOVED_PERMANENTLY_DEFAULT", "PERMANENT_REDIRECT", "SEE_OTHER", "TEMPORARY_REDIRECT"]
	// +optional
	RedirectResponseCode *string `json:"redirectResponseCode,omitempty" tf:"redirect_response_code"`
	// If set to true, any accompanying query portion of the original URL is removed
	// prior to redirecting the request. If set to false, the query portion of the
	// original URL is retained. Defaults to false.
	// +optional
	StripQuery *bool `json:"stripQuery,omitempty" tf:"strip_query"`
}

func (*UrlMapSpecPathMatcherRouteRulesUrlRedirect) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecPathMatcherRouteRulesUrlRedirect.

func (*UrlMapSpecPathMatcherRouteRulesUrlRedirect) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecPathMatcherRouteRulesUrlRedirectCodec

type UrlMapSpecPathMatcherRouteRulesUrlRedirectCodec struct {
}

+k8s:deepcopy-gen=false

func (UrlMapSpecPathMatcherRouteRulesUrlRedirectCodec) Decode

func (UrlMapSpecPathMatcherRouteRulesUrlRedirectCodec) Encode

func (UrlMapSpecPathMatcherRouteRulesUrlRedirectCodec) IsEmpty

type UrlMapSpecResource

type UrlMapSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// defaultRouteAction takes effect when none of the hostRules match. The load balancer performs advanced routing actions
	// like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend.
	// If defaultRouteAction specifies any weightedBackendServices, defaultService must not be set. Conversely if defaultService
	// is set, defaultRouteAction cannot contain any weightedBackendServices.
	//
	// Only one of defaultRouteAction or defaultUrlRedirect must be set.
	// +optional
	DefaultRouteAction *UrlMapSpecDefaultRouteAction `json:"defaultRouteAction,omitempty" tf:"default_route_action"`
	// The backend service or backend bucket to use when none of the given rules match.
	// +optional
	DefaultService *string `json:"defaultService,omitempty" tf:"default_service"`
	// When none of the specified hostRules match, the request is redirected to a URL specified
	// by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or
	// defaultRouteAction must not be set.
	// +optional
	DefaultURLRedirect *UrlMapSpecDefaultURLRedirect `json:"defaultURLRedirect,omitempty" tf:"default_url_redirect"`
	// An optional description of this resource. Provide this property when you create
	// the resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Fingerprint of this resource. A hash of the contents stored in this object. This
	// field is used in optimistic locking.
	// +optional
	Fingerprint *string `json:"fingerprint,omitempty" tf:"fingerprint"`
	// Specifies changes to request and response headers that need to take effect for
	// the selected backendService. The headerAction specified here take effect after
	// headerAction specified under pathMatcher.
	// +optional
	HeaderAction *UrlMapSpecHeaderAction `json:"headerAction,omitempty" tf:"header_action"`
	// The list of HostRules to use against the URL.
	// +optional
	HostRule []UrlMapSpecHostRule `json:"hostRule,omitempty" tf:"host_rule"`
	// The unique identifier for the resource.
	// +optional
	MapID *int64 `json:"mapID,omitempty" tf:"map_id"`
	// Name of the resource. Provided by the client when the resource is created. The
	// name must be 1-63 characters long, and comply with RFC1035. Specifically, the
	// name must be 1-63 characters long and match the regular expression
	// '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character must be a lowercase
	// letter, and all following characters must be a dash, lowercase letter, or digit,
	// except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The list of named PathMatchers to use against the URL.
	// +optional
	PathMatcher []UrlMapSpecPathMatcher `json:"pathMatcher,omitempty" tf:"path_matcher"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// The list of expected URL mapping tests. Request to update this UrlMap will
	// succeed only if all of the test cases pass. You can specify a maximum of 100
	// tests per UrlMap.
	// +optional
	Test []UrlMapSpecTest `json:"test,omitempty" tf:"test"`
}

func (*UrlMapSpecResource) DeepCopy

func (in *UrlMapSpecResource) DeepCopy() *UrlMapSpecResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecResource.

func (*UrlMapSpecResource) DeepCopyInto

func (in *UrlMapSpecResource) DeepCopyInto(out *UrlMapSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapSpecTest

type UrlMapSpecTest struct {
	// Description of this test case.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Host portion of the URL.
	Host *string `json:"host" tf:"host"`
	// Path portion of the URL.
	Path *string `json:"path" tf:"path"`
	// The backend service or backend bucket link that should be matched by this test.
	Service *string `json:"service" tf:"service"`
}

func (*UrlMapSpecTest) DeepCopy

func (in *UrlMapSpecTest) DeepCopy() *UrlMapSpecTest

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapSpecTest.

func (*UrlMapSpecTest) DeepCopyInto

func (in *UrlMapSpecTest) DeepCopyInto(out *UrlMapSpecTest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UrlMapStatus

type UrlMapStatus 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 (*UrlMapStatus) DeepCopy

func (in *UrlMapStatus) DeepCopy() *UrlMapStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UrlMapStatus.

func (*UrlMapStatus) DeepCopyInto

func (in *UrlMapStatus) DeepCopyInto(out *UrlMapStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VpnGateway

type VpnGateway struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              VpnGatewaySpec   `json:"spec,omitempty"`
	Status            VpnGatewayStatus `json:"status,omitempty"`
}

func (*VpnGateway) DeepCopy

func (in *VpnGateway) DeepCopy() *VpnGateway

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnGateway.

func (*VpnGateway) DeepCopyInto

func (in *VpnGateway) DeepCopyInto(out *VpnGateway)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VpnGateway) DeepCopyObject

func (in *VpnGateway) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*VpnGateway) SetupWebhookWithManager

func (r *VpnGateway) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*VpnGateway) ValidateCreate

func (r *VpnGateway) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*VpnGateway) ValidateDelete

func (r *VpnGateway) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*VpnGateway) ValidateUpdate

func (r *VpnGateway) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type VpnGatewayList

type VpnGatewayList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of VpnGateway CRD objects
	Items []VpnGateway `json:"items,omitempty"`
}

VpnGatewayList is a list of VpnGateways

func (*VpnGatewayList) DeepCopy

func (in *VpnGatewayList) DeepCopy() *VpnGatewayList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnGatewayList.

func (*VpnGatewayList) DeepCopyInto

func (in *VpnGatewayList) DeepCopyInto(out *VpnGatewayList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VpnGatewayList) DeepCopyObject

func (in *VpnGatewayList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type VpnGatewaySpec

type VpnGatewaySpec struct {
	State *VpnGatewaySpecResource `json:"state,omitempty" tf:"-"`

	Resource VpnGatewaySpecResource `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 (*VpnGatewaySpec) DeepCopy

func (in *VpnGatewaySpec) DeepCopy() *VpnGatewaySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnGatewaySpec.

func (*VpnGatewaySpec) DeepCopyInto

func (in *VpnGatewaySpec) DeepCopyInto(out *VpnGatewaySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VpnGatewaySpecResource

type VpnGatewaySpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// The unique identifier for the resource.
	// +optional
	GatewayID *int64 `json:"gatewayID,omitempty" tf:"gateway_id"`
	// Name of the resource. Provided by the client when the resource is
	// created. The name must be 1-63 characters long, and comply with
	// RFC1035.  Specifically, the name must be 1-63 characters long and
	// match the regular expression '[a-z]([-a-z0-9]*[a-z0-9])?' which means
	// the first character must be a lowercase letter, and all following
	// characters must be a dash, lowercase letter, or digit, except the last
	// character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// The network this VPN gateway is accepting traffic for.
	Network *string `json:"network" tf:"network"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The region this gateway should sit in.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
}

func (*VpnGatewaySpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnGatewaySpecResource.

func (*VpnGatewaySpecResource) DeepCopyInto

func (in *VpnGatewaySpecResource) DeepCopyInto(out *VpnGatewaySpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VpnGatewayStatus

type VpnGatewayStatus 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 (*VpnGatewayStatus) DeepCopy

func (in *VpnGatewayStatus) DeepCopy() *VpnGatewayStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnGatewayStatus.

func (*VpnGatewayStatus) DeepCopyInto

func (in *VpnGatewayStatus) DeepCopyInto(out *VpnGatewayStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VpnTunnel

type VpnTunnel struct {
	metav1.TypeMeta   `json:",inline,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              VpnTunnelSpec   `json:"spec,omitempty"`
	Status            VpnTunnelStatus `json:"status,omitempty"`
}

func (*VpnTunnel) DeepCopy

func (in *VpnTunnel) DeepCopy() *VpnTunnel

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnTunnel.

func (*VpnTunnel) DeepCopyInto

func (in *VpnTunnel) DeepCopyInto(out *VpnTunnel)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VpnTunnel) DeepCopyObject

func (in *VpnTunnel) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*VpnTunnel) SetupWebhookWithManager

func (r *VpnTunnel) SetupWebhookWithManager(mgr ctrl.Manager) error

func (*VpnTunnel) ValidateCreate

func (r *VpnTunnel) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*VpnTunnel) ValidateDelete

func (r *VpnTunnel) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*VpnTunnel) ValidateUpdate

func (r *VpnTunnel) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type VpnTunnelList

type VpnTunnelList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	// Items is a list of VpnTunnel CRD objects
	Items []VpnTunnel `json:"items,omitempty"`
}

VpnTunnelList is a list of VpnTunnels

func (*VpnTunnelList) DeepCopy

func (in *VpnTunnelList) DeepCopy() *VpnTunnelList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnTunnelList.

func (*VpnTunnelList) DeepCopyInto

func (in *VpnTunnelList) DeepCopyInto(out *VpnTunnelList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VpnTunnelList) DeepCopyObject

func (in *VpnTunnelList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type VpnTunnelSpec

type VpnTunnelSpec struct {
	State *VpnTunnelSpecResource `json:"state,omitempty" tf:"-"`

	Resource VpnTunnelSpecResource `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 (*VpnTunnelSpec) DeepCopy

func (in *VpnTunnelSpec) DeepCopy() *VpnTunnelSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnTunnelSpec.

func (*VpnTunnelSpec) DeepCopyInto

func (in *VpnTunnelSpec) DeepCopyInto(out *VpnTunnelSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VpnTunnelSpecResource

type VpnTunnelSpecResource struct {
	Timeouts *base.ResourceTimeout `json:"timeouts,omitempty" tf:"timeouts"`

	ID string `json:"id,omitempty" tf:"id,omitempty"`

	// Creation timestamp in RFC3339 text format.
	// +optional
	CreationTimestamp *string `json:"creationTimestamp,omitempty" tf:"creation_timestamp"`
	// An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty" tf:"description"`
	// Detailed status message for the VPN tunnel.
	// +optional
	DetailedStatus *string `json:"detailedStatus,omitempty" tf:"detailed_status"`
	// IKE protocol version to use when establishing the VPN tunnel with
	// peer VPN gateway.
	// Acceptable IKE versions are 1 or 2. Default version is 2.
	// +optional
	IkeVersion *int64 `json:"ikeVersion,omitempty" tf:"ike_version"`
	// Local traffic selector to use when establishing the VPN tunnel with
	// peer VPN gateway. The value should be a CIDR formatted string,
	// for example '192.168.0.0/16'. The ranges should be disjoint.
	// Only IPv4 is supported.
	// +optional
	LocalTrafficSelector []string `json:"localTrafficSelector,omitempty" tf:"local_traffic_selector"`
	// Name of the resource. The name must be 1-63 characters long, and
	// comply with RFC1035. Specifically, the name must be 1-63
	// characters long and match the regular expression
	// '[a-z]([-a-z0-9]*[a-z0-9])?' which means the first character
	// must be a lowercase letter, and all following characters must
	// be a dash, lowercase letter, or digit,
	// except the last character, which cannot be a dash.
	Name *string `json:"name" tf:"name"`
	// URL of the peer side external VPN gateway to which this VPN tunnel is connected.
	// +optional
	PeerExternalGateway *string `json:"peerExternalGateway,omitempty" tf:"peer_external_gateway"`
	// The interface ID of the external VPN gateway to which this VPN tunnel is connected.
	// +optional
	PeerExternalGatewayInterface *int64 `json:"peerExternalGatewayInterface,omitempty" tf:"peer_external_gateway_interface"`
	// URL of the peer side HA GCP VPN gateway to which this VPN tunnel is connected.
	// If provided, the VPN tunnel will automatically use the same vpn_gateway_interface
	// ID in the peer GCP VPN gateway.
	// This field must reference a 'google_compute_ha_vpn_gateway' resource.
	// +optional
	PeerGcpGateway *string `json:"peerGcpGateway,omitempty" tf:"peer_gcp_gateway"`
	// IP address of the peer VPN gateway. Only IPv4 is supported.
	// +optional
	PeerIP *string `json:"peerIP,omitempty" tf:"peer_ip"`
	// +optional
	Project *string `json:"project,omitempty" tf:"project"`
	// The region where the tunnel is located. If unset, is set to the region of 'target_vpn_gateway'.
	// +optional
	Region *string `json:"region,omitempty" tf:"region"`
	// Remote traffic selector to use when establishing the VPN tunnel with
	// peer VPN gateway. The value should be a CIDR formatted string,
	// for example '192.168.0.0/16'. The ranges should be disjoint.
	// Only IPv4 is supported.
	// +optional
	RemoteTrafficSelector []string `json:"remoteTrafficSelector,omitempty" tf:"remote_traffic_selector"`
	// URL of router resource to be used for dynamic routing.
	// +optional
	Router *string `json:"router,omitempty" tf:"router"`
	// +optional
	SelfLink *string `json:"selfLink,omitempty" tf:"self_link"`
	// Shared secret used to set the secure session between the Cloud VPN
	// gateway and the peer VPN gateway.
	SharedSecret *string `json:"-" sensitive:"true" tf:"shared_secret"`
	// Hash of the shared secret.
	// +optional
	SharedSecretHash *string `json:"sharedSecretHash,omitempty" tf:"shared_secret_hash"`
	// URL of the Target VPN gateway with which this VPN tunnel is
	// associated.
	// +optional
	TargetVPNGateway *string `json:"targetVPNGateway,omitempty" tf:"target_vpn_gateway"`
	// The unique identifier for the resource. This identifier is defined by the server.
	// +optional
	TunnelID *string `json:"tunnelID,omitempty" tf:"tunnel_id"`
	// URL of the VPN gateway with which this VPN tunnel is associated.
	// This must be used if a High Availability VPN gateway resource is created.
	// This field must reference a 'google_compute_ha_vpn_gateway' resource.
	// +optional
	VpnGateway *string `json:"vpnGateway,omitempty" tf:"vpn_gateway"`
	// The interface ID of the VPN gateway with which this VPN tunnel is associated.
	// +optional
	VpnGatewayInterface *int64 `json:"vpnGatewayInterface,omitempty" tf:"vpn_gateway_interface"`
}

func (*VpnTunnelSpecResource) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnTunnelSpecResource.

func (*VpnTunnelSpecResource) DeepCopyInto

func (in *VpnTunnelSpecResource) DeepCopyInto(out *VpnTunnelSpecResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VpnTunnelStatus

type VpnTunnelStatus 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 (*VpnTunnelStatus) DeepCopy

func (in *VpnTunnelStatus) DeepCopy() *VpnTunnelStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpnTunnelStatus.

func (*VpnTunnelStatus) DeepCopyInto

func (in *VpnTunnelStatus) DeepCopyInto(out *VpnTunnelStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL