v1alpha2

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Sep 18, 2019 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package v1alpha2 contains managed resources for GCP compute services such as GKE. +kubebuilder:object:generate=true +groupName=compute.gcp.crossplane.io +versionName=v1alpha2

Index

Constants

View Source
const (
	ClusterStateProvisioning = "PROVISIONING"
	ClusterStateRunning      = "RUNNING"
)

Cluster states.

View Source
const (
	DefaultReclaimPolicy = runtimev1alpha1.ReclaimRetain
	DefaultNumberOfNodes = int64(1)
)

Defaults for GKE resources.

View Source
const (
	Group   = "compute.gcp.crossplane.io"
	Version = "v1alpha2"
)

Package type metadata.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
)
View Source
var (
	GKEClusterKind             = reflect.TypeOf(GKECluster{}).Name()
	GKEClusterKindAPIVersion   = GKEClusterKind + "." + SchemeGroupVersion.String()
	GKEClusterGroupVersionKind = SchemeGroupVersion.WithKind(GKEClusterKind)
)

GKECluster type metadata.

View Source
var (
	GKEClusterClassKind             = reflect.TypeOf(GKEClusterClass{}).Name()
	GKEClusterClassKindAPIVersion   = GKEClusterClassKind + "." + SchemeGroupVersion.String()
	GKEClusterClassGroupVersionKind = SchemeGroupVersion.WithKind(GKEClusterClassKind)
)

GKEClusterClass type metadata.

View Source
var (
	NetworkKind             = reflect.TypeOf(Network{}).Name()
	NetworkKindAPIVersion   = NetworkKind + "." + SchemeGroupVersion.String()
	NetworkGroupVersionKind = SchemeGroupVersion.WithKind(NetworkKind)
)

Network type metadata.

View Source
var (
	SubnetworkKind             = reflect.TypeOf(Subnetwork{}).Name()
	SubnetworkKindAPIVersion   = SubnetworkKind + "." + SchemeGroupVersion.String()
	SubnetworkGroupVersionKind = SchemeGroupVersion.WithKind(SubnetworkKind)
)

Subnetwork type metadata.

View Source
var (
	GlobalAddressKind             = reflect.TypeOf(GlobalAddress{}).Name()
	GlobalAddressKindAPIVersion   = GlobalAddressKind + "." + SchemeGroupVersion.String()
	GlobalAddressGroupVersionKind = SchemeGroupVersion.WithKind(GlobalAddressKind)
)

GlobalAddress type metadata.

Functions

This section is empty.

Types

type GCPNetworkPeering

type GCPNetworkPeering struct {
	// AutoCreateRoutes: This field will be deprecated soon. Use the
	// exchange_subnet_routes field instead. Indicates whether full mesh
	// connectivity is created and managed automatically between peered
	// networks. Currently this field should always be true since Google
	// Compute Engine will automatically create and manage subnetwork routes
	// between two networks when peering state is ACTIVE.
	AutoCreateRoutes bool `json:"autoCreateRoutes,omitempty"`

	// ExchangeSubnetRoutes: Indicates whether full mesh connectivity is
	// created and managed automatically between peered networks. Currently
	// this field should always be true since Google Compute Engine will
	// automatically create and manage subnetwork routes between two
	// networks when peering state is ACTIVE.
	ExchangeSubnetRoutes bool `json:"exchangeSubnetRoutes,omitempty"`

	// Name: Name of this peering. Provided by the client when the peering
	// is created. The name must comply with RFC1035. Specifically, the name
	// must be 1-63 characters long and match regular expression
	// `[a-z]([-a-z0-9]*[a-z0-9])?`. The first character must be a lowercase
	// letter, and all the following characters must be a dash, lowercase
	// letter, or digit, except the last character, which cannot be a dash.
	Name string `json:"name,omitempty"`

	// Network: The URL of the peer network. It can be either full URL or
	// partial URL. The peer network may belong to a different project. If
	// the partial URL does not contain project, it is assumed that the peer
	// network is in the same project as the current network.
	Network string `json:"network,omitempty"`

	// State: State for the peering, either `ACTIVE` or
	// `INACTIVE`. The peering is `ACTIVE` when there's a matching
	// configuration in the peer network.
	//
	// Possible values:
	//   "ACTIVE"
	//   "INACTIVE"
	State string `json:"state,omitempty"`

	// StateDetails: Details about the current state of the
	// peering.
	StateDetails string `json:"stateDetails,omitempty"`
}

A GCPNetworkPeering represents the observed state of a Google Compute Engine VPC Network Peering.

func (*GCPNetworkPeering) DeepCopy

func (in *GCPNetworkPeering) DeepCopy() *GCPNetworkPeering

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

func (*GCPNetworkPeering) DeepCopyInto

func (in *GCPNetworkPeering) DeepCopyInto(out *GCPNetworkPeering)

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

type GCPNetworkRoutingConfig

