v1beta1

package
v0.0.0-...-bfd0bb2 Latest Latest
Warning

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

Go to latest
Published: May 27, 2021 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{
	Group:   "crd.helios.io",
	Version: "v1beta1",
}

Functions

func Resource

func Resource(resource string) schema.GroupResource

Types

type AgentCondition

type AgentCondition struct {
	Type              AgentConditionType     `json:"type"`              // One of the AgentConditionType listed above
	Status            corev1.ConditionStatus `json:"status"`            // Mark certain type status, one of True, False, Unknown
	LastHeartbeatTime metav1.Time            `json:"lastHeartbeatTime"` // The timestamp when HeliosAgentInfo is created/updated, ideally heartbeat interval is 60s
	Reason            string                 `json:"reason,omitempty"`  // Brief reason
	Message           string                 `json:"message,omitempty"` // Human readable message indicating details
}

func (*AgentCondition) DeepCopy

func (in *AgentCondition) DeepCopy() *AgentCondition

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

func (*AgentCondition) DeepCopyInto

func (in *AgentCondition) DeepCopyInto(out *AgentCondition)

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

type AgentConditionType

type AgentConditionType string
const (
	AgentHealthy           AgentConditionType = "AgentHealthy"           // Status is always set to be True and LastHeartbeatTime is used to check Agent health status.
	ControllerConnectionUp AgentConditionType = "ControllerConnectionUp" // Status True/False is used to mark the connection status between Agent and Controller.
)

type ControllerCondition

type ControllerCondition struct {
	Type              ControllerConditionType `json:"type"`              // One of the ControllerConditionType listed above, controllerHealthy
	Status            corev1.ConditionStatus  `json:"status"`            // Mark certain type status, one of True, False, Unknown
	LastHeartbeatTime metav1.Time             `json:"lastHeartbeatTime"` // The timestamp when HeliosControllerInfo is created/updated, ideally heartbeat interval is 60s
	Reason            string                  `json:"reason,omitempty"`  // Brief reason
	Message           string                  `json:"message,omitempty"` // Human readable message indicating details
}

func (*ControllerCondition) DeepCopy

func (in *ControllerCondition) DeepCopy() *ControllerCondition

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

func (*ControllerCondition) DeepCopyInto

func (in *ControllerCondition) DeepCopyInto(out *ControllerCondition)

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

type ControllerConditionType

type ControllerConditionType string
const (
	ControllerHealthy ControllerConditionType = "ControllerHealthy" // Status is always set to be True and LastHeartbeatTime is used to check Controller health status.
)

type HeliosAgentInfo

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

	Version                     string                      `json:"version,omitempty"`                     // Helios binary version
	PodRef                      corev1.ObjectReference      `json:"podRef,omitempty"`                      // The Pod that Helios Agent is running in
	NodeRef                     corev1.ObjectReference      `json:"nodeRef,omitempty"`                     // The Node that Helios Agent is running in
	NodeSubnets                 []string                    `json:"nodeSubnets,omitempty"`                 // Node subnets
	HeliosInfo                  HeliosInfo                  `json:"heliosInfo,omitempty"`                  // HELIOS Information
	NetworkPolicyControllerInfo NetworkPolicyControllerInfo `json:"networkPolicyControllerInfo,omitempty"` // Helios Agent NetworkPolicy information
	LocalPodNum                 int32                       `json:"localPodNum,omitempty"`                 // The number of Pods which the agent is in charge of
	AgentConditions             []AgentCondition            `json:"agentConditions,omitempty"`             // Agent condition contains types like AgentHealthy
	APIPort                     int                         `json:"apiPort,omitempty"`                     // The port of Helios agent API Server

	Spec HeliosCrdSpec `json:"spec,omitempty"`
}

+genclient +genclient:nonNamespaced +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*HeliosAgentInfo) DeepCopy

func (in *HeliosAgentInfo) DeepCopy() *HeliosAgentInfo

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

func (*HeliosAgentInfo) DeepCopyInto

func (in *HeliosAgentInfo) DeepCopyInto(out *HeliosAgentInfo)

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

func (*HeliosAgentInfo) DeepCopyObject

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

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

type HeliosAgentInfoList

type HeliosAgentInfoList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []HeliosAgentInfo `json:"items"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*HeliosAgentInfoList) DeepCopy

func (in *HeliosAgentInfoList) DeepCopy() *HeliosAgentInfoList

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

func (*HeliosAgentInfoList) DeepCopyInto

func (in *HeliosAgentInfoList) DeepCopyInto(out *HeliosAgentInfoList)

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

func (*HeliosAgentInfoList) DeepCopyObject

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

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

type HeliosControllerInfo

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

	Version                     string                      `json:"version,omitempty"`                     // Helios binary version
	PodRef                      corev1.ObjectReference      `json:"podRef,omitempty"`                      // The Pod that Helios Controller is running in
	NodeRef                     corev1.ObjectReference      `json:"nodeRef,omitempty"`                     // The Node that Helios Controller is running in
	ServiceRef                  corev1.ObjectReference      `json:"serviceRef,omitempty"`                  // Helios Controller Service
	NetworkPolicyControllerInfo NetworkPolicyControllerInfo `json:"networkPolicyControllerInfo,omitempty"` // Helios Controller NetworkPolicy information
	ConnectedAgentNum           int32                       `json:"connectedAgentNum,omitempty"`           // Number of agents which are connected to this controller
	ControllerConditions        []ControllerCondition       `json:"controllerConditions,omitempty"`        // Controller condition contains types like ControllerHealthy
	APIPort                     int                         `json:"apiPort,omitempty"`                     // The port of Helios controller API Server
}

+genclient +genclient:nonNamespaced +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*HeliosControllerInfo) DeepCopy

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

func (*HeliosControllerInfo) DeepCopyInto

func (in *HeliosControllerInfo) DeepCopyInto(out *HeliosControllerInfo)

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

func (*HeliosControllerInfo) DeepCopyObject

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

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

type HeliosControllerInfoList

type HeliosControllerInfoList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []HeliosControllerInfo `json:"items"`
}

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*HeliosControllerInfoList) DeepCopy

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

func (*HeliosControllerInfoList) DeepCopyInto

func (in *HeliosControllerInfoList) DeepCopyInto(out *HeliosControllerInfoList)

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

func (*HeliosControllerInfoList) DeepCopyObject

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

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

type HeliosCrdSpec

type HeliosCrdSpec struct {
	Name      string `json:"name"`
	Cmd       string `json:"cmd"`
	Arguments string `json:"arguments"`
}

type HeliosInfo

type HeliosInfo struct {
	Version    string            `json:"version,omitempty"`
	RouteTable map[string]string `json:"flowTable,omitempty"` // Key: destination route name, Value: gw dev or ip address
}

func (*HeliosInfo) DeepCopy

func (in *HeliosInfo) DeepCopy() *HeliosInfo

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

func (*HeliosInfo) DeepCopyInto

func (in *HeliosInfo) DeepCopyInto(out *HeliosInfo)

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

type NetworkPolicyControllerInfo

type NetworkPolicyControllerInfo struct {
	NetworkPolicyNum  int32 `json:"networkPolicyNum,omitempty"`
	AddressGroupNum   int32 `json:"addressGroupNum,omitempty"`
	AppliedToGroupNum int32 `json:"appliedToGroupNum,omitempty"`
}

func (*NetworkPolicyControllerInfo) DeepCopy

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

func (*NetworkPolicyControllerInfo) DeepCopyInto

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

Jump to

Keyboard shortcuts

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