v1alpha2

package
v0.0.0-...-4da6f2b Latest Latest
Warning

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

Go to latest
Published: Apr 11, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha2 contains API Schema definitions for the avo v1alpha2 API group +kubebuilder:object:generate=true +groupName=avo.openshift.io

Index

Constants

View Source
const (
	AWSVpcEndpointCondition      = "AWSVpcEndpointReady"
	AWSSecurityGroupCondition    = "AWSSecurityGroupReady"
	ExternalNameServiceCondition = "ExternalNameServiceReady"
	AWSRoute53RecordCondition    = "AWSRoute53RecordReady"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "avo.openshift.io", Version: "v1alpha2"}

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

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

Types

type AssociatedVpc

type AssociatedVpc struct {
	// CredentialsSecretRef references a Kubernetes secret with the keys: "aws_access_key_id" and
	// "aws_secret_access_key" which has the permissions to perform route53:AssociateVpcWithHostedZone and
	// ec2:DescribeVpcs
	CredentialsSecretRef *corev1.SecretReference `json:"credentialsSecretRef"`
	// VpcId is the ID of the VPC to associate to the Route 53 Private Hosted Zone
	VpcId string `json:"vpcId"`
	// Region is the AWS Region the VPC exists in
	Region string `json:"region"`
}

AssociatedVpc represents configuration for associating the created Route53 Private Hosted Zone to an additional VPC. Ref: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-associate-vpcs-different-accounts.html

func (*AssociatedVpc) DeepCopy

func (in *AssociatedVpc) DeepCopy() *AssociatedVpc

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

func (*AssociatedVpc) DeepCopyInto

func (in *AssociatedVpc) DeepCopyInto(out *AssociatedVpc)

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

type AwsEndpointSelector

type AwsEndpointSelector struct {
	Name string `json:"name"`
}

func (*AwsEndpointSelector) DeepCopy

func (in *AwsEndpointSelector) DeepCopy() *AwsEndpointSelector

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

func (*AwsEndpointSelector) DeepCopyInto

func (in *AwsEndpointSelector) DeepCopyInto(out *AwsEndpointSelector)

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

type CustomDns

type CustomDns struct {
	// Route53PrivateHostedZone configures an AWS Route 53 Private Hosted Zone with a route to the created VPCE.
	Route53PrivateHostedZone Route53PrivateHostedZone `json:"route53PrivateHostedZone,omitempty"`
}

CustomDns is the configuration of customized DNS routing external to a standalone AWS VPC Endpoint

func (*CustomDns) DeepCopy

func (in *CustomDns) DeepCopy() *CustomDns

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

func (*CustomDns) DeepCopyInto

func (in *CustomDns) DeepCopyInto(out *CustomDns)

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

type DnsSelector

type DnsSelector struct {
	// Name of the config.openshift.io/v1 DNS custom resource to select
	Name string `json:"name"`
}

DnsSelector represents a selector for a config.openshift.io/v1 DNS custom resource

func (*DnsSelector) DeepCopy

func (in *DnsSelector) DeepCopy() *DnsSelector

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

func (*DnsSelector) DeepCopyInto

func (in *DnsSelector) DeepCopyInto(out *DnsSelector)

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

type DomainName

type DomainName struct {
	// Name specifies the base domain name directly
	Name string `json:"name,omitempty"`

	// ValueFrom allows the base domain name to be read from a source
	ValueFrom *DomainNameSource `json:"valueFrom,omitempty"`
}

DomainName represents the base domain name of a Route 53 Private Hosted Zone Similar to: https://github.com/kubernetes/api/blob/7a87286591e433a1d034a768032b5fd4abb072b3/core/v1/types.go#L2100-L2110

func (*DomainName) DeepCopy

func (in *DomainName) DeepCopy() *DomainName

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

func (*DomainName) DeepCopyInto

func (in *DomainName) DeepCopyInto(out *DomainName)

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

type DomainNameSource

type DomainNameSource struct {
	// A reference to a config.openshift.io/v1 DNS custom resource
	DnsRef *DnsSelector `json:"dnsRef,omitempty"`

	// A reference to a hypershift.openshift.io/v1beta1 HostedControlPlane custom resource
	HostedControlPlaneRef *HostedControlPlaneSelector `json:"hostedControlPlaneRef,omitempty"`
}

func (*DomainNameSource) DeepCopy

func (in *DomainNameSource) DeepCopy() *DomainNameSource

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

func (*DomainNameSource) DeepCopyInto

func (in *DomainNameSource) DeepCopyInto(out *DomainNameSource)

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

