types

package
v1.14.2 Latest Latest
Warning

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

Go to latest
Published: Mar 14, 2023 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Overview

Package types provides Alibaba Cloud specific types

Index

Constants

View Source
const (
	// ENITypePrimary is the type for ENI
	ENITypePrimary string = "Primary"
	// ENITypeSecondary is the type for ENI
	ENITypeSecondary string = "Secondary"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ENI

type ENI struct {
	// NetworkInterfaceID is the ENI id
	//
	// +optional
	NetworkInterfaceID string `json:"network-interface-id,omitempty"`

	// MACAddress is the mac address of the ENI
	//
	// +optional
	MACAddress string `json:"mac-address,omitempty"`

	// Type is the ENI type Primary or Secondary
	//
	// +optional
	Type string `json:"type,omitempty"`

	// InstanceID is the InstanceID using this ENI
	//
	// +optional
	InstanceID string `json:"instance-id,omitempty"`

	// SecurityGroupIDs is the security group ids used by this ENI
	//
	// +optional
	SecurityGroupIDs []string `json:"security-groupids,omitempty"`

	// VPC is the vpc to which the ENI belongs
	//
	// +optional
	VPC VPC `json:"vpc,omitempty"`

	// ZoneID is the zone to which the ENI belongs
	//
	// +optional
	ZoneID string `json:"zone-id,omitempty"`

	// VSwitch is the vSwitch the ENI is using
	//
	// +optional
	VSwitch VSwitch `json:"vswitch,omitempty"`

	// PrimaryIPAddress is the primary IP on ENI
	//
	// +optional
	PrimaryIPAddress string `json:"primary-ip-address,omitempty"`

	// PrivateIPSets is the list of all IPs on the ENI, including PrimaryIPAddress
	//
	// +optional
	PrivateIPSets []PrivateIPSet `json:"private-ipsets,omitempty"`

	// Tags is the tags on this ENI
	//
	// +optional
	Tags map[string]string `json:"tags,omitempty"`
}

ENI represents an AlibabaCloud Elastic Network Interface

func (*ENI) DeepCopy

func (in *ENI) DeepCopy() *ENI

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

func (*ENI) DeepCopyInto

func (in *ENI) DeepCopyInto(out *ENI)

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

func (*ENI) DeepEqual

func (in *ENI) DeepEqual(other *ENI) bool

DeepEqual is an autogenerated deepequal function, deeply comparing the receiver with other. in must be non-nil.

func (*ENI) ForeachAddress

func (e *ENI) ForeachAddress(id string, fn types.AddressIterator) error

ForeachAddress iterates over all addresses and calls fn

func (*ENI) InterfaceID

func (e *ENI) InterfaceID() string

InterfaceID returns the identifier of the interface

type ENIStatus

type ENIStatus struct {
	// ENIs is the list of ENIs on the node
	//
	// +optional
	ENIs map[string]ENI `json:"enis,omitempty"`
}

ENIStatus is the status of ENI addressing of the node

func (*ENIStatus) DeepCopy

func (in *ENIStatus) DeepCopy() *ENIStatus

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

func (*ENIStatus) DeepCopyInto

func (in *ENIStatus) DeepCopyInto(out *ENIStatus)

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

func (*ENIStatus) DeepEqual

func (in *ENIStatus) DeepEqual(other *ENIStatus) bool

DeepEqual is an autogenerated deepequal function, deeply comparing the receiver with other. in must be non-nil.

type PrivateIPSet

type PrivateIPSet struct {
	PrivateIpAddress string `json:"private-ip-address,omitempty"`
	Primary          bool   `json:"primary,omitempty" `
}

PrivateIPSet is a nested struct in ecs response

func (*PrivateIPSet) DeepCopy

func (in *PrivateIPSet) DeepCopy() *PrivateIPSet

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

func (*PrivateIPSet) DeepCopyInto

func (in *PrivateIPSet) DeepCopyInto(out *PrivateIPSet)

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

func (*PrivateIPSet) DeepEqual

func (in *PrivateIPSet) DeepEqual(other *PrivateIPSet) bool

DeepEqual is an autogenerated deepequal function, deeply comparing the receiver with other. in must be non-nil.

type Spec

type Spec struct {
	// InstanceType is the ECS instance type, e.g. "ecs.g6.2xlarge"
	//
	// +kubebuilder:validation:Optional
	InstanceType string `json:"instance-type,omitempty"`

	// AvailabilityZone is the availability zone to use when allocating
	// ENIs.
	//
	// +kubebuilder:validation:Optional
	AvailabilityZone string `json:"availability-zone,omitempty"`

	// VPCID is the VPC ID to use when allocating ENIs.
	//
	// +kubebuilder:validation:Optional
	VPCID string `json:"vpc-id,omitempty"`

	// CIDRBlock is vpc ipv4 CIDR
	//
	// +kubebuilder:validation:Optional
	CIDRBlock string `json:"cidr-block,omitempty"`

	// VSwitches is the ID of vSwitch available for ENI
	//
	// +kubebuilder:validation:Optional
	VSwitches []string `json:"vswitches,omitempty"`

	// VSwitchTags is the list of tags to use when evaluating which
	// vSwitch to use for the ENI.
	//
	// +kubebuilder:validation:Optional
	VSwitchTags map[string]string `json:"vswitch-tags,omitempty"`

	// SecurityGroups is the list of security groups to attach to any ENI
	// that is created and attached to the instance.
	//
	// +kubebuilder:validation:Optional
	SecurityGroups []string `json:"security-groups,omitempty"`

	// SecurityGroupTags is the list of tags to use when evaluating which
	// security groups to use for the ENI.
	//
	// +kubebuilder:validation:Optional
	SecurityGroupTags map[string]string `json:"security-group-tags,omitempty"`
}

Spec is the ENI specification of a node. This specification is considered by the cilium-operator to act as an IPAM operator and makes ENI IPs available via the IPAMSpec section.

The ENI specification can either be provided explicitly by the user or the cilium-agent running on the node can be instructed to create the CiliumNode custom resource along with an ENI specification when the node registers itself to the Kubernetes cluster.

func (*Spec) DeepCopy

func (in *Spec) DeepCopy() *Spec

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

func (*Spec) DeepCopyInto

func (in *Spec) DeepCopyInto(out *Spec)

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

func (*Spec) DeepEqual

func (in *Spec) DeepEqual(other *Spec) bool

DeepEqual is an autogenerated deepequal function, deeply comparing the receiver with other. in must be non-nil.

type VPC

type VPC struct {
	// VPCID is the vpc to which the ENI belongs
	//
	// +optional
	VPCID string `json:"vpc-id,omitempty"`

	// CIDRBlock is the VPC IPv4 CIDR
	//
	// +optional
	CIDRBlock string `json:"cidr,omitempty"`

	// IPv6CIDRBlock is the VPC IPv6 CIDR
	//
	// +optional
	IPv6CIDRBlock string `json:"ipv6-cidr,omitempty"`
}

func (*VPC) DeepCopy

func (in *VPC) DeepCopy() *VPC

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

func (*VPC) DeepCopyInto

func (in *VPC) DeepCopyInto(out *VPC)

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

func (*VPC) DeepEqual

func (in *VPC) DeepEqual(other *VPC) bool

DeepEqual is an autogenerated deepequal function, deeply comparing the receiver with other. in must be non-nil.

type VSwitch

type VSwitch struct {
	// VSwitchID is the vSwitch to which the ENI belongs
	//
	// +optional
	VSwitchID string `json:"vswitch-id,omitempty"`

	// CIDRBlock is the vSwitch IPv4 CIDR
	//
	// +optional
	CIDRBlock string `json:"cidr,omitempty"`

	// IPv6CIDRBlock is the vSwitch IPv6 CIDR
	//
	// +optional
	IPv6CIDRBlock string `json:"ipv6-cidr,omitempty"`
}

func (*VSwitch) DeepCopy

func (in *VSwitch) DeepCopy() *VSwitch

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

func (*VSwitch) DeepCopyInto

func (in *VSwitch) DeepCopyInto(out *VSwitch)

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

func (*VSwitch) DeepEqual

func (in *VSwitch) DeepEqual(other *VSwitch) bool

DeepEqual is an autogenerated deepequal function, deeply comparing the receiver with other. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL