v1alpha1

package
v0.14.2 Latest Latest
Warning

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

Go to latest
Published: Apr 21, 2022 License: Apache-2.0 Imports: 15 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the saas v1alpha1 API group +kubebuilder:object:generate=true +groupName=saas.3scale.net

Index

Constants

View Source
const (
	// Finalizer is the finalizer string for resoures in the saas group
	Finalizer string = "saas.3scale.net"
	// AnnotationsDomain is a common prefix for all "rollout triggering"
	// annotation keys
	AnnotationsDomain string = "saas.3scale.net"
)
View Source
const (
	Default systemSidekiqType = "default"
	Billing systemSidekiqType = "billing"
	Low     systemSidekiqType = "low"
)
View Source
const (
	// SentinelPort is the port where sentinel process listens
	SentinelPort uint32 = 26379
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "saas.3scale.net", 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
)
View Source
var (
	TwemproxyPodSyncLabelKey   string = fmt.Sprintf("%s/twemproxyconfig.sync", GroupVersion.Group)
	TwemproxySyncAnnotationKey string = fmt.Sprintf("%s/twemproxyconfig.configmap-hash", GroupVersion.Group)
)
View Source
var (
	RedisShardDefaultReplicas int32 = 3
)
View Source
var (
	SentinelDefaultQuorum int = 2
)

bitnami/redis-sentinel:4.0.11-debian-9-r110

Functions

This section is empty.

Types

type APISpec

type APISpec struct {
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
}

APISpec is the configuration for main Zync api component

func (*APISpec) DeepCopy

func (in *APISpec) DeepCopy() *APISpec

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

func (*APISpec) DeepCopyInto

func (in *APISpec) DeepCopyInto(out *APISpec)

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

func (*APISpec) Default

func (spec *APISpec) Default()

Default implements defaulting for the each main zync api component

type Apicast

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

	Spec   ApicastSpec   `json:"spec,omitempty"`
	Status ApicastStatus `json:"status,omitempty"`
}

Apicast is the Schema for the apicasts API

func (*Apicast) DeepCopy

func (in *Apicast) DeepCopy() *Apicast

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

func (*Apicast) DeepCopyInto

func (in *Apicast) DeepCopyInto(out *Apicast)

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

func (*Apicast) DeepCopyObject

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

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

func (*Apicast) Default

func (a *Apicast) Default()

Default implements defaulting for the Apicast resource

type ApicastConfig

type ApicastConfig struct {
	// Apicast configurations cache TTL
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ConfigurationCache int32 `json:"configurationCache"`
	// Endpoint to request proxy configurations to
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ThreescalePortalEndpoint string `json:"threescalePortalEndpoint"`
	// Openresty log level
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +kubebuilder:validation:Enum=debug;info;notice;warn;error;crit;alert;emerg
	// +optional
	LogLevel *string `json:"logLevel,omitempty"`
	// OpenID Connect integration log level
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +kubebuilder:validation:Enum=debug;info;notice;warn;error;crit;alert;emerg
	// +optional
	OIDCLogLevel *string `json:"oidcLogLevel,omitempty"`
}

ApicastConfig configures app behavior for Apicast

func (*ApicastConfig) DeepCopy

func (in *ApicastConfig) DeepCopy() *ApicastConfig

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

func (*ApicastConfig) DeepCopyInto

func (in *ApicastConfig) DeepCopyInto(out *ApicastConfig)

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

func (*ApicastConfig) Default

func (cfg *ApicastConfig) Default()

Default sets default values for any value not specifically set in the ApicastConfig struct

type ApicastEnvironmentSpec

type ApicastEnvironmentSpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Application specific configuration options for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Config ApicastConfig `json:"config"`
	// The external endpoint/s for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Endpoint Endpoint `json:"endpoint"`
	// Marin3r configures the Marin3r sidecars for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Marin3r *Marin3rSidecarSpec `json:"marin3r,omitempty"`
	// Configures the AWS load balancer for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LoadBalancer *LoadBalancerSpec `json:"loadBalancer,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
	// Canary defines spec changes for the canary Deployment. If
	// left unset the canary Deployment wil not be created.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Canary *Canary `json:"canary,omitempty"`
}

ApicastEnvironmentSpec is the configuration for an Apicast environment

func (*ApicastEnvironmentSpec) DeepCopy

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

func (*ApicastEnvironmentSpec) DeepCopyInto

func (in *ApicastEnvironmentSpec) DeepCopyInto(out *ApicastEnvironmentSpec)

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

func (*ApicastEnvironmentSpec) Default

func (spec *ApicastEnvironmentSpec) Default()

Default implements defaulting for the each apicast environment

type ApicastList

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

ApicastList contains a list of Apicast

func (*ApicastList) CountItems

func (al *ApicastList) CountItems() int

CountItems returns the item count in ApicastList.Items

func (*ApicastList) DeepCopy

func (in *ApicastList) DeepCopy() *ApicastList

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

func (*ApicastList) DeepCopyInto

func (in *ApicastList) DeepCopyInto(out *ApicastList)

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

func (*ApicastList) DeepCopyObject

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

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

func (*ApicastList) GetItem

func (al *ApicastList) GetItem(idx int) client.Object

GetItem returns a client.Objectfrom a ApicastList

type ApicastSpec

type ApicastSpec struct {
	// Configures the staging Apicast environment
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Staging ApicastEnvironmentSpec `json:"staging"`
	// Configures the production Apicast environment
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Production ApicastEnvironmentSpec `json:"production"`
	// Configures the Grafana Dashboard for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	GrafanaDashboard *GrafanaDashboardSpec `json:"grafanaDashboard,omitempty"`
}

ApicastSpec defines the desired state of Apicast

func (*ApicastSpec) DeepCopy

func (in *ApicastSpec) DeepCopy() *ApicastSpec

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

func (*ApicastSpec) DeepCopyInto

func (in *ApicastSpec) DeepCopyInto(out *ApicastSpec)

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

func (*ApicastSpec) Default added in v0.12.0

func (spec *ApicastSpec) Default()

Default implements defaulting for ApicastSpec

func (*ApicastSpec) ResolveCanarySpec added in v0.14.0

func (spec *ApicastSpec) ResolveCanarySpec(canary *Canary) (*ApicastSpec, error)

ResolveCanarySpec modifies the BackendSpec given the provided canary configuration

type ApicastStatus

type ApicastStatus struct{}

ApicastStatus defines the observed state of Apicast

func (*ApicastStatus) DeepCopy

func (in *ApicastStatus) DeepCopy() *ApicastStatus

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

func (*ApicastStatus) DeepCopyInto

func (in *ApicastStatus) DeepCopyInto(out *ApicastStatus)

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

type AssetsSpec

type AssetsSpec struct {
	// AWS S3 bucket name
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Bucket string `json:"bucket"`
	// AWS S3 region
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Region string `json:"region"`
	// AWS access key
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	AccessKey SecretReference `json:"accessKey"`
	// AWS secret access key
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	SecretKey SecretReference `json:"secretKey"`
	// Assets host (CDN)
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Host *string `json:"host,omitempty"`
}

AssetsSpec has configuration to access assets in AWS s3

func (*AssetsSpec) DeepCopy

func (in *AssetsSpec) DeepCopy() *AssetsSpec

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

func (*AssetsSpec) DeepCopyInto

func (in *AssetsSpec) DeepCopyInto(out *AssetsSpec)

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

type AutoSSL

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

	Spec   AutoSSLSpec   `json:"spec,omitempty"`
	Status AutoSSLStatus `json:"status,omitempty"`
}

AutoSSL is the Schema for the autossls API

func (*AutoSSL) DeepCopy

func (in *AutoSSL) DeepCopy() *AutoSSL

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

func (*AutoSSL) DeepCopyInto

func (in *AutoSSL) DeepCopyInto(out *AutoSSL)

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

func (*AutoSSL) DeepCopyObject

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

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

func (*AutoSSL) Default

func (a *AutoSSL) Default()

Default implements defaulting for the AutoSSL resource

type AutoSSLConfig

type AutoSSLConfig struct {
	// Sets the nginx log level
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LogLevel *string `json:"logLevel,omitempty"`
	// Enables/disables the Let's Encrypt staging ACME endpoint
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ACMEStaging *bool `json:"acmeStaging,omitempty"`
	// Defines an email address for Let's Encrypt notifications
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ContactEmail string `json:"contactEmail"`
	// The endpoint to proxy_pass requests to
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ProxyEndpoint string `json:"proxyEndpoint"`
	// The endpoint used to validate if certificate generation is allowed
	// for the domain
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	VerificationEndpoint string `json:"verificationEndpoint"`
	// List of domains that will bypass domain verification
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	DomainWhitelist []string `json:"domainWhitelist,omitempty"`
	// List of domains that will never get autogenerated certificates
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	DomainBlacklist []string `json:"domainBlacklist,omitempty"`
	// Host for the redis database to store certificates
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	RedisHost string `json:"redisHost"`
	// Port for the redis database to store certificates
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	RedisPort *int32 `json:"redisPort,omitempty"`
}

AutoSSLConfig defines configuration options for the component

func (*AutoSSLConfig) DeepCopy

func (in *AutoSSLConfig) DeepCopy() *AutoSSLConfig

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

func (*AutoSSLConfig) DeepCopyInto

func (in *AutoSSLConfig) DeepCopyInto(out *AutoSSLConfig)

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

func (*AutoSSLConfig) Default

func (cfg *AutoSSLConfig) Default()

Default sets default values for any value not specifically set in the AutoSSLConfig struct

type AutoSSLList

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

AutoSSLList contains a list of AutoSSL

func (*AutoSSLList) CountItems

func (al *AutoSSLList) CountItems() int

CountItems returns the item count in AutoSSLList.Items

func (*AutoSSLList) DeepCopy

func (in *AutoSSLList) DeepCopy() *AutoSSLList

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

func (*AutoSSLList) DeepCopyInto

func (in *AutoSSLList) DeepCopyInto(out *AutoSSLList)

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

func (*AutoSSLList) DeepCopyObject

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

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

func (*AutoSSLList) GetItem

func (al *AutoSSLList) GetItem(idx int) client.Object

GetItem returns a client.Objectfrom a AutoSSLList

type AutoSSLSpec

type AutoSSLSpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Configures the AWS load balancer for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LoadBalancer *LoadBalancerSpec `json:"loadBalancer,omitempty"`
	// Configures the Grafana Dashboard for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	GrafanaDashboard *GrafanaDashboardSpec `json:"grafanaDashboard,omitempty"`
	// Application specific configuration options for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Config AutoSSLConfig `json:"config"`
	// The external endpoint/s for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Endpoint Endpoint `json:"endpoint"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
	// Canary defines spec changes for the canary Deployment. If
	// left unset the canary Deployment wil not be created.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Canary *Canary `json:"canary,omitempty"`
}

AutoSSLSpec defines the desired state of AutoSSL

func (*AutoSSLSpec) DeepCopy

func (in *AutoSSLSpec) DeepCopy() *AutoSSLSpec

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

func (*AutoSSLSpec) DeepCopyInto

func (in *AutoSSLSpec) DeepCopyInto(out *AutoSSLSpec)

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

func (*AutoSSLSpec) Default added in v0.12.0

func (spec *AutoSSLSpec) Default()

Default implements defaulting for AutoSSLSpec

func (*AutoSSLSpec) ResolveCanarySpec added in v0.13.0

