Documentation ¶
Overview ¶
Package v1 contains API Schema definitions for the registry v1 API group +kubebuilder:object:generate=true +groupName=registry.ethos.adobe.com
Index ¶
- Variables
- type APIServer
- type AllowedOnboardingTeam
- type AvailabilityZone
- type Capacity
- type Cluster
- type ClusterList
- type ClusterSpec
- type ClusterStatus
- type Extra
- type Offering
- type PeerVirtualNetwork
- type ServiceMetadata
- type ServiceMetadataItem
- type ServiceMetadataMap
- type Tier
- type VirtualNetwork
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "registry.ethos.adobe.com", Version: "v1"} // 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 ¶
This section is empty.
Types ¶
type APIServer ¶
type APIServer struct { // Information about K8s Api Endpoint // +kubebuilder:validation:Required Endpoint string `json:"endpoint"` // Information about K8s Api CA Cert CertificateAuthorityData string `json:"certificateAuthorityData"` }
APIServer - information about K8s API server
func (*APIServer) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServer.
func (*APIServer) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AllowedOnboardingTeam ¶
type AllowedOnboardingTeam struct { // Name of the team // +kubebuilder:validation:Required Name string `json:"name"` // List of git teams GitTeams []string `json:"gitTeams,omitempty"` // List of ldap groups LdapGroups []string `json:"ldapGroups,omitempty"` }
AllowedOnboardingTeam represents the Git teams and/or LDAP groups that are allowed to onboard
func (*AllowedOnboardingTeam) DeepCopy ¶
func (in *AllowedOnboardingTeam) DeepCopy() *AllowedOnboardingTeam
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AllowedOnboardingTeam.
func (*AllowedOnboardingTeam) DeepCopyInto ¶
func (in *AllowedOnboardingTeam) DeepCopyInto(out *AllowedOnboardingTeam)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AvailabilityZone ¶ added in v1.5.3
func (*AvailabilityZone) DeepCopy ¶ added in v1.5.3
func (in *AvailabilityZone) DeepCopy() *AvailabilityZone
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AvailabilityZone.
func (*AvailabilityZone) DeepCopyInto ¶ added in v1.5.3
func (in *AvailabilityZone) DeepCopyInto(out *AvailabilityZone)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Capacity ¶ added in v1.3.0
type Capacity struct { LastUpdated string `json:"lastUpdated"` ClusterCapacity int `json:"clusterCapacity"` ClusterProvisioning int `json:"clusterProvisioning"` MaxBQUPerRequest int `json:"maxBquPerRequest"` ClusterMaxBQU int `json:"clusterMaxBqu"` ClusterCurrentBQU int `json:"clusterCurrentBqu"` }
Capacity cluster information
func (*Capacity) DeepCopy ¶ added in v1.4.2
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Capacity.
func (*Capacity) DeepCopyInto ¶ added in v1.4.2
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cluster ¶
type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterSpec `json:"spec,omitempty"` Status ClusterStatus `json:"status,omitempty"` }
Cluster is the Schema for the clusters API
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterList ¶
type ClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Cluster `json:"items"` }
ClusterList contains a list of Cluster
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterSpec ¶
type ClusterSpec struct { // Cluster name // +kubebuilder:validation:Required // +kubebuilder:validation:MaxLength=64 // +kubebuilder:validation:MinLength=3 Name string `json:"name"` // Cluster name, without dash // +kubebuilder:validation:Required // +kubebuilder:validation:MaxLength=64 // +kubebuilder:validation:MinLength=3 ShortName string `json:"shortName"` // Information about K8s API endpoint and CA cert // +kubebuilder:validation:Required APIServer APIServer `json:"apiServer"` // Cluster internal region name // +kubebuilder:validation:Required Region string `json:"region"` // The cloud provider // +kubebuilder:validation:Required CloudType string `json:"cloudType"` // The cloud provider standard region // +kubebuilder:validation:Required CloudProviderRegion string `json:"cloudProviderRegion"` // Cluster environment // +kubebuilder:validation:Required Environment string `json:"environment"` // The BU that owns the cluster // +kubebuilder:validation:Required BusinessUnit string `json:"businessUnit"` // The BU responsible for paying for the cluster. ChargebackBusinessUnit string `json:"chargebackBusinessUnit,omitempty"` // Whether the cluster is charged back to the chargebackBusinessUnit ChargedBack *bool `json:"chargedBack,omitempty"` // The Org that is responsible for the cluster operations // +kubebuilder:validation:Required ManagingOrg string `json:"managingOrg"` // The Offering that the cluster is meant for // +kubebuilder:validation:Required Offering []Offering `json:"offering"` // The cloud account associated with the cluster // +kubebuilder:validation:Required AccountID string `json:"accountId"` // List of tiers with their associated information // +kubebuilder:validation:Required Tiers []Tier `json:"tiers"` // Virtual Private Networks information // +kubebuilder:validation:Required VirtualNetworks []VirtualNetwork `json:"virtualNetworks"` // Timestamp when cluster was registered in Cluster Registry // +kubebuilder:validation:Required RegisteredAt string `json:"registeredAt"` // Cluster status // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=Inactive;Active;Deprecated;Deleted Status string `json:"status"` // Cluster phase // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=Building;Testing;Running;Upgrading Phase string `json:"phase"` // Cluster maintenance group // +kubebuilder:validation:Required MaintenanceGroup string `json:"maintenanceGroup"` // The corresponding Argo instance of the cluster // +kubebuilder:validation:Required ArgoInstance string `json:"argoInstance"` // The type of the cluster Type string `json:"type,omitempty"` // Extra information, not necessary related to the cluster Extra Extra `json:"extra,omitempty"` // Git teams and/or LDAP groups that are allowed to onboard and deploy on the cluster AllowedOnboardingTeams []AllowedOnboardingTeam `json:"allowedOnboardingTeams,omitempty"` // List of cluster capabilities Capabilities []string `json:"capabilities,omitempty"` // Information about Virtual Networks manual peered with the cluster PeerVirtualNetworks []PeerVirtualNetwork `json:"peerVirtualNetworks,omitempty"` // Timestamp when cluster information was updated LastUpdated string `json:"lastUpdated"` // Cluster tags that were applied Tags map[string]string `json:"tags,omitempty"` // Capacity cluster information Capacity Capacity `json:"capacity,omitempty"` // ServiceMetadata service specific metadata ServiceMetadata ServiceMetadata `json:"services,omitempty"` // AvailabilityZones cluster availability zones AvailabilityZones []AvailabilityZone `json:"availabilityZones,omitempty"` }
ClusterSpec defines the desired state of Cluster
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterSpec) Merge ¶ added in v1.6.0
func (dst *ClusterSpec) Merge(src *ClusterSpec) error
type ClusterStatus ¶
type ClusterStatus struct { }
ClusterStatus defines the observed state of Cluster
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Extra ¶
type Extra struct { // Name of the domain DomainName string `json:"domainName"` // Load balancer endpoints LbEndpoints map[string]string `json:"lbEndpoints"` // Logging endpoints LoggingEndpoints []map[string]string `json:"loggingEndpoints,omitempty"` // List of IAM Arns EcrIamArns map[string][]string `json:"ecrIamArns,omitempty"` // Egress ports allowed outside of the namespace EgressPorts string `json:"egressPorts,omitempty"` // NFS information NFSInfo []map[string]string `json:"nfsInfo,omitempty"` // ExtendedRegion information ExtendedRegion string `json:"extendedRegion,omitempty"` // OIDC Issuer URL OidcIssuer string `json:"oidcIssuer,omitempty"` // Namespace Profile Infrastructure Type NamespaceProfileInfraType string `json:"namespaceProfileInfraType,omitempty"` }
Extra information
func (*Extra) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Extra.
func (*Extra) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Offering ¶
type Offering string
Offering the cluster is meant for +kubebuilder:validation:Enum=CaaS;PaaS
type PeerVirtualNetwork ¶
type PeerVirtualNetwork struct { // Remote Virtual Netowrk ID ID string `json:"id,omitempty"` // Remote Virtual Netowrk CIDRs Cidrs []string `json:"cidrs,omitempty"` // Cloud account of the owner OwnerID string `json:"ownerID,omitempty"` }
PeerVirtualNetwork - peering information done at cluster onboarding
func (*PeerVirtualNetwork) DeepCopy ¶
func (in *PeerVirtualNetwork) DeepCopy() *PeerVirtualNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PeerVirtualNetwork.
func (*PeerVirtualNetwork) DeepCopyInto ¶
func (in *PeerVirtualNetwork) DeepCopyInto(out *PeerVirtualNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceMetadata ¶ added in v1.5.1
type ServiceMetadata map[string]ServiceMetadataItem
func (ServiceMetadata) DeepCopy ¶ added in v1.5.1
func (in ServiceMetadata) DeepCopy() ServiceMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceMetadata.
func (ServiceMetadata) DeepCopyInto ¶ added in v1.5.1
func (in ServiceMetadata) DeepCopyInto(out *ServiceMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceMetadataItem ¶ added in v1.5.1
type ServiceMetadataItem map[string]ServiceMetadataMap
func (ServiceMetadataItem) DeepCopy ¶ added in v1.5.1
func (in ServiceMetadataItem) DeepCopy() ServiceMetadataItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceMetadataItem.
func (ServiceMetadataItem) DeepCopyInto ¶ added in v1.5.1
func (in ServiceMetadataItem) DeepCopyInto(out *ServiceMetadataItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceMetadataMap ¶ added in v1.5.1
func (ServiceMetadataMap) DeepCopy ¶ added in v1.5.1
func (in ServiceMetadataMap) DeepCopy() ServiceMetadataMap
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceMetadataMap.
func (ServiceMetadataMap) DeepCopyInto ¶ added in v1.5.1
func (in ServiceMetadataMap) DeepCopyInto(out *ServiceMetadataMap)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Tier ¶
type Tier struct { // Name of the tier // +kubebuilder:validation:Required Name string `json:"name"` // Type of the instances // +kubebuilder:validation:Required InstanceType string `json:"instanceType"` // Container runtime // +kubebuilder:validation:Required // +kubebuilder:validation:Enum=docker;cri-o ContainerRuntime string `json:"containerRuntime"` // Min number of instances // +kubebuilder:validation:Required MinCapacity int `json:"minCapacity"` // Max number of instances // +kubebuilder:validation:Required MaxCapacity int `json:"maxCapacity"` // Instance K8s labels Labels map[string]string `json:"labels,omitempty"` // Instance K8s taints Taints []string `json:"taints,omitempty"` // EnableKataSupport EnableKataSupport bool `json:"enableKataSupport,omitempty"` // KernelParameters KernelParameters map[string]string `json:"kernelParameters,omitempty"` }
Tier details
func (*Tier) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tier.
func (*Tier) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VirtualNetwork ¶
type VirtualNetwork struct { // Virtual private network Id // +kubebuilder:validation:Required ID string `json:"id"` // CIDRs used in this VirtualNetwork // +kubebuilder:validation:Required Cidrs []string `json:"cidrs"` }
VirtualNetwork information
func (*VirtualNetwork) DeepCopy ¶
func (in *VirtualNetwork) DeepCopy() *VirtualNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualNetwork.
func (*VirtualNetwork) DeepCopyInto ¶
func (in *VirtualNetwork) DeepCopyInto(out *VirtualNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.