...

Package v1

import "github.com/openshift/api/networkoperator/v1"
Overview
Index

Overview ▾

Package v1 contains API Schema definitions for the network v1 API group +k8s:deepcopy-gen=package,register +groupName=network.operator.openshift.io +kubebuilder:validation:Optional

Index ▾

Variables
type ConditionStatus
type EgressRouter
    func (in *EgressRouter) DeepCopy() *EgressRouter
    func (in *EgressRouter) DeepCopyInto(out *EgressRouter)
    func (in *EgressRouter) DeepCopyObject() runtime.Object
    func (*EgressRouter) Descriptor() ([]byte, []int)
    func (m *EgressRouter) Marshal() (dAtA []byte, err error)
    func (m *EgressRouter) MarshalTo(dAtA []byte) (int, error)
    func (m *EgressRouter) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*EgressRouter) ProtoMessage()
    func (m *EgressRouter) Reset()
    func (m *EgressRouter) Size() (n int)
    func (this *EgressRouter) String() string
    func (EgressRouter) SwaggerDoc() map[string]string
    func (m *EgressRouter) Unmarshal(dAtA []byte) error
    func (m *EgressRouter) XXX_DiscardUnknown()
    func (m *EgressRouter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *EgressRouter) XXX_Merge(src proto.Message)
    func (m *EgressRouter) XXX_Size() int
    func (m *EgressRouter) XXX_Unmarshal(b []byte) error
type EgressRouterAddress
    func (in *EgressRouterAddress) DeepCopy() *EgressRouterAddress
    func (in *EgressRouterAddress) DeepCopyInto(out *EgressRouterAddress)
    func (*EgressRouterAddress) Descriptor() ([]byte, []int)
    func (m *EgressRouterAddress) Marshal() (dAtA []byte, err error)
    func (m *EgressRouterAddress) MarshalTo(dAtA []byte) (int, error)
    func (m *EgressRouterAddress) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*EgressRouterAddress) ProtoMessage()
    func (m *EgressRouterAddress) Reset()
    func (m *EgressRouterAddress) Size() (n int)
    func (this *EgressRouterAddress) String() string
    func (EgressRouterAddress) SwaggerDoc() map[string]string
    func (m *EgressRouterAddress) Unmarshal(dAtA []byte) error
    func (m *EgressRouterAddress) XXX_DiscardUnknown()
    func (m *EgressRouterAddress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *EgressRouterAddress) XXX_Merge(src proto.Message)
    func (m *EgressRouterAddress) XXX_Size() int
    func (m *EgressRouterAddress) XXX_Unmarshal(b []byte) error
type EgressRouterInterface
    func (in *EgressRouterInterface) DeepCopy() *EgressRouterInterface
    func (in *EgressRouterInterface) DeepCopyInto(out *EgressRouterInterface)
    func (*EgressRouterInterface) Descriptor() ([]byte, []int)
    func (m *EgressRouterInterface) Marshal() (dAtA []byte, err error)
    func (m *EgressRouterInterface) MarshalTo(dAtA []byte) (int, error)
    func (m *EgressRouterInterface) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*EgressRouterInterface) ProtoMessage()
    func (m *EgressRouterInterface) Reset()
    func (m *EgressRouterInterface) Size() (n int)
    func (this *EgressRouterInterface) String() string
    func (EgressRouterInterface) SwaggerDoc() map[string]string
    func (m *EgressRouterInterface) Unmarshal(dAtA []byte) error
    func (m *EgressRouterInterface) XXX_DiscardUnknown()
    func (m *EgressRouterInterface) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *EgressRouterInterface) XXX_Merge(src proto.Message)
    func (m *EgressRouterInterface) XXX_Size() int
    func (m *EgressRouterInterface) XXX_Unmarshal(b []byte) error
type EgressRouterList
    func (in *EgressRouterList) DeepCopy() *EgressRouterList
    func (in *EgressRouterList) DeepCopyInto(out *EgressRouterList)
    func (in *EgressRouterList) DeepCopyObject() runtime.Object
    func (*EgressRouterList) Descriptor() ([]byte, []int)
    func (m *EgressRouterList) Marshal() (dAtA []byte, err error)
    func (m *EgressRouterList) MarshalTo(dAtA []byte) (int, error)
    func (m *EgressRouterList) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*EgressRouterList) ProtoMessage()
    func (m *EgressRouterList) Reset()
    func (m *EgressRouterList) Size() (n int)
    func (this *EgressRouterList) String() string
    func (EgressRouterList) SwaggerDoc() map[string]string
    func (m *EgressRouterList) Unmarshal(dAtA []byte) error
    func (m *EgressRouterList) XXX_DiscardUnknown()
    func (m *EgressRouterList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *EgressRouterList) XXX_Merge(src proto.Message)
    func (m *EgressRouterList) XXX_Size() int
    func (m *EgressRouterList) XXX_Unmarshal(b []byte) error