func (spec *AutoSSLSpec) ResolveCanarySpec(canary *Canary) (*AutoSSLSpec, error)

ResolveCanarySpec modifies the AutoSSLSpec given the provided canary configuration

type AutoSSLStatus

type AutoSSLStatus struct {
}

AutoSSLStatus defines the observed state of AutoSSL

func (*AutoSSLStatus) DeepCopy

func (in *AutoSSLStatus) DeepCopy() *AutoSSLStatus

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

func (*AutoSSLStatus) DeepCopyInto

func (in *AutoSSLStatus) DeepCopyInto(out *AutoSSLStatus)

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

type Backend

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

	Spec   BackendSpec   `json:"spec,omitempty"`
	Status BackendStatus `json:"status,omitempty"`
}

Backend is the Schema for the backends API

func (*Backend) DeepCopy

func (in *Backend) DeepCopy() *Backend

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

func (*Backend) DeepCopyInto

func (in *Backend) DeepCopyInto(out *Backend)

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

func (*Backend) DeepCopyObject

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

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

func (*Backend) Default

func (b *Backend) Default()

Defaults impletements defaulting for the Apicast resource

type BackendConfig

type BackendConfig struct {
	// Rack environment
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	RackEnv *string `json:"rackEnv,omitempty"`
	// Master service account ID in Porta
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MasterServiceID *int32 `json:"masterServiceID,omitempty"`
	// Redis Storage DSN
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	RedisStorageDSN string `json:"redisStorageDSN"`
	// Redis Queues DSN
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	RedisQueuesDSN string `json:"redisQueuesDSN"`
	// External Secret common configuration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ExternalSecret ExternalSecret `json:"externalSecret,omitempty"`
	// A reference to the secret holding the backend-system-events-hook URL
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	SystemEventsHookURL SecretReference `json:"systemEventsHookURL"`
	// A reference to the secret holding the backend-system-events-hook password
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	SystemEventsHookPassword SecretReference `json:"systemEventsHookPassword"`
	// A reference to the secret holding the backend-internal-api user
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	InternalAPIUser SecretReference `json:"internalAPIUser"`
	// A reference to the secret holding the backend-internal-api password
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	InternalAPIPassword SecretReference `json:"internalAPIPassword"`
	// A reference to the secret holding the backend-error-monitoring service
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ErrorMonitoringService *SecretReference `json:"errorMonitoringService,omitempty"`
	// A reference to the secret holding the backend-error-monitoring key
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ErrorMonitoringKey *SecretReference `json:"errorMonitoringKey,omitempty"`
}

BackendConfig configures app behavior for Backend

func (*BackendConfig) DeepCopy

func (in *BackendConfig) DeepCopy() *BackendConfig

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

func (*BackendConfig) DeepCopyInto

func (in *BackendConfig) DeepCopyInto(out *BackendConfig)

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

func (*BackendConfig) Default

func (cfg *BackendConfig) Default()

Default sets default values for any value not specifically set in the BackendConfig struct

type BackendList

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

BackendList contains a list of Backend

func (*BackendList) CountItems

func (bl *BackendList) CountItems() int

CountItems returns the item count in BackendList.Items

func (*BackendList) DeepCopy

func (in *BackendList) DeepCopy() *BackendList

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

func (*BackendList) DeepCopyInto

func (in *BackendList) DeepCopyInto(out *BackendList)

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

func (*BackendList) DeepCopyObject

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

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

func (*BackendList) GetItem

func (bl *BackendList) GetItem(idx int) client.Object

GetItem returns a client.Objectfrom a BackendList

type BackendSpec

type BackendSpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Application specific configuration options for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Config BackendConfig `json:"config"`
	// Configures the Grafana Dashboard for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	GrafanaDashboard *GrafanaDashboardSpec `json:"grafanaDashboard,omitempty"`
	// Configures the backend listener
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Listener ListenerSpec `json:"listener"`
	// Configures the backend worker
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Worker *WorkerSpec `json:"worker,omitempty"`
	// Configures the backend cron
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Cron *CronSpec `json:"cron,omitempty"`
	// Configures twemproxy
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Twemproxy *TwemproxySpec `json:"twemproxy,omitempty"`
}

BackendSpec defines the desired state of Backend

func (*BackendSpec) DeepCopy

func (in *BackendSpec) DeepCopy() *BackendSpec

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

func (*BackendSpec) DeepCopyInto

func (in *BackendSpec) DeepCopyInto(out *BackendSpec)

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

func (*BackendSpec) Default added in v0.12.0

func (spec *BackendSpec) Default()

Default implements defaulting for BackendSpec

func (*BackendSpec) ResolveCanarySpec added in v0.12.0

func (spec *BackendSpec) ResolveCanarySpec(canary *Canary) (*BackendSpec, error)

ResolveCanarySpec modifies the BackendSpec given the provided canary configuration

type BackendStatus

type BackendStatus struct{}

BackendStatus defines the observed state of Backend

func (*BackendStatus) DeepCopy

func (in *BackendStatus) DeepCopy() *BackendStatus

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

func (*BackendStatus) DeepCopyInto

func (in *BackendStatus) DeepCopyInto(out *BackendStatus)

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

type BugsnagSpec

type BugsnagSpec struct {
	// API key
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	APIKey SecretReference `json:"apiKey"`
}

BugsnagSpec has configuration for Bugsnag integration

func (*BugsnagSpec) DeepCopy

func (in *BugsnagSpec) DeepCopy() *BugsnagSpec

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

func (*BugsnagSpec) DeepCopyInto

func (in *BugsnagSpec) DeepCopyInto(out *BugsnagSpec)

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

func (*BugsnagSpec) Enabled

func (bs *BugsnagSpec) Enabled() bool

Enabled returns a boolean indication whether the Bugsnag integration is enabled or not

type CORSProxy

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

	Spec   CORSProxySpec   `json:"spec,omitempty"`
	Status CORSProxyStatus `json:"status,omitempty"`
}

CORSProxy is the Schema for the corsproxies API

func (*CORSProxy) DeepCopy

func (in *CORSProxy) DeepCopy() *CORSProxy

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

func (*CORSProxy) DeepCopyInto

func (in *CORSProxy) DeepCopyInto(out *CORSProxy)

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

func (*CORSProxy) DeepCopyObject

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

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

func (*CORSProxy) Default

func (c *CORSProxy) Default()

Default implements defaulting for the CORSProxy resource

type CORSProxyConfig

type CORSProxyConfig struct {
	// External Secret common configuration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ExternalSecret ExternalSecret `json:"externalSecret,omitempty"`
	// System database connection string
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	SystemDatabaseDSN SecretReference `json:"systemDatabaseDSN"`
}

CORSProxyConfig defines configuration options for the component

func (*CORSProxyConfig) DeepCopy

func (in *CORSProxyConfig) DeepCopy() *CORSProxyConfig

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

func (*CORSProxyConfig) DeepCopyInto

func (in *CORSProxyConfig) DeepCopyInto(out *CORSProxyConfig)

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

func (*CORSProxyConfig) Default

func (cfg *CORSProxyConfig) Default()

Default sets default values for any value not specifically set in the CORSProxyConfig struct

type CORSProxyList

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

CORSProxyList contains a list of CORSProxy

func (*CORSProxyList) CountItems

func (cpl *CORSProxyList) CountItems() int

CountItems returns the item count in CORSProxyList.Items

func (*CORSProxyList) DeepCopy

func (in *CORSProxyList) DeepCopy() *CORSProxyList

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

func (*CORSProxyList) DeepCopyInto

func (in *CORSProxyList) DeepCopyInto(out *CORSProxyList)

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

func (*CORSProxyList) DeepCopyObject

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

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

func (*CORSProxyList) GetItem

func (cpl *CORSProxyList) GetItem(idx int) client.Object

GetItem returns a client.Objectfrom a CORSProxyList

type CORSProxySpec

type CORSProxySpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Configures the Grafana Dashboard for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	GrafanaDashboard *GrafanaDashboardSpec `json:"grafanaDashboard,omitempty"`
	// Application specific configuration options for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Config CORSProxyConfig `json:"config"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
}

CORSProxySpec defines the desired state of CORSProxy

func (*CORSProxySpec) DeepCopy

func (in *CORSProxySpec) DeepCopy() *CORSProxySpec

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

func (*CORSProxySpec) DeepCopyInto

func (in *CORSProxySpec) DeepCopyInto(out *CORSProxySpec)

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

func (*CORSProxySpec) Default added in v0.12.0

func (spec *CORSProxySpec) Default()

Default implements defaulting for CORSProxySpec

type CORSProxyStatus

type CORSProxyStatus struct{}

CORSProxyStatus defines the observed state of CORSProxy

func (*CORSProxyStatus) DeepCopy

func (in *CORSProxyStatus) DeepCopy() *CORSProxyStatus

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

func (*CORSProxyStatus) DeepCopyInto

func (in *CORSProxyStatus) DeepCopyInto(out *CORSProxyStatus)

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

type Canary added in v0.12.0

type Canary struct {
	// SendTraffic controls if traffic is sent to the canary
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	SendTraffic bool `json:"sendTraffic"`
	// ImageName to use for the canary Deployment
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ImageName *string `json:"imageName,omitempty"`
	// ImageTag to use for the canary Deployment
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ImageTag *string `json:"imageTag,omitempty"`
	// Number of replicas for the canary Deployment
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Patches to apply for the canary Deployment. Patches are expected
	// to be JSON documents as an RFC 6902 patches.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// + optional
	Patches []string `json:"patches,omitempty"`
}

Canary allows the definition of a canary Deployment

func (*Canary) DeepCopy added in v0.12.0

func (in *Canary) DeepCopy() *Canary

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

func (*Canary) DeepCopyInto added in v0.12.0

func (in *Canary) DeepCopyInto(out *Canary)

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

func (*Canary) PatchSpec added in v0.12.0

func (c *Canary) PatchSpec(spec, canarySpec interface{}) error

PatchSpec returns a modified spec given the canary configuration

type CronSpec

type CronSpec struct {
	// Number of replicas for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
}

CronSpec is the configuration for Backend Cron

func (*CronSpec) DeepCopy

func (in *CronSpec) DeepCopy() *CronSpec

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

func (*CronSpec) DeepCopyInto

func (in *CronSpec) DeepCopyInto(out *CronSpec)

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

func (*CronSpec) Default

func (spec *CronSpec) Default()

Default implements defaulting for the each backend cron

type EchoAPI

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

	Spec   EchoAPISpec   `json:"spec,omitempty"`
	Status EchoAPIStatus `json:"status,omitempty"`
}

EchoAPI is the Schema for the echoapis API

func (*EchoAPI) DeepCopy

func (in *EchoAPI) DeepCopy() *EchoAPI

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

func (*EchoAPI) DeepCopyInto

func (in *EchoAPI) DeepCopyInto(out *EchoAPI)

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

func (*EchoAPI) DeepCopyObject

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

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

func (*EchoAPI) Default

func (e *EchoAPI) Default()

Default implements defaulting for the EchoAPI resource

type EchoAPIList

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

EchoAPIList contains a list of echoapi

func (*EchoAPIList) CountItems

func (bl *EchoAPIList) CountItems() int

CountItems returns the item count in EchoAPIList.Items

func (*EchoAPIList) DeepCopy

func (in *EchoAPIList) DeepCopy() *EchoAPIList

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

func (*EchoAPIList) DeepCopyInto