type ExternalNameService

type ExternalNameService struct {
	// Name of the ExternalName service to create in the same namespace as the VPCE Custom Resource
	Name string `json:"name"`
}

ExternalNameService is the configuration of a Kubernetes ExternalName Service pointing to a CustomDns Route53PrivateHostedZone Record for the VPC Endpoint.

func (*ExternalNameService) DeepCopy

func (in *ExternalNameService) DeepCopy() *ExternalNameService

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

func (*ExternalNameService) DeepCopyInto

func (in *ExternalNameService) DeepCopyInto(out *ExternalNameService)

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

type HostedControlPlaneSelector

type HostedControlPlaneSelector struct {
	// Path of the field containing the namespace of the hostedcontrolplane, typically ".metadata.namespace" to select
	// the same namespace as the VpcEndpoint itself
	NamespaceFieldRef *ObjectFieldSelector `json:"namespaceFieldRef,omitempty"`
}

HostedControlPlaneSelector represents a selector for a hypershift.openshift.io/v1beta1 HostedControlPlane custom resource

func (*HostedControlPlaneSelector) DeepCopy

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

func (*HostedControlPlaneSelector) DeepCopyInto

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

type ObjectFieldSelector

type ObjectFieldSelector struct {

	// Path of the field to select
	FieldPath string `json:"fieldPath"`
}

ObjectFieldSelector selects a field of a VpcEndpoint. https://github.com/kubernetes/api/blob/f3a0f2ed177a2ba0eb0b6318ee16222b14872d70/core/v1/types.go#L2054

func (*ObjectFieldSelector) DeepCopy

func (in *ObjectFieldSelector) DeepCopy() *ObjectFieldSelector

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

func (*ObjectFieldSelector) DeepCopyInto

func (in *ObjectFieldSelector) DeepCopyInto(out *ObjectFieldSelector)

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

type Route53HostedZoneRecord

type Route53HostedZoneRecord struct {
	// Hostname is the hostname of the record.
	Hostname string `json:"hostname"`

	ExternalNameService ExternalNameService `json:"externalNameService,omitempty"`
}

Route53HostedZoneRecord is the configuration of an AWS Route 53 Hosted Zone Record pointing to the created VPCE.

func (*Route53HostedZoneRecord) DeepCopy

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

func (*Route53HostedZoneRecord) DeepCopyInto

func (in *Route53HostedZoneRecord) DeepCopyInto(out *Route53HostedZoneRecord)

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

type Route53PrivateHostedZone

type Route53PrivateHostedZone struct {

	// AutoDiscover will use the existing ROSA cluster's Route 53 Private Hosted Zone
	AutoDiscover bool `json:"autoDiscoverPrivateHostedZone,omitempty"`

	// AssociatedVpc represents configuration for associating the created Route53 Private Hosted Zone to additional VPCs
	// Ref: https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/hosted-zone-private-associate-vpcs-different-accounts.html
	AssociatedVpcs []AssociatedVpc `json:"associatedVpcs,omitempty"`

	// DomainName specifies the domain name of a Route 53 Private Hosted Zone to create
	DomainName string `json:"domainName,omitempty"`

	// DomainNameRef is an alternative to DomainName when the domain name of a Route 53 Private Hosted Zone is read from
	// another source
	DomainNameRef *DomainName `json:"domainNameRef,omitempty"`

	// Id specifies the AWS ID of an existing Route 53 Private Hosted Zone to use
	Id string `json:"id,omitempty"`

	// Record is the configuration of a record within the selected Route 53 Private Hosted Zone
	Record Route53HostedZoneRecord `json:"record,omitempty"`
}

Route53PrivateHostedZone is the configuration of an AWS Route 53 Private Hosted Zone to create a custom domain the resolves to the regional endpoint of the created VPCE.

func (*Route53PrivateHostedZone) DeepCopy

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

func (*Route53PrivateHostedZone) DeepCopyInto

func (in *Route53PrivateHostedZone) DeepCopyInto(out *Route53PrivateHostedZone)

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

type SecurityGroup

type SecurityGroup struct {
	// IngressRules is a list of security group ingress rules.
	// They will be allowed for the master and worker security groups.
	// +optional
	IngressRules []SecurityGroupRule `json:"ingressRules,omitempty"`

	// EgressRules is a list of security group egress rules
	// They will be allowed for the master and worker security groups.
	// +optional
	EgressRules []SecurityGroupRule `json:"egressRules,omitempty"`
}

