Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the avo v1alpha1 API group +kubebuilder:object:generate=true +groupName=avo.openshift.io
Index ¶
- Constants
- Variables
- func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
- type AAOAccountAcceptanceCriteria
- type AcceptanceCriteria
- type AvoConfig
- type AvoConfigList
- type ExternalNameServiceSpec
- type SecurityGroup
- type SecurityGroupRule
- type VpcEndpoint
- type VpcEndpointAcceptance
- type VpcEndpointAcceptanceList
- type VpcEndpointAcceptanceSpec
- type VpcEndpointAcceptanceStatus
- type VpcEndpointList
- type VpcEndpointSpec
- type VpcEndpointStatus
Constants ¶
const ( AWSVpcEndpointCondition = "AWSVpcEndpointReady" AWSSecurityGroupCondition = "AWSSecurityGroupReady" AWSRoute53RecordCondition = "AWSRoute53RecordReady" ExternalNameServiceCondition = "ExternalNameServiceReady" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "avo.openshift.io", Version: "v1alpha1"} // 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 ¶
func GetOpenAPIDefinitions ¶
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
Types ¶
type AAOAccountAcceptanceCriteria ¶
type AAOAccountAcceptanceCriteria struct {
Namespace string `json:"namespace"`
}
func (*AAOAccountAcceptanceCriteria) DeepCopy ¶
func (in *AAOAccountAcceptanceCriteria) DeepCopy() *AAOAccountAcceptanceCriteria
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AAOAccountAcceptanceCriteria.
func (*AAOAccountAcceptanceCriteria) DeepCopyInto ¶
func (in *AAOAccountAcceptanceCriteria) DeepCopyInto(out *AAOAccountAcceptanceCriteria)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AcceptanceCriteria ¶
type AcceptanceCriteria struct {
// AwsAccountOperatorAccount will accept VPC Endpoint Connections that were requested from an AWS
// account that matches AWS accounts defined in account.aws.managed.openshift.io custom resources
AwsAccountOperatorAccount *AAOAccountAcceptanceCriteria `json:"awsAccountOperatorAccount,omitempty"`
// AlwaysAccept will instruct the controller to accept any VPC Endpoint Connections
AlwaysAccept bool `json:"alwaysAccept,omitempty"`
}
func (*AcceptanceCriteria) DeepCopy ¶
func (in *AcceptanceCriteria) DeepCopy() *AcceptanceCriteria
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AcceptanceCriteria.
func (*AcceptanceCriteria) DeepCopyInto ¶
func (in *AcceptanceCriteria) DeepCopyInto(out *AcceptanceCriteria)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AvoConfig ¶
type AvoConfig struct {
metav1.TypeMeta `json:",inline"`
// ControllerManagerConfigurationSpec returns the configurations for controllers
cfg.ControllerManagerConfigurationSpec `json:",inline"`
// EnableVpcEndpointController is a feature flag to determine whether the VpcEndpoint controller runs.
// Defaults to true
EnableVpcEndpointController *bool `json:"enableVpcEndpointController,omitempty"`
// EnableVpcEndpointAcceptanceController is a feature flag to determine whether the VpcEndpointAcceptance controller runs
// Defaults to false
EnableVpcEndpointAcceptanceController *bool `json:"enableVpcEndpointAcceptanceController,omitempty"`
// EnableVpcEndpointTemplateController is a feature flag to determine whether the VpcEndpointTemplate controller runs
// Defaults to false
EnableVpcEndpointTemplateController *bool `json:"enableVpcEndpointTemplateController,omitempty"`
}
AvoConfig is the Schema for the avoconfigs API
func (*AvoConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AvoConfig.
func (*AvoConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AvoConfig) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AvoConfigList ¶
type AvoConfigList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []AvoConfig `json:"items"`
}
AvoConfigList contains a list of AvoConfig
func (*AvoConfigList) DeepCopy ¶
func (in *AvoConfigList) DeepCopy() *AvoConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AvoConfigList.
func (*AvoConfigList) DeepCopyInto ¶
func (in *AvoConfigList) DeepCopyInto(out *AvoConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AvoConfigList) DeepCopyObject ¶
func (in *AvoConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ExternalNameServiceSpec ¶
type ExternalNameServiceSpec struct {
// Name of the ExternalName service to create in the same namespace as the VPCE CR
Name string `json:"name"`
}
func (*ExternalNameServiceSpec) DeepCopy ¶
func (in *ExternalNameServiceSpec) DeepCopy() *ExternalNameServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalNameServiceSpec.
func (*ExternalNameServiceSpec) DeepCopyInto ¶
func (in *ExternalNameServiceSpec) DeepCopyInto(out *ExternalNameServiceSpec)
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"`
}
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 {
// FromPort and ToPort are the start and end of the port range to allow.
// To allow 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
// To allow 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 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 VpcEndpointAcceptance ¶
type VpcEndpointAcceptance struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec VpcEndpointAcceptanceSpec `json:"spec,omitempty"`
Status VpcEndpointAcceptanceStatus `json:"status,omitempty"`
}
VpcEndpointAcceptance is the Schema for the vpcendpointacceptances API
func (*VpcEndpointAcceptance) DeepCopy ¶
func (in *VpcEndpointAcceptance) DeepCopy() *VpcEndpointAcceptance
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcEndpointAcceptance.
func (*VpcEndpointAcceptance) DeepCopyInto ¶
func (in *VpcEndpointAcceptance) DeepCopyInto(out *VpcEndpointAcceptance)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VpcEndpointAcceptance) DeepCopyObject ¶
func (in *VpcEndpointAcceptance) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VpcEndpointAcceptanceList ¶
type VpcEndpointAcceptanceList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []VpcEndpointAcceptance `json:"items"`
}
VpcEndpointAcceptanceList contains a list of VpcEndpointAcceptance
func (*VpcEndpointAcceptanceList) DeepCopy ¶
func (in *VpcEndpointAcceptanceList) DeepCopy() *VpcEndpointAcceptanceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcEndpointAcceptanceList.
func (*VpcEndpointAcceptanceList) DeepCopyInto ¶
func (in *VpcEndpointAcceptanceList) DeepCopyInto(out *VpcEndpointAcceptanceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*VpcEndpointAcceptanceList) DeepCopyObject ¶
func (in *VpcEndpointAcceptanceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type VpcEndpointAcceptanceSpec ¶
type VpcEndpointAcceptanceSpec struct {
// Id is the AWS ID of the VPC Endpoint Service for this controller to poll
Id string `json:"id"`
// AssumeRoleArn is the ARN of an AWS IAM role in the same account as the specified VPC Endpoint Service.
// This is necessary if the IAM entity available to the controller is not in the same AWS account as the
// VPC Endpoint Service.
AssumeRoleArn string `json:"assumeRoleArn,omitempty"`
// Region is the AWS region that contains the specified VPC Endpoint Service
Region string `json:"region"`
// AcceptanceCriteria
AcceptanceCriteria AcceptanceCriteria `json:"acceptanceCriteria"`
}
VpcEndpointAcceptanceSpec defines the desired state of VpcEndpointAcceptance
func (*VpcEndpointAcceptanceSpec) DeepCopy ¶
func (in *VpcEndpointAcceptanceSpec) DeepCopy() *VpcEndpointAcceptanceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcEndpointAcceptanceSpec.
func (*VpcEndpointAcceptanceSpec) DeepCopyInto ¶
func (in *VpcEndpointAcceptanceSpec) DeepCopyInto(out *VpcEndpointAcceptanceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VpcEndpointAcceptanceStatus ¶
type VpcEndpointAcceptanceStatus struct {
}
VpcEndpointAcceptanceStatus defines the observed state of VpcEndpointAcceptance
func (*VpcEndpointAcceptanceStatus) DeepCopy ¶
func (in *VpcEndpointAcceptanceStatus) DeepCopy() *VpcEndpointAcceptanceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcEndpointAcceptanceStatus.
func (*VpcEndpointAcceptanceStatus) DeepCopyInto ¶
func (in *VpcEndpointAcceptanceStatus) DeepCopyInto(out *VpcEndpointAcceptanceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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
// +optional
ServiceName string `json:"serviceName"`
// SecurityGroup contains the configuration of the security group attached to the VPC Endpoint
SecurityGroup SecurityGroup `json:"securityGroup"`
// +kubebuilder:validation:Pattern=[a-z0-9]([-a-z0-9]*[a-z0-9])?
// SubdomainName is the name of the Route53 Hosted Zone CNAME rule to create in the cluster's
// Private Route53 Hosted Zone
// +optional
SubdomainName string `json:"subdomainName"`
// ExternalNameService configures the name and namespace of the created Kubernetes ExternalName Service
// +optional
ExternalNameService ExternalNameServiceSpec `json:"externalNameService"`
// AddtlHostedZoneName is an optional FQDN to support supplemental VPCE routing via Route53 Private Hosted Zone
// +optional
AddtlHostedZoneName string `json:"addtlHostedZoneName,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
// +optional
SecurityGroupId string `json:"securityGroupId,omitempty"`
// The AWS ID of the managed VPC Endpoint
// +optional
VPCEndpointId string `json:"vpcEndpointId,omitempty"`
// The status conditions of the AWS and K8s resources managed by this controller
// +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.