func (in *EchoAPIList) DeepCopyInto(out *EchoAPIList)

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

func (*EchoAPIList) DeepCopyObject

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

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

func (*EchoAPIList) GetItem

func (bl *EchoAPIList) GetItem(idx int) client.Object

GetItem returns a client.Objectfrom a EchoAPIList

type EchoAPISpec

type EchoAPISpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Configures the Grafana Dashboard for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Marin3r configures the Marin3r sidecars for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Marin3r *Marin3rSidecarSpec `json:"marin3r,omitempty"`
	// Configures the AWS Network load balancer for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LoadBalancer *NLBLoadBalancerSpec `json:"loadBalancer,omitempty"`
	// The external endpoint/s for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Endpoint Endpoint `json:"endpoint"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
}

EchoAPISpec defines the desired state of echoapi

func (*EchoAPISpec) DeepCopy

func (in *EchoAPISpec) DeepCopy() *EchoAPISpec

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

func (*EchoAPISpec) DeepCopyInto

func (in *EchoAPISpec) DeepCopyInto(out *EchoAPISpec)

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

func (*EchoAPISpec) Default added in v0.12.0

func (spec *EchoAPISpec) Default()

Default implements defaulting for EchoAPI

type EchoAPIStatus

type EchoAPIStatus struct{}

EchoAPIStatus defines the observed state of EchoAPI

func (*EchoAPIStatus) DeepCopy

func (in *EchoAPIStatus) DeepCopy() *EchoAPIStatus

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

func (*EchoAPIStatus) DeepCopyInto

func (in *EchoAPIStatus) DeepCopyInto(out *EchoAPIStatus)

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

type Endpoint

type Endpoint struct {
	// The list of dns records that will point to the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	DNS []string `json:"dns"`
}

Endpoint sets the external endpoint for the component

func (*Endpoint) DeepCopy

func (in *Endpoint) DeepCopy() *Endpoint

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

func (*Endpoint) DeepCopyInto

func (in *Endpoint) DeepCopyInto(out *Endpoint)

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

type ExternalSecret added in v0.14.0

type ExternalSecret struct {
	// SecretStoreRef defines which SecretStore to use when fetching the secret data
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SecretStoreRef *ExternalSecretSecretStoreReferenceSpec `json:"secretStoreRef,omitempty"`
	// RefreshInterval is the amount of time before the values reading again from the SecretStore provider (duration)
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	RefreshInterval *metav1.Duration `json:"refreshInterval,omitempty"`
}

ExternalSecret is a reference to the ExternalSecret common configuration

func (*ExternalSecret) DeepCopy added in v0.14.0

func (in *ExternalSecret) DeepCopy() *ExternalSecret

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

func (*ExternalSecret) DeepCopyInto added in v0.14.0

func (in *ExternalSecret) DeepCopyInto(out *ExternalSecret)

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

func (*ExternalSecret) Default added in v0.14.0

func (spec *ExternalSecret) Default()

type ExternalSecretSecretStoreReferenceSpec added in v0.14.0

type ExternalSecretSecretStoreReferenceSpec struct {
	// The Vault secret store reference name
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Name *string `json:"name,omitempty"`
	// The Vault secret store reference kind
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Kind *string `json:"kind,omitempty"`
}

ExternalSecretSecretStoreReferenceSpec is a reference to a secret store

func InitializeExternalSecretSecretStoreReferenceSpec added in v0.14.0

func InitializeExternalSecretSecretStoreReferenceSpec(spec *ExternalSecretSecretStoreReferenceSpec, def defaultExternalSecretSecretStoreReferenceSpec) *ExternalSecretSecretStoreReferenceSpec

InitializeExternalSecretSecretStoreReferenceSpec initializes a ExternalSecretSecretStoreReferenceSpec struct

func (*ExternalSecretSecretStoreReferenceSpec) DeepCopy added in v0.14.0

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

func (*ExternalSecretSecretStoreReferenceSpec) DeepCopyInto added in v0.14.0

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

func (*ExternalSecretSecretStoreReferenceSpec) Default added in v0.14.0

func (spec *ExternalSecretSecretStoreReferenceSpec) Default(def defaultExternalSecretSecretStoreReferenceSpec)

Default sets default values for any value not specifically set in the ExternalSecretSecretStoreReferenceSpec struct

type GithubSpec

type GithubSpec struct {
	// Client ID
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ClientID SecretReference `json:"clientID"`
	// Client secret
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ClientSecret SecretReference `json:"clientSecret"`
}

GithubSpec has configuration for Github integration

func (*GithubSpec) DeepCopy

func (in *GithubSpec) DeepCopy() *GithubSpec

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

func (*GithubSpec) DeepCopyInto

func (in *GithubSpec) DeepCopyInto(out *GithubSpec)

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

type GrafanaDashboardSpec

type GrafanaDashboardSpec struct {
	// Label key used by grafana-operator for dashboard discovery
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SelectorKey *string `json:"selectorKey,omitempty"`
	// Label value used by grafana-operator for dashboard discovery
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SelectorValue *string `json:"selectorValue,omitempty"`
}

GrafanaDashboardSpec configures the Grafana Dashboard for the component

func InitializeGrafanaDashboardSpec

func InitializeGrafanaDashboardSpec(spec *GrafanaDashboardSpec, def defaultGrafanaDashboardSpec) *GrafanaDashboardSpec

InitializeGrafanaDashboardSpec initializes a GrafanaDashboardSpec struct

func (*GrafanaDashboardSpec) DeepCopy

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

func (*GrafanaDashboardSpec) DeepCopyInto

func (in *GrafanaDashboardSpec) DeepCopyInto(out *GrafanaDashboardSpec)

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

func (*GrafanaDashboardSpec) Default

func (spec *GrafanaDashboardSpec) Default(def defaultGrafanaDashboardSpec)

Default sets default values for any value not specifically set in the GrafanaDashboardSpec struct

func (*GrafanaDashboardSpec) IsDeactivated

func (spec *GrafanaDashboardSpec) IsDeactivated() bool

IsDeactivated true if the field is set with the deactivated value (empty struct)

type HorizontalPodAutoscalerSpec

type HorizontalPodAutoscalerSpec struct {
	// Lower limit for the number of replicas to which the autoscaler
	// can scale down.  It defaults to 1 pod.  minReplicas is allowed to be 0 if the
	// alpha feature gate HPAScaleToZero is enabled and at least one Object or External
	// metric is configured.  Scaling is active as long as at least one metric value is
	// available.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MinReplicas *int32 `json:"minReplicas,omitempty"`
	// Upper limit for the number of replicas to which the autoscaler can scale up.
	// It cannot be less that minReplicas.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MaxReplicas *int32 `json:"maxReplicas,omitempty"`
	// Target resource used to autoscale (cpu/memory)
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +kubebuilder:validation:Enum=cpu;memory
	// +optional
	ResourceName *string `json:"resourceName,omitempty"`
	// A percentage indicating the target resource consumption used to autoscale
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ResourceUtilization *int32 `json:"resourceUtilization,omitempty"`
}

HorizontalPodAutoscalerSpec defines the HPA for the component

func InitializeHorizontalPodAutoscalerSpec

func InitializeHorizontalPodAutoscalerSpec(spec *HorizontalPodAutoscalerSpec, def defaultHorizontalPodAutoscalerSpec) *HorizontalPodAutoscalerSpec

InitializeHorizontalPodAutoscalerSpec initializes a HorizontalPodAutoscalerSpec struct

func (*HorizontalPodAutoscalerSpec) DeepCopy

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

func (*HorizontalPodAutoscalerSpec) DeepCopyInto

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

func (*HorizontalPodAutoscalerSpec) Default

func (spec *HorizontalPodAutoscalerSpec) Default(def defaultHorizontalPodAutoscalerSpec)

Default sets default values for any value not specifically set in the PodDisruptionBudgetSpec struct

func (*HorizontalPodAutoscalerSpec) IsDeactivated

func (spec *HorizontalPodAutoscalerSpec) IsDeactivated() bool

IsDeactivated true if the field is set with the deactivated value (empty struct)

type ImageSpec

type ImageSpec struct {
	// Docker repository of the image
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Name *string `json:"name,omitempty"`
	// Image tag
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Tag *string `json:"tag,omitempty"`
	// Name of the Secret that holds quay.io credentials to access
	// the image repository
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PullSecretName *string `json:"pullSecretName,omitempty"`
	// Pull policy for the image
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PullPolicy *corev1.PullPolicy `json:"pullPolicy,omitempty"`
}

ImageSpec defines the image for the component

func InitializeImageSpec

func InitializeImageSpec(spec *ImageSpec, def defaultImageSpec) *ImageSpec

InitializeImageSpec initializes a ImageSpec struct

func (*ImageSpec) DeepCopy

func (in *ImageSpec) DeepCopy() *ImageSpec

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

func (*ImageSpec) DeepCopyInto

func (in *ImageSpec) DeepCopyInto(out *ImageSpec)

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

func (*ImageSpec) Default

func (spec *ImageSpec) Default(def defaultImageSpec)

Default sets default values for any value not specifically set in the ImageSpec struct

func (*ImageSpec) IsDeactivated

func (spec *ImageSpec) IsDeactivated() bool

IsDeactivated true if the field is set with the deactivated value (empty struct)

type ListenerConfig

type ListenerConfig struct {
	// Listener log format
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +kubebuilder:validation:Enum=test;json
	// +optional
	LogFormat *string `json:"logFormat,omitempty"`
	// Enable (true) or disable (false) listener redis async mode
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	RedisAsync *bool `json:"redisAsync,omitempty"`
	// Number of worker processes per listener pod
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ListenerWorkers *int32 `json:"listenerWorkers,omitempty"`
	// Enable (true) or disable (false) Legacy Referrer Filters
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LegacyReferrerFilters *bool `json:"legacyReferrerFilters,omitempty"`
}

ListenerConfig configures app behavior for Backend Listener

func (*ListenerConfig) DeepCopy

func (in *ListenerConfig) DeepCopy() *ListenerConfig

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

func (*ListenerConfig) DeepCopyInto

func (in *ListenerConfig) DeepCopyInto(out *ListenerConfig)

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

func (*ListenerConfig) Default

func (cfg *ListenerConfig) Default()

Default sets default values for any value not specifically set in the ListenerConfig struct

type ListenerSpec

type ListenerSpec struct {
	// Listener specific configuration options for the component element
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Config *ListenerConfig `json:"config,omitempty"`
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// The external endpoint/s for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Endpoint Endpoint `json:"endpoint"`
	// Marin3r configures the Marin3r sidecars for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Marin3r *Marin3rSidecarSpec `json:"marin3r,omitempty"`
	// Configures the AWS Network load balancer for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LoadBalancer *NLBLoadBalancerSpec `json:"loadBalancer,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
	// Canary defines spec changes for the canary Deployment. If
	// left unset the canary Deployment wil not be created.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Canary *Canary `json:"canary,omitempty"`
}

ListenerSpec is the configuration for Backend Listener

func (*ListenerSpec) DeepCopy

func (in *ListenerSpec) DeepCopy() *ListenerSpec

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

func (*ListenerSpec) DeepCopyInto

func (in *ListenerSpec) DeepCopyInto(out *ListenerSpec)

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

func (*ListenerSpec) Default

func (spec *ListenerSpec) Default()

Default implements defaulting for the each backend listener

type LoadBalancerSpec

