v1alpha1

package
v0.5.0-dev1 Latest Latest
Warning

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

Go to latest
Published: Apr 22, 2022 License: AGPL-3.0 Imports: 4 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the network v1alpha1 API group +kubebuilder:object:generate=true +groupName=network.edgefarm.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "network.edgefarm.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type ImportSpec

type ImportSpec struct {
	// From is the global subject to import
	From string `json:"from"`

	// To is the local subject to forward the imported messages to
	To string `json:"to"`
}

ImportSpec defines the configuration of an Import

func (*ImportSpec) DeepCopy

func (in *ImportSpec) DeepCopy() *ImportSpec

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

func (*ImportSpec) DeepCopyInto

func (in *ImportSpec) DeepCopyInto(out *ImportSpec)

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

type Network

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

	Spec   NetworkSpec   `json:"spec,omitempty"`
	Status NetworkStatus `json:"status,omitempty"`
}

Network is the Schema for the networks API

func (*Network) DeepCopy

func (in *Network) DeepCopy() *Network

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

func (*Network) DeepCopyInto

func (in *Network) DeepCopyInto(out *Network)

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

func (*Network) DeepCopyObject

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

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

type NetworkList

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

NetworkList contains a list of Network

func (*NetworkList) DeepCopy

func (in *NetworkList) DeepCopy() *NetworkList

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

func (*NetworkList) DeepCopyInto

func (in *NetworkList) DeepCopyInto(out *NetworkList)

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

func (*NetworkList) DeepCopyObject

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

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

type NetworkSpec

type NetworkSpec struct {

	// App is the name of the distrubuted application the network is created for.
	App string `json:"app"`

	// Namespace is the namespace the credentials shall be stored in. If empty, the accountname is used for credential deplyoment.
	Namespace string `json:"namespace,omitempty"`

	// Participants is a list of participating components in the network with their corresponding types (edge or cloud).
	Participants map[string]string `json:"participants"`

	// Streams is a list of streams in the network.
	Streams []StreamSpec `json:"streams"`

	// Imports is a list of streams to import from other networks.
	Imports []ImportSpec `json:"imports"`
}

NetworkSpec defines the desired state of Network

func (*NetworkSpec) DeepCopy

func (in *NetworkSpec) DeepCopy() *NetworkSpec

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

func (*NetworkSpec) DeepCopyInto

func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)

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

type NetworkStatus

type NetworkStatus struct {

	// CurrentlyParticipatingNodes is a list of kubernetes nodes that currently are hosting participating components.
	CurrentlyParticipatingNodes []string `json:"participatingNodes"`

	// CurrentlyParticipatingEdges is a list of kubernetes nodes that currently are hosting participating components but are not configured yet.
	NewParticipatingNodes []string `json:"newParticipatingNodes"`

	// CurrentlyParticipatingClouds is a list of kubernetes nodes that were hosting participating components in the past but are not configured yet.
	LeftParticipatingNodes []string `json:"leftParticipatingNodes"`
}

NetworkStatus defines the observed state of Network

func (*NetworkStatus) DeepCopy

func (in *NetworkStatus) DeepCopy() *NetworkStatus

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

func (*NetworkStatus) DeepCopyInto

func (in *NetworkStatus) DeepCopyInto(out *NetworkStatus)

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

type Participants

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

	Spec   ParticipantsSpec   `json:"spec,omitempty"`
	Status ParticipantsStatus `json:"status,omitempty"`
}

Participants is the Schema for the participants API

func (*Participants) DeepCopy

func (in *Participants) DeepCopy() *Participants

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

func (*Participants) DeepCopyInto

func (in *Participants) DeepCopyInto(out *Participants)

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

func (*Participants) DeepCopyObject

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

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

type ParticipantsList

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

ParticipantsList contains a list of Participants

func (*ParticipantsList) DeepCopy

func (in *ParticipantsList) DeepCopy() *ParticipantsList

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

func (*ParticipantsList) DeepCopyInto

func (in *ParticipantsList) DeepCopyInto(out *ParticipantsList)

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

