v1alpha1

package
v0.0.0-...-99f3f31 Latest Latest
Warning

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

Go to latest
Published: Jun 8, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

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

Index

Constants

View Source
const (
	LumigoResourceFinalizer = "operator.lumigo.io/lumigo-finalizer"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "operator.lumigo.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

func RecordAddedInstrumentationEvent

func RecordAddedInstrumentationEvent(eventRecorder record.EventRecorder, resource runtime.Object, trigger string)

func RecordCannotAddInstrumentationEvent

func RecordCannotAddInstrumentationEvent(eventRecorder record.EventRecorder, resource runtime.Object, trigger string, err error)

func RecordCannotRemoveInstrumentationEvent

func RecordCannotRemoveInstrumentationEvent(eventRecorder record.EventRecorder, resource runtime.Object, trigger string, err error)

func RecordCannotUpdateInstrumentationEvent

func RecordCannotUpdateInstrumentationEvent(eventRecorder record.EventRecorder, resource runtime.Object, trigger string, err error)

func RecordRemovedInstrumentationEvent

func RecordRemovedInstrumentationEvent(eventRecorder record.EventRecorder, resource runtime.Object, trigger string)

func RecordUpdatedInstrumentationEvent

func RecordUpdatedInstrumentationEvent(eventRecorder record.EventRecorder, resource runtime.Object, trigger string)

Types

type Credentials

type Credentials struct {
	// Reference to a Kubernetes secret that contains the credentials
	// for Lumigo. The secret must be in the same namespace as the
	// LumigoSpec referencing it.
	SecretRef KubernetesSecretRef `json:"secretRef,omitempty"`
}

func (*Credentials) DeepCopy

func (in *Credentials) DeepCopy() *Credentials

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

func (*Credentials) DeepCopyInto

func (in *Credentials) DeepCopyInto(out *Credentials)

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

type InfrastructureSpec

type InfrastructureSpec struct {
	// Whether Kubernetes infrastructrure collection should be active.
	// If unspecified, defaults to `true`
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled"` // Using a pointer to support cases where the value is not set (and it counts as enabled)

	// How to collect Kubernetes events and send them to Lumigo.
	// +kubebuilder:validation:Optional
	KubeEvents KubeEventsSpec `json:"kubeEvents,omitempty"`
}

func (*InfrastructureSpec) DeepCopy

func (in *InfrastructureSpec) DeepCopy() *InfrastructureSpec

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

func (*InfrastructureSpec) DeepCopyInto

func (in *InfrastructureSpec) DeepCopyInto(out *InfrastructureSpec)

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

type InjectionSpec

type InjectionSpec struct {
	// Whether Daemonsets, Deployments, ReplicaSets, StatefulSets, CronJobs and Jobs
	// that are created or updated after the creation of the Lumigo resource be injected.
	// If unspecified, defaults to `true`
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled"` // Using a pointer to support cases where the value is not set (and it counts as enabled)

	// Whether Daemonsets, Deployments, ReplicaSets, StatefulSets, CronJobs and Jobs
	// that already exist when the Lumigo resource is created, will be updated with
	// injection.
	// If unspecified, defaults to `true`. It requires `Enabled` to be set to `true`.
	// +kubebuilder:validation:Optional
	InjectLumigoIntoExistingResourcesOnCreation *bool `json:"injectLumigoIntoExistingResourcesOnCreation,omitempty"`

	// Whether Daemonsets, Deployments, ReplicaSets, StatefulSets, CronJobs and Jobs
	// that are injected with Lumigo will be updated to remove the injection when the
	// Lumigo resource is deleted.
	// If unspecified, defaults to `true`. It requires `Enabled` to be set to `true`.
	// +kubebuilder:validation:Optional
	RemoveLumigoFromResourcesOnDeletion *bool `json:"removeLumigoFromResourcesOnDeletion,omitempty"`
}

func (*InjectionSpec) DeepCopy

func (in *InjectionSpec) DeepCopy() *InjectionSpec

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

func (*InjectionSpec) DeepCopyInto

func (in *InjectionSpec) DeepCopyInto(out *InjectionSpec)

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

type KubeEventsSpec

type KubeEventsSpec struct {
	// Whether Kubernetes events should be collected and sent to Lumigo.
	// If unspecified, defaults to `true`
	// +kubebuilder:validation:Optional
	Enabled *bool `json:"enabled"` // Using a pointer to support cases where the value is not set (and it counts as enabled)
}

func (*KubeEventsSpec) DeepCopy

func (in *KubeEventsSpec) DeepCopy() *KubeEventsSpec

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

func (*KubeEventsSpec) DeepCopyInto

func (in *KubeEventsSpec) DeepCopyInto(out *KubeEventsSpec)

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

type KubernetesSecretRef

type KubernetesSecretRef struct {
	// Name of a Kubernetes secret.
	Name string `json:"name"`
	// Key of the Kubernetes secret that contains the credential data.
	Key string `json:"key,omitempty"`
}

func (*KubernetesSecretRef) DeepCopy

func (in *KubernetesSecretRef) DeepCopy() *KubernetesSecretRef

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

func (*KubernetesSecretRef) DeepCopyInto

func (in *KubernetesSecretRef) DeepCopyInto(out *KubernetesSecretRef)

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

type Lumigo

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

	Spec   LumigoSpec   `json:"spec,omitempty"`
	Status LumigoStatus `json:"status,omitempty"`
}