type GCPNetworkRoutingConfig struct {
	// RoutingMode: The network-wide routing mode to use. If set to
	// REGIONAL, this network's Cloud Routers will only advertise routes
	// with subnets of this network in the same region as the router. If set
	// to GLOBAL, this network's Cloud Routers will advertise routes with
	// all subnets of this network, across regions.
	//
	// Possible values:
	//   "GLOBAL"
	//   "REGIONAL"
	// +optional.
	RoutingMode string `json:"routingMode,omitempty"`
}

A GCPNetworkRoutingConfig specifies the desired state of a Google Compute Engine VPC Network Routing configuration.

func (*GCPNetworkRoutingConfig) DeepCopy

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

func (*GCPNetworkRoutingConfig) DeepCopyInto

func (in *GCPNetworkRoutingConfig) DeepCopyInto(out *GCPNetworkRoutingConfig)

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

type GCPNetworkStatus

type GCPNetworkStatus struct {
	// IPv4Range: Deprecated in favor of subnet mode networks. The range of
	// internal addresses that are legal on this network. This range is a
	// CIDR specification, for example: 192.168.0.0/16. Provided by the
	// client when the network is created.
	IPv4Range string `json:"IPv4Range,omitempty"`

	// AutoCreateSubnetworks: When set to true, the VPC network is created
	// in "auto" mode. When set to false, the VPC network is created in
	// "custom" mode.
	//
	// An auto mode VPC network starts with one subnet per region. Each
	// subnet has a predetermined range as described in Auto mode VPC
	// network IP ranges.
	AutoCreateSubnetworks bool `json:"autoCreateSubnetworks,omitempty"`

	// CreationTimestamp: Creation timestamp in RFC3339 text
	// format.
	CreationTimestamp string `json:"creationTimestamp,omitempty"`

	// Description: An optional description of this resource. Provide this
	// field when you create the resource.
	Description string `json:"description,omitempty"`

	// GatewayIPv4: The gateway address for default routing
	// out of the network, selected by GCP.
	GatewayIPv4 string `json:"gatewayIPv4,omitempty"`

	// Id: The unique identifier for the resource. This
	// identifier is defined by the server.
	ID uint64 `json:"id,omitempty"`

	// Peerings: A list of network peerings for the resource.
	Peerings []*GCPNetworkPeering `json:"peerings,omitempty"`

	// RoutingConfig: The network-level routing configuration for this
	// network. Used by Cloud Router to determine what type of network-wide
	// routing behavior to enforce.
	RoutingConfig *GCPNetworkRoutingConfig `json:"routingConfig,omitempty"`

	// SelfLink: Server-defined URL for the resource.
	SelfLink string `json:"selfLink,omitempty"`

	// Subnetworks: Server-defined fully-qualified URLs for
	// all subnetworks in this VPC network.
	Subnetworks []string `json:"subnetworks,omitempty"`
}

A GCPNetworkStatus represents the observed state of a Google Compute Engine VPC Network.

func (*GCPNetworkStatus) DeepCopy

func (in *GCPNetworkStatus) DeepCopy() *GCPNetworkStatus

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

func (*GCPNetworkStatus) DeepCopyInto

func (in *GCPNetworkStatus) DeepCopyInto(out *GCPNetworkStatus)

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

type GCPSubnetworkSecondaryRange

type GCPSubnetworkSecondaryRange struct {
	// IPCIDRRange: 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"`

	// RangeName: 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"`
}

A GCPSubnetworkSecondaryRange defines the state of a Google Compute Engine VPC Subnetwork secondary range.

func (*GCPSubnetworkSecondaryRange) DeepCopy

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

func (*GCPSubnetworkSecondaryRange) DeepCopyInto

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

type GCPSubnetworkStatus