SecurityGroup represents the configuration of a security group associated with the VPC Endpoint created by this CR

func (*SecurityGroup) DeepCopy

func (in *SecurityGroup) DeepCopy() *SecurityGroup

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

func (*SecurityGroup) DeepCopyInto

func (in *SecurityGroup) DeepCopyInto(out *SecurityGroup)

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

type SecurityGroupRule

type SecurityGroupRule struct {

	// CidrIp is the IPv4 address range, in CIDR format, to allow.
	// If not specified, the cluster's master and worker security group are allowed instead.
	CidrIp string `json:"cidrIp,omitempty"`

	// FromPort and ToPort are the start and end of the port range to allow.
	// In the case of a single port, set both to the same value.
	FromPort int32 `json:"fromPort,omitempty"`

	// FromPort and ToPort are the start and end of the port range to allow.
	// In the case of a single port, set both to the same value.
	ToPort int32 `json:"toPort,omitempty"`

	// Protocol is the IP protocol, tcp | udp | icmp | all
	Protocol string `json:"protocol,omitempty"`
}

SecurityGroupRule is based on required inputs for `aws authorize-security-group-ingress/egress`

func (*SecurityGroupRule) DeepCopy

func (in *SecurityGroupRule) DeepCopy() *SecurityGroupRule

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

func (*SecurityGroupRule) DeepCopyInto

func (in *SecurityGroupRule) DeepCopyInto(out *SecurityGroupRule)

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

type ServiceName

type ServiceName struct {
	Name      string             `json:"name,omitempty"`
	ValueFrom *ServiceNameSource `json:"valueFrom,omitempty"`
}

func (*ServiceName) DeepCopy

func (in *ServiceName) DeepCopy() *ServiceName

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

func (*ServiceName) DeepCopyInto

func (in *ServiceName) DeepCopyInto(out *ServiceName)

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

type ServiceNameSource

type ServiceNameSource struct {
	AwsEndpointServiceRef *AwsEndpointSelector `json:"awsEndpointServiceRef,omitempty"`
}

ServiceNameSource represents the source of a VPC Endpoint Service Name Similar to: https://github.com/kubernetes/api/blob/7a87286591e433a1d034a768032b5fd4abb072b3/core/v1/types.go#L2100-L2110

func (*ServiceNameSource) DeepCopy

func (in *ServiceNameSource) DeepCopy() *ServiceNameSource

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

func (*ServiceNameSource) DeepCopyInto

func (in *ServiceNameSource) DeepCopyInto(out *ServiceNameSource)

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

type Tag

type Tag struct {
	// Key of an AWS tag
	Key string `json:"key"`

	// Value of an AWS tag
	Value string `json:"value"`
}

Tag represents a key-value pair to filter AWS resources by

func (*Tag) DeepCopy

func (in *Tag) DeepCopy() *Tag

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

func (*Tag) DeepCopyInto

func (in *Tag) DeepCopyInto(out *Tag)

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

type Vpc

type Vpc struct {

	// AutoDiscoverSubnets will instruct the controller to use the subnets associated with this ROSA cluster if true
	// using the tag-key: "kubernetes.io/cluster/${infraName}". If .spec.vpc.ids or spec.vpc.tags is specified, the
	// tag-key "kubernetes.io/role/internal-elb" will be used instead.
	AutoDiscoverSubnets bool `json:"autoDiscoverSubnets,omitempty"`

	// SubnetIds is a list of subnet ids to associate with the VPC Endpoint, which must all be in the same VPC.
	// If more than one is specified, each subnet must be in a different Availability Zone.
	// Ref: https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html
	SubnetIds []string `json:"subnetIds,omitempty"`

	// Ids is a list of VPC ids that aws-vpce-operator can choose from to load balance in a "least used"
	// fashion to evenly spread quota usage across provided VPCs. All provided VPCs must be in the
	// same region as the specified VPC Endpoint Service (.spec.serviceName) and must use subnet auto-discovery
	// (.spec.vpc.autoDiscoverSubnets true) based on the "kubernetes.io/role/internal-elb" tag key
	Ids []string `json:"ids,omitempty"`

	// Tags is a list of AWS tag key-value pairs to find VPCs with. This is mutually exclusive with
	// .spec.vpc.ids and can only be specified with .spec.vpc.autoDiscoverSubnets = true.
	Tags []Tag `json:"tags,omitempty"`

	// SubnetTags is a list of AWS tag key-value pairs to additionally filter private-subnets with. The main tags used
	// when filtering subnets is controlled by .spec.vpc.autoDiscoverSubnets
	SubnetTags []Tag `json:"subnetTags,omitempty"`
}