type LoadBalancerSpec struct {
	// Enables/disbles use of proxy protocol in the load balancer
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ProxyProtocol *bool `json:"proxyProtocol,omitempty"`
	// Enables/disables cross zone load balancing
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	CrossZoneLoadBalancingEnabled *bool `json:"crossZoneLoadBalancingEnabled,omitempty"`
	// Enables/disables connection draining
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ConnectionDrainingEnabled *bool `json:"connectionDrainingEnabled,omitempty"`
	// Sets the timeout for connection draining
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ConnectionDrainingTimeout *int32 `json:"connectionDrainingTimeout,omitempty"`
	// Sets the healthy threshold for the load balancer
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HealthcheckHealthyThreshold *int32 `json:"healthcheckHealthyThreshold,omitempty"`
	// Sets the unhealthy threshold for the load balancer
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HealthcheckUnhealthyThreshold *int32 `json:"healthcheckUnhealthyThreshold,omitempty"`
	// Sets the interval between health checks
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HealthcheckInterval *int32 `json:"healthcheckInterval,omitempty"`
	// Sets the timeout for the health check
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HealthcheckTimeout *int32 `json:"healthcheckTimeout,omitempty"`
}

LoadBalancerSpec configures the AWS load balancer for the component

func InitializeLoadBalancerSpec

func InitializeLoadBalancerSpec(spec *LoadBalancerSpec, def defaultLoadBalancerSpec) *LoadBalancerSpec

InitializeLoadBalancerSpec initializes a LoadBalancerSpec struct

func (*LoadBalancerSpec) DeepCopy

func (in *LoadBalancerSpec) DeepCopy() *LoadBalancerSpec

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

func (*LoadBalancerSpec) DeepCopyInto

func (in *LoadBalancerSpec) DeepCopyInto(out *LoadBalancerSpec)

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

func (*LoadBalancerSpec) Default

func (spec *LoadBalancerSpec) Default(def defaultLoadBalancerSpec)

Default sets default values for any value not specifically set in the LoadBalancerSpec struct

func (*LoadBalancerSpec) IsDeactivated

func (spec *LoadBalancerSpec) IsDeactivated() bool

IsDeactivated true if the field is set with the deactivated value (empty struct)

type MappingService

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

	Spec   MappingServiceSpec   `json:"spec,omitempty"`
	Status MappingServiceStatus `json:"status,omitempty"`
}

MappingService is the Schema for the mappingservices API

func (*MappingService) DeepCopy

func (in *MappingService) DeepCopy() *MappingService

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

func (*MappingService) DeepCopyInto

func (in *MappingService) DeepCopyInto(out *MappingService)

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

func (*MappingService) DeepCopyObject

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

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

func (*MappingService) Default

func (ms *MappingService) Default()

Default implements defaulting for the MappingService resource

type MappingServiceConfig

type MappingServiceConfig struct {
	// System endpoint to fetch proxy configs from
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	APIHost string `json:"apiHost"`
	// Base domain to replace the proxy configs base domain
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PreviewBaseDomain *string `json:"previewBaseDomain,omitempty"`
	// Openresty log level
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +kubebuiler:validation:Enum=debug;info;notice;warn;error;crit;alert;emerg
	// +optional
	LogLevel *string `json:"logLevel,omitempty"`
	// External Secret common configuration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ExternalSecret ExternalSecret `json:"externalSecret,omitempty"`
	// A reference to the secret holding the system admin token
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	SystemAdminToken SecretReference `json:"systemAdminToken"`
}

MappingServiceConfig configures app behavior for MappingService

func (*MappingServiceConfig) DeepCopy

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

func (*MappingServiceConfig) DeepCopyInto

func (in *MappingServiceConfig) DeepCopyInto(out *MappingServiceConfig)

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

func (*MappingServiceConfig) Default

func (cfg *MappingServiceConfig) Default()

Default sets default values for any value not specifically set in the MappingServiceConfig struct

type MappingServiceList

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

MappingServiceList contains a list of MappingService

func (*MappingServiceList) CountItems

func (msl *MappingServiceList) CountItems() int

CountItems returns the item count in MappingServiceList.Items

func (*MappingServiceList) DeepCopy

func (in *MappingServiceList) DeepCopy() *MappingServiceList

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

func (*MappingServiceList) DeepCopyInto

func (in *MappingServiceList) DeepCopyInto(out *MappingServiceList)

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

func (*MappingServiceList) DeepCopyObject

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

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

func (*MappingServiceList) GetItem

func (msl *MappingServiceList) GetItem(idx int) client.Object

GetItem returns a client.Objectfrom a MappingServiceList

type MappingServiceSpec

type MappingServiceSpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Configures the Grafana Dashboard for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	GrafanaDashboard *GrafanaDashboardSpec `json:"grafanaDashboard,omitempty"`
	// Application specific configuration options for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Config MappingServiceConfig `json:"config"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
}

MappingServiceSpec defines the desired state of MappingService

func (*MappingServiceSpec) DeepCopy

func (in *MappingServiceSpec) DeepCopy() *MappingServiceSpec

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

func (*MappingServiceSpec) DeepCopyInto

func (in *MappingServiceSpec) DeepCopyInto(out *MappingServiceSpec)

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

func (*MappingServiceSpec) Default added in v0.12.0

func (spec *MappingServiceSpec) Default()

Default implements defaulting for MappingServiceSpec

type MappingServiceStatus

type MappingServiceStatus struct {
}

MappingServiceStatus defines the observed state of MappingService

func (*MappingServiceStatus) DeepCopy

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

func (*MappingServiceStatus) DeepCopyInto

func (in *MappingServiceStatus) DeepCopyInto(out *MappingServiceStatus)

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

type Marin3rSidecarSpec

type Marin3rSidecarSpec struct {
	// The NodeID that identifies the Envoy sidecar to the DiscoveryService
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	NodeID *string `json:"nodeID,omitempty"`
	// The Envoy API version to use
	// +kubebuilder:validation:Enum=v3
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	EnvoyAPIVersion *string `json:"envoyAPIVersion,omitempty"`
	// The Envoy iamge to use
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	EnvoyImage *string `json:"envoyImage,omitempty"`
	// The ports that the sidecar exposes
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Ports []SidecarPort `json:"ports,omitempty"`
	// Compute Resources required by this container.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// The port where Marin3r's shutdown manager listens
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ShutdownManagerPort *uint32 `json:"shtdnmgrPort,omitempty"`
	// Extra containers to sync with the shutdown manager upon pod termination
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ShutdownManagerExtraLifecycleHooks []string `json:"shtdnmgrExtraLifecycleHooks"`
	// Extra annotations to pass the Pod to further configure the sidecar container.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ExtraPodAnnotations map[string]string `json:"extraPodAnnotations,omitempty"`
}

Marin3rSidecarSpec defines the marin3r sidecar for the component

func InitializeMarin3rSidecarSpec

func InitializeMarin3rSidecarSpec(spec *Marin3rSidecarSpec, def defaultMarin3rSidecarSpec) *Marin3rSidecarSpec

InitializeMarin3rSidecarSpec initializes a ResourceRequirementsSpec struct

func (*Marin3rSidecarSpec) DeepCopy

func (in *Marin3rSidecarSpec) DeepCopy() *Marin3rSidecarSpec

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

func (*Marin3rSidecarSpec) DeepCopyInto

func (in *Marin3rSidecarSpec) DeepCopyInto(out *Marin3rSidecarSpec)

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

func (*Marin3rSidecarSpec) Default

func (spec *Marin3rSidecarSpec) Default(def defaultMarin3rSidecarSpec)

Default sets default values for any value not specifically set in the ResourceRequirementsSpec struct

func (*Marin3rSidecarSpec) IsDeactivated

func (spec *Marin3rSidecarSpec) IsDeactivated() bool

IsDeactivated true if the field is set with the deactivated value (empty struct)

type MonitoredShard added in v0.13.0

type MonitoredShard struct {
	// Name is the name of the redis shard
	// +operator-sdk:csv:customresourcedefinitions:type=status
	Name string `json:"name"`
	// Master is the address of the master redis server of
	// this shard, in the format "127.0.0.1:6379"
	// +operator-sdk:csv:customresourcedefinitions:type=status
	Master string `json:"master"`
	// SlavesRO is the list of addresses of the read-only slave
	// servers in this shard, in the format "127.0.0.1:6379"
	// +operator-sdk:csv:customresourcedefinitions:type=status
	// +optional
	SlavesRO []string `json:"slavesRO,omitempty"`
	// SlavesRW is the list of addresses of the read-write slave
	// servers in this shard, in the format "127.0.0.1:6379"
	// +operator-sdk:csv:customresourcedefinitions:type=status
	// +optional
	SlavesRW []string `json:"slavesRW,omitempty"`
}

MonitoredShard contains information of one of the shards monitored by the Sentinel resource

func (*MonitoredShard) DeepCopy added in v0.13.0

func (in *MonitoredShard) DeepCopy() *MonitoredShard

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

func (*MonitoredShard) DeepCopyInto added in v0.13.0

func (in *MonitoredShard) DeepCopyInto(out *MonitoredShard)

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

type MonitoredShards added in v0.13.0

type MonitoredShards []MonitoredShard

func (MonitoredShards) DeepCopy added in v0.13.0

func (in MonitoredShards) DeepCopy() MonitoredShards

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

func (MonitoredShards) DeepCopyInto added in v0.13.0

func (in MonitoredShards) DeepCopyInto(out *MonitoredShards)

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

func (MonitoredShards) Len added in v0.13.0

func (ms MonitoredShards) Len() int

MonitoredShards implements sort.Interface based on the Name field.

func (MonitoredShards) Less added in v0.13.0

func (ms MonitoredShards) Less(i, j int) bool

func (MonitoredShards) Swap added in v0.13.0

func (ms MonitoredShards) Swap(i, j int)

type NLBLoadBalancerSpec

type NLBLoadBalancerSpec struct {
	// Enables/disbles use of proxy protocol in the load balancer
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ProxyProtocol *bool `json:"proxyProtocol,omitempty"`
	// Enables/disables cross zone load balancing
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	CrossZoneLoadBalancingEnabled *bool `json:"crossZoneLoadBalancingEnabled,omitempty"`
	// The list of optional Elastic IPs allocations
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	EIPAllocations []string `json:"eipAllocations,omitempty"`
}

NLBLoadBalancerSpec configures the AWS NLB load balancer for the component

func InitializeNLBLoadBalancerSpec

func InitializeNLBLoadBalancerSpec(spec *NLBLoadBalancerSpec, def defaultNLBLoadBalancerSpec) *NLBLoadBalancerSpec

InitializeNLBLoadBalancerSpec initializes a NLBLoadBalancerSpec struct

func (*NLBLoadBalancerSpec) DeepCopy

func (in *NLBLoadBalancerSpec) DeepCopy() *NLBLoadBalancerSpec

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

func (*NLBLoadBalancerSpec) DeepCopyInto

func (in *NLBLoadBalancerSpec) DeepCopyInto(out *NLBLoadBalancerSpec)

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

func (*NLBLoadBalancerSpec) Default

func (spec *NLBLoadBalancerSpec) Default(def defaultNLBLoadBalancerSpec)

Default sets default values for any value not specifically set in the NLBLoadBalancerSpec struct

func (*NLBLoadBalancerSpec) IsDeactivated

func (spec *NLBLoadBalancerSpec) IsDeactivated() bool

IsDeactivated true if the field is set with the deactivated value (empty struct)

