Documentation

Index

Constants

View Source
const (
	CRDGroup                  string = nodeconfig.GroupName
	CRDGroupVersion           string = "v1"
	CRDContivNodeConfigPlural string = "nodeconfigs"
)

    CRD Constants

    View Source
    const (
    	// StatusSuccess is returned in Status.State when controller successfully creates/deletes/updates NodeConfig CRD.
    	StatusSuccess = "Success"
    	// StatusFailure is returned in Status.State when controller fails to create/delete/update NodeConfig CRD.
    	StatusFailure = "Failure"
    )

    Variables

    View Source
    var (
    	// SchemeGroupVersion defines the group version
    	SchemeGroupVersion = schema.GroupVersion{Group: nodeconfig.GroupName, Version: "v1"}
    	// SchemeBuilder is the schema builder for the CRD API
    	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
    	// AddToScheme is...
    	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 InterfaceConfig

        type InterfaceConfig struct {
        	InterfaceName string `json:"interfaceName"`
        	IP            string `json:"ip,omitempty"`
        	UseDHCP       bool   `json:"useDHCP,omitempty"`
        }

          InterfaceConfig encapsulates configuration for single interface.

          func (*InterfaceConfig) DeepCopy

          func (in *InterfaceConfig) DeepCopy() *InterfaceConfig

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

            func (*InterfaceConfig) DeepCopyInto

            func (in *InterfaceConfig) DeepCopyInto(out *InterfaceConfig)

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

              func (*InterfaceConfig) EqualsTo

              func (intfCfg *InterfaceConfig) EqualsTo(intfCfg2 *InterfaceConfig) bool

                EqualsTo can be used to compare instances of InterfaceConfig.

                type NodeConfig

                type NodeConfig struct {
                	// TypeMeta is the metadata for the resource, like kind and apiversion
                	metav1.TypeMeta `json:",inline"`
                	// ObjectMeta contains the metadata for the particular object
                	metav1.ObjectMeta `json:"metadata,omitempty"`
                	// Spec is the custom resource spec
                	Spec   NodeConfigSpec   `json:"spec,omitempty"`
                	Status NodeConfigStatus `json:"status,omitempty"`
                }

                  NodeConfig describes contiv node configuration custom resource +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

                  func (*NodeConfig) DeepCopy

                  func (in *NodeConfig) DeepCopy() *NodeConfig

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

                    func (*NodeConfig) DeepCopyInto

                    func (in *NodeConfig) DeepCopyInto(out *NodeConfig)

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

                      func (*NodeConfig) DeepCopyObject

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

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

                        type NodeConfigList

                        type NodeConfigList struct {
                        	metav1.TypeMeta `json:",inline"`
                        	metav1.ListMeta `json:"metadata"`
                        
                        	Items []NodeConfig `json:"items"`
                        }

                          NodeConfigList is a list of node configuration resource +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

                          func (*NodeConfigList) DeepCopy

                          func (in *NodeConfigList) DeepCopy() *NodeConfigList

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

                            func (*NodeConfigList) DeepCopyInto

                            func (in *NodeConfigList) DeepCopyInto(out *NodeConfigList)

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

                              func (*NodeConfigList) DeepCopyObject

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

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

                                type NodeConfigSpec

                                type NodeConfigSpec struct {
                                	MainVPPInterface   InterfaceConfig   `json:"mainVPPInterface,omitempty"`   // main VPP interface used for the inter-node connectivity
                                	OtherVPPInterfaces []InterfaceConfig `json:"otherVPPInterfaces,omitempty"` // other interfaces on VPP, not necessarily used for inter-node connectivity
                                	StealInterface     string            `json:"stealInterface,omitempty"`     // interface to be stolen from the host stack and bound to VPP
                                	Gateway            string            `json:"gateway,omitempty"`            // IP address of the default gateway
                                	NatExternalTraffic bool              `json:"natExternalTraffic,omitempty"` // whether to NAT external traffic or not
                                }

                                  NodeConfigSpec is the spec for the contiv node configuration resource.

                                  func (*NodeConfigSpec) DeepCopy

                                  func (in *NodeConfigSpec) DeepCopy() *NodeConfigSpec

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

                                    func (*NodeConfigSpec) DeepCopyInto

                                    func (in *NodeConfigSpec) DeepCopyInto(out *NodeConfigSpec)

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

                                      func (*NodeConfigSpec) EqualsTo

                                      func (nc *NodeConfigSpec) EqualsTo(nc2 *NodeConfigSpec) bool

                                        EqualsTo can be used to compare instances of NodeConfigSpec.

                                        type NodeConfigStatus

                                        type NodeConfigStatus struct {
                                        	State   string `json:"state,omitempty"`
                                        	Message string `json:"message,omitempty"`
                                        }

                                          NodeConfigStatus is the state for the contiv ode configuration

                                          func (*NodeConfigStatus) DeepCopy

                                          func (in *NodeConfigStatus) DeepCopy() *NodeConfigStatus

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

                                            func (*NodeConfigStatus) DeepCopyInto

                                            func (in *NodeConfigStatus) DeepCopyInto(out *NodeConfigStatus)

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