type EgressRouterMode
type EgressRouterSpec
    func (in *EgressRouterSpec) DeepCopy() *EgressRouterSpec
    func (in *EgressRouterSpec) DeepCopyInto(out *EgressRouterSpec)
    func (*EgressRouterSpec) Descriptor() ([]byte, []int)
    func (m *EgressRouterSpec) Marshal() (dAtA []byte, err error)
    func (m *EgressRouterSpec) MarshalTo(dAtA []byte) (int, error)
    func (m *EgressRouterSpec) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*EgressRouterSpec) ProtoMessage()
    func (m *EgressRouterSpec) Reset()
    func (m *EgressRouterSpec) Size() (n int)
    func (this *EgressRouterSpec) String() string
    func (EgressRouterSpec) SwaggerDoc() map[string]string
    func (m *EgressRouterSpec) Unmarshal(dAtA []byte) error
    func (m *EgressRouterSpec) XXX_DiscardUnknown()
    func (m *EgressRouterSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *EgressRouterSpec) XXX_Merge(src proto.Message)
    func (m *EgressRouterSpec) XXX_Size() int
    func (m *EgressRouterSpec) XXX_Unmarshal(b []byte) error
type EgressRouterStatus
    func (in *EgressRouterStatus) DeepCopy() *EgressRouterStatus
    func (in *EgressRouterStatus) DeepCopyInto(out *EgressRouterStatus)
    func (*EgressRouterStatus) Descriptor() ([]byte, []int)
    func (m *EgressRouterStatus) Marshal() (dAtA []byte, err error)
    func (m *EgressRouterStatus) MarshalTo(dAtA []byte) (int, error)
    func (m *EgressRouterStatus) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*EgressRouterStatus) ProtoMessage()
    func (m *EgressRouterStatus) Reset()
    func (m *EgressRouterStatus) Size() (n int)
    func (this *EgressRouterStatus) String() string
    func (EgressRouterStatus) SwaggerDoc() map[string]string
    func (m *EgressRouterStatus) Unmarshal(dAtA []byte) error
    func (m *EgressRouterStatus) XXX_DiscardUnknown()
    func (m *EgressRouterStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *EgressRouterStatus) XXX_Merge(src proto.Message)
    func (m *EgressRouterStatus) XXX_Size() int
    func (m *EgressRouterStatus) XXX_Unmarshal(b []byte) error
type EgressRouterStatusCondition
    func (in *EgressRouterStatusCondition) DeepCopy() *EgressRouterStatusCondition
    func (in *EgressRouterStatusCondition) DeepCopyInto(out *EgressRouterStatusCondition)
    func (*EgressRouterStatusCondition) Descriptor() ([]byte, []int)
    func (m *EgressRouterStatusCondition) Marshal() (dAtA []byte, err error)
    func (m *EgressRouterStatusCondition) MarshalTo(dAtA []byte) (int, error)
    func (m *EgressRouterStatusCondition) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*EgressRouterStatusCondition) ProtoMessage()
    func (m *EgressRouterStatusCondition) Reset()
    func (m *EgressRouterStatusCondition) Size() (n int)
    func (this *EgressRouterStatusCondition) String() string
    func (EgressRouterStatusCondition) SwaggerDoc() map[string]string
    func (m *EgressRouterStatusCondition) Unmarshal(dAtA []byte) error
    func (m *EgressRouterStatusCondition) XXX_DiscardUnknown()
    func (m *EgressRouterStatusCondition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *EgressRouterStatusCondition) XXX_Merge(src proto.Message)
    func (m *EgressRouterStatusCondition) XXX_Size() int
    func (m *EgressRouterStatusCondition) XXX_Unmarshal(b []byte) error
type EgressRouterStatusConditionType
type L4RedirectRule
    func (in *L4RedirectRule) DeepCopy() *L4RedirectRule
    func (in *L4RedirectRule) DeepCopyInto(out *L4RedirectRule)
    func (*L4RedirectRule) Descriptor() ([]byte, []int)
    func (m *L4RedirectRule) Marshal() (dAtA []byte, err error)
    func (m *L4RedirectRule) MarshalTo(dAtA []byte) (int, error)
    func (m *L4RedirectRule) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*L4RedirectRule) ProtoMessage()
    func (m *L4RedirectRule) Reset()
    func (m *L4RedirectRule) Size() (n int)
    func (this *L4RedirectRule) String() string
    func (L4RedirectRule) SwaggerDoc() map[string]string
    func (m *L4RedirectRule) Unmarshal(dAtA []byte) error
    func (m *L4RedirectRule) XXX_DiscardUnknown()
    func (m *L4RedirectRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *L4RedirectRule) XXX_Merge(src proto.Message)
    func (m *L4RedirectRule) XXX_Size() int
    func (m *L4RedirectRule) XXX_Unmarshal(b []byte) error
type MacvlanConfig
    func (in *MacvlanConfig) DeepCopy() *MacvlanConfig
    func (in *MacvlanConfig) DeepCopyInto(out *MacvlanConfig)
    func (*MacvlanConfig) Descriptor() ([]byte, []int)
    func (m *MacvlanConfig) Marshal() (dAtA []byte, err error)
    func (m *MacvlanConfig) MarshalTo(dAtA []byte) (int, error)
    func (m *MacvlanConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*MacvlanConfig) ProtoMessage()
    func (m *MacvlanConfig) Reset()
    func (m *MacvlanConfig) Size() (n int)
    func (this *MacvlanConfig) String() string
    func (MacvlanConfig) SwaggerDoc() map[string]string
    func (m *MacvlanConfig) Unmarshal(dAtA []byte) error
    func (m *MacvlanConfig) XXX_DiscardUnknown()
    func (m *MacvlanConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *MacvlanConfig) XXX_Merge(src proto.Message)
    func (m *MacvlanConfig) XXX_Size() int
    func (m *MacvlanConfig) XXX_Unmarshal(b []byte) error
