Documentation ¶
Overview ¶
+k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/lwolf/kubereplay/pkg/apis/kubereplay +k8s:defaulter-gen=TypeMeta +groupName=kubereplay.lwolf.org
Index ¶
- Variables
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type ElasticsearchSilo
- type FileSilo
- type GoreplayImage
- type Harvester
- type HarvesterList
- type HarvesterSpec
- type HarvesterStatus
- type HttpSilo
- type KafkaSilo
- type Refinery
- type RefineryList
- type RefinerySpec
- type RefineryStatus
- type RefineryStorage
- type StdoutSilo
- type TcpSilo
Constants ¶
This section is empty.
Variables ¶
var ( SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) AddToScheme = SchemeBuilder.AddToScheme )
var ( // Define CRDs for resources HarvesterCRD = v1beta1.CustomResourceDefinition{ ObjectMeta: metav1.ObjectMeta{ Name: "harvesters.kubereplay.lwolf.org", }, Spec: v1beta1.CustomResourceDefinitionSpec{ Group: "kubereplay.lwolf.org", Version: "v1alpha1", Names: v1beta1.CustomResourceDefinitionNames{ Kind: "Harvester", Plural: "harvesters", }, Scope: "Namespaced", Validation: &v1beta1.CustomResourceValidation{ OpenAPIV3Schema: &v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "apiVersion": v1beta1.JSONSchemaProps{ Type: "string", }, "kind": v1beta1.JSONSchemaProps{ Type: "string", }, "metadata": v1beta1.JSONSchemaProps{ Type: "object", }, "spec": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "refinery": v1beta1.JSONSchemaProps{ Type: "string", }, "segment": v1beta1.JSONSchemaProps{ Type: "integer", Format: "int32", }, "selector": v1beta1.JSONSchemaProps{ Type: "object", }, }, }, "status": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "segment": v1beta1.JSONSchemaProps{ Type: "integer", Format: "int32", }, }, }, }, }, }, }, } // Define CRDs for resources RefineryCRD = v1beta1.CustomResourceDefinition{ ObjectMeta: metav1.ObjectMeta{ Name: "refineries.kubereplay.lwolf.org", }, Spec: v1beta1.CustomResourceDefinitionSpec{ Group: "kubereplay.lwolf.org", Version: "v1alpha1", Names: v1beta1.CustomResourceDefinitionNames{ Kind: "Refinery", Plural: "refineries", }, Scope: "Namespaced", Validation: &v1beta1.CustomResourceValidation{ OpenAPIV3Schema: &v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "apiVersion": v1beta1.JSONSchemaProps{ Type: "string", }, "kind": v1beta1.JSONSchemaProps{ Type: "string", }, "metadata": v1beta1.JSONSchemaProps{ Type: "object", }, "spec": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "output": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "elasticsearch": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "enabled": v1beta1.JSONSchemaProps{ Type: "boolean", }, "uri": v1beta1.JSONSchemaProps{ Type: "string", }, }, }, "file": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "append": v1beta1.JSONSchemaProps{ Type: "boolean", }, "enabled": v1beta1.JSONSchemaProps{ Type: "boolean", }, "filelimit": v1beta1.JSONSchemaProps{ Type: "string", }, "filename": v1beta1.JSONSchemaProps{ Type: "string", }, "flushinterval": v1beta1.JSONSchemaProps{ Type: "string", }, "queuesize": v1beta1.JSONSchemaProps{ Type: "integer", Format: "int32", }, }, }, "http": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "debug": v1beta1.JSONSchemaProps{ Type: "boolean", }, "enabled": v1beta1.JSONSchemaProps{ Type: "boolean", }, "uri": v1beta1.JSONSchemaProps{ Type: "string", }, }, }, "kafka": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "enabled": v1beta1.JSONSchemaProps{ Type: "boolean", }, "json": v1beta1.JSONSchemaProps{ Type: "boolean", }, "topic": v1beta1.JSONSchemaProps{ Type: "string", }, "uri": v1beta1.JSONSchemaProps{ Type: "string", }, }, }, "stdout": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "enabled": v1beta1.JSONSchemaProps{ Type: "boolean", }, }, }, "tcp": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "enabled": v1beta1.JSONSchemaProps{ Type: "boolean", }, "uri": v1beta1.JSONSchemaProps{ Type: "string", }, }, }, }, }, "timeout": v1beta1.JSONSchemaProps{ Type: "string", }, }, }, "status": v1beta1.JSONSchemaProps{ Type: "object", Properties: map[string]v1beta1.JSONSchemaProps{ "deployed": v1beta1.JSONSchemaProps{ Type: "boolean", }, }, }, }, }, }, }, } )
var SchemeGroupVersion = schema.GroupVersion{Group: "kubereplay.lwolf.org", Version: "v1alpha1"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type ElasticsearchSilo ¶
type ElasticsearchSilo struct { Enabled bool `json:"enabled,omitempty"` Uri string `json:"uri,omitempty"` }
func (*ElasticsearchSilo) DeepCopy ¶
func (in *ElasticsearchSilo) DeepCopy() *ElasticsearchSilo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchSilo.
func (*ElasticsearchSilo) DeepCopyInto ¶
func (in *ElasticsearchSilo) DeepCopyInto(out *ElasticsearchSilo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FileSilo ¶
type FileSilo struct { Enabled bool `json:"enabled,omitempty"` Filename string `json:"filename,omitempty"` Append bool `json:"append,omitempty"` FlushInterval string `json:"flush_interval,omitempty"` QueueSize int32 `json:"queuesize,omitempty"` FileLimit string `json:"filelimit,omitempty"` }
func (*FileSilo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FileSilo.
func (*FileSilo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GoreplayImage ¶
type GoreplayImage struct { Image string `json:"image,omitempty"` ImagePullPolicy v1.PullPolicy `json:"image_pull_policy,omitempty"` ImagePullSecrets []v1.LocalObjectReference `json:"image_pull_secrets,omitempty"` }
type Harvester ¶
type Harvester struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec HarvesterSpec `json:"spec,omitempty"` Status HarvesterStatus `json:"status,omitempty"` }
Harvester +k8s:openapi-gen=true +resource:path=harvesters
func (*Harvester) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Harvester.
func (*Harvester) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Harvester) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HarvesterList ¶
type HarvesterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Harvester `json:"items"` }
func (*HarvesterList) DeepCopy ¶
func (in *HarvesterList) DeepCopy() *HarvesterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HarvesterList.
func (*HarvesterList) DeepCopyInto ¶
func (in *HarvesterList) DeepCopyInto(out *HarvesterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*HarvesterList) DeepCopyObject ¶
func (in *HarvesterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type HarvesterSpec ¶
type HarvesterSpec struct { Selector map[string]string `json:"selector,omitempty"` AppPort uint32 `json:"app_port,omitempty"` Refinery string `json:"refinery,omitempty"` SegmentSize uint32 `json:"segment,omitempty"` Goreplay *GoreplayImage `json:"goreplay,omitempty"` Resources *v1.ResourceRequirements `json:"resources,omitempty"` }
HarvesterSpec defines the desired state of Harvester
func (*HarvesterSpec) DeepCopy ¶
func (in *HarvesterSpec) DeepCopy() *HarvesterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HarvesterSpec.
func (*HarvesterSpec) DeepCopyInto ¶
func (in *HarvesterSpec) DeepCopyInto(out *HarvesterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HarvesterStatus ¶
type HarvesterStatus struct {
SegmentSize uint32 `json:"segment,omitempty"`
}
HarvesterStatus defines the observed state of Harvester
func (*HarvesterStatus) DeepCopy ¶
func (in *HarvesterStatus) DeepCopy() *HarvesterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HarvesterStatus.
func (*HarvesterStatus) DeepCopyInto ¶
func (in *HarvesterStatus) DeepCopyInto(out *HarvesterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HttpSilo ¶
type HttpSilo struct { Enabled bool `json:"enabled,omitempty"` Uri string `json:"uri,omitempty"` Debug bool `json:"debug,omitempty"` ResponseBuffer int `json:"response_buffer,omitempty"` }
func (*HttpSilo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpSilo.
func (*HttpSilo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KafkaSilo ¶
type KafkaSilo struct { Enabled bool `json:"enabled,omitempty"` Uri string `json:"uri,omitempty"` Json bool `json:"json,omitempty"` Topic string `json:"topic,omitempty"` }
func (*KafkaSilo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaSilo.
func (*KafkaSilo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Refinery ¶
type Refinery struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec RefinerySpec `json:"spec,omitempty"` Status RefineryStatus `json:"status,omitempty"` }
Refinery +k8s:openapi-gen=true +resource:path=refineries
func (*Refinery) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Refinery.
func (*Refinery) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Refinery) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RefineryList ¶
type RefineryList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Refinery `json:"items"` }
func (*RefineryList) DeepCopy ¶
func (in *RefineryList) DeepCopy() *RefineryList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RefineryList.
func (*RefineryList) DeepCopyInto ¶
func (in *RefineryList) DeepCopyInto(out *RefineryList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RefineryList) DeepCopyObject ¶
func (in *RefineryList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RefinerySpec ¶
type RefinerySpec struct { Workers int32 `json:"workers,omitempty"` Timeout string `json:"timeout,omitempty"` Storage *RefineryStorage `json:"output,omitempty"` Goreplay *GoreplayImage `json:"goreplay,omitempty"` Resources *v1.ResourceRequirements `json:"resources,omitempty"` }
RefinerySpec defines the desired state of Refinery
func (*RefinerySpec) DeepCopy ¶
func (in *RefinerySpec) DeepCopy() *RefinerySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RefinerySpec.
func (*RefinerySpec) DeepCopyInto ¶
func (in *RefinerySpec) DeepCopyInto(out *RefinerySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RefineryStatus ¶
type RefineryStatus struct {
Deployed bool `json:"deployed,omitempty"`
}
RefineryStatus defines the observed state of Refinery
func (*RefineryStatus) DeepCopy ¶
func (in *RefineryStatus) DeepCopy() *RefineryStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RefineryStatus.
func (*RefineryStatus) DeepCopyInto ¶
func (in *RefineryStatus) DeepCopyInto(out *RefineryStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RefineryStorage ¶
type RefineryStorage struct { File *FileSilo `json:"file,omitempty"` Tcp *TcpSilo `json:"tcp,omitempty"` Stdout *StdoutSilo `json:"stdout,omitempty"` Http *HttpSilo `json:"http,omitempty"` Elasticsearch *ElasticsearchSilo `json:"elasticsearch,omitempty"` Kafka *KafkaSilo `json:"kafka,omitempty"` }
RefineryStatus defines various storages available for Refinery
func (*RefineryStorage) DeepCopy ¶
func (in *RefineryStorage) DeepCopy() *RefineryStorage
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RefineryStorage.
func (*RefineryStorage) DeepCopyInto ¶
func (in *RefineryStorage) DeepCopyInto(out *RefineryStorage)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StdoutSilo ¶
type StdoutSilo struct {
Enabled bool `json:"enabled,omitempty"`
}
func (*StdoutSilo) DeepCopy ¶
func (in *StdoutSilo) DeepCopy() *StdoutSilo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StdoutSilo.
func (*StdoutSilo) DeepCopyInto ¶
func (in *StdoutSilo) DeepCopyInto(out *StdoutSilo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.