Documentation ¶
Overview ¶
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Package v1 is the v1 version of the API. +groupName=cloud.k8s.io
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2018 Oracle and/or its affiliates. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type CertificateAuthority
- type Cluster
- type ClusterList
- type ClusterSpec
- type ClusterStatus
- type Compute
- type ComputeList
- type ComputeSpec
- type ComputeStatus
- type ComputeTemplate
- type Cpod
- type CpodList
- type CpodSpec
- type CpodStatus
- type HealthCheck
- type Listener
- type LoadBalancer
- type LoadBalancerList
- type LoadBalancerSpec
- type LoadBalancerStatus
- type Network
- type NetworkList
- type NetworkSpec
- type NetworkStatus
- type OperatorCondition
- type OperatorConditionType
- type OperatorState
- type OperatorStatus
- type SSLCertificate
- type Security
- type SecurityList
- type SecuritySpec
- type SecurityStatus
- type Storage
- type StorageList
- type StorageSpec
- type StorageStatus
- type Subnet
- type Template
- type UserData
- type Volume
Constants ¶
const ( ClusterKind = "Cluster" ClusterResourcePlural = "clusters" ClusterControllerName = "clusters" )
const ( ComputeKind = "Compute" ComputeResourcePlural = "computes" ComputeControllerName = "computes" )
const ( CpodKind = "Cpod" CpodResourcePlural = "cpods" CpodControllerName = "cpods" )
const ( LoadBalancerKind = "LoadBalancer" LoadBalancerResourcePlural = "loadbalancers" LoadBalancerControllerName = "loadbalancers" )
const ( NetworkKind = "Network" NetworkResourcePlural = "networks" NetworkControllerName = "networks" )
const ( SecurityKind = "Security" SecurityResourcePlural = "securities" SecurityControllerName = "securities" )
const ( StorageKind = "Storage" StorageResourcePlural = "storages" StorageControllerName = "storages" )
const GroupName = "cloud.k8s.io"
GroupName is the group name used in this package.
Variables ¶
var ( SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = SchemeBuilder.AddToScheme )
Register scheme and api resources
var ClusterValidation = apiextv1beta1.CustomResourceValidation{ OpenAPIV3Schema: &apiextv1beta1.JSONSchemaProps{ Properties: map[string]apiextv1beta1.JSONSchemaProps{ "metadata": common.MetaDataValidation, }, }, }
ClusterValidation describes the Cluster validation schema
var ComputeValidation = apiextv1beta1.CustomResourceValidation{ OpenAPIV3Schema: &apiextv1beta1.JSONSchemaProps{ Properties: map[string]apiextv1beta1.JSONSchemaProps{ "metadata": common.MetaDataValidation, "spec": { Required: []string{"network"}, Properties: map[string]apiextv1beta1.JSONSchemaProps{ "network": { Type: common.ValidationTypeString, Pattern: common.AnyStringValidationRegex, }, "replicas": { Type: common.ValidationTypeInteger, }, "minAvailabilityZones": { Type: common.ValidationTypeInteger, }, }, }, }, }, }
ComputeValidation describes the compute validation schema
var LoadBalancerValidation = apiextv1beta1.CustomResourceValidation{ OpenAPIV3Schema: &apiextv1beta1.JSONSchemaProps{ Properties: map[string]apiextv1beta1.JSONSchemaProps{ "metadata": common.MetaDataValidation, "spec": { Required: []string{"listeners", "backendPort", "computeSelector", "securitySelector"}, Properties: map[string]apiextv1beta1.JSONSchemaProps{ "backendPort": { Type: common.ValidationTypeInteger, Minimum: &minTCPPort, Maximum: &maxTCPPort, }, "balanceMode": { Type: common.ValidationTypeString, Pattern: common.AnyStringValidationRegex, }, "listeners": { Type: common.ValidationTypeArray, }, }, }, }, }, }
LoadBalancerValidation describes the loadbalancer validation schema
var NetworkValidation = apiextv1beta1.CustomResourceValidation{ OpenAPIV3Schema: &apiextv1beta1.JSONSchemaProps{ Properties: map[string]apiextv1beta1.JSONSchemaProps{ "metadata": common.MetaDataValidation, "spec": { Properties: map[string]apiextv1beta1.JSONSchemaProps{ "cirdBlock": { Type: common.ValidationTypeString, Pattern: common.CidrValidationRegex, }, }, }, }, }, }
NetworkValidation describes the network validation schema
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
SchemeGroupVersion is the group version used to register these objects.
var SecurityValidation = apiextv1beta1.CustomResourceValidation{ OpenAPIV3Schema: &apiextv1beta1.JSONSchemaProps{ Properties: map[string]apiextv1beta1.JSONSchemaProps{ "metadata": common.MetaDataValidation, }, }, }
SecurityValidation describes the security validation schema
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group-qualified GroupResource.
Types ¶
type CertificateAuthority ¶
type CertificateAuthority struct { Certificate string `json:"certificate"` Key string `json:"key"` }
func (*CertificateAuthority) DeepCopy ¶
func (in *CertificateAuthority) DeepCopy() *CertificateAuthority
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertificateAuthority.
func (*CertificateAuthority) DeepCopyInto ¶
func (in *CertificateAuthority) DeepCopyInto(out *CertificateAuthority)
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"` Spec ClusterSpec `json:"spec"` Status ClusterStatus `json:"status,omitempty"` }
Cluster describes Cluster
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"` Items []Cluster `json:"items"` }
ClusterList is a list of Cluster resources
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 { // to managed service vs kubeadm IsManaged bool `json:"isManaged"` Version string `json:"version,omitempty"` Master ComputeTemplate `json:"master"` Worker ComputeTemplate `json:"worker"` // for kubeadm/non-managed service to remotely create user/kubeconfig CA CertificateAuthority `json:"ca,omitempty"` Token string `json:"token"` Env []apiv1.EnvVar `json:"env,omitempty"` Resources apiv1.ResourceRequirements `json:"resources,omitempty"` }
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.
type ClusterStatus ¶
type ClusterStatus struct { AvailabilityZones []string `json:"availabilityZones"` OperatorStatus }
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 Compute ¶
type Compute struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata"` Spec ComputeSpec `json:"spec"` Status ComputeStatus `json:"status,omitempty"` }
Compute describes Compute
func (*Compute) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Compute.
func (*Compute) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Compute) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ComputeList ¶
type ComputeList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []Compute `json:"items"` }
ComputeList is a list of Compute resources
func (*ComputeList) DeepCopy ¶
func (in *ComputeList) DeepCopy() *ComputeList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeList.
func (*ComputeList) DeepCopyInto ¶
func (in *ComputeList) DeepCopyInto(out *ComputeList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ComputeList) DeepCopyObject ¶
func (in *ComputeList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ComputeSpec ¶
type ComputeSpec struct { // name of the network to place the compute Network string `json:"network"` // number of instances Replicas int `json:"replicas,omitempty"` // minimum availability zone count MinAvailabiliyZones int `json:"minAvailabilityZones,omitempty"` SecuritySelector map[string]string `json:"securitySelector,omitempty"` // attributes that each instance will use to construct its model Template Template `json:"template,omitempty"` Env []apiv1.EnvVar `json:"env,omitempty"` Resources apiv1.ResourceRequirements `json:"resources,omitempty"` }
func (*ComputeSpec) DeepCopy ¶
func (in *ComputeSpec) DeepCopy() *ComputeSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeSpec.
func (*ComputeSpec) DeepCopyInto ¶
func (in *ComputeSpec) DeepCopyInto(out *ComputeSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComputeStatus ¶
type ComputeStatus struct { OperatorStatus // one-time randomized array of availability zones/domains for even distribution AvailabilityZones []string `json:"availabilityZones"` Replicas int `json:"replicas"` ReadyReplicas int `json:"readyReplicas"` AvailableReplicas int `json:"availableReplicas"` }
func (*ComputeStatus) DeepCopy ¶
func (in *ComputeStatus) DeepCopy() *ComputeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeStatus.
func (*ComputeStatus) DeepCopyInto ¶
func (in *ComputeStatus) DeepCopyInto(out *ComputeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ComputeTemplate ¶
type ComputeTemplate struct { // number of instances Replicas int `json:"replicas,omitempty"` // template passed down to compute Template Template `json:"template,omitempty"` }
func (*ComputeTemplate) DeepCopy ¶
func (in *ComputeTemplate) DeepCopy() *ComputeTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComputeTemplate.
func (*ComputeTemplate) DeepCopyInto ¶
func (in *ComputeTemplate) DeepCopyInto(out *ComputeTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cpod ¶
type Cpod struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata"` Spec CpodSpec `json:"spec"` Status CpodStatus `json:"status,omitempty"` }
Cpod describes cpod
func (*Cpod) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cpod.
func (*Cpod) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cpod) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CpodList ¶
type CpodList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []Cpod `json:"items"` }
CpodList is a list of Cpod resources
func (*CpodList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CpodList.
func (*CpodList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CpodList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CpodSpec ¶
func (*CpodSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CpodSpec.
func (*CpodSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CpodStatus ¶
type CpodStatus struct { PodStatus corev1.PodStatus OperatorStatus }
func (*CpodStatus) DeepCopy ¶
func (in *CpodStatus) DeepCopy() *CpodStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CpodStatus.
func (*CpodStatus) DeepCopyInto ¶
func (in *CpodStatus) DeepCopyInto(out *CpodStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HealthCheck ¶
type HealthCheck struct { Protocol string `url:"-" header:"-" json:"protocol"` URLPath string `url:"-" header:"-" json:"urlPath"` // Optional IntervalInMillis int `url:"-" header:"-" json:"intervalInMillis,omitempty"` // Default: 10000 Port int `url:"-" header:"-" json:"port,omitempty"` // Default: 0 ResponseBodyRegex string `url:"-" header:"-" json:"responseBodyRegex,omitempty"` // Default: ".*" Retries int `url:"-" header:"-" json:"retries,omitempty"` // Default: 3 ReturnCode int `url:"-" header:"-" json:"returnCode,omitempty"` // Default: 200 TimeoutInMillis int `url:"-" header:"-" json:"timeoutInMillis,omitempty"` // Default: 3000 }
HealthCheck describes health checker of the backend set
func (*HealthCheck) DeepCopy ¶
func (in *HealthCheck) DeepCopy() *HealthCheck
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheck.
func (*HealthCheck) DeepCopyInto ¶
func (in *HealthCheck) DeepCopyInto(out *HealthCheck)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Listener ¶
type Listener struct { Port int `json:"port,omitempty"` Protocol string `json:"protocol,omitempty"` // Optional IdleTimeoutSec int `json:"idleTimeoutSec,omitempty"` SSLCertificate SSLCertificate `json:"sslCertificate,omitempty"` }
func (*Listener) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Listener.
func (*Listener) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadBalancer ¶
type LoadBalancer struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata"` Spec LoadBalancerSpec `json:"spec"` Status LoadBalancerStatus `json:"status,omitempty"` }
LoadBalancer describes LoadBalancer
func (*LoadBalancer) DeepCopy ¶
func (in *LoadBalancer) DeepCopy() *LoadBalancer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancer.
func (*LoadBalancer) DeepCopyInto ¶
func (in *LoadBalancer) DeepCopyInto(out *LoadBalancer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*LoadBalancer) DeepCopyObject ¶
func (in *LoadBalancer) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type LoadBalancerList ¶
type LoadBalancerList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []LoadBalancer `json:"items"` }
LoadBalancerList is a list of LoadBalancer resources
func (*LoadBalancerList) DeepCopy ¶
func (in *LoadBalancerList) DeepCopy() *LoadBalancerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerList.
func (*LoadBalancerList) DeepCopyInto ¶
func (in *LoadBalancerList) DeepCopyInto(out *LoadBalancerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*LoadBalancerList) DeepCopyObject ¶
func (in *LoadBalancerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type LoadBalancerSpec ¶
type LoadBalancerSpec struct { // tcp port which backend servers use to serve traffic BackendPort int `json:"backendPort"` // balance mode defaults to ROUND_ROBIN BalanceMode string `json:"balanceMode,omitempty"` // network bandwidth maximum for loadbalancer BandwidthMbps string `json:"bandwidthMbps,omitempty"` // label selector of computes to backend instances ComputeSelector map[string]string `json:"computeSelector"` // health check parameters HealthCheck HealthCheck `json:"healthCheck,omitempty"` // configure to allow public/internet access IsPrivate bool `json:"isPrivate,omitempty"` // map of compute labels to weight LabelWeightMap map[string]int `json:"labelWeightMap"` // tcp ports which external clients will connect to Listeners []Listener `json:"listeners"` // selector to link security rule sets to subnets for the load balancer SecuritySelector map[string]string `json:"securitySelector,omitempty"` // name of cookie to use for session persistence SessionPersistenceCookie string `json:"sessionPersistenceCookie,omitempty"` Env []apiv1.EnvVar `json:"env,omitempty"` Resources apiv1.ResourceRequirements `json:"resources,omitempty"` }
func (*LoadBalancerSpec) DeepCopy ¶
func (in *LoadBalancerSpec) DeepCopy() *LoadBalancerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerSpec.
func (*LoadBalancerSpec) DeepCopyInto ¶
func (in *LoadBalancerSpec) DeepCopyInto(out *LoadBalancerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoadBalancerStatus ¶
type LoadBalancerStatus struct { OperatorStatus IPAddress string `json:"ipAddress"` DnsRecordName string `json:"dnsRecordName"` Network string `json:"network"` // one-time randomized array of availability zones/domains for even distribution AvailabilityZones []string `json:"availabilityZones"` Instances int `json:"instances"` AvailableInstances int `json:"availableInstances"` UnhealthyInstances int `json:"unhealthyInstances"` }
func (*LoadBalancerStatus) DeepCopy ¶
func (in *LoadBalancerStatus) DeepCopy() *LoadBalancerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoadBalancerStatus.
func (*LoadBalancerStatus) DeepCopyInto ¶
func (in *LoadBalancerStatus) DeepCopyInto(out *LoadBalancerStatus)
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"` Spec NetworkSpec `json:"spec"` Status NetworkStatus `json:"status,omitempty"` }
Network describes network
func (*Network) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Network.
func (*Network) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Network) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NetworkList ¶
type NetworkList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []Network `json:"items"` }
NetworkList is a list of Network resources
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 NetworkSpec ¶
type NetworkSpec struct {
CidrBlock string `json:"cidrBlock"`
}
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 { OperatorStatus // subnet allocation map // key: compute,lb or subnet name, value: floor to tens of subnet octet. ie: // 10, 20 ... 250 ...allows for 25 compute on a network, // with 9 az (subnet x.y.n1-n9.0/24) per compute ... max 57150 instances per network SubnetAllocationMap map[string]int }
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 OperatorCondition ¶
type OperatorCondition struct { Type OperatorConditionType `json:"type"` Reason string `json:"reason,omitempty"` LastTransitiontime metav1.Time `json:"lastTransitionTime,omitempty"` }
func (*OperatorCondition) DeepCopy ¶
func (in *OperatorCondition) DeepCopy() *OperatorCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorCondition.
func (*OperatorCondition) DeepCopyInto ¶
func (in *OperatorCondition) DeepCopyInto(out *OperatorCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OperatorConditionType ¶
type OperatorConditionType string
type OperatorState ¶
type OperatorState string
const ( OperatorStatePending OperatorState = "Pending" OperatorStateCreated OperatorState = "Created" OperatorStateProcessed OperatorState = "Processed" OperatorStateError OperatorState = "Error" )
type OperatorStatus ¶
type OperatorStatus struct { State OperatorState `json:"state,omitempty"` Message string `json:"message,omitempty"` Conditions []OperatorCondition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
func (*OperatorStatus) DeepCopy ¶
func (in *OperatorStatus) DeepCopy() *OperatorStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatorStatus.
func (*OperatorStatus) DeepCopyInto ¶
func (in *OperatorStatus) DeepCopyInto(out *OperatorStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SSLCertificate ¶
type SSLCertificate struct { Certificate string `json:"certificate,omitempty"` PrivateKey string `json:"privateKey,omitempty"` Passphrase string `json:"passphrase,omitempty"` CACertificate string `json:"caCertificate,omitempty"` }
SSL Certificate for https traffic
func (*SSLCertificate) DeepCopy ¶
func (in *SSLCertificate) DeepCopy() *SSLCertificate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSLCertificate.
func (*SSLCertificate) DeepCopyInto ¶
func (in *SSLCertificate) DeepCopyInto(out *SSLCertificate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Security ¶
type Security struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata"` Spec SecuritySpec `json:"spec"` Status SecurityStatus `json:"status,omitempty"` }
Security describes security
func (*Security) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Security.
func (*Security) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Security) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SecurityList ¶
type SecurityList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []Security `json:"items"` }
SecurityList is a list of Security resources
func (*SecurityList) DeepCopy ¶
func (in *SecurityList) DeepCopy() *SecurityList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityList.
func (*SecurityList) DeepCopyInto ¶
func (in *SecurityList) DeepCopyInto(out *SecurityList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SecurityList) DeepCopyObject ¶
func (in *SecurityList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SecuritySpec ¶
type SecuritySpec struct { // selector to create the security rules into matching networks NetworkSelector map[string]string `json:"networkSelector"` Ingress []string `json:"ingress"` Egress []string `json:"egress"` }
func (*SecuritySpec) DeepCopy ¶
func (in *SecuritySpec) DeepCopy() *SecuritySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecuritySpec.
func (*SecuritySpec) DeepCopyInto ¶
func (in *SecuritySpec) DeepCopyInto(out *SecuritySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityStatus ¶
type SecurityStatus struct {
OperatorStatus
}
func (*SecurityStatus) DeepCopy ¶
func (in *SecurityStatus) DeepCopy() *SecurityStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecurityStatus.
func (*SecurityStatus) DeepCopyInto ¶
func (in *SecurityStatus) DeepCopyInto(out *SecurityStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Storage ¶
type Storage struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata"` Spec StorageSpec `json:"spec"` Status StorageStatus `json:"status,omitempty"` }
Storage describes Storage
func (*Storage) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage.
func (*Storage) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Storage) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type StorageList ¶
type StorageList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata"` Items []Storage `json:"items"` }
StorageList is a list of Storage resources
func (*StorageList) DeepCopy ¶
func (in *StorageList) DeepCopy() *StorageList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageList.
func (*StorageList) DeepCopyInto ¶
func (in *StorageList) DeepCopyInto(out *StorageList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*StorageList) DeepCopyObject ¶
func (in *StorageList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type StorageSpec ¶
type StorageSpec struct {
SizeInGBs int `json:"sizeInGBs"`
}
func (*StorageSpec) DeepCopy ¶
func (in *StorageSpec) DeepCopy() *StorageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageSpec.
func (*StorageSpec) DeepCopyInto ¶
func (in *StorageSpec) DeepCopyInto(out *StorageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StorageStatus ¶
type StorageStatus struct {
OperatorStatus
}
func (*StorageStatus) DeepCopy ¶
func (in *StorageStatus) DeepCopy() *StorageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageStatus.
func (*StorageStatus) DeepCopyInto ¶
func (in *StorageStatus) DeepCopyInto(out *StorageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Subnet ¶
type Subnet struct {
Private bool `json:"private"`
}
func (*Subnet) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Subnet.
func (*Subnet) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Template ¶
type Template struct { // os type and version eg centos 7 OsType string `json:"osType,omitempty"` OsVersion string `json:"osVersion,omitempty"` // reuse kubernetes ResourceRequirements model - https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/ Resources apiv1.ResourceRequirements `json:"resources,omitempty"` // ssh public keys to allow remote access SshKeys []string `json:"sshKeys,omitempty"` // user-data for cloud-init UserData UserData `json:"userData,omitempty"` Volumes []Volume `json:"volume,omitempty"` }
attributes that each instance will use to constuct its model
func (*Template) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Template.
func (*Template) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UserData ¶
type UserData struct { Shellscript string `json:"shellscript,omitempty"` CloudConfig string `json:"cloud-config,omitempty"` IncludeURL string `json:"include-url,omitempty"` IncludeURLOnce string `json:"include-url-once,omitempty"` PartHandler string `json:"part-handler,omitempty"` }
func (*UserData) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UserData.
func (*UserData) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Volume ¶
type Volume struct { Size string `json:"size"` Type string `json:"type"` // fstab related MountPoint string `json:""` FilesystemType string `json:"filesystemType"` Options map[string]string }
func (*Volume) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume.
func (*Volume) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.