type MacvlanMode
type ProtocolType
type RedirectConfig
    func (in *RedirectConfig) DeepCopy() *RedirectConfig
    func (in *RedirectConfig) DeepCopyInto(out *RedirectConfig)
    func (*RedirectConfig) Descriptor() ([]byte, []int)
    func (m *RedirectConfig) Marshal() (dAtA []byte, err error)
    func (m *RedirectConfig) MarshalTo(dAtA []byte) (int, error)
    func (m *RedirectConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)
    func (*RedirectConfig) ProtoMessage()
    func (m *RedirectConfig) Reset()
    func (m *RedirectConfig) Size() (n int)
    func (this *RedirectConfig) String() string
    func (RedirectConfig) SwaggerDoc() map[string]string
    func (m *RedirectConfig) Unmarshal(dAtA []byte) error
    func (m *RedirectConfig) XXX_DiscardUnknown()
    func (m *RedirectConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
    func (m *RedirectConfig) XXX_Merge(src proto.Message)
    func (m *RedirectConfig) XXX_Size() int
    func (m *RedirectConfig) XXX_Unmarshal(b []byte) error

Package files

doc.go generated.pb.go register.go types_egressrouter.go zz_generated.deepcopy.go zz_generated.swagger_doc_generated.go

Variables

var (
    ErrInvalidLengthGenerated        = fmt.Errorf("proto: negative length found during unmarshaling")
    ErrIntOverflowGenerated          = fmt.Errorf("proto: integer overflow")
    ErrUnexpectedEndOfGroupGenerated = fmt.Errorf("proto: unexpected end of group")
)
var (
    GroupName    = "network.operator.openshift.io"
    GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}

    // Install is a function which adds this version to a scheme
    Install = schemeBuilder.AddToScheme
)

type ConditionStatus

ConditionStatus defines the status of each of EgressRouterStatusConditionType.

type ConditionStatus string

These are valid condition statuses. "ConditionTrue" means a resource is in the condition. "ConditionFalse" means a resource is not in the condition. "ConditionUnknown" means kubernetes can't decide if a resource is in the condition or not. In the future, we could add other intermediate conditions, e.g. ConditionDegraded.

const (
    ConditionTrue    ConditionStatus = "True"
    ConditionFalse   ConditionStatus = "False"
    ConditionUnknown ConditionStatus = "Unknown"
)

type EgressRouter

EgressRouter is a feature allowing the user to define an egress router that acts as a bridge between pods and external systems. The egress router runs a service that redirects egress traffic originating from a pod or a group of pods to a remote external system or multiple destinations as per configuration.

It is consumed by the cluster-network-operator. More specifically, given an EgressRouter CR with <name>, the CNO will create and manage: - A service called <name> - An egress pod called <name> - A NAD called <name>

Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

EgressRouter is a single egressrouter pod configuration object. +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:path=egressrouters,scope=Namespaced +kubebuilder:printcolumn:name="Condition",type=string,JSONPath=".status.conditions[*].type" +kubebuilder:printcolumn:name="Status",type=string,JSONPath=".status.conditions[*].status" +openshift:compatibility-gen:level=1

type EgressRouter struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard object's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

    // Specification of the desired egress router.
    // +kubebuilder:validation:Required
    Spec EgressRouterSpec `json:"spec" protobuf:"bytes,2,opt,name=spec"`

    // Observed status of EgressRouter.
    Status EgressRouterStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
}

func (*EgressRouter) DeepCopy

func (in *EgressRouter) DeepCopy() *EgressRouter

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

func (*EgressRouter) DeepCopyInto

func (in *EgressRouter) DeepCopyInto(out *EgressRouter)

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

func (*EgressRouter) DeepCopyObject

func (in *EgressRouter) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*EgressRouter) Descriptor

func (*EgressRouter) Descriptor() ([]byte, []int)

func (*EgressRouter) Marshal

func (m *EgressRouter) Marshal() (dAtA []byte, err error)

func (*EgressRouter) MarshalTo

func (m *EgressRouter) MarshalTo(dAtA []byte) (int, error)

func (*EgressRouter) MarshalToSizedBuffer

func (m *EgressRouter) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*EgressRouter) ProtoMessage

func (*EgressRouter) ProtoMessage()

func (*EgressRouter) Reset

func (m *EgressRouter) Reset()

func (*EgressRouter) Size

func (m *EgressRouter) Size() (n int)

func (*EgressRouter) String

func (this *EgressRouter) String() string

func (EgressRouter) SwaggerDoc

func (EgressRouter) SwaggerDoc() map[string]string

func (*EgressRouter) Unmarshal

func (m *EgressRouter) Unmarshal(dAtA []byte) error

func (*EgressRouter) XXX_DiscardUnknown

func (m *EgressRouter) XXX_DiscardUnknown()

func (*EgressRouter) XXX_Marshal

func (m *EgressRouter) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*EgressRouter) XXX_Merge

func (m *EgressRouter) XXX_Merge(src proto.Message)

func (*EgressRouter) XXX_Size

func (m *EgressRouter) XXX_Size() int

func (*EgressRouter) XXX_Unmarshal

func (m *EgressRouter) XXX_Unmarshal(b []byte) error

type EgressRouterAddress

EgressRouterAddress contains a pair of IP CIDR and gateway to be configured on the router's interface +kubebuilder:validation:Required

type EgressRouterAddress struct {
    // IP is the address to configure on the router's interface. Can be IPv4 or IPv6.
    // +kubebuilder:validation:Required
    IP string `json:"ip" protobuf:"bytes,1,opt,name=ip"`
    // IP address of the next-hop gateway, if it cannot be automatically determined. Can be IPv4 or IPv6.
    Gateway string `json:"gateway,omitempty" protobuf:"bytes,2,opt,name=gateway"`
}

