Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the fs v1alpha1 API group. +kubebuilder:object:generate=true +groupName=fs.functionstream.github.io
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "fs.functionstream.github.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type CloudType ¶
type CloudType struct {
// Image specifies the container image for cloud deployment
Image string `json:"image"`
}
CloudType defines cloud function package configuration
func (*CloudType) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudType.
func (*CloudType) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigItem ¶
type ConfigItem struct {
// DisplayName is the human-readable name of the config item
// +kubebuilder:validation:Optional
DisplayName string `json:"displayName,omitempty"`
// Description provides additional information about the config item
// +kubebuilder:validation:Optional
Description string `json:"description,omitempty"`
// Type specifies the data type of the config item
// +kubebuilder:validation:Optional
Type string `json:"type,omitempty"`
// Required indicates whether this config item is mandatory
// +kubebuilder:validation:Optional
Required bool `json:"required,omitempty"`
}
ConfigItem defines a configuration item for a module
func (*ConfigItem) DeepCopy ¶
func (in *ConfigItem) DeepCopy() *ConfigItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigItem.
func (*ConfigItem) DeepCopyInto ¶
func (in *ConfigItem) DeepCopyInto(out *ConfigItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Function ¶
type Function struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec FunctionSpec `json:"spec,omitempty"`
Status FunctionStatus `json:"status,omitempty"`
}
Function is the Schema for the functions API.
func (*Function) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Function.
func (*Function) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Function) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FunctionList ¶
type FunctionList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Function `json:"items"`
}
FunctionList contains a list of Function.
func (*FunctionList) DeepCopy ¶
func (in *FunctionList) DeepCopy() *FunctionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionList.
func (*FunctionList) DeepCopyInto ¶
func (in *FunctionList) DeepCopyInto(out *FunctionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FunctionList) DeepCopyObject ¶
func (in *FunctionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FunctionSpec ¶
type FunctionSpec struct {
// Display name of the function
// +kubebuilder:validation:Optional
DisplayName string `json:"displayName,omitempty"`
// Description of the function
// +kubebuilder:validation:Optional
Description string `json:"description,omitempty"`
// Package reference
// +kubebuilder:validation:Required
PackageRef PackageRef `json:"packageRef"`
// Module name
// +kubebuilder:validation:Required
Module string `json:"module"`
// Number of replicas for the function deployment
// +kubebuilder:validation:Optional
// +kubebuilder:default=1
Replicas *int32 `json:"replicas,omitempty"`
// +kubebuilder:validation:Optional
SubscriptionName string `json:"subscriptionName,omitempty"`
// List of sources
// +kubebuilder:validation:Optional
Sources []SourceSpec `json:"sources,omitempty"`
// Request source
// +kubebuilder:validation:Optional
RequestSource *SourceSpec `json:"requestSource,omitempty"`
// Sink specifies the sink configuration
// +kubebuilder:validation:Optional
Sink *SinkSpec `json:"sink,omitempty"`
// Configurations as key-value pairs
// +kubebuilder:validation:Optional
Config map[string]v1.JSON `json:"config,omitempty"`
}
FunctionSpec defines the desired state of Function +kubebuilder:object:generate=true +kubebuilder:validation:Optional
func (*FunctionSpec) DeepCopy ¶
func (in *FunctionSpec) DeepCopy() *FunctionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionSpec.
func (*FunctionSpec) DeepCopyInto ¶
func (in *FunctionSpec) DeepCopyInto(out *FunctionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FunctionStatus ¶
type FunctionStatus struct {
// Number of available pods (ready for at least minReadySeconds)
AvailableReplicas int32 `json:"availableReplicas,omitempty"`
// Total number of ready pods
ReadyReplicas int32 `json:"readyReplicas,omitempty"`
// Total number of non-terminated pods targeted by this deployment
Replicas int32 `json:"replicas,omitempty"`
// Total number of updated pods
UpdatedReplicas int32 `json:"updatedReplicas,omitempty"`
// Most recent generation observed for this Function
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}
FunctionStatus defines the observed state of Function
func (*FunctionStatus) DeepCopy ¶
func (in *FunctionStatus) DeepCopy() *FunctionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionStatus.
func (*FunctionStatus) DeepCopyInto ¶
func (in *FunctionStatus) DeepCopyInto(out *FunctionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FunctionType ¶
type FunctionType struct {
// Cloud contains cloud function package configuration
// +kubebuilder:validation:Optional
Cloud *CloudType `json:"cloud,omitempty"`
}
FunctionType defines the function type configuration
func (*FunctionType) DeepCopy ¶
func (in *FunctionType) DeepCopy() *FunctionType
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FunctionType.
func (*FunctionType) DeepCopyInto ¶
func (in *FunctionType) DeepCopyInto(out *FunctionType)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Module ¶
type Module struct {
// DisplayName is the human-readable name of the module
// +kubebuilder:validation:Optional
DisplayName string `json:"displayName,omitempty"`
// Description provides additional information about the module
// +kubebuilder:validation:Optional
Description string `json:"description,omitempty"`
// SourceSchema defines the input schema for the module
// +kubebuilder:validation:Optional
SourceSchema string `json:"sourceSchema,omitempty"`
// SinkSchema defines the output schema for the module
// +kubebuilder:validation:Optional
SinkSchema string `json:"sinkSchema,omitempty"`
// Config is a list of configuration items for the module
// +kubebuilder:validation:Optional
Config map[string]ConfigItem `json:"config,omitempty"`
}
Module defines a module within a package
func (*Module) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Module.
func (*Module) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Package ¶
type Package struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec PackageSpec `json:"spec,omitempty"`
Status PackageStatus `json:"status,omitempty"`
}
Package is the Schema for the packages API.
func (*Package) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Package.
func (*Package) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Package) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PackageList ¶
type PackageList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Package `json:"items"`
}
PackageList contains a list of Package.
func (*PackageList) DeepCopy ¶
func (in *PackageList) DeepCopy() *PackageList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageList.
func (*PackageList) DeepCopyInto ¶
func (in *PackageList) DeepCopyInto(out *PackageList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PackageList) DeepCopyObject ¶
func (in *PackageList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PackageRef ¶
type PackageRef struct {
// Name of the Package resource
// +kubebuilder:validation:Required
Name string `json:"name"`
// Namespace of the Package resource
// +kubebuilder:validation:Optional
Namespace string `json:"namespace,omitempty"`
}
PackageRef defines a reference to a Package resource +kubebuilder:object:generate=true +kubebuilder:validation:Optional
func (*PackageRef) DeepCopy ¶
func (in *PackageRef) DeepCopy() *PackageRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageRef.
func (*PackageRef) DeepCopyInto ¶
func (in *PackageRef) DeepCopyInto(out *PackageRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackageSpec ¶
type PackageSpec struct {
// DisplayName is the human-readable name of the package
// +kubebuilder:validation:Optional
DisplayName string `json:"displayName,omitempty"`
// Logo is the URL or base64 encoded image for the package logo
// +kubebuilder:validation:Optional
Logo string `json:"logo,omitempty"`
// Description provides additional information about the package
// +kubebuilder:validation:Optional
Description string `json:"description,omitempty"`
// FunctionType contains function type configuration
FunctionType FunctionType `json:"functionType"`
// Modules is a map of module names to their configurations
Modules map[string]Module `json:"modules"`
}
PackageSpec defines the desired state of Package
func (*PackageSpec) DeepCopy ¶
func (in *PackageSpec) DeepCopy() *PackageSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageSpec.
func (*PackageSpec) DeepCopyInto ¶
func (in *PackageSpec) DeepCopyInto(out *PackageSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackageStatus ¶
type PackageStatus struct {
}
PackageStatus defines the observed state of Package.
func (*PackageStatus) DeepCopy ¶
func (in *PackageStatus) DeepCopy() *PackageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageStatus.
func (*PackageStatus) DeepCopyInto ¶
func (in *PackageStatus) DeepCopyInto(out *PackageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PulsarSinkSpec ¶
type PulsarSinkSpec struct {
// Topic name
// +kubebuilder:validation:Required
Topic string `json:"topic"`
}
PulsarSinkSpec defines the Pulsar sink details +kubebuilder:object:generate=true +kubebuilder:validation:Optional
func (*PulsarSinkSpec) DeepCopy ¶
func (in *PulsarSinkSpec) DeepCopy() *PulsarSinkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PulsarSinkSpec.
func (*PulsarSinkSpec) DeepCopyInto ¶
func (in *PulsarSinkSpec) DeepCopyInto(out *PulsarSinkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PulsarSourceSpec ¶
type PulsarSourceSpec struct {
// Topic name
// +kubebuilder:validation:Required
Topic string `json:"topic"`
}
PulsarSourceSpec defines the Pulsar source details +kubebuilder:object:generate=true +kubebuilder:validation:Optional
func (*PulsarSourceSpec) DeepCopy ¶
func (in *PulsarSourceSpec) DeepCopy() *PulsarSourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PulsarSourceSpec.
func (*PulsarSourceSpec) DeepCopyInto ¶
func (in *PulsarSourceSpec) DeepCopyInto(out *PulsarSourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SinkSpec ¶
type SinkSpec struct {
// Pulsar sink specification
// +kubebuilder:validation:Optional
Pulsar *PulsarSinkSpec `json:"pulsar,omitempty"`
}
SinkSpec defines a sink specification +kubebuilder:object:generate=true +kubebuilder:validation:Optional
func (*SinkSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SinkSpec.
func (*SinkSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SourceSpec ¶
type SourceSpec struct {
// Pulsar source specification
// +kubebuilder:validation:Optional
Pulsar *PulsarSourceSpec `json:"pulsar,omitempty"`
}
SourceSpec defines a source or sink specification +kubebuilder:object:generate=true +kubebuilder:validation:Optional
func (*SourceSpec) DeepCopy ¶
func (in *SourceSpec) DeepCopy() *SourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceSpec.
func (*SourceSpec) DeepCopyInto ¶
func (in *SourceSpec) DeepCopyInto(out *SourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.