type GCPSubnetworkStatus struct {
	// CreationTimestamp: Creation timestamp in RFC3339 text
	// format.
	CreationTimestamp string `json:"creationTimestamp,omitempty"`

	// Description: An optional description of this resource. Provide this
	// property when you create the resource. This field can be set only at
	// resource creation time.
	Description string `json:"description,omitempty"`

	// EnableFlowLogs: Whether to enable flow logging for this subnetwork.
	// If this field is not explicitly set, it will not appear in get
	// listings. If not set the default behavior is to disable flow logging.
	EnableFlowLogs bool `json:"enableFlowLogs,omitempty"`

	// Fingerprint: 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 Subnetwork. An up-to-date
	// fingerprint must be provided in order to update the Subnetwork,
	// otherwise the request will fail with error 412 conditionNotMet.
	//
	// To see the latest fingerprint, make a get() request to retrieve a
	// Subnetwork.
	Fingerprint string `json:"fingerprint,omitempty"`

	// GatewayAddress: The gateway address for default routes
	// to reach destination addresses outside this subnetwork.
	GatewayAddress string `json:"gatewayAddress,omitempty"`

	// Id: The unique identifier for the resource. This
	// identifier is defined by the server.
	ID uint64 `json:"id,omitempty"`

	// IPCIDRRange: 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. This field
	// can be set only at resource creation time.
	IPCIDRRange string `json:"ipCidrRange,omitempty"`

	// Kind: Type of the resource. Always compute#subnetwork
	// for Subnetwork resources.
	Kind string `json:"kind,omitempty"`

	// Name: 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,omitempty"`

	// Network: The URL of the network to which this subnetwork belongs,
	// provided by the client when initially creating the subnetwork. Only
	// networks that are in the distributed mode can have subnetworks. This
	// field can be set only at resource creation time.
	Network string `json:"network,omitempty"`

	// PrivateIPGoogleAccess: Whether the VMs in this subnet can access
	// Google services without assigned external IP addresses. This field
	// can be both set at resource creation time and updated using
	// setPrivateIPGoogleAccess.
	PrivateIPGoogleAccess bool `json:"privateIpGoogleAccess,omitempty"`

	// Region: URL of the region where the Subnetwork resides. This field
	// can be set only at resource creation time.
	Region string `json:"region,omitempty"`

	// SecondaryIPRanges: 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. This
	// field can be updated with a patch request.
	SecondaryIPRanges []*GCPSubnetworkSecondaryRange `json:"secondaryIpRanges,omitempty"`

	// SelfLink: Server-defined URL for the resource.
	SelfLink string `json:"selfLink,omitempty"`
}

A GCPSubnetworkStatus represents the observed state of a Google Compute Engine VPC Subnetwork.

func (*GCPSubnetworkStatus) DeepCopy

func (in *GCPSubnetworkStatus) DeepCopy() *GCPSubnetworkStatus

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

func (*GCPSubnetworkStatus) DeepCopyInto

func (in *GCPSubnetworkStatus) DeepCopyInto(out *GCPSubnetworkStatus)

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

type GKECluster

type GKECluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   GKEClusterSpec   `json:"spec,omitempty"`
	Status GKEClusterStatus `json:"status,omitempty"`
}

A GKECluster is a managed resource that represents a Google Kubernetes Engine cluster. +kubebuilder:printcolumn:name="STATUS",type="string",JSONPath=".status.bindingPhase" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.state" +kubebuilder:printcolumn:name="CLUSTER-NAME",type="string",JSONPath=".status.clusterName" +kubebuilder:printcolumn:name="ENDPOINT",type="string",JSONPath=".status.endpoint" +kubebuilder:printcolumn:name="CLUSTER-CLASS",type="string",JSONPath=".spec.classRef.name" +kubebuilder:printcolumn:name="LOCATION",type="string",JSONPath=".spec.zone" +kubebuilder:printcolumn:name="RECLAIM-POLICY",type="string",JSONPath=".spec.reclaimPolicy" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp"

func (*GKECluster) DeepCopy

func (in *GKECluster) DeepCopy() *GKECluster

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

func (*GKECluster) DeepCopyInto

func (in *GKECluster) DeepCopyInto(out *GKECluster)

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

func (*GKECluster) DeepCopyObject

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

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

func (*GKECluster) GetBindingPhase

func (c *GKECluster) GetBindingPhase() runtimev1alpha1.BindingPhase

GetBindingPhase of this GKECluster.

func (*GKECluster) GetClaimReference

func (c *GKECluster) GetClaimReference() *corev1.ObjectReference

GetClaimReference of this GKECluster.

func (*GKECluster) GetNonPortableClassReference

func (c *GKECluster) GetNonPortableClassReference() *corev1.ObjectReference

GetNonPortableClassReference of this GKECluster.

func (*GKECluster) GetReclaimPolicy

func (c *GKECluster) GetReclaimPolicy() runtimev1alpha1.ReclaimPolicy

GetReclaimPolicy of this GKECluster.

func (*GKECluster) GetWriteConnectionSecretToReference

func (c *GKECluster) GetWriteConnectionSecretToReference() corev1.LocalObjectReference

GetWriteConnectionSecretToReference of this GKECluster.

func (*GKECluster) SetBindingPhase

func (c *GKECluster) SetBindingPhase(p runtimev1alpha1.BindingPhase)

SetBindingPhase of this GKECluster.

func (*GKECluster) SetClaimReference

func (c *GKECluster) SetClaimReference(r *corev1.ObjectReference)

SetClaimReference of this GKECluster.

func (*GKECluster) SetConditions

func (c *GKECluster) SetConditions(cd ...runtimev1alpha1.Condition)

SetConditions of this GKECluster.

func (*GKECluster) SetNonPortableClassReference

func (c *GKECluster) SetNonPortableClassReference(r *corev1.ObjectReference)

SetNonPortableClassReference of this GKECluster.

func (*GKECluster) SetReclaimPolicy

func (c *GKECluster) SetReclaimPolicy(p runtimev1alpha1.ReclaimPolicy)

SetReclaimPolicy of this GKECluster.

func (*GKECluster) SetWriteConnectionSecretToReference