func (*EgressRouterAddress) DeepCopy

func (in *EgressRouterAddress) DeepCopy() *EgressRouterAddress

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

func (*EgressRouterAddress) DeepCopyInto

func (in *EgressRouterAddress) DeepCopyInto(out *EgressRouterAddress)

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

func (*EgressRouterAddress) Descriptor

func (*EgressRouterAddress) Descriptor() ([]byte, []int)

func (*EgressRouterAddress) Marshal

func (m *EgressRouterAddress) Marshal() (dAtA []byte, err error)

func (*EgressRouterAddress) MarshalTo

func (m *EgressRouterAddress) MarshalTo(dAtA []byte) (int, error)

func (*EgressRouterAddress) MarshalToSizedBuffer

func (m *EgressRouterAddress) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*EgressRouterAddress) ProtoMessage

func (*EgressRouterAddress) ProtoMessage()

func (*EgressRouterAddress) Reset

func (m *EgressRouterAddress) Reset()

func (*EgressRouterAddress) Size

func (m *EgressRouterAddress) Size() (n int)

func (*EgressRouterAddress) String

func (this *EgressRouterAddress) String() string

func (EgressRouterAddress) SwaggerDoc

func (EgressRouterAddress) SwaggerDoc() map[string]string

func (*EgressRouterAddress) Unmarshal

func (m *EgressRouterAddress) Unmarshal(dAtA []byte) error

func (*EgressRouterAddress) XXX_DiscardUnknown

func (m *EgressRouterAddress) XXX_DiscardUnknown()

func (*EgressRouterAddress) XXX_Marshal

func (m *EgressRouterAddress) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*EgressRouterAddress) XXX_Merge

func (m *EgressRouterAddress) XXX_Merge(src proto.Message)

func (*EgressRouterAddress) XXX_Size

func (m *EgressRouterAddress) XXX_Size() int

func (*EgressRouterAddress) XXX_Unmarshal

func (m *EgressRouterAddress) XXX_Unmarshal(b []byte) error

type EgressRouterInterface

EgressRouterInterface contains the configuration of interface to create/use.

type EgressRouterInterface struct {
    // Arguments specific to the interfaceType macvlan
    // +kubebuilder:default:={mode: Bridge}
    Macvlan MacvlanConfig `json:"macvlan" protobuf:"bytes,1,opt,name=macvlan"`
}

func (*EgressRouterInterface) DeepCopy

func (in *EgressRouterInterface) DeepCopy() *EgressRouterInterface

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

func (*EgressRouterInterface) DeepCopyInto

func (in *EgressRouterInterface) DeepCopyInto(out *EgressRouterInterface)

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

func (*EgressRouterInterface) Descriptor

func (*EgressRouterInterface) Descriptor() ([]byte, []int)

func (*EgressRouterInterface) Marshal

func (m *EgressRouterInterface) Marshal() (dAtA []byte, err error)

func (*EgressRouterInterface) MarshalTo

func (m *EgressRouterInterface) MarshalTo(dAtA []byte) (int, error)

func (*EgressRouterInterface) MarshalToSizedBuffer

func (m *EgressRouterInterface) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*EgressRouterInterface) ProtoMessage

func (*EgressRouterInterface) ProtoMessage()

func (*EgressRouterInterface) Reset

func (m *EgressRouterInterface) Reset()

func (*EgressRouterInterface) Size

func (m *EgressRouterInterface) Size() (n int)

func (*EgressRouterInterface) String

func (this *EgressRouterInterface) String() string

func (EgressRouterInterface) SwaggerDoc

func (EgressRouterInterface) SwaggerDoc() map[string]string

func (*EgressRouterInterface) Unmarshal

func (m *EgressRouterInterface) Unmarshal(dAtA []byte) error

func (*EgressRouterInterface) XXX_DiscardUnknown

func (m *EgressRouterInterface) XXX_DiscardUnknown()

func (*EgressRouterInterface) XXX_Marshal

func (m *EgressRouterInterface) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*EgressRouterInterface) XXX_Merge

func (m *EgressRouterInterface) XXX_Merge(src proto.Message)

func (*EgressRouterInterface) XXX_Size

func (m *EgressRouterInterface) XXX_Size() int

func (*EgressRouterInterface) XXX_Unmarshal

func (m *EgressRouterInterface) XXX_Unmarshal(b []byte) error

type EgressRouterList

EgressRouterList is the list of egress router pods requested.

Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1

type EgressRouterList struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard list's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ListMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`

    Items []EgressRouter `json:"items" protobuf:"bytes,2,rep,name=items"`
}

func (*EgressRouterList) DeepCopy

func (in *EgressRouterList) DeepCopy() *EgressRouterList

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

func (*EgressRouterList) DeepCopyInto

func (in *EgressRouterList) DeepCopyInto(out *EgressRouterList)

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

func (*EgressRouterList) DeepCopyObject

func (in *EgressRouterList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*EgressRouterList) Descriptor

func (*EgressRouterList) Descriptor() ([]byte, []int)

func (*EgressRouterList) Marshal

func (m *EgressRouterList) Marshal() (dAtA []byte, err error)

func (*EgressRouterList) MarshalTo

func (m *EgressRouterList) MarshalTo(dAtA []byte) (int, error)