func (*ParticipantsList) DeepCopyObject

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

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

type ParticipantsSpec

type ParticipantsSpec struct {

	// Component is the name of the component that wants to use the participant.
	Component string `json:"component"`

	// Network is the name of the network the participant is connected to.
	Network string `json:"network"`

	// App is the name of the distrubuted application the participant is created for.
	App string `json:"app"`

	// Type determins wether the participant runs on an edge node or a cloud node.
	Type string `json:"type"`
}

ParticipantsSpec defines the desired state of Participants

func (*ParticipantsSpec) DeepCopy

func (in *ParticipantsSpec) DeepCopy() *ParticipantsSpec

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

func (*ParticipantsSpec) DeepCopyInto

func (in *ParticipantsSpec) DeepCopyInto(out *ParticipantsSpec)

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

type ParticipantsStatus

type ParticipantsStatus struct {
}

ParticipantsStatus defines the observed state of Participants

func (*ParticipantsStatus) DeepCopy

func (in *ParticipantsStatus) DeepCopy() *ParticipantsStatus

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

func (*ParticipantsStatus) DeepCopyInto

func (in *ParticipantsStatus) DeepCopyInto(out *ParticipantsStatus)

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

type StreamSpec

type StreamSpec struct {
	// Name of the stream
	Name string `json:"name"`

	// Subject defines the subjects of the stream
	Subjects []string `json:"subjects"`

	// Public defines if the stream shall be exported
	// +kubebuilder:default:=false
	Public bool `json:"public,omitempty"`

	// Global defines if the stream is local only or global
	// +kubebuilder:default:=true
	Global bool `json:"global,omitempty"`

	// Streams are stored on the server, this can be one of many backends and all are usable in clustering mode.
	// Allowed values are: file, memory
	// +kubebuilder:default:=memory
	Storage string `json:"storage,omitempty"`

	// Messages are retained either based on limits like size and age (Limits), as long as there are Consumers (Interest) or until any worker processed them (Work Queue)
	// Allowed values are: limits, interest, workqueue
	// +kubebuilder:default:=limits
	Retention string `json:"retention,omitempty"`

	// MaxMsgsPerSubject defines the amount of messages to keep in the store for this Stream per unique subject, when exceeded oldest messages are removed, -1 for unlimited.
	// +kubebuilder:default:=-1
	MaxMsgsPerSubject int64 `json:"maxMsgsPerSubject,omitempty"`

	// MaxMsgs defines the amount of messages to keep in the store for this Stream, when exceeded oldest messages are removed, -1 for unlimited.
	// +kubebuilder:default:=-1
	MaxMsgs int64 `json:"maxMsgs,omitempty"`

	// MaxBytes defines the combined size of all messages in a Stream, when exceeded oldest messages are removed, -1 for unlimited.
	// +kubebuilder:default:=-1
	MaxBytes int64 `json:"maxBytes,omitempty"`

	// MaxAge defines the oldest messages that can be stored in the Stream, any messages older than this period will be removed, -1 for unlimited. Supports units (s)econds, (m)inutes, (h)ours, (d)ays, (M)onths, (y)ears.
	// +kubebuilder:default:="1y"
	MaxAge string `json:"maxAge,omitempty"`

	// MaxMsgSize defines the maximum size any single message may be to be accepted by the Stream.
	// +kubebuilder:default:=-1
	MaxMsgSize int32 `json:"maxMsgSize,omitempty"`

	// Discard defines if once the Stream reach it's limits of size or messages the 'new' policy will prevent further messages from being added while 'old' will delete old messages.
	// Allowed values are: new, old
	// +kubebuilder:default:="old"
	Discard string `json:"discard,omitempty"`
}

StreamSpec defines the configuration of a Stream

func (*StreamSpec) DeepCopy

func (in *StreamSpec) DeepCopy() *StreamSpec

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

func (*StreamSpec) DeepCopyInto

func (in *StreamSpec) DeepCopyInto(out *StreamSpec)

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