func (c *GKECluster) SetWriteConnectionSecretToReference(r corev1.LocalObjectReference)

SetWriteConnectionSecretToReference of this GKECluster.

type GKEClusterClass

type GKEClusterClass struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// SpecTemplate is a template for the spec of a dynamically provisioned
	// GKECluster.
	SpecTemplate GKEClusterClassSpecTemplate `json:"specTemplate"`
}

A GKEClusterClass is a non-portable resource class. It defines the desired spec of resource claims that use it to dynamically provision a managed resource. +kubebuilder:printcolumn:name="PROVIDER-REF",type="string",JSONPath=".specTemplate.providerRef.name" +kubebuilder:printcolumn:name="RECLAIM-POLICY",type="string",JSONPath=".specTemplate.reclaimPolicy" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp"

func (*GKEClusterClass) DeepCopy

func (in *GKEClusterClass) DeepCopy() *GKEClusterClass

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

func (*GKEClusterClass) DeepCopyInto

func (in *GKEClusterClass) DeepCopyInto(out *GKEClusterClass)

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

func (*GKEClusterClass) DeepCopyObject

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

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

func (*GKEClusterClass) GetReclaimPolicy

func (i *GKEClusterClass) GetReclaimPolicy() runtimev1alpha1.ReclaimPolicy

GetReclaimPolicy of this GKEClusterClass.

func (*GKEClusterClass) SetReclaimPolicy

func (i *GKEClusterClass) SetReclaimPolicy(p runtimev1alpha1.ReclaimPolicy)

SetReclaimPolicy of this GKEClusterClass.

type GKEClusterClassList

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

GKEClusterClassList contains a list of cloud memorystore resource classes.

func (*GKEClusterClassList) DeepCopy

func (in *GKEClusterClassList) DeepCopy() *GKEClusterClassList

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

func (*GKEClusterClassList) DeepCopyInto

func (in *GKEClusterClassList) DeepCopyInto(out *GKEClusterClassList)

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

func (*GKEClusterClassList) DeepCopyObject

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

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

type GKEClusterClassSpecTemplate

type GKEClusterClassSpecTemplate struct {
	runtimev1alpha1.NonPortableClassSpecTemplate `json:",inline"`
	GKEClusterParameters                         `json:",inline"`
}

A GKEClusterClassSpecTemplate is a template for the spec of a dynamically provisioned GKECluster.

func (*GKEClusterClassSpecTemplate) DeepCopy

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

func (*GKEClusterClassSpecTemplate) DeepCopyInto

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

type GKEClusterList

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

GKEClusterList contains a list of GKECluster items

func (*GKEClusterList) DeepCopy

func (in *GKEClusterList) DeepCopy() *GKEClusterList

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

func (*GKEClusterList) DeepCopyInto

func (in *GKEClusterList) DeepCopyInto(out *GKEClusterList)

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

func (*GKEClusterList) DeepCopyObject

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

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

type GKEClusterParameters

type GKEClusterParameters struct {
	// ClusterVersion is the initial Kubernetes version for this cluster.
	// Users may specify either explicit versions offered by Kubernetes Engine
	// or version aliases, for example "latest", "1.X", or "1.X.Y". Leave unset
	// to use the default version.
	// +optional
	ClusterVersion string `json:"clusterVersion,omitempty"`

	// Labels for the cluster to use to annotate any related Google Compute
	// Engine resources.
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// MachineType is the name of a Google Compute Engine machine type (e.g.
	// n1-standard-1). If unspecified the default machine type is n1-standard-1.
	// +optional
	MachineType string `json:"machineType,omitempty"`

	// NumNodes is the number of nodes to create in this cluster. You must
	// ensure that your Compute Engine resource quota is sufficient for this
	// number of instances. You must also have available firewall and routes
	// quota.
	NumNodes int64 `json:"numNodes"`

	// Zone specifies the name of the Google Compute Engine zone in which this
	// cluster resides.
	// +optional
	Zone string `json:"zone,omitempty"`

	// Scopes are the set of Google API scopes to be made available on all of
	// the node VMs under the "default" service account.
	// +optional
	Scopes []string `json:"scopes,omitempty"`

	// Network is the name of the Google Compute Engine network to which the
	// cluster is connected. If left unspecified, the default network will be
	// used.
	// +optional
	Network string `json:"network,omitempty"`

	// Subnetwork is the name of the Google Compute Engine subnetwork to which
	// the cluster is connected.
	// +optional
	Subnetwork string `json:"subnetwork,omitempty"`

	// EnableIPAlias determines whether Alias IPs will be used for pod IPs in
	// the cluster.
	// +optional
	EnableIPAlias bool `json:"enableIPAlias,omitempty"`

	// CreateSubnetwork determines whether a new subnetwork will be created
	// automatically for the cluster. Only applicable when EnableIPAlias is
	// true.
	// +optional
	CreateSubnetwork bool `json:"createSubnetwork,omitempty"`

	// NodeIPV4CIDR specifies the IP address range of the instance IPs in this
	// cluster. This is applicable only if CreateSubnetwork is true. Omit this
	// field to have a range chosen with the default size. Set it to a netmask
	// (e.g. /24) to have a range chosen with a specific netmask.
	// +optional
	NodeIPV4CIDR string `json:"nodeIPV4CIDR,omitempty"`

	// ClusterIPV4CIDR specifies the IP address range of the pod IPs in this
	// cluster. This is applicable only if EnableIPAlias is true. Omit this
	// field to have a range chosen with the default size. Set it to a netmask
	// (e.g. /24) to have a range chosen with a specific netmask.
	// +optional
	ClusterIPV4CIDR string `json:"clusterIPV4CIDR,omitempty"`

	// ClusterSecondaryRangeName specifies the name of the secondary range to be
	// used for the cluster CIDR block. The secondary range will be used for pod
	// IP addresses. This must be an existing secondary range associated with
	// the cluster subnetwork.
	// +optional
	ClusterSecondaryRangeName string `json:"clusterSecondaryRangeName,omitempty"`

	// ServiceIPV4CIDR specifies the IP address range of service IPs in this
	// cluster. This is applicable only if EnableIPAlias is true. Omit this
	// field to have a range chosen with the default size. Set it to a netmask
	// (e.g. /24) to have a range chosen with a specific netmask.
	// +optional
	ServiceIPV4CIDR string `json:"serviceIPV4CIDR,omitempty"`

	// ServicesSecondaryRangeName specifies the name of the secondary range to
	// be used as for the services CIDR block. The secondary range will be used
	// for service ClusterIPs. This must be an existing secondary range
	// associated with the cluster subnetwork.
	ServicesSecondaryRangeName string `json:"servicesSecondaryRangeName,omitempty"`
}