func (*EgressRouterList) MarshalToSizedBuffer

func (m *EgressRouterList) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*EgressRouterList) ProtoMessage

func (*EgressRouterList) ProtoMessage()

func (*EgressRouterList) Reset

func (m *EgressRouterList) Reset()

func (*EgressRouterList) Size

func (m *EgressRouterList) Size() (n int)

func (*EgressRouterList) String

func (this *EgressRouterList) String() string

func (EgressRouterList) SwaggerDoc

func (EgressRouterList) SwaggerDoc() map[string]string

func (*EgressRouterList) Unmarshal

func (m *EgressRouterList) Unmarshal(dAtA []byte) error

func (*EgressRouterList) XXX_DiscardUnknown

func (m *EgressRouterList) XXX_DiscardUnknown()

func (*EgressRouterList) XXX_Marshal

func (m *EgressRouterList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*EgressRouterList) XXX_Merge

func (m *EgressRouterList) XXX_Merge(src proto.Message)

func (*EgressRouterList) XXX_Size

func (m *EgressRouterList) XXX_Size() int

func (*EgressRouterList) XXX_Unmarshal

func (m *EgressRouterList) XXX_Unmarshal(b []byte) error

type EgressRouterMode

EgressRouterMode defines the different types of modes that are supported for the egress router interface. The default mode is "Redirect" and is the only supported mode currently.

type EgressRouterMode string
const (
    // EgressRouterModeRedirect creates an egress router that sets up iptables rules to redirect traffic
    // from its own IP address to one or more remote destination IP addresses.
    EgressRouterModeRedirect EgressRouterMode = "Redirect"
)

type EgressRouterSpec

EgressRouterSpec contains the configuration for an egress router. Mode, networkInterface and addresses fields must be specified along with exactly one "Config" that matches the mode. Each config consists of parameters specific to that mode. +k8s:openapi-gen=true +kubebuilder:validation:Required

type EgressRouterSpec struct {
    // Mode depicts the mode that is used for the egress router. The default mode is "Redirect" and is the only supported mode currently.
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Enum="Redirect"
    // +kubebuilder:default:="Redirect"
    Mode EgressRouterMode `json:"mode" protobuf:"bytes,1,opt,name=mode,casttype=EgressRouterMode"`

    // Redirect represents the configuration parameters specific to redirect mode.
    Redirect *RedirectConfig `json:"redirect,omitempty" protobuf:"bytes,2,opt,name=redirect"`

    // Specification of interface to create/use. The default is macvlan.
    // Currently only macvlan is supported.
    // +kubebuilder:validation:Required
    // +kubebuilder:default:={macvlan: {mode: Bridge}}
    NetworkInterface EgressRouterInterface `json:"networkInterface" protobuf:"bytes,3,opt,name=networkInterface"`

    // List of IP addresses to configure on the pod's secondary interface.
    // +kubebuilder:validation:Required
    Addresses []EgressRouterAddress `json:"addresses" protobuf:"bytes,4,rep,name=addresses"`
}

func (*EgressRouterSpec) DeepCopy

func (in *EgressRouterSpec) DeepCopy() *EgressRouterSpec

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

func (*EgressRouterSpec) DeepCopyInto

func (in *EgressRouterSpec) DeepCopyInto(out *EgressRouterSpec)

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

func (*EgressRouterSpec) Descriptor

func (*EgressRouterSpec) Descriptor() ([]byte, []int)

func (*EgressRouterSpec) Marshal

func (m *EgressRouterSpec) Marshal() (dAtA []byte, err error)

func (*EgressRouterSpec) MarshalTo

func (m *EgressRouterSpec) MarshalTo(dAtA []byte) (int, error)

func (*EgressRouterSpec) MarshalToSizedBuffer

func (m *EgressRouterSpec) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*EgressRouterSpec) ProtoMessage

func (*EgressRouterSpec) ProtoMessage()

func (*EgressRouterSpec) Reset

func (m *EgressRouterSpec) Reset()

func (*EgressRouterSpec) Size

func (m *EgressRouterSpec) Size() (n int)

func (*EgressRouterSpec) String

func (this *EgressRouterSpec) String() string

func (EgressRouterSpec) SwaggerDoc

func (EgressRouterSpec) SwaggerDoc() map[string]string

func (*EgressRouterSpec) Unmarshal

func (m *EgressRouterSpec) Unmarshal(dAtA []byte) error

func (*EgressRouterSpec) XXX_DiscardUnknown

func (m *EgressRouterSpec) XXX_DiscardUnknown()

func (*EgressRouterSpec) XXX_Marshal

func (m *EgressRouterSpec) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*EgressRouterSpec) XXX_Merge

func (m *EgressRouterSpec) XXX_Merge(src proto.Message)

func (*EgressRouterSpec) XXX_Size

func (m *EgressRouterSpec) XXX_Size() int

func (*EgressRouterSpec) XXX_Unmarshal

func (m *EgressRouterSpec) XXX_Unmarshal(b []byte) error

type EgressRouterStatus

EgressRouterStatus contains the observed status of EgressRouter. Read-only.

type EgressRouterStatus struct {
    // Observed status of the egress router
    // +kubebuilder:validation:Required
    Conditions []EgressRouterStatusCondition `json:"conditions,omitempty" protobuf:"bytes,1,rep,name=conditions"`
}

func (*EgressRouterStatus) DeepCopy

func (in *EgressRouterStatus) DeepCopy() *EgressRouterStatus

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