type PodDisruptionBudgetSpec

type PodDisruptionBudgetSpec struct {
	// An eviction is allowed if at least "minAvailable" pods selected by
	// "selector" will still be available after the eviction, i.e. even in the
	// absence of the evicted pod.  So for example you can prevent all voluntary
	// evictions by specifying "100%".
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MinAvailable *intstr.IntOrString `json:"minAvailable,omitempty"`
	// An eviction is allowed if at most "maxUnavailable" pods selected by
	// "selector" are unavailable after the eviction, i.e. even in absence of
	// the evicted pod. For example, one can prevent all voluntary evictions
	// by specifying 0. This is a mutually exclusive setting with "minAvailable".
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MaxUnavailable *intstr.IntOrString `json:"maxUnavailable,omitempty"`
}

PodDisruptionBudgetSpec defines the PDB for the component

func InitializePodDisruptionBudgetSpec

func InitializePodDisruptionBudgetSpec(spec *PodDisruptionBudgetSpec, def defaultPodDisruptionBudgetSpec) *PodDisruptionBudgetSpec

InitializePodDisruptionBudgetSpec initializes a PodDisruptionBudgetSpec struct

func (*PodDisruptionBudgetSpec) DeepCopy

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

func (*PodDisruptionBudgetSpec) DeepCopyInto

func (in *PodDisruptionBudgetSpec) DeepCopyInto(out *PodDisruptionBudgetSpec)

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

func (*PodDisruptionBudgetSpec) Default

func (spec *PodDisruptionBudgetSpec) Default(def defaultPodDisruptionBudgetSpec)

Default sets default values for any value not specifically set in the PodDisruptionBudgetSpec struct

func (*PodDisruptionBudgetSpec) IsDeactivated

func (spec *PodDisruptionBudgetSpec) IsDeactivated() bool

IsDeactivated true if the field is set with the deactivated value (empty struct)

type ProbeSpec

type ProbeSpec struct {
	// Number of seconds after the container has started before liveness probes are initiated
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	InitialDelaySeconds *int32 `json:"initialDelaySeconds,omitempty"`
	// Number of seconds after which the probe times out
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	TimeoutSeconds *int32 `json:"timeoutSeconds,omitempty"`
	// How often (in seconds) to perform the probe
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PeriodSeconds *int32 `json:"periodSeconds,omitempty"`
	// Minimum consecutive successes for the probe to be considered successful after having failed
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SuccessThreshold *int32 `json:"successThreshold,omitempty"`
	// Minimum consecutive failures for the probe to be considered failed after having succeeded
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	FailureThreshold *int32 `json:"failureThreshold,omitempty"`
}

ProbeSpec specifies configuration for a probe

func InitializeProbeSpec

func InitializeProbeSpec(spec *ProbeSpec, def defaultProbeSpec) *ProbeSpec

InitializeProbeSpec initializes a ProbeSpec struct

func (*ProbeSpec) DeepCopy

func (in *ProbeSpec) DeepCopy() *ProbeSpec

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

func (*ProbeSpec) DeepCopyInto

func (in *ProbeSpec) DeepCopyInto(out *ProbeSpec)

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

func (*ProbeSpec) Default

func (spec *ProbeSpec) Default(def defaultProbeSpec)

Default sets default values for any value not specifically set in the ProbeSpec struct

func (*ProbeSpec) IsDeactivated

func (spec *ProbeSpec) IsDeactivated() bool

IsDeactivated true if the field is set with the deactivated value (empty struct)

type QueSpec

type QueSpec struct {
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
}

QueSpec is the configuration for Zync que

func (*QueSpec) DeepCopy

func (in *QueSpec) DeepCopy() *QueSpec

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

func (*QueSpec) DeepCopyInto

func (in *QueSpec) DeepCopyInto(out *QueSpec)

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

func (*QueSpec) Default

func (spec *QueSpec) Default()

Default implements defaulting for the each zync que

type RedHatCustomerPortalSpec

type RedHatCustomerPortalSpec struct {
	// Client ID
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ClientID SecretReference `json:"clientID"`
	// Client secret
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ClientSecret SecretReference `json:"clientSecret"`
}

RedHatCustomerPortalSpec has configuration for integration with Red Hat Customer Portal

func (*RedHatCustomerPortalSpec) DeepCopy

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

func (*RedHatCustomerPortalSpec) DeepCopyInto

func (in *RedHatCustomerPortalSpec) DeepCopyInto(out *RedHatCustomerPortalSpec)

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

type RedisShard added in v0.12.0

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

	Spec   RedisShardSpec   `json:"spec,omitempty"`
	Status RedisShardStatus `json:"status,omitempty"`
}

RedisShard is the Schema for the redisshards API +kubebuilder:printcolumn:JSONPath=".status.shardNodes.master",name=Master,type=string +kubebuilder:printcolumn:JSONPath=".status.shardNodes.slaves",name=Slaves,type=string

func (*RedisShard) DeepCopy added in v0.12.0

func (in *RedisShard) DeepCopy() *RedisShard

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

func (*RedisShard) DeepCopyInto added in v0.12.0

func (in *RedisShard) DeepCopyInto(out *RedisShard)

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

func (*RedisShard) DeepCopyObject added in v0.12.0

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

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

func (*RedisShard) Default added in v0.12.0

func (rs *RedisShard) Default()

Default implements defaulting for the RedisShard resource

type RedisShardList added in v0.12.0

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

RedisShardList contains a list of RedisShard

func (*RedisShardList) DeepCopy added in v0.12.0

func (in *RedisShardList) DeepCopy() *RedisShardList

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

func (*RedisShardList) DeepCopyInto added in v0.12.0

func (in *RedisShardList) DeepCopyInto(out *RedisShardList)

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

func (*RedisShardList) DeepCopyObject added in v0.12.0

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

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

type RedisShardNodes added in v0.12.0

type RedisShardNodes struct {
	// Master is the node that acts as master role in the redis shard
	// +operator-sdk:csv:customresourcedefinitions:type=status
	// +optional
	Master *string `json:"master,omitempty"`
	// Slaves are the nodes that act as master role in the redis shard
	// +operator-sdk:csv:customresourcedefinitions:type=status
	// +optional
	Slaves []string `json:"slaves,omitempty"`
}

func (*RedisShardNodes) DeepCopy added in v0.12.0

func (in *RedisShardNodes) DeepCopy() *RedisShardNodes

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

func (*RedisShardNodes) DeepCopyInto added in v0.12.0

func (in *RedisShardNodes) DeepCopyInto(out *RedisShardNodes)

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

type RedisShardSpec added in v0.12.0

type RedisShardSpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// MasterIndex is the StatefulSet Pod index of the redis server
	// with the master role. The other Pods are slaves of the master one.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MasterIndex *int32 `json:"masterIndex,omitempty"`
	// SlaveCount is the number of redis slaves
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SlaveCount *int32 `json:"slaveCount,omitempty"`
}

RedisShardSpec defines the desired state of RedisShard

func (*RedisShardSpec) DeepCopy added in v0.12.0

func (in *RedisShardSpec) DeepCopy() *RedisShardSpec

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

func (*RedisShardSpec) DeepCopyInto added in v0.12.0

func (in *RedisShardSpec) DeepCopyInto(out *RedisShardSpec)

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

func (*RedisShardSpec) Default added in v0.12.0

func (spec *RedisShardSpec) Default()

Default implements defaulting for RedisShardSpec

type RedisShardStatus added in v0.12.0

type RedisShardStatus struct {
	// ShardNodes describes the nodes in the redis shard
	// +operator-sdk:csv:customresourcedefinitions:type=status
	// +optional
	ShardNodes *RedisShardNodes `json:"shardNodes,omitempty"`
}

RedisShardStatus defines the observed state of RedisShard

func (*RedisShardStatus) DeepCopy added in v0.12.0

func (in *RedisShardStatus) DeepCopy() *RedisShardStatus

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

func (*RedisShardStatus) DeepCopyInto added in v0.12.0

func (in *RedisShardStatus) DeepCopyInto(out *RedisShardStatus)

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

type RedisSpec

type RedisSpec struct {
	// Data source name
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	QueuesDSN string `json:"queuesDSN"`
}

RedisSpec holds redis configuration

func (*RedisSpec) DeepCopy

func (in *RedisSpec) DeepCopy() *RedisSpec

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

func (*RedisSpec) DeepCopyInto

func (in *RedisSpec) DeepCopyInto(out *RedisSpec)

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

type ResourceRequirementsSpec

type ResourceRequirementsSpec struct {
	// Limits describes the maximum amount of compute resources allowed.
	// More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Limits corev1.ResourceList `json:"limits,omitempty"`
	// Requests describes the minimum amount of compute resources required.
	// If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
	// otherwise to an implementation-defined value.
	// More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Requests corev1.ResourceList `json:"requests,omitempty"`
}

ResourceRequirementsSpec defines the resource requirements for the component

func InitializeResourceRequirementsSpec

func InitializeResourceRequirementsSpec(spec *ResourceRequirementsSpec, def defaultResourceRequirementsSpec) *ResourceRequirementsSpec

InitializeResourceRequirementsSpec initializes a ResourceRequirementsSpec struct

func (*ResourceRequirementsSpec) DeepCopy

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

func (*ResourceRequirementsSpec) DeepCopyInto

func (in *ResourceRequirementsSpec) DeepCopyInto(out *ResourceRequirementsSpec)

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

func (*ResourceRequirementsSpec) Default

func (spec *ResourceRequirementsSpec) Default(def defaultResourceRequirementsSpec)

Default sets default values for any value not specifically set in the ResourceRequirementsSpec struct

func (*ResourceRequirementsSpec) IsDeactivated

func (spec *ResourceRequirementsSpec) IsDeactivated() bool

IsDeactivated true if the field is set with the deactivated value (empty struct)

type SMTPSpec

type SMTPSpec struct {
	// Address
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Address string `json:"address"`
	// User
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	User SecretReference `json:"user"`
	// Password
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Password SecretReference `json:"password"`
	// Port
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Port int32 `json:"port"`
	// Authentication protocol
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	AuthProtocol string `json:"authProtocol"`
	// OpenSSL verify mode
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	OpenSSLVerifyMode string `json:"opensslVerifyMode"`
	// Enable/disable auto STARTTLS
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	STARTTLSAuto bool `json:"starttlsAuto"`
}

SMTPSpec has options to configure system's SMTP

func (*SMTPSpec) DeepCopy

func (in *SMTPSpec) DeepCopy() *SMTPSpec

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

func (*SMTPSpec) DeepCopyInto

func (in *SMTPSpec) DeepCopyInto(out *SMTPSpec)

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

type SecretReference

type SecretReference struct {
	// VaultSecretReference is a reference to a secret stored in a Hashicorp Vault
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	FromVault *VaultSecretReference `json:"fromVault,omitempty"`
	// Override allows to directly specify a string value.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Override *string `json:"override,omitempty"`
}

SecretReference is a reference to a secret stored in some secrets engine

func (*SecretReference) DeepCopy

func (in *SecretReference) DeepCopy() *SecretReference

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

func (*SecretReference) DeepCopyInto

func (in *SecretReference) DeepCopyInto(out *SecretReference)

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

type SegmentSpec

type SegmentSpec struct {
	// Deletion workspace
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	DeletionWorkspace string `json:"deletionWorkspace"`
	// Deletion token
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	DeletionToken SecretReference `json:"deletionToken"`
	// Write key
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	WriteKey SecretReference `json:"writeKey"`
}

