v1

package
v0.0.0-...-4d3c99f Latest Latest
Warning

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

Go to latest
Published: Jul 26, 2024 License: Apache-2.0 Imports: 3 Imported by: 1

Documentation

Overview

Package v1 contains API Schema definitions for the network v1 API group +k8s:deepcopy-gen=package +groupName=k8s.ovn.org

Index

Constants

This section is empty.

Variables

View Source
var (
	GroupName          = "k8s.ovn.org"
	SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}
	SchemeBuilder      = runtime.NewSchemeBuilder(addKnownTypes)
	AddToScheme        = SchemeBuilder.AddToScheme
)

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type EgressQoS

type EgressQoS struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   EgressQoSSpec   `json:"spec,omitempty"`
	Status EgressQoSStatus `json:"status,omitempty"`
}

+genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:path=egressqoses +kubebuilder::singular=egressqos +kubebuilder:object:root=true +kubebuilder:printcolumn:name="Status",type=string,JSONPath=".status.status" +kubebuilder:subresource:status EgressQoS is a CRD that allows the user to define a DSCP value for pods egress traffic on its namespace to specified CIDRs. Traffic from these pods will be checked against each EgressQoSRule in the namespace's EgressQoS, and if there is a match the traffic is marked with the relevant DSCP value.

func (*EgressQoS) DeepCopy

func (in *EgressQoS) DeepCopy() *EgressQoS

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

func (*EgressQoS) DeepCopyInto

func (in *EgressQoS) DeepCopyInto(out *EgressQoS)

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

func (*EgressQoS) DeepCopyObject

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

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

type EgressQoSList

type EgressQoSList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []EgressQoS `json:"items"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:path=egressqoses +kubebuilder::singular=egressqos EgressQoSList contains a list of EgressQoS

func (*EgressQoSList) DeepCopy

func (in *EgressQoSList) DeepCopy() *EgressQoSList

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

func (*EgressQoSList) DeepCopyInto

func (in *EgressQoSList) DeepCopyInto(out *EgressQoSList)

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

func (*EgressQoSList) DeepCopyObject

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

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

type EgressQoSRule

type EgressQoSRule struct {
	// DSCP marking value for matching pods' traffic.
	// +kubebuilder:validation:Maximum:=63
	// +kubebuilder:validation:Minimum:=0
	DSCP int `json:"dscp"`

	// DstCIDR specifies the destination's CIDR. Only traffic heading
	// to this CIDR will be marked with the DSCP value.
	// This field is optional, and in case it is not set the rule is applied
	// to all egress traffic regardless of the destination.
	// +optional
	// +kubebuilder:validation:Format="cidr"
	DstCIDR *string `json:"dstCIDR,omitempty"`

	// PodSelector applies the QoS rule only to the pods in the namespace whose label
	// matches this definition. This field is optional, and in case it is not set
	// results in the rule being applied to all pods in the namespace.
	// +optional
	PodSelector metav1.LabelSelector `json:"podSelector,omitempty"`
}

func (*EgressQoSRule) DeepCopy

func (in *EgressQoSRule) DeepCopy() *EgressQoSRule

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

func (*EgressQoSRule) DeepCopyInto

func (in *EgressQoSRule) DeepCopyInto(out *EgressQoSRule)

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

type EgressQoSSpec

type EgressQoSSpec struct {
	// a collection of Egress QoS rule objects
	Egress []EgressQoSRule `json:"egress"`
}

EgressQoSSpec defines the desired state of EgressQoS

func (*EgressQoSSpec) DeepCopy

func (in *EgressQoSSpec) DeepCopy() *EgressQoSSpec

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

func (*EgressQoSSpec) DeepCopyInto

func (in *EgressQoSSpec) DeepCopyInto(out *EgressQoSSpec)

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

type EgressQoSStatus

type EgressQoSStatus struct {
	// A concise indication of whether the EgressQoS resource is applied with success.
	// +optional
	Status string `json:"status,omitempty"`

	// An array of condition objects indicating details about status of EgressQoS object.
	// +optional
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"`
}

EgressQoSStatus defines the observed state of EgressQoS

func (*EgressQoSStatus) DeepCopy

func (in *EgressQoSStatus) DeepCopy() *EgressQoSStatus

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

func (*EgressQoSStatus) DeepCopyInto

func (in *EgressQoSStatus) DeepCopyInto(out *EgressQoSStatus)

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

Directories

Path Synopsis
apis
clientset/versioned/fake
This package has the automatically generated fake clientset.
This package has the automatically generated fake clientset.
clientset/versioned/scheme
This package contains the scheme of the automatically generated clientset.
This package contains the scheme of the automatically generated clientset.
clientset/versioned/typed/egressqos/v1
This package has the automatically generated typed clients.
This package has the automatically generated typed clients.
clientset/versioned/typed/egressqos/v1/fake
Package fake has the automatically generated clients.
Package fake has the automatically generated clients.

Jump to

Keyboard shortcuts

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