func (*EgressRouterStatus) DeepCopyInto

func (in *EgressRouterStatus) DeepCopyInto(out *EgressRouterStatus)

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

func (*EgressRouterStatus) Descriptor

func (*EgressRouterStatus) Descriptor() ([]byte, []int)

func (*EgressRouterStatus) Marshal

func (m *EgressRouterStatus) Marshal() (dAtA []byte, err error)

func (*EgressRouterStatus) MarshalTo

func (m *EgressRouterStatus) MarshalTo(dAtA []byte) (int, error)

func (*EgressRouterStatus) MarshalToSizedBuffer

func (m *EgressRouterStatus) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*EgressRouterStatus) ProtoMessage

func (*EgressRouterStatus) ProtoMessage()

func (*EgressRouterStatus) Reset

func (m *EgressRouterStatus) Reset()

func (*EgressRouterStatus) Size

func (m *EgressRouterStatus) Size() (n int)

func (*EgressRouterStatus) String

func (this *EgressRouterStatus) String() string

func (EgressRouterStatus) SwaggerDoc

func (EgressRouterStatus) SwaggerDoc() map[string]string

func (*EgressRouterStatus) Unmarshal

func (m *EgressRouterStatus) Unmarshal(dAtA []byte) error

func (*EgressRouterStatus) XXX_DiscardUnknown

func (m *EgressRouterStatus) XXX_DiscardUnknown()

func (*EgressRouterStatus) XXX_Marshal

func (m *EgressRouterStatus) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*EgressRouterStatus) XXX_Merge

func (m *EgressRouterStatus) XXX_Merge(src proto.Message)

func (*EgressRouterStatus) XXX_Size

func (m *EgressRouterStatus) XXX_Size() int

func (*EgressRouterStatus) XXX_Unmarshal

func (m *EgressRouterStatus) XXX_Unmarshal(b []byte) error

type EgressRouterStatusCondition

EgressRouterStatusCondition represents the state of the egress router's managed and monitored components. +k8s:deepcopy-gen=true

type EgressRouterStatusCondition struct {
    // Type specifies the aspect reported by this condition; one of Available, Progressing, Degraded
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Enum="Available";"Progressing";"Degraded"
    // +required
    Type EgressRouterStatusConditionType `json:"type" protobuf:"bytes,1,opt,name=type,casttype=EgressRouterStatusConditionType"`

    // Status of the condition, one of True, False, Unknown.
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Enum="True";"False";"Unknown"
    // +required
    Status ConditionStatus `json:"status" protobuf:"bytes,2,opt,name=status,casttype=ConditionStatus"`

    // LastTransitionTime is the time of the last update to the current status property.
    // +kubebuilder:validation:Required
    // +required
    // +nullable
    LastTransitionTime metav1.Time `json:"lastTransitionTime" protobuf:"bytes,3,opt,name=lastTransitionTime"`

    // Reason is the CamelCase reason for the condition's current status.
    Reason string `json:"reason,omitempty" protobuf:"bytes,4,opt,name=reason"`

    // Message provides additional information about the current condition.
    // This is only to be consumed by humans.  It may contain Line Feed
    // characters (U+000A), which should be rendered as new lines.
    Message string `json:"message,omitempty" protobuf:"bytes,5,opt,name=message"`
}

func (*EgressRouterStatusCondition) DeepCopy

func (in *EgressRouterStatusCondition) DeepCopy() *EgressRouterStatusCondition

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

func (*EgressRouterStatusCondition) DeepCopyInto

func (in *EgressRouterStatusCondition) DeepCopyInto(out *EgressRouterStatusCondition)

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

func (*EgressRouterStatusCondition) Descriptor

func (*EgressRouterStatusCondition) Descriptor() ([]byte, []int)

func (*EgressRouterStatusCondition) Marshal

func (m *EgressRouterStatusCondition) Marshal() (dAtA []byte, err error)

func (*EgressRouterStatusCondition) MarshalTo

func (m *EgressRouterStatusCondition) MarshalTo(dAtA []byte) (int, error)

func (*EgressRouterStatusCondition) MarshalToSizedBuffer

func (m *EgressRouterStatusCondition) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*EgressRouterStatusCondition) ProtoMessage

func (*EgressRouterStatusCondition) ProtoMessage()

func (*EgressRouterStatusCondition) Reset

func (m *EgressRouterStatusCondition) Reset()

func (*EgressRouterStatusCondition) Size

func (m *EgressRouterStatusCondition) Size() (n int)

func (*EgressRouterStatusCondition) String

func (this *EgressRouterStatusCondition) String() string

func (EgressRouterStatusCondition) SwaggerDoc

func (EgressRouterStatusCondition) SwaggerDoc() map[string]string

func (*EgressRouterStatusCondition) Unmarshal

func (m *EgressRouterStatusCondition) Unmarshal(dAtA []byte) error

func (*EgressRouterStatusCondition) XXX_DiscardUnknown

func (m *EgressRouterStatusCondition) XXX_DiscardUnknown()

func (*EgressRouterStatusCondition) XXX_Marshal

func (m *EgressRouterStatusCondition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*EgressRouterStatusCondition) XXX_Merge

func (m *EgressRouterStatusCondition) XXX_Merge(src proto.Message)

func (*EgressRouterStatusCondition) XXX_Size

func (m *EgressRouterStatusCondition) XXX_Size() int

func (*EgressRouterStatusCondition) XXX_Unmarshal

func (m *EgressRouterStatusCondition) XXX_Unmarshal(b []byte) error