SegmentSpec has configuration for Segment integration

func (*SegmentSpec) DeepCopy

func (in *SegmentSpec) DeepCopy() *SegmentSpec

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

func (*SegmentSpec) DeepCopyInto

func (in *SegmentSpec) DeepCopyInto(out *SegmentSpec)

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

type Sentinel added in v0.12.0

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

	Spec   SentinelSpec   `json:"spec,omitempty"`
	Status SentinelStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:JSONPath=".status.sentinels",name=Sentinels,type=string +kubebuilder:printcolumn:JSONPath=".status.monitoredShards",name=Shards,type=string Sentinel is the Schema for the sentinels API

func (*Sentinel) DeepCopy added in v0.12.0

func (in *Sentinel) DeepCopy() *Sentinel

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

func (*Sentinel) DeepCopyInto added in v0.12.0

func (in *Sentinel) DeepCopyInto(out *Sentinel)

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

func (*Sentinel) DeepCopyObject added in v0.12.0

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

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

func (*Sentinel) Default added in v0.12.0

func (s *Sentinel) Default()

Default implements defaulting for the Sentinel resource

type SentinelConfig added in v0.12.0

type SentinelConfig struct {
	// Monitored shards indicates the redis servers that form
	// part of each shard monitored by sentinel
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	MonitoredShards map[string][]string `json:"monitoredShards,"`
	// StorageClass is the storage class to be used for
	// the persistent sentinel config file where the shards
	// state is stored
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	StorageClass *string `json:"storageClass,omitempty"`
	// StorageSize is the storage size to  provision for
	// the persistent sentinel config file where the shards
	// state is stored
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	StorageSize *resource.Quantity `json:"storageSize,omitempty"`
	// MetricsRefreshInterval determines the refresh interval for gahtering
	// metrics from sentinel
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MetricsRefreshInterval *time.Duration `json:"metricsRefreshInterval,omitempty"`
}

SentinelConfig defines configuration options for the component

func (*SentinelConfig) DeepCopy added in v0.12.0

func (in *SentinelConfig) DeepCopy() *SentinelConfig

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

func (*SentinelConfig) DeepCopyInto added in v0.12.0

func (in *SentinelConfig) DeepCopyInto(out *SentinelConfig)

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

func (*SentinelConfig) Default added in v0.12.0

func (cfg *SentinelConfig) Default()

Default sets default values for any value not specifically set in the AutoSSLConfig struct

type SentinelList added in v0.12.0

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

SentinelList contains a list of Sentinel

func (*SentinelList) DeepCopy added in v0.12.0

func (in *SentinelList) DeepCopy() *SentinelList

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

func (*SentinelList) DeepCopyInto added in v0.12.0

func (in *SentinelList) DeepCopyInto(out *SentinelList)

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

func (*SentinelList) DeepCopyObject added in v0.12.0

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

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

type SentinelSpec added in v0.12.0

type SentinelSpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Configures the Grafana Dashboard for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	GrafanaDashboard *GrafanaDashboardSpec `json:"grafanaDashboard,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
	// Config configures the sentinel process
	Config *SentinelConfig `json:"config"`
}

SentinelSpec defines the desired state of Sentinel

func (*SentinelSpec) DeepCopy added in v0.12.0

func (in *SentinelSpec) DeepCopy() *SentinelSpec

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

func (*SentinelSpec) DeepCopyInto added in v0.12.0

func (in *SentinelSpec) DeepCopyInto(out *SentinelSpec)

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

func (*SentinelSpec) Default added in v0.12.0

func (spec *SentinelSpec) Default()

Default implements defaulting for SentinelSpec

type SentinelStatus added in v0.12.0

type SentinelStatus struct {
	// Addresses of the sentinel instances currently running
	// +operator-sdk:csv:customresourcedefinitions:type=status
	// +optional
	Sentinels []string `json:"sentinels,omitempty"`
	// MonitoredShards is the list of shards that the Sentinel
	// resource is currently monitoring
	// +operator-sdk:csv:customresourcedefinitions:type=status
	// +optional
	MonitoredShards MonitoredShards `json:"monitoredShards,omitempty"`
}

SentinelStatus defines the observed state of Sentinel

func (*SentinelStatus) DeepCopy added in v0.12.0

func (in *SentinelStatus) DeepCopy() *SentinelStatus

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

func (*SentinelStatus) DeepCopyInto added in v0.12.0

func (in *SentinelStatus) DeepCopyInto(out *SentinelStatus)

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

type ShardedRedisTopology added in v0.13.0

type ShardedRedisTopology struct {
	// The name of the locigal shard
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ShardName string `json:"shardName"`
	// The physical shard where the logical one is stored.
	// This name should match the shard names monitored by
	// Sentinel.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	PhysicalShard string `json:"physicalShard"`
}

func (*ShardedRedisTopology) DeepCopy added in v0.13.0

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

func (*ShardedRedisTopology) DeepCopyInto added in v0.13.0

func (in *ShardedRedisTopology) DeepCopyInto(out *ShardedRedisTopology)

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

type SidecarPort

type SidecarPort struct {
	// Port name
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Name string `json:"name"`
	// Port value
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Port int32 `json:"port"`
}

SidecarPort defines port for the Marin3r sidecar container

func (*SidecarPort) DeepCopy

func (in *SidecarPort) DeepCopy() *SidecarPort

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

func (*SidecarPort) DeepCopyInto

func (in *SidecarPort) DeepCopyInto(out *SidecarPort)

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

type SidekiqConfig added in v0.10.9

type SidekiqConfig struct {
	// List of queues to be consumed by sidekiq. Format: queue[,Priority]
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Queues []string `json:"queues,omitempty"`
	// Number of rails max threads per sidekiq pod
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MaxThreads *int32 `json:"maxThreads,omitempty"`
}

SidekiqConfig configures app behavior for System Sidekiq

func (*SidekiqConfig) DeepCopy added in v0.10.9

func (in *SidekiqConfig) DeepCopy() *SidekiqConfig

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

func (*SidekiqConfig) DeepCopyInto added in v0.10.9

func (in *SidekiqConfig) DeepCopyInto(out *SidekiqConfig)

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

func (*SidekiqConfig) Default added in v0.10.9

func (cfg *SidekiqConfig) Default(def defaultSidekiqConfig)

Default sets default values for any value not specifically set in the SidekiqConfig struct

type SphinxConfig

type SphinxConfig struct {
	// Thinking configuration for sphinx
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Thinking *ThinkingSpec `json:"thinking,omitempty"`
	// Interval used for adding chunks of brand new documents to the primary
	// index at certain intervals without having to do a full re-index
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	DeltaIndexInterval *int32 `json:"deltaIndexInterval,omitempty"`
	// Interval used to do a full re-index
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	FullReindexInterval *int32 `json:"fullReindexInterval,omitempty"`
}

SphinxConfig has configuration options for System's sphinx

func (*SphinxConfig) DeepCopy

func (in *SphinxConfig) DeepCopy() *SphinxConfig

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

func (*SphinxConfig) DeepCopyInto

func (in *SphinxConfig) DeepCopyInto(out *SphinxConfig)

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

func (*SphinxConfig) Default

func (sc *SphinxConfig) Default()

Default implements defaulting for SphinxConfig

type System

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

	Spec   SystemSpec   `json:"spec,omitempty"`
	Status SystemStatus `json:"status,omitempty"`
}

System is the Schema for the systems API

func (*System) DeepCopy

func (in *System) DeepCopy() *System

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

func (*System) DeepCopyInto

func (in *System) DeepCopyInto(out *System)

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

func (*System) DeepCopyObject

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

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

func (*System) Default

func (s *System) Default()

Default implements defaulting for the System resource

type SystemAppSpec

type SystemAppSpec struct {
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Marin3r configures the Marin3r sidecars for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Marin3r *Marin3rSidecarSpec `json:"marin3r,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
	// Canary defines spec changes for the canary Deployment. If
	// left unset the canary Deployment wil not be created.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Canary *Canary `json:"canary,omitempty"`
}

SystemAppSpec configures the App component of System

func (*SystemAppSpec) DeepCopy

func (in *SystemAppSpec) DeepCopy() *SystemAppSpec

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

func (*SystemAppSpec) DeepCopyInto

func (in *SystemAppSpec) DeepCopyInto(out *SystemAppSpec)

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

func (*SystemAppSpec) Default

func (spec *SystemAppSpec) Default()

Default implements defaulting for the system App component

type SystemBackendSpec

type SystemBackendSpec struct {
	// External endpoint
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ExternalEndpoint string `json:"externalEndpoint"`
	// Internal endpoint
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	InternalEndpoint string `json:"internalEndpoint"`
	// Internal API user
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	InternalAPIUser SecretReference `json:"internalAPIUser"`
	// Internal API password
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	InternalAPIPassword SecretReference `json:"internalAPIPassword"`
	// Redis data source name
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	RedisDSN string `json:"redisDSN"`
}

SystemBackendSpec has configuration options for backend

func (*SystemBackendSpec) DeepCopy

func (in *SystemBackendSpec) DeepCopy() *SystemBackendSpec

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

func (*SystemBackendSpec) DeepCopyInto

func (in *SystemBackendSpec) DeepCopyInto(out *SystemBackendSpec)

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

type SystemConfig

type SystemConfig struct {
	// Rails configuration options for system components
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Rails *SystemRailsSpec `json:"rails,omitempty"`
	// OpenSSL verification mode for sandbox proxy
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SandboxProxyOpensslVerifyMode *string `json:"sandboxProxyOpensslVerifyMode,omitempty"`
	// Enable (true) or disable (false) enforcing SSL
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ForceSSL *bool `json:"forceSSL,omitempty"`
	// SSL certificates path
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SSLCertsDir *string `json:"sslCertsDir,omitempty"`
	// 3scale provider plan
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ThreescaleProviderPlan *string `json:"threescaleProviderPlan,omitempty"`
	// 3scale superdomain
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ThreescaleSuperdomain *string `json:"threescaleSuperdomain,omitempty"`
	// Secret containging system configuration files to be mounted in the pods
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ConfigFilesSecret *string `json:"configFilesSecret,omitempty"`
	// External Secret common configuration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ExternalSecret ExternalSecret `json:"externalSecret,omitempty"`
	// DSN of system's main database
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	DatabaseDSN SecretReference `json:"databaseDSN"`
	// EventsSharedSecret
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	EventsSharedSecret SecretReference `json:"eventsSharedSecret"`
	// Holds recaptcha configuration options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Recaptcha SystemRecaptchaSpec `json:"recaptcha"`
	// SecretKeyBase
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	SecretKeyBase SecretReference `json:"secretKeyBase"`
	// AccessCode to protect admin urls
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	AccessCode SecretReference `json:"accessCode"`
	// Options for Segment integration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Segment SegmentSpec `json:"segment"`
	// Options for Github integration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Github GithubSpec `json:"github"`
	// Options for configuring RH Customer Portal integration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	RedHatCustomerPortal RedHatCustomerPortalSpec `json:"redhatCustomerPortal"`
	// Options for configuring Bugsnag integration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Bugsnag *BugsnagSpec `json:"bugsnag,omitempty"`
	// Database secret
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	DatabaseSecret SecretReference `json:"databaseSecret"`
	// Memcached servers
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	MemcachedServers string `json:"memcachedServers"`
	// Redis configuration options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Redis RedisSpec `json:"redis"`
	// SMTP configuration options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	SMTP SMTPSpec `json:"smtp"`
	// Mapping Service access token
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	MappingServiceAccessToken SecretReference `json:"mappingServiceAccessToken"`
	// Zync authentication token
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ZyncAuthToken SecretReference `json:"zyncAuthToken"`
	// Backend has configuration options for system to contact backend
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Backend SystemBackendSpec `json:"backend"`
	// Assets has configuration to access assets in AWS s3
	Assets AssetsSpec `json:"assets"`
}