Lumigo is the Schema for the lumigoes API +kubebuilder:resource:scope=Namespaced +kubebuilder:object:root=true +kubebuilder:subresource:status

func (*Lumigo) DeepCopy

func (in *Lumigo) DeepCopy() *Lumigo

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

func (*Lumigo) DeepCopyInto

func (in *Lumigo) DeepCopyInto(out *Lumigo)

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

func (*Lumigo) DeepCopyObject

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

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

func (*Lumigo) SetupWebhookWithManager

func (r *Lumigo) SetupWebhookWithManager(mgr ctrl.Manager) error

type LumigoCondition

type LumigoCondition struct {
	Type               LumigoConditionType    `json:"type"`
	Status             corev1.ConditionStatus `json:"status"`
	LastUpdateTime     metav1.Time            `json:"lastUpdateTime"`
	LastTransitionTime metav1.Time            `json:"lastTransitionTime"`
	Message            string                 `json:"message"`
}

func (*LumigoCondition) DeepCopy

func (in *LumigoCondition) DeepCopy() *LumigoCondition

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

func (*LumigoCondition) DeepCopyInto

func (in *LumigoCondition) DeepCopyInto(out *LumigoCondition)

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

type LumigoConditionType

type LumigoConditionType string
const (
	LumigoConditionTypeActive LumigoConditionType = "Active"
	LumigoConditionTypeError  LumigoConditionType = "Error"
)

type LumigoEventReason

type LumigoEventReason string
const (
	LumigoEventReasonAddedInstrumentation        LumigoEventReason = "LumigoAddedInstrumentation"
	LumigoEventReasonRemovedInstrumentation      LumigoEventReason = "LumigoRemovedInstrumentation"
	LumigoEventReasonUpdatedInstrumentation      LumigoEventReason = "LumigoUpdatedInstrumentation"
	LumigoEventReasonCannotAddInstrumentation    LumigoEventReason = "LumigoCannotAddInstrumentation"
	LumigoEventReasonCannotRemoveInstrumentation LumigoEventReason = "LumigoCannotRemoveInstrumentation"
	LumigoEventReasonCannotUpdateInstrumentation LumigoEventReason = "LumigoCannotUpdateInstrumentation"
)

type LumigoList

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

LumigoList contains a list of Lumigo +kubebuilder:object:root=true

func (*LumigoList) DeepCopy

func (in *LumigoList) DeepCopy() *LumigoList

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

func (*LumigoList) DeepCopyInto

func (in *LumigoList) DeepCopyInto(out *LumigoList)

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

func (*LumigoList) DeepCopyObject

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

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

type LumigoSpec

type LumigoSpec struct {
	// The Lumigo token to be used to authenticate against Lumigo.
	// For info on how to retrieve your Lumigo token, refer to:
	// https://docs.lumigo.io/docs/lumigo-tokens
	LumigoToken    Credentials        `json:"lumigoToken,omitempty"`
	Tracing        TracingSpec        `json:"tracing,omitempty"`
	Infrastructure InfrastructureSpec `json:"infrastructure,omitempty"`
}

LumigoSpec defines the desired state of Lumigo

func (*LumigoSpec) DeepCopy

func (in *LumigoSpec) DeepCopy() *LumigoSpec

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

func (*LumigoSpec) DeepCopyInto

func (in *LumigoSpec) DeepCopyInto(out *LumigoSpec)

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

type LumigoStatus

type LumigoStatus struct {
	// The status of single Lumigo resources
	Conditions []LumigoCondition `json:"conditions"`

	// List of resources instrumented by this Lumigo instance
	InstrumentedResources []corev1.ObjectReference `json:"instrumentedResources"`
}

LumigoStatus defines the observed state of Lumigo

func (*LumigoStatus) DeepCopy

func (in *LumigoStatus) DeepCopy() *LumigoStatus

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

func (*LumigoStatus) DeepCopyInto

func (in *LumigoStatus) DeepCopyInto(out *LumigoStatus)

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

type TracingSpec

type TracingSpec struct {
	Injection InjectionSpec `json:"injection"`
}

TracingSpec specified how distributed tracing (for example: tracer injection) should be set up by the operator

func (*TracingSpec) DeepCopy

func (in *TracingSpec) DeepCopy() *TracingSpec

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

func (*TracingSpec) DeepCopyInto

func (in *TracingSpec) DeepCopyInto(out *TracingSpec)

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