GKEClusterParameters define the desired state of a Google Kubernetes Engine cluster.

func (*GKEClusterParameters) DeepCopy

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

func (*GKEClusterParameters) DeepCopyInto

func (in *GKEClusterParameters) DeepCopyInto(out *GKEClusterParameters)

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

type GKEClusterSpec

type GKEClusterSpec struct {
	runtimev1alpha1.ResourceSpec `json:",inline"`
	GKEClusterParameters         `json:",inline"`
}

A GKEClusterSpec defines the desired state of a GKECluster.

func (*GKEClusterSpec) DeepCopy

func (in *GKEClusterSpec) DeepCopy() *GKEClusterSpec

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

func (*GKEClusterSpec) DeepCopyInto

func (in *GKEClusterSpec) DeepCopyInto(out *GKEClusterSpec)

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

type GKEClusterStatus

type GKEClusterStatus struct {
	runtimev1alpha1.ResourceStatus `json:",inline"`

	// ClusterName is the name of this GKE cluster. The name is automatically
	// generated by Crossplane.
	ClusterName string `json:"clusterName"`

	// Endpoint of the GKE cluster used in connection strings.
	Endpoint string `json:"endpoint"`

	// State of this GKE cluster.
	State string `json:"state,omitempty"`
}

A GKEClusterStatus represents the observed state of a GKECluster.

func (*GKEClusterStatus) DeepCopy

func (in *GKEClusterStatus) DeepCopy() *GKEClusterStatus

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

func (*GKEClusterStatus) DeepCopyInto

func (in *GKEClusterStatus) DeepCopyInto(out *GKEClusterStatus)

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"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   GlobalAddressSpec   `json:"spec,omitempty"`
	Status GlobalAddressStatus `json:"status,omitempty"`
}

A GlobalAddress is a managed resource that represents a Google Compute Engine Global Address.

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

func (a *GlobalAddress) GetBindingPhase() v1alpha1.BindingPhase

GetBindingPhase of this GlobalAddress.

func (*GlobalAddress) GetClaimReference

func (a *GlobalAddress) GetClaimReference() *corev1.ObjectReference

GetClaimReference of this GlobalAddress.

func (*GlobalAddress) GetNonPortableClassReference

func (a *GlobalAddress) GetNonPortableClassReference() *corev1.ObjectReference

GetNonPortableClassReference of this GlobalAddress.

func (*GlobalAddress) GetReclaimPolicy

func (a *GlobalAddress) GetReclaimPolicy() v1alpha1.ReclaimPolicy

GetReclaimPolicy of this GlobalAddress.

func (*GlobalAddress) GetWriteConnectionSecretToReference

func (a *GlobalAddress) GetWriteConnectionSecretToReference() corev1.LocalObjectReference

GetWriteConnectionSecretToReference of this GlobalAddress.

func (*GlobalAddress) SetBindingPhase

func (a *GlobalAddress) SetBindingPhase(p v1alpha1.BindingPhase)

SetBindingPhase of this GlobalAddress.

func (*GlobalAddress) SetClaimReference

func (a *GlobalAddress) SetClaimReference(r *corev1.ObjectReference)

SetClaimReference of this GlobalAddress.