SystemConfig holds configuration for SystemApp component

func (*SystemConfig) DeepCopy

func (in *SystemConfig) DeepCopy() *SystemConfig

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

func (*SystemConfig) DeepCopyInto

func (in *SystemConfig) DeepCopyInto(out *SystemConfig)

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

func (*SystemConfig) Default

func (sc *SystemConfig) Default()

Default applies default values to a SystemConfig struct

type SystemList

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

SystemList contains a list of System

func (*SystemList) CountItems

func (sl *SystemList) CountItems() int

CountItems returns the item count in SystemList.Items

func (*SystemList) DeepCopy

func (in *SystemList) DeepCopy() *SystemList

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

func (*SystemList) DeepCopyInto

func (in *SystemList) DeepCopyInto(out *SystemList)

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

func (*SystemList) DeepCopyObject

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

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

func (*SystemList) GetItem

func (sl *SystemList) GetItem(idx int) client.Object

GetItem returns a client.Objectfrom a SystemList

type SystemRailsConsoleSpec added in v0.14.0

type SystemRailsConsoleSpec struct {
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
}

SystemRailsConsoleSpec configures the App component of System

func (*SystemRailsConsoleSpec) DeepCopy added in v0.14.0

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

func (*SystemRailsConsoleSpec) DeepCopyInto added in v0.14.0

func (in *SystemRailsConsoleSpec) DeepCopyInto(out *SystemRailsConsoleSpec)

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

func (*SystemRailsConsoleSpec) Default added in v0.14.0

func (spec *SystemRailsConsoleSpec) Default()

Default implements defaulting for the system App component

type SystemRailsSpec

type SystemRailsSpec struct {
	// Rails Console
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Console *bool `json:"console,omitempty"`
	// Rails environment
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Environment *string `json:"environment,omitempty"`
	// Rails log level (debug, info, warn, error, fatal or unknown)
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +kubebuilder:validation:Enum=debug;info;warn;error;fatal;unknown
	// +optional
	LogLevel *string `json:"logLevel,omitempty"`
}

SystemRailsSpec configures rails for system components

func (*SystemRailsSpec) DeepCopy

func (in *SystemRailsSpec) DeepCopy() *SystemRailsSpec

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

func (*SystemRailsSpec) DeepCopyInto

func (in *SystemRailsSpec) DeepCopyInto(out *SystemRailsSpec)

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

func (*SystemRailsSpec) Default

func (srs *SystemRailsSpec) Default()

Default applies defaults for SystemRailsSpec

type SystemRecaptchaSpec

type SystemRecaptchaSpec struct {
	// Public key
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	PublicKey SecretReference `json:"publicKey"`
	// Private key
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	PrivateKey SecretReference `json:"privateKey"`
}

SystemRecaptchaSpec holds recaptcha configurations

func (*SystemRecaptchaSpec) DeepCopy

func (in *SystemRecaptchaSpec) DeepCopy() *SystemRecaptchaSpec

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

func (*SystemRecaptchaSpec) DeepCopyInto

func (in *SystemRecaptchaSpec) DeepCopyInto(out *SystemRecaptchaSpec)

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

type SystemSidekiqSpec

type SystemSidekiqSpec struct {
	// Sidekiq specific configuration options for the component element
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Config *SidekiqConfig `json:"config,omitempty"`
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Marin3r configures the Marin3r sidecars for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Marin3r *Marin3rSidecarSpec `json:"marin3r,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
	// Canary defines spec changes for the canary Deployment. If
	// left unset the canary Deployment wil not be created.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Canary *Canary `json:"canary,omitempty"`
}

SystemSidekiqSpec configures the Sidekiq component of System

func (*SystemSidekiqSpec) DeepCopy

func (in *SystemSidekiqSpec) DeepCopy() *SystemSidekiqSpec

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

func (*SystemSidekiqSpec) DeepCopyInto

func (in *SystemSidekiqSpec) DeepCopyInto(out *SystemSidekiqSpec)

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

func (*SystemSidekiqSpec) Default

func (spec *SystemSidekiqSpec) Default(sidekiqType systemSidekiqType)

Default implements defaulting for the system Sidekiq component

type SystemSpec

type SystemSpec struct {
	// Application specific configuration options for System components
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Config SystemConfig `json:"config"`
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Application specific configuration options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	App *SystemAppSpec `json:"app,omitempty"`
	// Sidekiq Default specific configuration options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SidekiqDefault *SystemSidekiqSpec `json:"sidekiqDefault,omitempty"`
	// Sidekiq Billing specific configuration options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SidekiqBilling *SystemSidekiqSpec `json:"sidekiqBilling,omitempty"`
	// Sidekiq Low specific configuration options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SidekiqLow *SystemSidekiqSpec `json:"sidekiqLow,omitempty"`
	// Sphinx specific configuration options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Sphinx *SystemSphinxSpec `json:"sphinx,omitempty"`
	// Console specific configuration options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Console *SystemRailsConsoleSpec `json:"console,omitempty"`
	// Configures the Grafana Dashboard for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	GrafanaDashboard *GrafanaDashboardSpec `json:"grafanaDashboard,omitempty"`
	// Configures twemproxy
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Twemproxy *TwemproxySpec `json:"twemproxy,omitempty"`
}

SystemSpec defines the desired state of System

func (*SystemSpec) DeepCopy

func (in *SystemSpec) DeepCopy() *SystemSpec

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

func (*SystemSpec) DeepCopyInto

func (in *SystemSpec) DeepCopyInto(out *SystemSpec)

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

func (*SystemSpec) Default added in v0.12.0

func (spec *SystemSpec) Default()

Default implements defaulting for SystemSpec

func (*SystemSpec) ResolveCanarySpec added in v0.14.0

func (spec *SystemSpec) ResolveCanarySpec(canary *Canary) (*SystemSpec, error)

ResolveCanarySpec modifies the SystemSpec given the provided canary configuration

type SystemSphinxSpec

type SystemSphinxSpec struct {
	// Image specification for the Sphinx component.
	// Defaults to system image if not defined.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Configuration options for System's sphinx
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Config *SphinxConfig `json:"config,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
}

SystemSphinxSpec configures the App component of System

func (*SystemSphinxSpec) DeepCopy

func (in *SystemSphinxSpec) DeepCopy() *SystemSphinxSpec

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

func (*SystemSphinxSpec) DeepCopyInto

func (in *SystemSphinxSpec) DeepCopyInto(out *SystemSphinxSpec)

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

func (*SystemSphinxSpec) Default

func (spec *SystemSphinxSpec) Default(systemDefaultImage *ImageSpec)

Default implements defaulting for the system sphinx component

type SystemStatus

type SystemStatus struct{}

SystemStatus defines the observed state of System

func (*SystemStatus) DeepCopy

func (in *SystemStatus) DeepCopy() *SystemStatus

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

func (*SystemStatus) DeepCopyInto

func (in *SystemStatus) DeepCopyInto(out *SystemStatus)

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

type TargetRedisServers added in v0.13.0

type TargetRedisServers string
const (
	Masters  TargetRedisServers = "masters"
	SlavesRW TargetRedisServers = "slaves-rw"
)

type ThinkingSpec

type ThinkingSpec struct {
	// The TCP port Sphinx will run its daemon on
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Port *int32 `json:"port,omitempty"`
	// Allows setting the TCP host for Sphinx to a different address
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	BindAddress *string `json:"bindAddress,omitempty"`
	// Sphinx configuration file path
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ConfigFile *string `json:"configFile,omitempty"`
	// Sphinx database path
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	DatabasePath *string `json:"databasePath,omitempty"`
	// Sphinx database storage size
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	DatabaseStorageSize *resource.Quantity `json:"databaseStorageSize,omitempty"`
	// Sphinx database storage type
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	DatabaseStorageClass *string `json:"databaseStorageClass,omitempty"`
	// Sphinx PID file path
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PIDFile *string `json:"pidFile,omitempty"`
}

ThinkingSpec configures the thinking library for sphinx

func (*ThinkingSpec) DeepCopy

func (in *ThinkingSpec) DeepCopy() *ThinkingSpec

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

func (*ThinkingSpec) DeepCopyInto

func (in *ThinkingSpec) DeepCopyInto(out *ThinkingSpec)

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

func (*ThinkingSpec) Default

func (tc *ThinkingSpec) Default()

Default implements defaulting for ThinkingSpec

type TwemproxyConfig added in v0.13.0

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

	Spec   TwemproxyConfigSpec   `json:"spec,omitempty"`
	Status TwemproxyConfigStatus `json:"status,omitempty"`
}

TwemproxyConfig is the Schema for the twemproxyconfigs API

func (*TwemproxyConfig) DeepCopy added in v0.13.0

func (in *TwemproxyConfig) DeepCopy() *TwemproxyConfig

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

func (*TwemproxyConfig) DeepCopyInto added in v0.13.0

func (in *TwemproxyConfig) DeepCopyInto(out *TwemproxyConfig)

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

func (*TwemproxyConfig) DeepCopyObject added in v0.13.0

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

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

func (*TwemproxyConfig) Default added in v0.13.0

func (tc *TwemproxyConfig) Default()

func (*TwemproxyConfig) PodSyncSelector added in v0.13.0

func (tc *TwemproxyConfig) PodSyncSelector() client.MatchingLabels

type TwemproxyConfigList added in v0.13.0

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

TwemproxyConfigList contains a list of TwemproxyConfig

func (*TwemproxyConfigList) DeepCopy added in v0.13.0

func (in *TwemproxyConfigList) DeepCopy() *TwemproxyConfigList

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

func (*TwemproxyConfigList) DeepCopyInto added in v0.13.0

func (in *TwemproxyConfigList) DeepCopyInto(out *TwemproxyConfigList)

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

func (*TwemproxyConfigList) DeepCopyObject added in v0.13.0

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

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

type TwemproxyConfigSpec added in v0.13.0

type TwemproxyConfigSpec struct {
	// SentinelURI is the redis URI of sentinel. This is required as TewmproxyConfig
	// will obtain the info about available redis servers from sentinel.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	SentinelURIs []string `json:"sentinelURIs,omitempty"`
	// ServerPools is the list of Twemproxy server pools
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ServerPools []TwemproxyServerPool `json:"serverPools"`
	// ReconcileServerPools is a flag that allows to deactivate
	// the reconcile of the contents of the managed ConfigMap. This is
	// useful in an emergency, to fix something manually. The re-sync
	// logic will still work whenever the contents of the ConfigMap
	// are changed, even if they are manually changed.
	// This switch defaults to "true".
	ReconcileServerPools *bool `json:"reconcileServerPools,omitempty"`
}

TwemproxyConfigSpec defines the desired state of TwemproxyConfig

func (*TwemproxyConfigSpec) DeepCopy added in v0.13.0

func (in *TwemproxyConfigSpec) DeepCopy() *TwemproxyConfigSpec

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