type EgressRouterStatusConditionType

EgressRouterStatusConditionType is an aspect of the router's state.

type EgressRouterStatusConditionType string
const (
    // EgressRouterAvailable indicates that the EgressRouter (the associated pod, service, NAD), is functional and available in the cluster.
    EgressRouterAvailable EgressRouterStatusConditionType = "Available"

    // EgressRouterProgressing indicates that the router is actively rolling out new code,
    // propagating config changes, or otherwise moving from one steady state to
    // another.
    EgressRouterProgressing EgressRouterStatusConditionType = "Progressing"

    // EgressRouterDegraded indicates that the router's current state does not match its
    // desired state over a period of time resulting in a lower quality of service.
    EgressRouterDegraded EgressRouterStatusConditionType = "Degraded"
)

type L4RedirectRule

L4RedirectRule defines a DNAT redirection from a given port to a destination IP and port.

type L4RedirectRule struct {
    // IP specifies the remote destination's IP address. Can be IPv4 or IPv6.
    // +kubebuilder:validation:Required
    DestinationIP string `json:"destinationIP" protobuf:"bytes,1,opt,name=destinationIP"`

    // Port is the port number to which clients should send traffic to be redirected.
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Maximum:=65535
    // +kubebuilder:validation:Minimum:=1
    Port int32 `json:"port" protobuf:"varint,2,opt,name=port"`

    // Protocol can be TCP, SCTP or UDP.
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Enum="TCP";"UDP";"SCTP"
    Protocol ProtocolType `json:"protocol" protobuf:"bytes,3,opt,name=protocol,casttype=ProtocolType"`

    // TargetPort allows specifying the port number on the remote destination to which the traffic gets redirected to.
    // If unspecified, the value from "Port" is used.
    // +kubebuilder:validation:Maximum:=65535
    // +kubebuilder:validation:Minimum:=1
    TargetPort int32 `json:"targetPort,omitempty" protobuf:"varint,4,opt,name=targetPort"`
}

func (*L4RedirectRule) DeepCopy

func (in *L4RedirectRule) DeepCopy() *L4RedirectRule

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

func (*L4RedirectRule) DeepCopyInto

func (in *L4RedirectRule) DeepCopyInto(out *L4RedirectRule)

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

func (*L4RedirectRule) Descriptor

func (*L4RedirectRule) Descriptor() ([]byte, []int)

func (*L4RedirectRule) Marshal

func (m *L4RedirectRule) Marshal() (dAtA []byte, err error)

func (*L4RedirectRule) MarshalTo

func (m *L4RedirectRule) MarshalTo(dAtA []byte) (int, error)

func (*L4RedirectRule) MarshalToSizedBuffer

func (m *L4RedirectRule) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*L4RedirectRule) ProtoMessage

func (*L4RedirectRule) ProtoMessage()

func (*L4RedirectRule) Reset

func (m *L4RedirectRule) Reset()

func (*L4RedirectRule) Size

func (m *L4RedirectRule) Size() (n int)

func (*L4RedirectRule) String

func (this *L4RedirectRule) String() string

func (L4RedirectRule) SwaggerDoc

func (L4RedirectRule) SwaggerDoc() map[string]string

func (*L4RedirectRule) Unmarshal

func (m *L4RedirectRule) Unmarshal(dAtA []byte) error

func (*L4RedirectRule) XXX_DiscardUnknown

func (m *L4RedirectRule) XXX_DiscardUnknown()

func (*L4RedirectRule) XXX_Marshal

func (m *L4RedirectRule) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*L4RedirectRule) XXX_Merge

func (m *L4RedirectRule) XXX_Merge(src proto.Message)

func (*L4RedirectRule) XXX_Size

func (m *L4RedirectRule) XXX_Size() int

func (*L4RedirectRule) XXX_Unmarshal

func (m *L4RedirectRule) XXX_Unmarshal(b []byte) error

type MacvlanConfig

MacvlanConfig consists of arguments specific to the macvlan EgressRouterInterfaceType

type MacvlanConfig struct {
    // Mode depicts the mode that is used for the macvlan interface; one of Bridge|Private|VEPA|Passthru. The default mode is "Bridge".
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Enum="Bridge";"Private";"VEPA";"Passthru"
    // +kubebuilder:default:="Bridge"
    Mode MacvlanMode `json:"mode" protobuf:"bytes,1,opt,name=mode,casttype=MacvlanMode"`

    // Name of the master interface. Need not be specified if it can be inferred from the IP address.
    Master string `json:"master,omitempty" protobuf:"bytes,2,opt,name=master"`
}

func (*MacvlanConfig) DeepCopy

func (in *MacvlanConfig) DeepCopy() *MacvlanConfig

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

func (*MacvlanConfig) DeepCopyInto

func (in *MacvlanConfig) DeepCopyInto(out *MacvlanConfig)

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

func (*MacvlanConfig) Descriptor

func (*MacvlanConfig) Descriptor() ([]byte, []int)

func (*MacvlanConfig) Marshal

func (m *MacvlanConfig) Marshal() (dAtA []byte, err error)

func (*MacvlanConfig) MarshalTo

func (m *MacvlanConfig) MarshalTo(dAtA []byte) (int, error)

func (*MacvlanConfig) MarshalToSizedBuffer

func (m *MacvlanConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*MacvlanConfig) ProtoMessage

func (*MacvlanConfig) ProtoMessage()

func (*MacvlanConfig) Reset

