Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the infrastructure v1beta1 API group +kubebuilder:object:generate=true +groupName=infrastructure.cluster.x-k8s.io
Index ¶
- Constants
- Variables
- type EgressSecurityRule
- type EgressSecurityRuleDestinationTypeEnum
- type EgressSecurityRuleForNSG
- type IcmpOptions
- type IngressSecurityRule
- type IngressSecurityRuleForNSG
- type IngressSecurityRuleSourceTypeEnum
- type LoadBalancer
- type NSG
- type NetworkDetails
- type NetworkSpec
- type OCICluster
- type OCIClusterList
- type OCIClusterSpec
- type OCIClusterStatus
- type OCIMachine
- type OCIMachineList
- type OCIMachineSpec
- type OCIMachineStatus
- type OCIMachineTemplate
- type OCIMachineTemplateList
- type OCIMachineTemplateResource
- type OCIMachineTemplateSpec
- type PortRange
- type Role
- type SecurityList
- type ShapeConfig
- type Subnet
- type SubnetType
- type TcpOptions
- type UdpOptions
- type VCN
Constants ¶
const ( // InstanceReadyCondition Ready indicates the instance is in a Running state. InstanceReadyCondition clusterv1.ConditionType = "InstanceReady" // InstanceNotFoundReason used when the instance couldn't be retrieved. InstanceNotFoundReason = "InstanceNotFound" // InstanceTerminatedReason instance is in a terminated state. InstanceTerminatedReason = "InstanceTerminated" // InstanceTerminatingReason instance is in terminating state. InstanceTerminatingReason = "InstanceTerminating" // InstanceNotReadyReason used when the instance is in a pending state. InstanceNotReadyReason = "InstanceNotReady" // InstanceProvisionStartedReason set when the provisioning of an instance started. InstanceProvisionStartedReason = "InstanceProvisionStarted" // InstanceProvisionFailedReason used for failures during instance provisioning. InstanceProvisionFailedReason = "InstanceProvisionFailed" // WaitingForClusterInfrastructureReason used when machine is waiting for cluster infrastructure to be ready before proceeding. WaitingForClusterInfrastructureReason = "WaitingForClusterInfrastructure" // WaitingForBootstrapDataReason used when machine is waiting for bootstrap data to be ready before proceeding. WaitingForBootstrapDataReason = "WaitingForBootstrapData" // InstanceLBackendAdditionFailedReason used when addition to LB backend fails InstanceLBackendAdditionFailedReason = "BackendAdditionFailed" // ClusterReadyCondition Ready indicates the cluster is Ready. ClusterReadyCondition clusterv1.ConditionType = "ClusterReady" // VcnReconciliationFailedReason used when the vcn reconciliation is failed. VcnReconciliationFailedReason = "VcnReconciliationFailed" // InternetGatewayReconciliationFailedReason used when the InternetGateway reconciliation is failed. InternetGatewayReconciliationFailedReason = "InternetGatewayReconciliationFailed" // NatGatewayReconciliationFailedReason used when the NatGateway reconciliation is failed. NatGatewayReconciliationFailedReason = "NatGatewayReconciliationFailed" // ServiceGatewayReconciliationFailedReason used when the ServiceGateway reconciliation is failed. ServiceGatewayReconciliationFailedReason = "ServiceGatewayReconciliationFailed" // NSGReconciliationFailedReason used when the NSG reconciliation is failed. NSGReconciliationFailedReason = "NSGReconciliationFailed" // RouteTableReconciliationFailedReason used when the RouteTable reconciliation is failed. RouteTableReconciliationFailedReason = "RouteTableReconciliationFailed" // SubnetReconciliationFailedReason used when the Subnet reconciliation is failed. SubnetReconciliationFailedReason = "SubnetReconciliationFailed" // SecurityListReconciliationFailedReason used when the SecurityList reconciliation is failed. SecurityListReconciliationFailedReason = "SecurityListReconciliationFailed" // APIServerLoadBalancerFailedReason used when the Subnet reconciliation is failed. APIServerLoadBalancerFailedReason = "APIServerLoadBalancerReconciliationFailed" // FailureDomainFailedReason used when the Subnet reconciliation is failed. FailureDomainFailedReason = "FailureDomainFailedReconciliationFailed" // InstanceLBBackendAdditionFailedReason used when addition to LB backend fails InstanceLBBackendAdditionFailedReason = "BackendAdditionFailed" // InstanceIPAddressNotFound used when IP address of the instance count not be found InstanceIPAddressNotFound = "InstanceIPAddressNotFound" // VcnEventReady used after reconciliation has completed successfully VcnEventReady = "VCNReady" // InternetGatewayEventReady used after reconciliation has completed successfully InternetGatewayEventReady = "InternetGatewayReady" // NatEventReady used after reconciliation has completed successfully NatEventReady = "NATReady" // ServiceGatewayEventReady used after reconciliation has completed successfully ServiceGatewayEventReady = "ServiceGatewayReady" // NetworkSecurityEventReady used after reconciliation has completed successfully NetworkSecurityEventReady = "NetworkSecurityReady" // RouteTableEventReady used after reconciliation has completed successfully RouteTableEventReady = "RouteTableReady" // SubnetEventReady used after reconciliation has completed successfully SubnetEventReady = "SubnetReady" // ApiServerLoadBalancerEventReady used after reconciliation has completed successfully ApiServerLoadBalancerEventReady = "APIServerLoadBalancerReady" // FailureDomainEventReady used after reconciliation has completed successfully FailureDomainEventReady = "FailureDomainsReady" )
const ( ControlPlaneRole = "control-plane" ControlPlaneEndpointRole = "control-plane-endpoint" WorkerRole = "worker" ServiceLoadBalancerRole = "service-lb" Private = "private" Public = "public" )
const ( // ClusterFinalizer allows OCIClusterReconciler to clean up OCI resources associated with OCICluster before // removing it from the apiserver. ClusterFinalizer = "ocicluster.infrastructure.cluster.x-k8s.io" )
const ( // MachineFinalizer allows ReconcileAzureMachine to clean up Azure resources associated with AzureMachine before // removing it from the apiserver. MachineFinalizer = "ocimachine.infrastructure.cluster.x-k8s.io" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "infrastructure.cluster.x-k8s.io", Version: "v1beta1"} // 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 EgressSecurityRule ¶
type EgressSecurityRule struct { // Conceptually, this is the range of IP addresses that a packet originating from the instance // can go to. // Allowed values: // * IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56` // Note that IPv6 addressing is currently supported only in certain regions. See // IPv6 Addresses (https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/ipv6.htm). // * The `cidrBlock` value for a Service, if you're // setting up a security list rule for traffic destined for a particular `Service` through // a service gateway. For example: `oci-phx-objectstorage`. Destination *string `json:"destination,omitempty"` // The transport protocol. Specify either `all` or an IPv4 protocol number as // defined in // Protocol Numbers (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml). // Options are supported only for ICMP ("1"), TCP ("6"), UDP ("17"), and ICMPv6 ("58"). Protocol *string `json:"protocol,omitempty"` // Type of destination for the rule. The default is `CIDR_BLOCK`. // Allowed values: // * `CIDR_BLOCK`: If the rule's `destination` is an IP address range in CIDR notation. // * `SERVICE_CIDR_BLOCK`: If the rule's `destination` is the `cidrBlock` value for a // Service (the rule is for traffic destined for a // particular `Service` through a service gateway). DestinationType EgressSecurityRuleDestinationTypeEnum `json:"destinationType,omitempty"` IcmpOptions *IcmpOptions `json:"icmpOptions,omitempty"` // A stateless rule allows traffic in one direction. Remember to add a corresponding // stateless rule in the other direction if you need to support bidirectional traffic. For // example, if egress traffic allows TCP destination port 80, there should be an ingress // rule to allow TCP source port 80. Defaults to false, which means the rule is stateful // and a corresponding rule is not necessary for bidirectional traffic. IsStateless *bool `json:"isStateless,omitempty"` TcpOptions *TcpOptions `json:"tcpOptions,omitempty"` UdpOptions *UdpOptions `json:"udpOptions,omitempty"` // An optional description of your choice for the rule. Description *string `json:"description,omitempty"` }
EgressSecurityRule A rule for allowing outbound IP packets.
func (*EgressSecurityRule) DeepCopy ¶
func (in *EgressSecurityRule) DeepCopy() *EgressSecurityRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EgressSecurityRule.
func (*EgressSecurityRule) DeepCopyInto ¶
func (in *EgressSecurityRule) DeepCopyInto(out *EgressSecurityRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EgressSecurityRuleDestinationTypeEnum ¶
type EgressSecurityRuleDestinationTypeEnum string
const ( // EgressSecurityRuleDestinationTypeCidrBlock is the contant for CIDR block security rule destination type EgressSecurityRuleDestinationTypeCidrBlock EgressSecurityRuleDestinationTypeEnum = "CIDR_BLOCK" )
type EgressSecurityRuleForNSG ¶
type EgressSecurityRuleForNSG struct { //EgressSecurityRule ID for NSG // +optional ID *string `json:"id,omitempty"` EgressSecurityRule `json:"egressRule,omitempty"` }
EgressSecurityRuleForNSG is EgressSecurityRule for NSG
func (*EgressSecurityRuleForNSG) DeepCopy ¶
func (in *EgressSecurityRuleForNSG) DeepCopy() *EgressSecurityRuleForNSG
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EgressSecurityRuleForNSG.
func (*EgressSecurityRuleForNSG) DeepCopyInto ¶
func (in *EgressSecurityRuleForNSG) DeepCopyInto(out *EgressSecurityRuleForNSG)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IcmpOptions ¶
type IcmpOptions struct { // The ICMP type. Type *int `json:"type,omitempty"` // The ICMP code (optional). Code *int `json:"code,omitempty"` }
IcmpOptions Optional and valid only for ICMP and ICMPv6. Use to specify a particular ICMP type and code as defined in: - ICMP Parameters (http://www.iana.org/assignments/icmp-parameters/icmp-parameters.xhtml) - ICMPv6 Parameters (https://www.iana.org/assignments/icmpv6-parameters/icmpv6-parameters.xhtml) If you specify ICMP or ICMPv6 as the protocol but omit this object, then all ICMP types and codes are allowed. If you do provide this object, the type is required and the code is optional. To enable MTU negotiation for ingress internet traffic via IPv4, make sure to allow type 3 ("Destination Unreachable") code 4 ("Fragmentation Needed and Don't Fragment was Set"). If you need to specify multiple codes for a single type, create a separate security list rule for each.
func (*IcmpOptions) DeepCopy ¶
func (in *IcmpOptions) DeepCopy() *IcmpOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IcmpOptions.
func (*IcmpOptions) DeepCopyInto ¶
func (in *IcmpOptions) DeepCopyInto(out *IcmpOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressSecurityRule ¶
type IngressSecurityRule struct { // The transport protocol. Specify either `all` or an IPv4 protocol number as // defined in // Protocol Numbers (http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml). // Options are supported only for ICMP ("1"), TCP ("6"), UDP ("17"), and ICMPv6 ("58"). Protocol *string `json:"protocol,omitempty"` // Conceptually, this is the range of IP addresses that a packet coming into the instance // can come from. // Allowed values: // * IP address range in CIDR notation. For example: `192.168.1.0/24` or `2001:0db8:0123:45::/56`. // IPv6 addressing is supported for all commercial and government regions. See // IPv6 Addresses (https://docs.cloud.oracle.com/iaas/Content/Network/Concepts/ipv6.htm). // * The `cidrBlock` value for a Service, if you're // setting up a security list rule for traffic coming from a particular `Service` through // a service gateway. For example: `oci-phx-objectstorage`. Source *string `json:"source,omitempty"` IcmpOptions *IcmpOptions `json:"icmpOptions,omitempty"` // A stateless rule allows traffic in one direction. Remember to add a corresponding // stateless rule in the other direction if you need to support bidirectional traffic. For // example, if ingress traffic allows TCP destination port 80, there should be an egress // rule to allow TCP source port 80. Defaults to false, which means the rule is stateful // and a corresponding rule is not necessary for bidirectional traffic. IsStateless *bool `json:"isStateless,omitempty"` // Type of source for the rule. The default is `CIDR_BLOCK`. // * `CIDR_BLOCK`: If the rule's `source` is an IP address range in CIDR notation. // * `SERVICE_CIDR_BLOCK`: If the rule's `source` is the `cidrBlock` value for a // Service (the rule is for traffic coming from a // particular `Service` through a service gateway). SourceType IngressSecurityRuleSourceTypeEnum `json:"sourceType,omitempty"` TcpOptions *TcpOptions `json:"tcpOptions,omitempty"` UdpOptions *UdpOptions `json:"udpOptions,omitempty"` // An optional description of your choice for the rule. Description *string `json:"description,omitempty"` }
IngressSecurityRule A rule for allowing inbound IP packets.
func (*IngressSecurityRule) DeepCopy ¶
func (in *IngressSecurityRule) DeepCopy() *IngressSecurityRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressSecurityRule.
func (*IngressSecurityRule) DeepCopyInto ¶
func (in *IngressSecurityRule) DeepCopyInto(out *IngressSecurityRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressSecurityRuleForNSG ¶
type IngressSecurityRuleForNSG struct { //IngressSecurityRule ID for NSG // +optional ID *string `json:"id,omitempty"` IngressSecurityRule `json:"ingressRule,omitempty"` }
IngressSecurityRuleForNSG is IngressSecurityRule for NSG
func (*IngressSecurityRuleForNSG) DeepCopy ¶
func (in *IngressSecurityRuleForNSG) DeepCopy() *IngressSecurityRuleForNSG
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressSecurityRuleForNSG.
func (*IngressSecurityRuleForNSG) DeepCopyInto ¶
func (in *IngressSecurityRuleForNSG) DeepCopyInto(out *IngressSecurityRuleForNSG)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressSecurityRuleSourceTypeEnum ¶
type IngressSecurityRuleSourceTypeEnum string
IngressSecurityRuleSourceTypeEnum Enum with underlying type: string
const ( IngressSecurityRuleSourceTypeCidrBlock IngressSecurityRuleSourceTypeEnum = "CIDR_BLOCK" IngressSecurityRuleSourceTypeServiceCidrBlock IngressSecurityRuleSourceTypeEnum = "SERVICE_CIDR_BLOCK" )
Set of constants representing the allowable values for IngressSecurityRuleSourceTypeEnum
type LoadBalancer ¶
type LoadBalancer struct { //LoadBalancer Name // +optional Name string `json:"name"` // ID of Load Balancer // +optional LoadBalancerId *string `json:"loadBalancerId,omitempty"` }
LoadBalancer Configuration
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.
type NSG ¶
type NSG struct { //NSG OCID // +optional ID *string `json:"id,omitempty"` //NSG Name // +optional Name string `json:"name"` // Role defines the NSG role (eg. control-plane, control-plane-endpoint, service-lb, worker) Role Role `json:"role,omitempty"` //EgressRules on the NSG // +optional EgressRules []EgressSecurityRuleForNSG `json:"egressRules,omitempty"` //IngressRules on the NSG // +optional IngressRules []IngressSecurityRuleForNSG `json:"ingressRules,omitempty"` }
NSG defines configuration for a Network Security Group https://docs.oracle.com/en-us/iaas/Content/Network/Concepts/networksecuritygroups.htm
func (*NSG) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NSG.
func (*NSG) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkDetails ¶
type NetworkDetails struct { SubnetId *string `json:"subnetId,omitempty"` AssignPublicIp bool `json:"assignPublicIp,omitempty"` SubnetName string `json:"subnetName,omitempty"` NSGId *string `json:"nsgId,omitempty"` }
NetworkDetails defines the configuration options for the network
func (*NetworkDetails) DeepCopy ¶
func (in *NetworkDetails) DeepCopy() *NetworkDetails
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkDetails.
func (*NetworkDetails) DeepCopyInto ¶
func (in *NetworkDetails) DeepCopyInto(out *NetworkDetails)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworkSpec ¶
type NetworkSpec struct { // VCN configuration // +optional Vcn VCN `json:"vcn,omitempty"` //API Server LB configuration // +optional APIServerLB LoadBalancer `json:"apiServerLoadBalancer,omitempty"` }
NetworkSpec specifies what the OCI networking resources should look like.
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 OCICluster ¶
type OCICluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OCIClusterSpec `json:"spec,omitempty"` Status OCIClusterStatus `json:"status,omitempty"` }
OCICluster is the Schema for the ociclusters API
func (*OCICluster) DeepCopy ¶
func (in *OCICluster) DeepCopy() *OCICluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCICluster.
func (*OCICluster) DeepCopyInto ¶
func (in *OCICluster) DeepCopyInto(out *OCICluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OCICluster) DeepCopyObject ¶
func (in *OCICluster) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OCICluster) GetConditions ¶
func (c *OCICluster) GetConditions() clusterv1.Conditions
GetConditions returns the list of conditions for an OCICluster API object.
func (*OCICluster) SetConditions ¶
func (c *OCICluster) SetConditions(conditions clusterv1.Conditions)
SetConditions will set the given conditions on an OCICluster object.
type OCIClusterList ¶
type OCIClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OCICluster `json:"items"` }
OCIClusterList contains a list of OciCluster
func (*OCIClusterList) DeepCopy ¶
func (in *OCIClusterList) DeepCopy() *OCIClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIClusterList.
func (*OCIClusterList) DeepCopyInto ¶
func (in *OCIClusterList) DeepCopyInto(out *OCIClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OCIClusterList) DeepCopyObject ¶
func (in *OCIClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OCIClusterSpec ¶
type OCIClusterSpec struct { // NetworkSpec encapsulates all things related to OCI network. // +optional NetworkSpec NetworkSpec `json:"networkSpec,omitempty"` // Free-form tags for this resource // +optional FreeformTags map[string]string `json:"freeformTags,omitempty"` // Defined tags for this resource. Each key is predefined and scoped to a // namespace. For more information, see Resource Tags (https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). // Example: `{"Operations": {"CostCenter": "42"}}` // +optional DefinedTags map[string]map[string]string `json:"definedTags,omitempty"` // Compartment to create the cluster network. CompartmentId string `mandatory:"true" json:"compartmentId"` // Region the cluster operates in. It must be one of available regions in Region Identifier format. // See https://docs.oracle.com/en-us/iaas/Content/General/Concepts/regions.htm Region string `json:"region,omitempty"` // ControlPlaneEndpoint represents the endpoint used to communicate with the control plane. // +optional ControlPlaneEndpoint clusterv1.APIEndpoint `json:"controlPlaneEndpoint"` }
OCIClusterSpec defines the desired state of OciCluster
func (*OCIClusterSpec) DeepCopy ¶
func (in *OCIClusterSpec) DeepCopy() *OCIClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIClusterSpec.
func (*OCIClusterSpec) DeepCopyInto ¶
func (in *OCIClusterSpec) DeepCopyInto(out *OCIClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OCIClusterStatus ¶
type OCIClusterStatus struct { // +optional FailureDomains clusterv1.FailureDomains `json:"failureDomains,omitempty"` // +optional Ready bool `json:"ready"` // NetworkSpec encapsulates all things related to OCI network. // +optional Conditions clusterv1.Conditions `json:"conditions,omitempty"` }
OCIClusterStatus defines the observed state of OCICluster
func (*OCIClusterStatus) DeepCopy ¶
func (in *OCIClusterStatus) DeepCopy() *OCIClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIClusterStatus.
func (*OCIClusterStatus) DeepCopyInto ¶
func (in *OCIClusterStatus) DeepCopyInto(out *OCIClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OCIMachine ¶
type OCIMachine struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OCIMachineSpec `json:"spec,omitempty"` Status OCIMachineStatus `json:"status,omitempty"` }
OCIMachine is the Schema for the ocimachines API
func (*OCIMachine) DeepCopy ¶
func (in *OCIMachine) DeepCopy() *OCIMachine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIMachine.
func (*OCIMachine) DeepCopyInto ¶
func (in *OCIMachine) DeepCopyInto(out *OCIMachine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OCIMachine) DeepCopyObject ¶
func (in *OCIMachine) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*OCIMachine) GetConditions ¶
func (m *OCIMachine) GetConditions() clusterv1.Conditions
GetConditions returns the list of conditions for an OCIMachine API object.
func (*OCIMachine) SetConditions ¶
func (m *OCIMachine) SetConditions(conditions clusterv1.Conditions)
SetConditions will set the given conditions on an OCIMachine object.
type OCIMachineList ¶
type OCIMachineList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OCIMachine `json:"items"` }
OCIMachineList contains a list of OCIMachine
func (*OCIMachineList) DeepCopy ¶
func (in *OCIMachineList) DeepCopy() *OCIMachineList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIMachineList.
func (*OCIMachineList) DeepCopyInto ¶
func (in *OCIMachineList) DeepCopyInto(out *OCIMachineList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OCIMachineList) DeepCopyObject ¶
func (in *OCIMachineList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OCIMachineSpec ¶
type OCIMachineSpec struct { // OCID of launched compute instance // +optional InstanceId *string `json:"instanceId,omitempty"` // OCID of the image to be used to launch the instance ImageId string `json:"imageId,omitempty"` // Compartment to launch the instance in. CompartmentId string `json:"compartmentId,omitempty"` // Shape of the instance Shape string `json:"shape,omitempty"` // The shape configuration of rhe instance, applicable for flex instances ShapeConfig ShapeConfig `json:"shapeConfig,omitempty"` // PrimaryNetworkInterface is required to specify subnet NetworkDetails NetworkDetails `json:"networkDetails,omitempty"` // Provider ID of the instance, this will be set by Cluster API provider itself, // users should not set this parameter. // +optional ProviderID *string `json:"providerID,omitempty"` // Is in transit encryption of volumes required. // +kubebuilder:default=true // +optional IsPvEncryptionInTransitEnabled bool `json:"isPvEncryptionInTransitEnabled,omitempty"` // The size of boot volume. Please see https://docs.oracle.com/en-us/iaas/Content/Block/Tasks/extendingbootpartition.htm // to extend the boot volume size. BootVolumeSizeInGBs string `json:"bootVolumeSizeInGBs,omitempty"` // Custom metadata key/value pairs that you provide, such as the SSH public key // required to connect to the instance. Metadata map[string]string `json:"metadata,omitempty"` // Free-form tags for this resource // +optional FreeformTags map[string]string `json:"freeformTags,omitempty"` // Defined tags for this resource. Each key is predefined and scoped to a // namespace. For more information, see Resource Tags (https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). // Example: `{"Operations": {"CostCenter": "42"}}` // +optional DefinedTags map[string]map[string]string `json:"definedTags,omitempty"` // The name of the subnet to use. The name here refers to the subnets // defined in the OCICluster Spec. Optional, only if multiple subnets of a type // is defined, else the first element is used. // +optional SubnetName string `json:"subnetName,omitempty"` // The name of NSG to use. The name here refers to the NSGs // defined in the OCICluster Spec. Optional, only if multiple NSGs of a type // is defined, else the first element is used. // +optional NSGName string `json:"nsgName,omitempty"` }
OCIMachineSpec defines the desired state of OCIMachine Please read the API https://docs.oracle.com/en-us/iaas/api/#/en/iaas/20160918/Instance/LaunchInstance for more information about the parameters below
func (*OCIMachineSpec) DeepCopy ¶
func (in *OCIMachineSpec) DeepCopy() *OCIMachineSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIMachineSpec.
func (*OCIMachineSpec) DeepCopyInto ¶
func (in *OCIMachineSpec) DeepCopyInto(out *OCIMachineSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OCIMachineStatus ¶
type OCIMachineStatus struct { // Flag set to true when machine is ready // +optional Ready bool `json:"ready,omitempty"` // Addresses contains the addresses of the associated OCI instance. Addresses []clusterv1.MachineAddress `json:"addresses,omitempty"` // Error status on the machine // +optional FailureReason *errors.MachineStatusError `json:"failureReason,omitempty"` // The error message corresponding tot he error on the machine // +optional FailureMessage *string `json:"failureMessage,omitempty"` // Launch instance work request Id // +optional LaunchInstanceWorkRequestId string `json:"launchInstanceWorkRequestId,omitempty"` // Create Backend OPC work request ID for the machine backend // +optional CreateBackendWorkRequestId string `json:"createBackendWorkRequestId,omitempty"` // Delete Backend OPC work request ID for the machine backend // +optional DeleteBackendWorkRequestId string `json:"deleteBackendWorkRequestId,omitempty"` // Conditions defines current service state of the OCIMachine. // +optional Conditions clusterv1.Conditions `json:"conditions,omitempty"` }
OCIMachineStatus defines the observed state of OciMachine
func (*OCIMachineStatus) DeepCopy ¶
func (in *OCIMachineStatus) DeepCopy() *OCIMachineStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIMachineStatus.
func (*OCIMachineStatus) DeepCopyInto ¶
func (in *OCIMachineStatus) DeepCopyInto(out *OCIMachineStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OCIMachineTemplate ¶
type OCIMachineTemplate struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec OCIMachineTemplateSpec `json:"spec,omitempty"` }
OCIMachineTemplate is the schema for the OCI compute instance machine template
func (*OCIMachineTemplate) DeepCopy ¶
func (in *OCIMachineTemplate) DeepCopy() *OCIMachineTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIMachineTemplate.
func (*OCIMachineTemplate) DeepCopyInto ¶
func (in *OCIMachineTemplate) DeepCopyInto(out *OCIMachineTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OCIMachineTemplate) DeepCopyObject ¶
func (in *OCIMachineTemplate) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OCIMachineTemplateList ¶
type OCIMachineTemplateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []OCIMachineTemplate `json:"items"` }
OCIMachineTemplateList contains a list of OCIMachineTemplate.
func (*OCIMachineTemplateList) DeepCopy ¶
func (in *OCIMachineTemplateList) DeepCopy() *OCIMachineTemplateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIMachineTemplateList.
func (*OCIMachineTemplateList) DeepCopyInto ¶
func (in *OCIMachineTemplateList) DeepCopyInto(out *OCIMachineTemplateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OCIMachineTemplateList) DeepCopyObject ¶
func (in *OCIMachineTemplateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OCIMachineTemplateResource ¶
type OCIMachineTemplateResource struct { // Spec is the specification of the desired behavior of the machine. Spec OCIMachineSpec `json:"spec"` }
OCIMachineTemplateResource describes the data needed to create an OCIMachine from a template.
func (*OCIMachineTemplateResource) DeepCopy ¶
func (in *OCIMachineTemplateResource) DeepCopy() *OCIMachineTemplateResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIMachineTemplateResource.
func (*OCIMachineTemplateResource) DeepCopyInto ¶
func (in *OCIMachineTemplateResource) DeepCopyInto(out *OCIMachineTemplateResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OCIMachineTemplateSpec ¶
type OCIMachineTemplateSpec struct {
Template OCIMachineTemplateResource `json:"template"`
}
OCIMachineTemplateSpec defines the desired state of OCIMachineTemplate.
func (*OCIMachineTemplateSpec) DeepCopy ¶
func (in *OCIMachineTemplateSpec) DeepCopy() *OCIMachineTemplateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIMachineTemplateSpec.
func (*OCIMachineTemplateSpec) DeepCopyInto ¶
func (in *OCIMachineTemplateSpec) DeepCopyInto(out *OCIMachineTemplateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PortRange ¶
type PortRange struct { // The maximum port number, which must not be less than the minimum port number. To specify // a single port number, set both the min and max to the same value. Max *int `json:"max,omitempty"` // The minimum port number, which must not be greater than the maximum port number. Min *int `json:"min,omitempty"` }
PortRange The representation of PortRange
func (*PortRange) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortRange.
func (*PortRange) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecurityList ¶
type SecurityList struct { //SecurityList Name // +optional ID *string `json:"id,omitempty"` // +optional Name string `json:"name"` //EgressRules on the SecurityList // +optional EgressRules []EgressSecurityRule `json:"egressRules,omitempty"` //IngressRules on the SecurityList // +optional IngressRules []IngressSecurityRule `json:"ingressRules,omitempty"` }
SecurityList defines the configureation for the security list for network virtual firewall https://docs.oracle.com/en-us/iaas/Content/Network/Concepts/securitylists.htm
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.
type ShapeConfig ¶
type ShapeConfig struct { // The total number of OCPUs available to the instance. Ocpus string `json:"ocpus,omitempty"` // The total amount of memory available to the instance, in gigabytes. MemoryInGBs string `json:"memoryInGBs,omitempty"` // The baseline OCPU utilization for a subcore burstable VM instance. Leave this attribute blank for a // non-burstable instance, or explicitly specify non-burstable with `BASELINE_1_1`. // The following values are supported: // - `BASELINE_1_8` - baseline usage is 1/8 of an OCPU. // - `BASELINE_1_2` - baseline usage is 1/2 of an OCPU. // - `BASELINE_1_1` - baseline usage is an entire OCPU. This represents a non-burstable instance. BaselineOcpuUtilization string `json:"baselineOcpuUtilization,omitempty"` }
ShapeConfig defines the configuration options for the compute instance shape https://docs.oracle.com/en-us/iaas/api/#/en/iaas/20160918/datatypes/LaunchInstanceShapeConfigDetails
func (*ShapeConfig) DeepCopy ¶
func (in *ShapeConfig) DeepCopy() *ShapeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShapeConfig.
func (*ShapeConfig) DeepCopyInto ¶
func (in *ShapeConfig) DeepCopyInto(out *ShapeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Subnet ¶
type Subnet struct { // Role defines the subnet role (eg. control-plane, control-plane-endpoint, service-lb, worker) Role Role `json:"role"` //Subnet OCID // +optional ID *string `json:"id,omitempty"` //Subnet Name // +optional Name string `json:"name"` //Subnet CIDR // +optional CIDR string `json:"cidr,omitempty"` //Type defines the subnet type (e.g. public, private) // +optional Type SubnetType `json:"type,omitempty"` //The security list associated with Subnet // +optional SecurityList *SecurityList `json:"securityList,omitempty"` }
Subnet defines the configuration for a newwork's subnet https://docs.oracle.com/en-us/iaas/Content/Network/Tasks/managingVCNs_topic-Overview_of_VCNs_and_Subnets.htm#Overview
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 SubnetType ¶
type SubnetType string
type TcpOptions ¶
type TcpOptions struct { DestinationPortRange *PortRange `json:"destinationPortRange,omitempty"` SourcePortRange *PortRange `json:"sourcePortRange,omitempty"` }
TcpOptions Optional and valid only for TCP. Use to specify particular destination ports for TCP rules. If you specify TCP as the protocol but omit this object, then all destination ports are allowed.
func (*TcpOptions) DeepCopy ¶
func (in *TcpOptions) DeepCopy() *TcpOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TcpOptions.
func (*TcpOptions) DeepCopyInto ¶
func (in *TcpOptions) DeepCopyInto(out *TcpOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UdpOptions ¶
type UdpOptions struct { DestinationPortRange *PortRange `json:"destinationPortRange,omitempty"` SourcePortRange *PortRange `json:"sourcePortRange,omitempty"` }
UdpOptions Optional and valid only for UDP. Use to specify particular destination ports for UDP rules. If you specify UDP as the protocol but omit this object, then all destination ports are allowed.
func (*UdpOptions) DeepCopy ¶
func (in *UdpOptions) DeepCopy() *UdpOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UdpOptions.
func (*UdpOptions) DeepCopyInto ¶
func (in *UdpOptions) DeepCopyInto(out *UdpOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VCN ¶
type VCN struct { //VCN OCID // +optional ID *string `json:"id,omitempty"` //VCN Name // +optional Name string `json:"name"` //VCN CIDR // +optional CIDR string `json:"cidr,omitempty"` // ID of Nat Gateway // +optional NatGatewayId *string `json:"natGatewayId,omitempty"` // ID of Internet Gateway // +optional InternetGatewayId *string `json:"internetGatewayId,omitempty"` // ID of Service Gateway // +optional ServiceGatewayId *string `json:"serviceGatewayId,omitempty"` // ID of Private Route Table // +optional PrivateRouteTableId *string `json:"privateRouteTableId,omitempty"` // ID of Public Route Table // +optional PublicRouteTableId *string `json:"publicRouteTableId,omitempty"` // Subnets is the configuration for subnets required in the VCN // +optional Subnets []*Subnet `json:"subnets,omitempty"` // NetworkSecurityGroups is the configuration for the Network Security Groups required in the VCN // +optional NetworkSecurityGroups []*NSG `json:"networkSecurityGroups,omitempty"` }
VCN dfines the configuration for a Virtual Cloud Network https://docs.oracle.com/en-us/iaas/Content/Network/Concepts/overview.htm
func (*VCN) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VCN.
func (*VCN) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.