func (*TwemproxyConfigSpec) DeepCopyInto added in v0.13.0

func (in *TwemproxyConfigSpec) DeepCopyInto(out *TwemproxyConfigSpec)

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

func (*TwemproxyConfigSpec) Default added in v0.13.0

func (spec *TwemproxyConfigSpec) Default()

type TwemproxyConfigStatus added in v0.13.0

type TwemproxyConfigStatus struct{}

TwemproxyConfigStatus defines the observed state of TwemproxyConfig

func (*TwemproxyConfigStatus) DeepCopy added in v0.13.0

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

func (*TwemproxyConfigStatus) DeepCopyInto added in v0.13.0

func (in *TwemproxyConfigStatus) DeepCopyInto(out *TwemproxyConfigStatus)

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

type TwemproxyOptions added in v0.13.0

type TwemproxyOptions struct {
	// Set logging level to N. (default: 5, min: 0, max: 11)
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LogLevel *int32 `json:"logLevel,omitempty"`
	// Set stats monitoring port to port.  (default: 22222)
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MetricsPort *int32 `json:"metricsAddress,omitempty"`
	// Set stats aggregation interval in msec to interval.  (default: 30s)
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	StatsInterval *metav1.Duration `json:"statsInterval,omitempty"`
}

func (*TwemproxyOptions) DeepCopy added in v0.13.0

func (in *TwemproxyOptions) DeepCopy() *TwemproxyOptions

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

func (*TwemproxyOptions) DeepCopyInto added in v0.13.0

func (in *TwemproxyOptions) DeepCopyInto(out *TwemproxyOptions)

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

func (*TwemproxyOptions) Default added in v0.13.0

func (opts *TwemproxyOptions) Default()

type TwemproxyServerPool added in v0.13.0

type TwemproxyServerPool struct {
	// The name of the server pool
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Name string `json:"name"`
	// The topology of the servers within the server pool. This
	// field describes the association of logical shards to physical
	// shards.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Topology []ShardedRedisTopology `json:"topology"`
	// The address to bind to. Format is ip:port
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	BindAddress string `json:"bindAddress"`
	// Timeout to stablish connection with the servers in the
	// server pool
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Timeout int `json:"timeout"`
	// Max number of pending connections in the queue
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	TCPBacklog int `json:"tcpBacklog"`
	// Connect to all servers in the pool during startup
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	PreConnect bool `json:"preConnect"`
	// Target defines which are the servers that will be configured
	// as backend redis servers for the Twemproxy configuration. The
	// default is to target masters, but read-write slaves can be configured
	// through this option. If read-write slaves are configured but there are none
	// available, the config will fall back to masters. The masters never fall back
	// to slaves though and will just wait for sentinel triggered failovers to solve
	// the unavailability.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +kubebuilder:validation:Enum=masters;slaves-rw
	// +optional
	Target *TargetRedisServers `json:"target,omitempty"`
}

func (*TwemproxyServerPool) DeepCopy added in v0.13.0

func (in *TwemproxyServerPool) DeepCopy() *TwemproxyServerPool

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

func (*TwemproxyServerPool) DeepCopyInto added in v0.13.0

func (in *TwemproxyServerPool) DeepCopyInto(out *TwemproxyServerPool)

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

func (*TwemproxyServerPool) Default added in v0.13.0

func (pool *TwemproxyServerPool) Default()

type TwemproxySpec added in v0.13.0

type TwemproxySpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// TwemproxyConfigRef is a reference to a TwemproxyConfig
	// resource in the same Namespace
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	TwemproxyConfigRef string `json:"twemproxyConfigRef"`
	// Options
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Options *TwemproxyOptions `json:"options,omitempty"`
}

TwemproxySpec configures twemproxy sidecars to access a sharded redis

func (*TwemproxySpec) ConfigMapName added in v0.13.0

func (spec *TwemproxySpec) ConfigMapName() string

func (*TwemproxySpec) DeepCopy added in v0.13.0

func (in *TwemproxySpec) DeepCopy() *TwemproxySpec

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

func (*TwemproxySpec) DeepCopyInto added in v0.13.0

func (in *TwemproxySpec) DeepCopyInto(out *TwemproxySpec)

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

func (*TwemproxySpec) Default added in v0.13.0

func (spec *TwemproxySpec) Default()

Default implements defaulting for the each backend cron

type VaultSecretReference

type VaultSecretReference struct {
	// The Vault path where the secret is located
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Path string `json:"path"`
	// The Vault key of the secret
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Key string `json:"key"`
}

VaultSecretReference is a reference to a secret stored in a Hashicorp Vault

func (*VaultSecretReference) DeepCopy

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

func (*VaultSecretReference) DeepCopyInto

func (in *VaultSecretReference) DeepCopyInto(out *VaultSecretReference)

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

func (*VaultSecretReference) Default added in v0.13.0

func (spec *VaultSecretReference) Default()

type WorkerConfig

type WorkerConfig struct {
	// Worker log format
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +kubebuilder:validation:Enum=test;json
	// +optional
	LogFormat *string `json:"logFormat,omitempty"`
	// Enable (true) or disable (false) worker redis async mode
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	RedisAsync *bool `json:"redisAsync,omitempty"`
}

WorkerConfig configures app behavior for Backend Worker

func (*WorkerConfig) DeepCopy

func (in *WorkerConfig) DeepCopy() *WorkerConfig

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

func (*WorkerConfig) DeepCopyInto

func (in *WorkerConfig) DeepCopyInto(out *WorkerConfig)

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

func (*WorkerConfig) Default

func (cfg *WorkerConfig) Default()

Default sets default values for any value not specifically set in the WorkerConfig struct

type WorkerSpec

type WorkerSpec struct {
	// Listener specific configuration options for the component element
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Config *WorkerConfig `json:"config,omitempty"`
	// Pod Disruption Budget for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	PDB *PodDisruptionBudgetSpec `json:"pdb,omitempty"`
	// Horizontal Pod Autoscaler for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	HPA *HorizontalPodAutoscalerSpec `json:"hpa,omitempty"`
	// Number of replicas (ignored if hpa is enabled) for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Replicas *int32 `json:"replicas,omitempty"`
	// Resource requirements for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
	// Liveness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
	// Readiness probe for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
	// Describes node affinity scheduling rules for the pod.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
	// If specified, the pod's tolerations.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
	// Canary defines spec changes for the canary Deployment. If
	// left unset the canary Deployment wil not be created.
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Canary *Canary `json:"canary,omitempty"`
}

WorkerSpec is the configuration for Backend Worker

func (*WorkerSpec) DeepCopy

func (in *WorkerSpec) DeepCopy() *WorkerSpec

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

func (*WorkerSpec) DeepCopyInto

func (in *WorkerSpec) DeepCopyInto(out *WorkerSpec)

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

func (*WorkerSpec) Default

func (spec *WorkerSpec) Default()

Default implements defaulting for the each backend worker

type Zync

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

	Spec   ZyncSpec   `json:"spec,omitempty"`
	Status ZyncStatus `json:"status,omitempty"`
}

Zync is the Schema for the zyncs API

func (*Zync) DeepCopy

func (in *Zync) DeepCopy() *Zync

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

func (*Zync) DeepCopyInto

func (in *Zync) DeepCopyInto(out *Zync)

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

func (*Zync) DeepCopyObject

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

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

func (*Zync) Default

func (z *Zync) Default()

Default implements defaulting for the Zync resource

type ZyncConfig

type ZyncConfig struct {
	// Rails configuration options for zync components
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Rails *ZyncRailsSpec `json:"rails,omitempty"`
	// External Secret common configuration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	ExternalSecret ExternalSecret `json:"externalSecret,omitempty"`
	// A reference to the secret holding the database DSN
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	DatabaseDSN SecretReference `json:"databaseDSN"`
	// A reference to the secret holding the secret-key-base
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	SecretKeyBase SecretReference `json:"secretKeyBase"`
	// A reference to the secret holding the zync authentication token
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	ZyncAuthToken SecretReference `json:"zyncAuthToken"`
	// Options for configuring Bugsnag integration
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Bugsnag *BugsnagSpec `json:"bugsnag,omitempty"`
}

ZyncConfig configures app behavior for Zync

func (*ZyncConfig) DeepCopy

func (in *ZyncConfig) DeepCopy() *ZyncConfig

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

func (*ZyncConfig) DeepCopyInto

func (in *ZyncConfig) DeepCopyInto(out *ZyncConfig)

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

func (*ZyncConfig) Default

func (cfg *ZyncConfig) Default()

Default sets default values for any value not specifically set in the ZyncConfig struct

type ZyncList

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

ZyncList contains a list of Zync

func (*ZyncList) CountItems

func (bl *ZyncList) CountItems() int

CountItems returns the item count in ZyncList.Items

func (*ZyncList) DeepCopy

func (in *ZyncList) DeepCopy() *ZyncList

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

func (*ZyncList) DeepCopyInto

func (in *ZyncList) DeepCopyInto(out *ZyncList)

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

func (*ZyncList) DeepCopyObject

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

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

func (*ZyncList) GetItem

func (bl *ZyncList) GetItem(idx int) client.Object

GetItem returns a client.Objectfrom a ZyncList

type ZyncRailsSpec

type ZyncRailsSpec struct {
	// Rails environment
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Environment *string `json:"environment,omitempty"`
	// Rails log level (debug, info, warn, error, fatal or unknown)
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +kubebuilder:validation:Enum=debug;info;warn;error;fatal;unknown
	// +optional
	LogLevel *string `json:"logLevel,omitempty"`
	// Rails max threads (only applies to api)
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	MaxThreads *int32 `json:"maxThreads,omitempty"`
}

ZyncRailsSpec configures rails for system components

func (*ZyncRailsSpec) DeepCopy

func (in *ZyncRailsSpec) DeepCopy() *ZyncRailsSpec

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

func (*ZyncRailsSpec) DeepCopyInto

func (in *ZyncRailsSpec) DeepCopyInto(out *ZyncRailsSpec)

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

func (*ZyncRailsSpec) Default

func (zrs *ZyncRailsSpec) Default()

Default applies defaults for ZyncRailsSpec

type ZyncSpec

type ZyncSpec struct {
	// Image specification for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Image *ImageSpec `json:"image,omitempty"`
	// Application specific configuration options for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Config ZyncConfig `json:"config"`
	// Configures the Grafana Dashboard for the component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	GrafanaDashboard *GrafanaDashboardSpec `json:"grafanaDashboard,omitempty"`
	// Configures the main zync api component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	API *APISpec `json:"api,omitempty"`
	// Configures the zync que component
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	// +optional
	Que *QueSpec `json:"que,omitempty"`
}

ZyncSpec defines the desired state of Zync

func (*ZyncSpec) DeepCopy

func (in *ZyncSpec) DeepCopy() *ZyncSpec

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

func (*ZyncSpec) DeepCopyInto

func (in *ZyncSpec) DeepCopyInto(out *ZyncSpec)

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

func (*ZyncSpec) Default added in v0.12.0

func (spec *ZyncSpec) Default()

Default implements defaulting for ZyncSpec

type ZyncStatus

type ZyncStatus struct{}

ZyncStatus defines the observed state of Zync

func (*ZyncStatus) DeepCopy

func (in *ZyncStatus) DeepCopy() *ZyncStatus

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

func (*ZyncStatus) DeepCopyInto

func (in *ZyncStatus) DeepCopyInto(out *ZyncStatus)

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