func (m *MacvlanConfig) Reset()

func (*MacvlanConfig) Size

func (m *MacvlanConfig) Size() (n int)

func (*MacvlanConfig) String

func (this *MacvlanConfig) String() string

func (MacvlanConfig) SwaggerDoc

func (MacvlanConfig) SwaggerDoc() map[string]string

func (*MacvlanConfig) Unmarshal

func (m *MacvlanConfig) Unmarshal(dAtA []byte) error

func (*MacvlanConfig) XXX_DiscardUnknown

func (m *MacvlanConfig) XXX_DiscardUnknown()

func (*MacvlanConfig) XXX_Marshal

func (m *MacvlanConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*MacvlanConfig) XXX_Merge

func (m *MacvlanConfig) XXX_Merge(src proto.Message)

func (*MacvlanConfig) XXX_Size

func (m *MacvlanConfig) XXX_Size() int

func (*MacvlanConfig) XXX_Unmarshal

func (m *MacvlanConfig) XXX_Unmarshal(b []byte) error

type MacvlanMode

MacvlanMode defines the different types of modes that are supported for the macvlan interface. source: https://man7.org/linux/man-pages/man8/ip-link.8.html

type MacvlanMode string
const (
    // MacvlanModeBridge connects all endpoints directly to each other, communication is not redirected through the physical interface's peer.
    MacvlanModeBridge MacvlanMode = "Bridge"

    // MacvlanModePrivate does not allow communication between macvlan instances on the same physical interface,
    // even if the external switch supports hairpin mode.
    MacvlanModePrivate MacvlanMode = "Private"

    // MacvlanModeVEPA is the Virtual Ethernet Port Aggregator mode. Data from one macvlan instance to the other on the
    // same physical interface is transmitted over the physical interface. Either the attached switch needs
    // to support hairpin mode, or there must be a TCP/IP router forwarding the packets in order to allow
    // communication. This is the default mode.
    MacvlanModeVEPA MacvlanMode = "VEPA"

    // MacvlanModePassthru mode gives more power to a single endpoint, usually in macvtap mode.
    // It is not allowed for more than one endpoint on the same physical interface. All traffic will be forwarded
    // to this endpoint, allowing virtio guests to change MAC address or set promiscuous mode in order to bridge the
    // interface or create vlan interfaces on top of it.
    MacvlanModePassthru MacvlanMode = "Passthru"
)

type ProtocolType

ProtocolType defines the protocol types that are supported

type ProtocolType string
const (
    // ProtocolTypeTCP refers to the TCP protocol
    ProtocolTypeTCP ProtocolType = "TCP"

    // ProtocolTypeUDP refers to the UDP protocol
    ProtocolTypeUDP ProtocolType = "UDP"

    // ProtocolTypeSCTP refers to the SCTP protocol
    ProtocolTypeSCTP ProtocolType = "SCTP"
)

type RedirectConfig

RedirectConfig represents the configuration parameters specific to redirect mode.

type RedirectConfig struct {
    // List of L4RedirectRules that define the DNAT redirection from the pod to the destination in redirect mode.
    RedirectRules []L4RedirectRule `json:"redirectRules,omitempty" protobuf:"bytes,1,rep,name=redirectRules"`

    // FallbackIP specifies the remote destination's IP address. Can be IPv4 or IPv6.
    // If no redirect rules are specified, all traffic from the router are redirected to this IP.
    // If redirect rules are specified, then any connections on any other port (undefined in the rules) on the router will be redirected to this IP.
    // If redirect rules are specified and no fallback IP is provided, connections on other ports will simply be rejected.
    FallbackIP string `json:"fallbackIP,omitempty" protobuf:"bytes,2,opt,name=fallbackIP"`
}

func (*RedirectConfig) DeepCopy

func (in *RedirectConfig) DeepCopy() *RedirectConfig

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

func (*RedirectConfig) DeepCopyInto

func (in *RedirectConfig) DeepCopyInto(out *RedirectConfig)

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

func (*RedirectConfig) Descriptor

func (*RedirectConfig) Descriptor() ([]byte, []int)

func (*RedirectConfig) Marshal

func (m *RedirectConfig) Marshal() (dAtA []byte, err error)

func (*RedirectConfig) MarshalTo

func (m *RedirectConfig) MarshalTo(dAtA []byte) (int, error)

func (*RedirectConfig) MarshalToSizedBuffer

func (m *RedirectConfig) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RedirectConfig) ProtoMessage

func (*RedirectConfig) ProtoMessage()

func (*RedirectConfig) Reset

func (m *RedirectConfig) Reset()

func (*RedirectConfig) Size

func (m *RedirectConfig) Size() (n int)

func (*RedirectConfig) String

func (this *RedirectConfig) String() string

func (RedirectConfig) SwaggerDoc

func (RedirectConfig) SwaggerDoc() map[string]string

func (*RedirectConfig) Unmarshal

func (m *RedirectConfig) Unmarshal(dAtA []byte) error

func (*RedirectConfig) XXX_DiscardUnknown

func (m *RedirectConfig) XXX_DiscardUnknown()

func (*RedirectConfig) XXX_Marshal

func (m *RedirectConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RedirectConfig) XXX_Merge

func (m *RedirectConfig) XXX_Merge(src proto.Message)

func (*RedirectConfig) XXX_Size

func (m *RedirectConfig) XXX_Size() int

func (*RedirectConfig) XXX_Unmarshal

func (m *RedirectConfig) XXX_Unmarshal(b []byte) error