func (*GlobalAddress) SetConditions

func (a *GlobalAddress) SetConditions(c ...v1alpha1.Condition)

SetConditions of this GlobalAddress.

func (*GlobalAddress) SetNonPortableClassReference

func (a *GlobalAddress) SetNonPortableClassReference(r *corev1.ObjectReference)

SetNonPortableClassReference of this GlobalAddress.

func (*GlobalAddress) SetReclaimPolicy

func (a *GlobalAddress) SetReclaimPolicy(p v1alpha1.ReclaimPolicy)

SetReclaimPolicy of this GlobalAddress.

func (*GlobalAddress) SetWriteConnectionSecretToReference

func (a *GlobalAddress) SetWriteConnectionSecretToReference(r corev1.LocalObjectReference)

SetWriteConnectionSecretToReference of this GlobalAddress.

type GlobalAddressList

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

GlobalAddressList contains a list of GlobalAddress.

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 GlobalAddressParameters

type GlobalAddressParameters struct {
	// Address: The static IP address represented by this resource.
	// +optional
	Address *string `json:"address,omitempty"`

	// AddressType: The type of address to reserve, either INTERNAL or
	// EXTERNAL. If unspecified, defaults to EXTERNAL.
	//
	// Possible values:
	//   "EXTERNAL"
	//   "INTERNAL"
	//   "UNSPECIFIED_TYPE"
	// +optional
	AddressType *string `json:"addressType,omitempty"`

	// Description: An optional description of this resource.
	// +optional
	Description *string `json:"description,omitempty"`

	// IPVersion: The IP version that will be used by this address. Valid
	// options are IPV4 or IPV6.
	//
	// Possible values:
	//   "IPV4"
	//   "IPV6"
	//   "UNSPECIFIED_VERSION"
	// +optional
	IPVersion *string `json:"ipVersion,omitempty"`

	// 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])?`. The first
	// character must be a lowercase letter, and all following characters
	// (except for the last character) must be a dash, lowercase letter, or
	// digit. The last character must be a lowercase letter or digit.
	Name string `json:"name"`

	// Network: The URL of the network in which to reserve the address. This
	// field can only be used with INTERNAL type with the VPC_PEERING
	// purpose.
	// +optional
	Network *string `json:"network,omitempty"`

	// PrefixLength: The prefix length if the resource represents an IP
	// range.
	// +optional
	PrefixLength *int64 `json:"prefixLength,omitempty"`

	// Purpose: 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.
	// - `DNS_RESOLVER` for a DNS resolver address in a subnetwork
	// - `VPC_PEERING` for addresses that are reserved for VPC peer
	// networks.
	// - `NAT_AUTO` for addresses that are external IP addresses
	// automatically reserved for Cloud NAT.
	//
	// Possible values:
	//   "DNS_RESOLVER"
	//   "GCE_ENDPOINT"
	//   "NAT_AUTO"
	//   "VPC_PEERING"
	// +optional
	Purpose *string `json:"purpose,omitempty"`

	// Subnetwork: 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 a GCE_ENDPOINT or DNS_RESOLVER purpose.
	// +optional
	Subnetwork *string `json:"subnetwork,omitempty"`
}

GlobalAddressParameters define the desired state of a Google Compute Engine Global Address. Most fields map directly to an Address: https://cloud.google.com/compute/docs/reference/rest/v1/globalAddresses

func (*GlobalAddressParameters) DeepCopy

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

func (*GlobalAddressParameters) DeepCopyInto

func (in *GlobalAddressParameters) DeepCopyInto(out *GlobalAddressParameters)

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

type GlobalAddressSpec

type GlobalAddressSpec struct {
	v1alpha1.ResourceSpec   `json:",inline"`
	GlobalAddressParameters `json:",inline"`
}

A GlobalAddressSpec defines the desired state of a GlobalAddress.

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 GlobalAddressStatus

type GlobalAddressStatus struct {
	v1alpha1.ResourceStatus `json:",inline"`

	// CreationTimestamp in RFC3339 text format.
	CreationTimestamp string `json:"creationTimestamp,omitempty"`

	// ID for the resource. This identifier is defined by the server.
	ID uint64 `json:"id,omitempty"`

	// SelfLink: Server-defined URL for the resource.
	SelfLink string `json:"selfLink,omitempty"`

	// Status of the address, which can be one of RESERVING, RESERVED, or
	// IN_USE. An address that is RESERVING is currently in the process of being
	// reserved. A RESERVED address is currently reserved and available to use.
	// An IN_USE address is currently being used by another resource and is not
	// available.
	//
	// Possible values:
	//   "IN_USE"
	//   "RESERVED"
	//   "RESERVING"
	Status string `json:"status,omitempty"`

	// Users that are using this address.
	Users []string `json:"users,omitempty"`
}

A GlobalAddressStatus reflects the observed state of a GlobalAddress.

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 Network