Vpc represents the configuration for the AWS VPC to create the VPC Endpoint in

func (*Vpc) DeepCopy

func (in *Vpc) DeepCopy() *Vpc

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

func (*Vpc) DeepCopyInto

func (in *Vpc) DeepCopyInto(out *Vpc)

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

type VpcEndpoint

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

	Spec   VpcEndpointSpec   `json:"spec,omitempty"`
	Status VpcEndpointStatus `json:"status,omitempty"`
}

VpcEndpoint is the Schema for the vpcendpoints API

func (*VpcEndpoint) DeepCopy

func (in *VpcEndpoint) DeepCopy() *VpcEndpoint

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

func (*VpcEndpoint) DeepCopyInto

func (in *VpcEndpoint) DeepCopyInto(out *VpcEndpoint)

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

func (*VpcEndpoint) DeepCopyObject

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

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

type VpcEndpointList

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

VpcEndpointList contains a list of VpcEndpoint

func (*VpcEndpointList) DeepCopy

func (in *VpcEndpointList) DeepCopy() *VpcEndpointList

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

func (*VpcEndpointList) DeepCopyInto

func (in *VpcEndpointList) DeepCopyInto(out *VpcEndpointList)

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

func (*VpcEndpointList) DeepCopyObject

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

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

type VpcEndpointSpec

type VpcEndpointSpec struct {
	// ServiceName is the name of the VPC Endpoint Service to connect to
	ServiceName string `json:"serviceName,omitempty"`

	// ServiceNameRef refers to a group and resource that contains the name of the VPC Endpoint Service
	ServiceNameRef *ServiceName `json:"serviceNameRef,omitempty"`

	// SecurityGroup contains the configuration of the security group attached to the VPC Endpoint
	SecurityGroup SecurityGroup `json:"securityGroup"`

	// AssumeRoleArn will allow AVO to use sts:AssumeRole to create VPC Endpoints in separate AWS Accounts
	// TODO: Implement
	AssumeRoleArn string `json:"assumeRoleArn,omitempty"`

	// AWSCredentialOverride is a Kubernetes secret containing AWS credentials for the operator to use for reconciling
	// this specific vpcendpoint Custom Resource.
	// The secret should have data keys for either:
	// * role_arn: The operator will attempt to assume this role
	// * aws_access_key_id and aws_secret_access_key: The operator will simply use these IAM User credentials
	AWSCredentialOverrideRef *corev1.SecretReference `json:"awsCredentialOverrideRef,omitempty"`

	// Region will allow AVO to create VPC Endpoints and other AWS infrastructure in a specific region
	// Defaults to the same region as the cluster AVO is running on
	Region string `json:"region,omitempty"`

	// EnablePrivateDns will allow AVO to create VPC Endpoints with private DNS names specified by a VPC Endpoint Service
	// https://docs.aws.amazon.com/vpc/latest/privatelink/manage-dns-names.html (defaults to false)
	// TODO: Implement
	EnablePrivateDns bool `json:"enablePrivateDns,omitempty"`

	// Vpc will allow AVO to use a specific VPC or use the same VPC as the ROSA cluster it's running on
	Vpc Vpc `json:"vpc,omitempty"`

	// CustomDns will define configurations for all other custom DNS setups, such as a separate Route 53 Private Hosted
	// Zone or an `ExternalName` Kubernetes service.
	CustomDns CustomDns `json:"customDns,omitempty"`
}

VpcEndpointSpec defines the desired state of VpcEndpoint

func (*VpcEndpointSpec) DeepCopy

func (in *VpcEndpointSpec) DeepCopy() *VpcEndpointSpec

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

func (*VpcEndpointSpec) DeepCopyInto

func (in *VpcEndpointSpec) DeepCopyInto(out *VpcEndpointSpec)

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

type VpcEndpointStatus