type Network struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   NetworkSpec   `json:"spec,omitempty"`
	Status NetworkStatus `json:"status,omitempty"`
}

A Network is a managed resource that represents a Google Compute Engine VPC Network. +kubebuilder:subresource:status

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

func (n *Network) GetBindingPhase() v1alpha1.BindingPhase

GetBindingPhase of this Network.

func (*Network) GetClaimReference

func (n *Network) GetClaimReference() *corev1.ObjectReference

GetClaimReference of this Network.

func (*Network) GetNonPortableClassReference

func (n *Network) GetNonPortableClassReference() *corev1.ObjectReference

GetNonPortableClassReference of this Network.

func (*Network) GetReclaimPolicy

func (n *Network) GetReclaimPolicy() v1alpha1.ReclaimPolicy

GetReclaimPolicy of this Network.

func (*Network) GetWriteConnectionSecretToReference

func (n *Network) GetWriteConnectionSecretToReference() corev1.LocalObjectReference

GetWriteConnectionSecretToReference of this Network.

func (*Network) SetBindingPhase

func (n *Network) SetBindingPhase(p v1alpha1.BindingPhase)

SetBindingPhase of this Network.

func (*Network) SetClaimReference

func (n *Network) SetClaimReference(r *corev1.ObjectReference)

SetClaimReference of this Network.

func (*Network) SetConditions

func (n *Network) SetConditions(c ...v1alpha1.Condition)

SetConditions of this Network.

func (*Network) SetNonPortableClassReference

func (n *Network) SetNonPortableClassReference(r *corev1.ObjectReference)

SetNonPortableClassReference of this Network.

func (*Network) SetReclaimPolicy

func (n *Network) SetReclaimPolicy(p v1alpha1.ReclaimPolicy)

SetReclaimPolicy of this Network.

func (*Network) SetWriteConnectionSecretToReference

func (n *Network) SetWriteConnectionSecretToReference(r corev1.LocalObjectReference)

SetWriteConnectionSecretToReference of this Network.

type NetworkList

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

NetworkList contains a list of Network.

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 NetworkParameters

type NetworkParameters struct {
	// IPv4Range: Deprecated in favor of subnet mode networks. The range of
	// internal addresses that are legal on this network. This range is a
	// CIDR specification, for example: 192.168.0.0/16. Provided by the
	// client when the network is created.
	// +optional.
	IPv4Range string `json:"IPv4Range,omitempty"`

	// AutoCreateSubnetworks: When set to true, the VPC network is created
	// in "auto" mode. When set to false, the VPC network is created in
	// "custom" mode. When set to nil, the VPC network is created in "legacy"
	// mode which will be deprecated by GCP soon.
	//
	// An auto mode VPC network starts with one subnet per region. Each
	// subnet has a predetermined range as described in Auto mode VPC
	// network IP ranges.
	// +optional.
	AutoCreateSubnetworks *bool `json:"autoCreateSubnetworks,omitempty"`

	// Description: An optional description of this resource. Provide this
	// field when you create the resource.
	// +optional.
	Description string `json:"description,omitempty"`

	// Name: 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])?. The first
	// character must be a lowercase letter, and all following characters
	// (except for the last character) must be a dash, lowercase letter, or
	// digit. The last character must be a lowercase letter or digit.
	// +optional.
	Name string `json:"name,omitempty"`

	// RoutingConfig: The network-level routing configuration for this
	// network. Used by Cloud Router to determine what type of network-wide
	// routing behavior to enforce.
	// +optional.
	RoutingConfig *GCPNetworkRoutingConfig `json:"routingConfig,omitempty"`
}

NetworkParameters define the desired state of a Google Compute Engine VPC Network. Most fields map directly to a Network: https://cloud.google.com/compute/docs/reference/rest/v1/networks

func (*NetworkParameters) DeepCopy

func (in *NetworkParameters) DeepCopy() *NetworkParameters

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

func (*NetworkParameters) DeepCopyInto

func (in *NetworkParameters) DeepCopyInto(out *NetworkParameters)

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

func (NetworkParameters) IsSameAs

func (in NetworkParameters) IsSameAs(n GCPNetworkStatus) bool

IsSameAs compares the fields of NetworkParameters and GCPNetworkStatus to report whether there is a difference. Its cyclomatic complexity is related to how many fields exist, so, not much of an indicator. nolint:gocyclo

type NetworkSpec

type NetworkSpec struct {
	v1alpha1.ResourceSpec `json:",inline"`
	NetworkParameters     `json:",inline"`
}

A NetworkSpec defines the desired state of a Network.

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 NetworkStatus

type NetworkStatus struct {
	v1alpha1.ResourceStatus `json:",inline"`
	GCPNetworkStatus        `json:",inline"`
}

A NetworkStatus represents the observed state of a Network.

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 Subnetwork

type Subnetwork struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   SubnetworkSpec   `json:"spec,omitempty"`
	Status SubnetworkStatus `json:"status,omitempty"`
}

A Subnetwork is a managed resource that represents a Google Compute Engine VPC Subnetwork. +kubebuilder:subresource:status

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

func (s *Subnetwork) GetBindingPhase() v1alpha1.BindingPhase

GetBindingPhase of this Subnetwork.

func (*Subnetwork) GetClaimReference

func (s *Subnetwork) GetClaimReference() *corev1.ObjectReference

GetClaimReference of this Subnetwork.

func (*Subnetwork) GetNonPortableClassReference

func (s *Subnetwork) GetNonPortableClassReference() *corev1.ObjectReference

GetNonPortableClassReference of this Subnetwork.

func (*Subnetwork) GetReclaimPolicy

func (s *Subnetwork) GetReclaimPolicy() v1alpha1.ReclaimPolicy

GetReclaimPolicy of this Subnetwork.

func (*Subnetwork) GetWriteConnectionSecretToReference

func (s *Subnetwork) GetWriteConnectionSecretToReference() corev1.LocalObjectReference

GetWriteConnectionSecretToReference of this Subnetwork.

func (*Subnetwork) SetBindingPhase

func (s *Subnetwork) SetBindingPhase(p v1alpha1.BindingPhase)

SetBindingPhase of this Subnetwork.

func (*Subnetwork) SetClaimReference

func (s *Subnetwork) SetClaimReference(r *corev1.ObjectReference)

SetClaimReference of this Subnetwork.

func (*Subnetwork) SetConditions

func (s *Subnetwork) SetConditions(c ...v1alpha1.Condition)

SetConditions of this Subnetwork.

func (*Subnetwork) SetNonPortableClassReference

func (s *Subnetwork) SetNonPortableClassReference(r *corev1.ObjectReference)

SetNonPortableClassReference of this Subnetwork.

func (*Subnetwork) SetReclaimPolicy

func (s *Subnetwork) SetReclaimPolicy(p v1alpha1.ReclaimPolicy)

SetReclaimPolicy of this Subnetwork.

func (*Subnetwork) SetWriteConnectionSecretToReference

func (s *Subnetwork) SetWriteConnectionSecretToReference(r corev1.LocalObjectReference)

SetWriteConnectionSecretToReference of this Subnetwork.

type SubnetworkList

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

SubnetworkList contains a list of Subnetwork.

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 SubnetworkParameters

type SubnetworkParameters struct {
	// Description: 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"`

	// EnableFlowLogs: Whether to enable flow logging for this subnetwork.
	// If this field is not explicitly set, it will not appear in get
	// listings. If not set the default behavior is to disable flow logging.
	// +optional
	EnableFlowLogs bool `json:"enableFlowLogs,omitempty"`

	// IPCIDRRange: 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. This field
	// can be set only at resource creation time.
	IPCidrRange string `json:"ipCidrRange"`

	// Name: 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"`

	// Network: The URL of the network to which this subnetwork belongs,
	// provided by the client when initially creating the subnetwork. Only
	// networks that are in the distributed mode can have subnetworks. This
	// field can be set only at resource creation time.
	Network string `json:"network"`

	// PrivateIPGoogleAccess: Whether the VMs in this subnet can access
	// Google services without assigned external IP addresses. This field
	// can be both set at resource creation time and updated using
	// setPrivateIPGoogleAccess.
	// +optional
	PrivateIPGoogleAccess bool `json:"privateIpGoogleAccess,omitempty"`

	// Region: URL of the region where the Subnetwork resides. This field
	// can be set only at resource creation time.
	// +optional
	Region string `json:"region,omitempty"`

	// SecondaryIPRanges: 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. This
	// field can be updated with a patch request.
	// +optional
	SecondaryIPRanges []*GCPSubnetworkSecondaryRange `json:"secondaryIpRanges,omitempty"`
}

SubnetworkParameters define the desired state of a Google Compute Engine VPC Subnetwork. Most fields map directly to a Subnetwork: https://cloud.google.com/compute/docs/reference/rest/v1/subnetworks

func (*SubnetworkParameters) DeepCopy

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

func (*SubnetworkParameters) DeepCopyInto

func (in *SubnetworkParameters) DeepCopyInto(out *SubnetworkParameters)

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

func (SubnetworkParameters) IsSameAs

IsSameAs compares the fields of SubnetworkParameters and GCPSubnetworkStatus to report whether there is a difference. Its cyclomatic complexity is related to how many fields exist, so, not much of an indicator. nolint:gocyclo

type SubnetworkSpec

type SubnetworkSpec struct {
	v1alpha1.ResourceSpec `json:",inline"`
	SubnetworkParameters  `json:",inline"`
}

A SubnetworkSpec defines the desired state of a Subnetwork.

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 SubnetworkStatus

type SubnetworkStatus struct {
	v1alpha1.ResourceStatus `json:",inline"`
	GCPSubnetworkStatus     `json:",inline"`
}

A SubnetworkStatus represents the observed state of a Subnetwork.

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.

Jump to

Keyboard shortcuts

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