type VpcEndpointStatus struct {
	// Status of the VPC Endpoint
	Status string `json:"status,omitempty"`

	// The AWS ID of the managed security group
	// +kubebuilder:validation:Optional
	SecurityGroupId string `json:"securityGroupId,omitempty"`

	// The AWS ID of the VPC to create resources in
	// +kubebuilder:validation:Optional
	VPCId string `json:"vpcId,omitempty"`

	// The AWS ID of the managed VPC Endpoint
	// +kubebuilder:validation:Optional
	VPCEndpointId string `json:"vpcEndpointId,omitempty"`

	// The name of the VPC Endpoint Service the VPC Endpoint connects to
	// +kubebuilder:validation:Optional
	VPCEndpointServiceName string `json:"vpcEndpointServiceName,omitempty"`

	// The AWS ID of the Route 53 Private Hosted Zone being used
	// +kubebuilder:validation:Optional
	HostedZoneId string `json:"hostedZoneId,omitempty"`

	// The FQDN of a Route 53 Hosted Zone record that has been created
	// +kubebuilder:validation:Optional
	ResourceRecordSet string `json:"resourceRecordSet,omitempty"`

	// The Infra Id of the cluster, used for naming and tagging purposes
	// +kubebuilder:validation:Optional
	InfraId string `json:"infraId,omitempty"`

	// The status conditions of the AWS and K8s resources managed by this controller
	// +kubebuilder:validation:Optional
	Conditions []metav1.Condition `json:"conditions"`
}

VpcEndpointStatus defines the observed state of VpcEndpoint

func (*VpcEndpointStatus) DeepCopy

func (in *VpcEndpointStatus) DeepCopy() *VpcEndpointStatus

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

func (*VpcEndpointStatus) DeepCopyInto

func (in *VpcEndpointStatus) DeepCopyInto(out *VpcEndpointStatus)

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

type VpcEndpointTemplate

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

	Spec   VpcEndpointTemplateSpec   `json:"spec,omitempty"`
	Status VpcEndpointTemplateStatus `json:"status,omitempty"`
}

VpcEndpointTemplate is the Schema for the vpcendpointtemplates API

func (*VpcEndpointTemplate) DeepCopy

func (in *VpcEndpointTemplate) DeepCopy() *VpcEndpointTemplate

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

func (*VpcEndpointTemplate) DeepCopyInto

func (in *VpcEndpointTemplate) DeepCopyInto(out *VpcEndpointTemplate)

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

func (*VpcEndpointTemplate) DeepCopyObject

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

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

type VpcEndpointTemplateList

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

VpcEndpointTemplateList contains a list of VpcEndpointTemplate

func (*VpcEndpointTemplateList) DeepCopy

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

func (*VpcEndpointTemplateList) DeepCopyInto

func (in *VpcEndpointTemplateList) DeepCopyInto(out *VpcEndpointTemplateList)

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

func (*VpcEndpointTemplateList) DeepCopyObject

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

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

type VpcEndpointTemplateSpec

type VpcEndpointTemplateSpec struct {
	// Type allows us to make different VpcEndpointTemplates that watch various kinds
	Type VpcEndpointTemplateType `json:"type"`

	// A label selector is a label query over a set of resources. The result of
	// matchLabels and matchExpressions are ANDed. An empty label selector matches
	// all objects. A null label selector matches no objects.
	Selector metav1.LabelSelector `json:"selector"`

	// Template describes the VpcEndpoints that will be created.
	Template VpceTemplateSpec `json:"template"`
}

VpcEndpointTemplateSpec defines the desired state of VpcEndpointTemplate

func (*VpcEndpointTemplateSpec) DeepCopy

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

func (*VpcEndpointTemplateSpec) DeepCopyInto

func (in *VpcEndpointTemplateSpec) DeepCopyInto(out *VpcEndpointTemplateSpec)

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

type VpcEndpointTemplateStatus

type VpcEndpointTemplateStatus struct {
}

VpcEndpointTemplateStatus defines the observed state of VpcEndpointTemplate

func (*VpcEndpointTemplateStatus) DeepCopy

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

func (*VpcEndpointTemplateStatus) DeepCopyInto

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

type VpcEndpointTemplateType

type VpcEndpointTemplateType string
const (
	// HCPVpcEndpointTemplateType classifies this VpcEndpointTemplate as one that applies to HyperShift HostedControlPlanes
	HCPVpcEndpointTemplateType VpcEndpointTemplateType = "HostedControlPlane"
)

type VpceTemplateSpec

type VpceTemplateSpec struct {
	// Standard object's metadata.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
	metav1.ObjectMeta `json:"metadata,omitempty"`

	// Specification of the desired behavior of the VpcEndpoint.
	Spec VpcEndpointSpec `json:"spec"`
}

VpceTemplateSpec describes the data a VpcEndpoint should have when created from a template

func (*VpceTemplateSpec) DeepCopy

func (in *VpceTemplateSpec) DeepCopy() *VpceTemplateSpec

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

func (*VpceTemplateSpec) DeepCopyInto

func (in *VpceTemplateSpec) DeepCopyInto(out *VpceTemplateSpec)

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