Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the saas v1alpha1 API group +kubebuilder:object:generate=true +groupName=saas.3scale.net
Index ¶
- Constants
- Variables
- type APISpec
- type AddressSpec
- type AggregatedStatus
- func (in *AggregatedStatus) DeepCopy() *AggregatedStatus
- func (in *AggregatedStatus) DeepCopyInto(out *AggregatedStatus)
- func (status *AggregatedStatus) GetAggregatedHealthStatus() string
- func (status *AggregatedStatus) GetDeploymentStatus(key types.NamespacedName) *appsv1.DeploymentStatus
- func (status *AggregatedStatus) GetHealthMessage(key types.NamespacedName) string
- func (status *AggregatedStatus) GetHealthStatus(key types.NamespacedName) string
- func (status *AggregatedStatus) GetStatefulSetStatus(key types.NamespacedName) *appsv1.StatefulSetStatus
- func (status *AggregatedStatus) Init(key types.NamespacedName)
- func (status *AggregatedStatus) SetAggregatedHealthStatus(s string)
- func (status *AggregatedStatus) SetDeploymentStatus(key types.NamespacedName, s *appsv1.DeploymentStatus)
- func (status *AggregatedStatus) SetHealthMessage(key types.NamespacedName, msg string)
- func (status *AggregatedStatus) SetHealthStatus(key types.NamespacedName, s string)
- func (status *AggregatedStatus) SetStatefulSetStatus(key types.NamespacedName, s *appsv1.StatefulSetStatus)
- type Apicast
- type ApicastConfig
- type ApicastEnvironmentSpec
- type ApicastList
- type ApicastSpec
- type ApicastStatus
- type AssetsSpec
- type AutoSSL
- type AutoSSLConfig
- type AutoSSLList
- type AutoSSLSpec
- type AutoSSLStatus
- type Backend
- type BackendConfig
- type BackendList
- type BackendSpec
- type BackendStatus
- type BackupState
- type BackupStatus
- type BackupStatusList
- type BugsnagSpec
- type CORSProxy
- type CORSProxyConfig
- type CORSProxyList
- type CORSProxySpec
- type CORSProxyStatus
- type Canary
- type Cluster
- type CronSpec
- type DeploymentStrategySpec
- type EchoAPI
- type EchoAPIList
- type EchoAPISpec
- type EchoAPIStatus
- type ElasticLoadBalancerSpec
- type Endpoint
- type EnvoyDynamicConfig
- func (config *EnvoyDynamicConfig) AsEnvoyDynamicConfigDescriptor(name string) envoyconfig.EnvoyDynamicConfigDescriptor
- func (in *EnvoyDynamicConfig) DeepCopy() *EnvoyDynamicConfig
- func (in *EnvoyDynamicConfig) DeepCopyInto(out *EnvoyDynamicConfig)
- func (config *EnvoyDynamicConfig) GetGeneratorVersion() string
- func (config *EnvoyDynamicConfig) GetName() string
- func (config *EnvoyDynamicConfig) GetOptions() any
- type ExternalSecret
- type ExternalSecretSecretStoreReferenceSpec
- func (in *ExternalSecretSecretStoreReferenceSpec) DeepCopy() *ExternalSecretSecretStoreReferenceSpec
- func (in *ExternalSecretSecretStoreReferenceSpec) DeepCopyInto(out *ExternalSecretSecretStoreReferenceSpec)
- func (spec *ExternalSecretSecretStoreReferenceSpec) Default(def defaultExternalSecretSecretStoreReferenceSpec)
- type GithubSpec
- type GrafanaDashboardSpec
- type HorizontalPodAutoscalerSpec
- func (in *HorizontalPodAutoscalerSpec) DeepCopy() *HorizontalPodAutoscalerSpec
- func (in *HorizontalPodAutoscalerSpec) DeepCopyInto(out *HorizontalPodAutoscalerSpec)
- func (spec *HorizontalPodAutoscalerSpec) Default(def defaultHorizontalPodAutoscalerSpec)
- func (spec *HorizontalPodAutoscalerSpec) IsDeactivated() bool
- type ImageSpec
- type ListenerConfig
- type ListenerHttp
- type ListenerSpec
- type MapOfEnvoyDynamicConfig
- type MappingService
- type MappingServiceConfig
- type MappingServiceList
- type MappingServiceSpec
- type MappingServiceStatus
- type Marin3rSidecarSpec
- type MonitoredShard
- type MonitoredShards
- type NetworkLoadBalancerSpec
- type PodDisruptionBudgetSpec
- type ProbeSpec
- type PublishingStrategies
- type PublishingStrategiesReconcileMode
- type PublishingStrategy
- type QueSpec
- type RateLimitOptions
- type RawConfig
- type RedHatCustomerPortalSpec
- type RedisServerDetails
- type RedisShard
- type RedisShardList
- type RedisShardNodes
- func (in *RedisShardNodes) DeepCopy() *RedisShardNodes
- func (in *RedisShardNodes) DeepCopyInto(out *RedisShardNodes)
- func (rsn *RedisShardNodes) GetAliasByPodIndex(podIndex int) string
- func (rsn *RedisShardNodes) GetHostPortByPodIndex(podIndex int) string
- func (rsn *RedisShardNodes) GetIndexByHostPort(hostport string) int
- func (rsn *RedisShardNodes) GetNodeByPodIndex(podIndex int) (string, string)
- func (rsn *RedisShardNodes) MasterHostPort() string
- type RedisShardSpec
- type RedisShardStatus
- type RedisSpec
- type ResourceRequirementsSpec
- type RouteConfiguration
- type Runtime
- type S3Options
- type SMTPSpec
- type SSHOptions
- type SearchServerSpec
- type SearchdConfig
- type SecretReference
- type SeedSecretReference
- type SegmentSpec
- type Sentinel
- type SentinelConfig
- type SentinelList
- type SentinelSpec
- type SentinelStatus
- type ServiceType
- type ShardedRedisBackup
- type ShardedRedisBackupList
- type ShardedRedisBackupSpec
- type ShardedRedisBackupStatus
- func (status *ShardedRedisBackupStatus) AddBackup(b BackupStatus)
- func (status *ShardedRedisBackupStatus) ApplyHistoryLimit(limit int32, shards []string) bool
- func (in *ShardedRedisBackupStatus) DeepCopy() *ShardedRedisBackupStatus
- func (in *ShardedRedisBackupStatus) DeepCopyInto(out *ShardedRedisBackupStatus)
- func (status *ShardedRedisBackupStatus) DeleteBackup(pos int)
- func (status *ShardedRedisBackupStatus) FindLastBackup(shardName string, state BackupState) (*BackupStatus, int)
- func (status *ShardedRedisBackupStatus) GetRunningBackups() []*BackupStatus
- type ShardedRedisTopology
- type SidecarPort
- type SidekiqConfig
- type Simple
- type Strategy
- type System
- type SystemApicastEndpointsSpec
- type SystemAppSpec
- type SystemBackendSpec
- type SystemConfig
- type SystemList
- type SystemRailsConsoleSpec
- type SystemRailsSpec
- type SystemRecaptchaSpec
- type SystemSearchdSpec
- type SystemSidekiqSpec
- type SystemSpec
- type SystemStatus
- type SystemTektonTaskConfig
- type SystemTektonTaskSpec
- type SystemZyncSpec
- type TargetRedisServers
- type TargetServer
- type TwemproxyConfig
- type TwemproxyConfigList
- type TwemproxyConfigSpec
- type TwemproxyConfigStatus
- type TwemproxyOptions
- type TwemproxyServerPool
- type TwemproxySpec
- type VaultSecretReference
- type WorkerConfig
- type WorkerSpec
- type WorkloadStatus
- type Zync
- type ZyncConfig
- type ZyncList
- type ZyncRailsConsoleSpec
- type ZyncRailsSpec
- type ZyncSpec
- type ZyncStatus
Constants ¶
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" // The name for the default seed Secret DefaultSeedSecret string = "saas-seed" )
const ( AWSAccessKeyID_SecretKey string = "AWS_ACCESS_KEY_ID" AWSSecretAccessKey_SecretKey string = "AWS_SECRET_ACCESS_KEY" BackupFile string = "redis_backup.rdb" )
const ( Default systemSidekiqType = "default" Billing systemSidekiqType = "billing" Low systemSidekiqType = "low" )
const ( // SentinelPort is the port where sentinel process listens SentinelPort uint32 = 26379 )
Variables ¶
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 )
var ( SentinelDefaultReplicas int32 = 3 SentinelDefaultQuorum int = 2 )
bitnami/redis-sentinel:4.0.11-debian-9-r110
var ( TwemproxyPodSyncLabelKey string = GroupVersion.Group + "/twemproxyconfig.sync" TwemproxySyncAnnotationKey string = GroupVersion.Group + "/twemproxyconfig.configmap-hash" )
var (
RedisShardDefaultReplicas int32 = 3
)
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"`
// Describes how the services provided by this workload are exposed to its consumers
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
PublishingStrategies *PublishingStrategies `json:"publishingStrategies,omitempty"`
}
APISpec is the configuration for main Zync api component
func (*APISpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APISpec.
func (*APISpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AddressSpec ¶
type AddressSpec struct {
// Defines the address host
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Host *string `json:"host,omitempty"`
// Defines the address port
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Port *int32 `json:"port,omitempty"`
}
AddressSpec allows the definition of an address
func (*AddressSpec) DeepCopy ¶
func (in *AddressSpec) DeepCopy() *AddressSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AddressSpec.
func (*AddressSpec) DeepCopyInto ¶
func (in *AddressSpec) DeepCopyInto(out *AddressSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AggregatedStatus ¶
type AggregatedStatus struct {
// Health is the overall health of the custom resource
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
Health string `json:"health,omitempty"`
// OwnedWorkloads is a map with the health statuses of individual owned workloads
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
OwnedWorkloads map[string]*WorkloadStatus `json:"ownedWorkloads,omitempty"`
}
func (*AggregatedStatus) DeepCopy ¶
func (in *AggregatedStatus) DeepCopy() *AggregatedStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AggregatedStatus.
func (*AggregatedStatus) DeepCopyInto ¶
func (in *AggregatedStatus) DeepCopyInto(out *AggregatedStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AggregatedStatus) GetAggregatedHealthStatus ¶
func (status *AggregatedStatus) GetAggregatedHealthStatus() string
func (*AggregatedStatus) GetDeploymentStatus ¶
func (status *AggregatedStatus) GetDeploymentStatus(key types.NamespacedName) *appsv1.DeploymentStatus
func (*AggregatedStatus) GetHealthMessage ¶
func (status *AggregatedStatus) GetHealthMessage(key types.NamespacedName) string
func (*AggregatedStatus) GetHealthStatus ¶
func (status *AggregatedStatus) GetHealthStatus(key types.NamespacedName) string
func (*AggregatedStatus) GetStatefulSetStatus ¶
func (status *AggregatedStatus) GetStatefulSetStatus(key types.NamespacedName) *appsv1.StatefulSetStatus
func (*AggregatedStatus) Init ¶
func (status *AggregatedStatus) Init(key types.NamespacedName)
func (*AggregatedStatus) SetAggregatedHealthStatus ¶
func (status *AggregatedStatus) SetAggregatedHealthStatus(s string)
func (*AggregatedStatus) SetDeploymentStatus ¶
func (status *AggregatedStatus) SetDeploymentStatus(key types.NamespacedName, s *appsv1.DeploymentStatus)
func (*AggregatedStatus) SetHealthMessage ¶
func (status *AggregatedStatus) SetHealthMessage(key types.NamespacedName, msg string)
func (*AggregatedStatus) SetHealthStatus ¶
func (status *AggregatedStatus) SetHealthStatus(key types.NamespacedName, s string)
func (*AggregatedStatus) SetStatefulSetStatus ¶
func (status *AggregatedStatus) SetStatefulSetStatus(key types.NamespacedName, s *appsv1.StatefulSetStatus)
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Apicast.
func (*Apicast) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Apicast) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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"`
// 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"`
// Describes how the services provided by this workload are exposed to its consumers
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
PublishingStrategies *PublishingStrategies `json:"publishingStrategies,omitempty"`
// The external endpoint/s for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Endpoint *Endpoint `json:"endpoint,omitempty"`
// Marin3r configures the Marin3r sidecars for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Marin3r *Marin3rSidecarSpec `json:"marin3r,omitempty"`
// Configures the AWS load balancer for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
LoadBalancer *ElasticLoadBalancerSpec `json:"loadBalancer,omitempty"`
}
ApicastEnvironmentSpec is the configuration for an Apicast environment
func (*ApicastEnvironmentSpec) DeepCopy ¶
func (in *ApicastEnvironmentSpec) DeepCopy() *ApicastEnvironmentSpec
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) 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.
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 ¶
func (spec *ApicastSpec) Default()
Default implements defaulting for ApicastSpec
func (*ApicastSpec) ResolveCanarySpec ¶
func (spec *ApicastSpec) ResolveCanarySpec(canary *Canary) (*ApicastSpec, error)
ResolveCanarySpec modifies the BackendSpec given the provided canary configuration
type ApicastStatus ¶
type ApicastStatus struct {
AggregatedStatus `json:",inline"`
}
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"`
// Assets custom S3 endpoint
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
S3Endpoint *string `json:"s3Endpoint,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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoSSL.
func (*AutoSSL) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AutoSSL) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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) 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.
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 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"`
// 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"`
// Describes how the services provided by this workload are exposed to its consumers
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
PublishingStrategies *PublishingStrategies `json:"publishingStrategies,omitempty"`
// The external endpoint/s for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Endpoint *Endpoint `json:"endpoint,omitempty"`
// Configures the AWS load balancer for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
LoadBalancer *ElasticLoadBalancerSpec `json:"loadBalancer,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 ¶
func (spec *AutoSSLSpec) Default()
Default implements defaulting for AutoSSLSpec
func (*AutoSSLSpec) ResolveCanarySpec ¶
func (spec *AutoSSLSpec) ResolveCanarySpec(canary *Canary) (*AutoSSLSpec, error)
ResolveCanarySpec modifies the AutoSSLSpec given the provided canary configuration
type AutoSSLStatus ¶
type AutoSSLStatus struct {
AggregatedStatus `json:",inline"`
}
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backend.
func (*Backend) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Backend) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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) 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.
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 ¶
func (spec *BackendSpec) Default()
Default implements defaulting for BackendSpec
func (*BackendSpec) ResolveCanarySpec ¶
func (spec *BackendSpec) ResolveCanarySpec(canary *Canary) (*BackendSpec, error)
ResolveCanarySpec modifies the BackendSpec given the provided canary configuration
type BackendStatus ¶
type BackendStatus struct {
AggregatedStatus `json:",inline"`
}
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 BackupState ¶
type BackupState string
const ( BackupPendingState BackupState = "Pending" BackupRunningState BackupState = "Running" BackupCompletedState BackupState = "Completed" BackupFailedState BackupState = "Failed" BackupUnknownState BackupState = "Unknown" )
type BackupStatus ¶
type BackupStatus struct {
// Name of the shard
// +operator-sdk:csv:customresourcedefinitions:type=spec
Shard string `json:"shard"`
// Redis server alias
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ServerAlias *string `json:"serverAlias,omitempty"`
// Server host:port
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ServerID *string `json:"serverID,omitempty"`
// Scheduled time for the backup to start
// +operator-sdk:csv:customresourcedefinitions:type=spec
ScheduledFor metav1.Time `json:"scheduledFor"`
// Actual time the backup starts
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
StartedAt *metav1.Time `json:"startedAt,omitempty"`
// when the backup was completed
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
FinishedAt *metav1.Time `json:"finishedAt,omitempty"`
// Descriptive message of the backup status
// +operator-sdk:csv:customresourcedefinitions:type=spec
Message string `json:"message"`
// Backup status
// +operator-sdk:csv:customresourcedefinitions:type=spec
State BackupState `json:"state"`
// Final storage location of the backup
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
BackupFile *string `json:"backupFile"`
// Stored size of the backup in bytes
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
BackupSize *int64 `json:"backupSize"`
}
func (*BackupStatus) DeepCopy ¶
func (in *BackupStatus) DeepCopy() *BackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStatus.
func (*BackupStatus) DeepCopyInto ¶
func (in *BackupStatus) DeepCopyInto(out *BackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BackupStatusList ¶
type BackupStatusList []BackupStatus
func (BackupStatusList) DeepCopy ¶
func (in BackupStatusList) DeepCopy() BackupStatusList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BackupStatusList.
func (BackupStatusList) DeepCopyInto ¶
func (in BackupStatusList) DeepCopyInto(out *BackupStatusList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (BackupStatusList) Len ¶
func (bsl BackupStatusList) Len() int
func (BackupStatusList) Less ¶
func (bsl BackupStatusList) Less(i, j int) bool
func (BackupStatusList) Swap ¶
func (bsl BackupStatusList) Swap(i, j int)
type BugsnagSpec ¶
type BugsnagSpec struct {
// Release Stage to identify environment
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ReleaseStage *string `json:"releaseStage,omitempty"`
// 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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CORSProxy.
func (*CORSProxy) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CORSProxy) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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) 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.
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"`
// Describes how the services provided by this workload are exposed to its consumers
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
PublishingStrategies *PublishingStrategies `json:"publishingStrategies,omitempty"`
}
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 ¶
func (spec *CORSProxySpec) Default()
Default implements defaulting for CORSProxySpec
type CORSProxyStatus ¶
type CORSProxyStatus struct {
AggregatedStatus `json:",inline"`
}
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 ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Canary.
func (*Canary) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cluster ¶
type Cluster struct {
// The upstream host
// +operator-sdk:csv:customresourcedefinitions:type=spec
Host string `json:"host"`
// The upstream port
// +operator-sdk:csv:customresourcedefinitions:type=spec
Port uint32 `json:"port"`
// Specifies if the upstream cluster is http2 or not (default).
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:default:=false
// +optional
IsHttp2 *bool `json:"isHttp2"`
}
Cluster contains options for an Envoy cluster protobuffer message
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CronSpec.
func (*CronSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentStrategySpec ¶
type DeploymentStrategySpec struct {
// Type of deployment. Can be "Recreate" or "RollingUpdate". Default is RollingUpdate.
// +optional
Type appsv1.DeploymentStrategyType `json:"type,omitempty"`
// Rolling update config params. Present only if DeploymentStrategyType =
// RollingUpdate.
// +optional
RollingUpdate *appsv1.RollingUpdateDeployment `json:"rollingUpdate,omitempty"`
}
func InitializeDeploymentStrategySpec ¶
func InitializeDeploymentStrategySpec(spec *DeploymentStrategySpec, def defaultDeploymentRollingStrategySpec) *DeploymentStrategySpec
InitializeDeploymentStrategySpec initializes a DeploymentStrategySpec struct
func (*DeploymentStrategySpec) DeepCopy ¶
func (in *DeploymentStrategySpec) DeepCopy() *DeploymentStrategySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentStrategySpec.
func (*DeploymentStrategySpec) DeepCopyInto ¶
func (in *DeploymentStrategySpec) DeepCopyInto(out *DeploymentStrategySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DeploymentStrategySpec) Default ¶
func (spec *DeploymentStrategySpec) Default(def defaultDeploymentRollingStrategySpec)
Default sets default values for any value not specifically set in the DeploymentStrategySpec struct
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EchoAPI.
func (*EchoAPI) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EchoAPI) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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) 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.
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"`
// 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"`
// Describes how the services provided by this workload are exposed to its consumers
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
PublishingStrategies *PublishingStrategies `json:"publishingStrategies,omitempty"`
// The external endpoint/s for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Endpoint *Endpoint `json:"endpoint,omitempty"`
// Marin3r configures the Marin3r sidecars for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Marin3r *Marin3rSidecarSpec `json:"marin3r,omitempty"`
// Configures the AWS load balancer for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
LoadBalancer *NetworkLoadBalancerSpec `json:"loadBalancer,omitempty"`
}
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 ¶
func (spec *EchoAPISpec) Default()
Default implements defaulting for EchoAPI
type EchoAPIStatus ¶
type EchoAPIStatus struct {
AggregatedStatus `json:",inline"`
}
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 ElasticLoadBalancerSpec ¶
type ElasticLoadBalancerSpec 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"`
}
ElasticLoadBalancerSpec configures the AWS load balancer for the component
var DefaultElasticLoadBalancerSpec ElasticLoadBalancerSpec = ElasticLoadBalancerSpec{ ProxyProtocol: ptr.To(true), CrossZoneLoadBalancingEnabled: ptr.To(true), ConnectionDrainingEnabled: ptr.To(true), ConnectionDrainingTimeout: ptr.To[int32](60), HealthcheckHealthyThreshold: ptr.To[int32](2), HealthcheckUnhealthyThreshold: ptr.To[int32](2), HealthcheckInterval: ptr.To[int32](5), HealthcheckTimeout: ptr.To[int32](3), }
func InitializeElasticLoadBalancerSpec ¶
func InitializeElasticLoadBalancerSpec(spec *ElasticLoadBalancerSpec, def ElasticLoadBalancerSpec) *ElasticLoadBalancerSpec
InitializeElasticLoadBalancerSpec initializes a LoadBalancerSpec struct
func (*ElasticLoadBalancerSpec) DeepCopy ¶
func (in *ElasticLoadBalancerSpec) DeepCopy() *ElasticLoadBalancerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticLoadBalancerSpec.
func (*ElasticLoadBalancerSpec) DeepCopyInto ¶
func (in *ElasticLoadBalancerSpec) DeepCopyInto(out *ElasticLoadBalancerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ElasticLoadBalancerSpec) Default ¶
func (spec *ElasticLoadBalancerSpec) Default(def ElasticLoadBalancerSpec)
Default sets default values for any value not specifically set in the LoadBalancerSpec struct
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint.
func (*Endpoint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvoyDynamicConfig ¶
type EnvoyDynamicConfig struct {
// hidden field
Name string `json:"-"`
// GeneratorVersion specifies the version of a given template.
// "v1" is the default.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:default:=v1
// +optional
GeneratorVersion *string `json:"generatorVersion,omitempty"`
// ListenerHttp contains options for an HTTP/HTTPS listener
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ListenerHttp *ListenerHttp `json:"listenerHttp,omitempty"`
// RouteConfiguration contains options for an Envoy route_configuration
// protobuffer message
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
RouteConfiguration *RouteConfiguration `json:"routeConfiguration,omitempty"`
// Cluster contains options for an Envoy cluster protobuffer message
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Cluster *Cluster `json:"cluster,omitempty"`
// Runtime contains options for an Envoy runtime protobuffer message
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Runtime *Runtime `json:"runtime,omitempty"`
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
RawConfig *RawConfig `json:"rawConfig,omitempty"`
}
+kubebuilder:validation:MinProperties:=2 +kubebuilder:validation:MaxProperties:=2
func (*EnvoyDynamicConfig) AsEnvoyDynamicConfigDescriptor ¶
func (config *EnvoyDynamicConfig) AsEnvoyDynamicConfigDescriptor(name string) envoyconfig.EnvoyDynamicConfigDescriptor
AsEnvoyDynamicConfigDescriptor converts the external API type into the internal EnvoyDynamicConfigDescriptor interface. The name field is populated with the parameter passed to the function.
func (*EnvoyDynamicConfig) DeepCopy ¶
func (in *EnvoyDynamicConfig) DeepCopy() *EnvoyDynamicConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvoyDynamicConfig.
func (*EnvoyDynamicConfig) DeepCopyInto ¶
func (in *EnvoyDynamicConfig) DeepCopyInto(out *EnvoyDynamicConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EnvoyDynamicConfig) GetGeneratorVersion ¶
func (config *EnvoyDynamicConfig) GetGeneratorVersion() string
GetGeneratorVersion returns the template's version
func (*EnvoyDynamicConfig) GetName ¶
func (config *EnvoyDynamicConfig) GetName() string
func (*EnvoyDynamicConfig) GetOptions ¶
func (config *EnvoyDynamicConfig) GetOptions() any
type ExternalSecret ¶
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 ¶
func (in *ExternalSecret) DeepCopy() *ExternalSecret
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalSecret.
func (*ExternalSecret) DeepCopyInto ¶
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 ¶
func (spec *ExternalSecret) Default()
type ExternalSecretSecretStoreReferenceSpec ¶
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 ¶
func InitializeExternalSecretSecretStoreReferenceSpec(spec *ExternalSecretSecretStoreReferenceSpec, def defaultExternalSecretSecretStoreReferenceSpec) *ExternalSecretSecretStoreReferenceSpec
InitializeExternalSecretSecretStoreReferenceSpec initializes a ExternalSecretSecretStoreReferenceSpec struct
func (*ExternalSecretSecretStoreReferenceSpec) DeepCopy ¶
func (in *ExternalSecretSecretStoreReferenceSpec) DeepCopy() *ExternalSecretSecretStoreReferenceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalSecretSecretStoreReferenceSpec.
func (*ExternalSecretSecretStoreReferenceSpec) DeepCopyInto ¶
func (in *ExternalSecretSecretStoreReferenceSpec) DeepCopyInto(out *ExternalSecretSecretStoreReferenceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ExternalSecretSecretStoreReferenceSpec) Default ¶
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 ¶
func (in *GrafanaDashboardSpec) DeepCopy() *GrafanaDashboardSpec
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"`
// Behavior configures the scaling behavior of the target
// in both Up and Down directions (scaleUp and scaleDown fields respectively).
// If not set, the default HPAScalingRules for scale up and scale down are used.
// +optional
Behavior *autoscalingv2.HorizontalPodAutoscalerBehavior `json:"behavior,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 ¶
func (in *HorizontalPodAutoscalerSpec) DeepCopy() *HorizontalPodAutoscalerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HorizontalPodAutoscalerSpec.
func (*HorizontalPodAutoscalerSpec) DeepCopyInto ¶
func (in *HorizontalPodAutoscalerSpec) DeepCopyInto(out *HorizontalPodAutoscalerSpec)
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 ¶
InitializeImageSpec initializes a ImageSpec struct
func (*ImageSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ImageSpec.
func (*ImageSpec) DeepCopyInto ¶
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 ¶
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 ListenerHttp ¶
type ListenerHttp struct {
// The port where the listener listens for new connections
// +operator-sdk:csv:customresourcedefinitions:type=spec
Port uint32 `json:"port"`
// Whether proxy protocol should be enabled or not. Defaults to true.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:default:=true
// +optional
ProxyProtocol *bool `json:"proxyProtocol,omitempty"`
// The name of the RouteConfiguration to use in the listener
// +operator-sdk:csv:customresourcedefinitions:type=spec
RouteConfigName string `json:"routeConfigName"`
// The name of the Secret containing a valid certificate. If unset
// the listener will be http, if set https
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
CertificateSecretName *string `json:"certificateSecretName,omitempty"`
// Rate limit options for the ratelimit filter of the HTTP connection
// manager
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
RateLimitOptions *RateLimitOptions `json:"rateLimitOptions,omitempty"`
// If this filed is set, http 1.0 will be enabled and this will be
// the default hostname to use.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
DefaultHostForHttp10 *string `json:"defaultHostForHttp10,omitempty"`
// Enable http2 in the listener.Disabled by default.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:default:=false
// +optional
EnableHttp2 *bool `json:"enableHttp2,omitempty"`
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:default:=true
// +optional
// Allow headers with underscores
AllowHeadersWithUnderscores *bool `json:"allowHeadersWithUnderscores,omitempty"`
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
// Max connection duration. If unset no max connection duration will be applied.
MaxConnectionDuration *metav1.Duration `json:"maxConnectionDuration,omitempty"`
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
MaxRequestHeadersKb *uint32 `json:"maxRequestHeadersKb,omitempty"`
}
ListenerHttp contains options for an HTTP/HTTPS listener
func (*ListenerHttp) DeepCopy ¶
func (in *ListenerHttp) DeepCopy() *ListenerHttp
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ListenerHttp.
func (*ListenerHttp) DeepCopyInto ¶
func (in *ListenerHttp) DeepCopyInto(out *ListenerHttp)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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"`
// 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"`
// Describes how the services provided by this workload are exposed to its consumers
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
PublishingStrategies *PublishingStrategies `json:"publishingStrategies,omitempty"`
// The external endpoint/s for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Endpoint *Endpoint `json:"endpoint,omitempty"`
// Marin3r configures the Marin3r sidecars for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Marin3r *Marin3rSidecarSpec `json:"marin3r,omitempty"`
// Configures the AWS load balancer for the component
// DEPRECATED
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
LoadBalancer *NetworkLoadBalancerSpec `json:"loadBalancer,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 MapOfEnvoyDynamicConfig ¶
type MapOfEnvoyDynamicConfig map[string]EnvoyDynamicConfig
func (MapOfEnvoyDynamicConfig) AsList ¶
func (mapofconfs MapOfEnvoyDynamicConfig) AsList() []envoyconfig.EnvoyDynamicConfigDescriptor
AsList transforms from the map in the external API to the list of elements that the internal API expects.
func (MapOfEnvoyDynamicConfig) DeepCopy ¶
func (in MapOfEnvoyDynamicConfig) DeepCopy() MapOfEnvoyDynamicConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MapOfEnvoyDynamicConfig.
func (MapOfEnvoyDynamicConfig) DeepCopyInto ¶
func (in MapOfEnvoyDynamicConfig) DeepCopyInto(out *MapOfEnvoyDynamicConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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
func (*MappingService) GetStatus ¶
func (d *MappingService) GetStatus() any
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 ¶
func (in *MappingServiceConfig) DeepCopy() *MappingServiceConfig
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) 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.
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"`
// Describes how the services provided by this workload are exposed to its consumers
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
PublishingStrategies *PublishingStrategies `json:"publishingStrategies,omitempty"`
}
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 ¶
func (spec *MappingServiceSpec) Default()
Default implements defaulting for MappingServiceSpec
type MappingServiceStatus ¶
type MappingServiceStatus struct {
AggregatedStatus `json:",inline"`
}
MappingServiceStatus defines the observed state of MappingService
func (*MappingServiceStatus) DeepCopy ¶
func (in *MappingServiceStatus) DeepCopy() *MappingServiceStatus
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 {
*Simple `json:",inline"`
// 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 the sidecar 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"`
// Envoy dynamic configuration. Populating this field causes the operator
// to create a Marin3r EnvoyConfig resource, so Marin3r must be installed
// in the cluster.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
EnvoyDynamicConfig MapOfEnvoyDynamicConfig `json:"dynamicConfigs,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 ¶
type MonitoredShard struct {
// Name is the name of the redis shard
// +operator-sdk:csv:customresourcedefinitions:type=status
Name string `json:"name"`
// Server is a map intended to store configuration information
// of each of the RedisServer instances that belong to the MonitoredShard
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
Servers map[string]RedisServerDetails `json:"servers,omitempty"`
}
MonitoredShard contains information of one of the shards monitored by the Sentinel resource
func (*MonitoredShard) DeepCopy ¶
func (in *MonitoredShard) DeepCopy() *MonitoredShard
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoredShard.
func (*MonitoredShard) DeepCopyInto ¶
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 ¶
type MonitoredShards []MonitoredShard
func (MonitoredShards) DeepCopy ¶
func (in MonitoredShards) DeepCopy() MonitoredShards
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoredShards.
func (MonitoredShards) DeepCopyInto ¶
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 ¶
func (ms MonitoredShards) Len() int
MonitoredShards implements sort.Interface based on the Name field.
func (MonitoredShards) Less ¶
func (ms MonitoredShards) Less(i, j int) bool
func (MonitoredShards) Swap ¶
func (ms MonitoredShards) Swap(i, j int)
type NetworkLoadBalancerSpec ¶
type NetworkLoadBalancerSpec 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"`
// Optionally specify the load balancer name
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
LoadBalancerName *string `json:"loadBalancerName,omitempty"`
// Deletion protection setting
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
DeletionProtection *bool `json:"deletionProtection,omitempty"`
}
NetworkLoadBalancerSpec configures the AWS NLB load balancer for the component
func InitializeNetworkLoadBalancerSpec ¶
func InitializeNetworkLoadBalancerSpec(spec *NetworkLoadBalancerSpec, def NetworkLoadBalancerSpec) *NetworkLoadBalancerSpec
InitializeNetworkLoadBalancerSpec initializes a NLBLoadBalancerSpec struct
func (*NetworkLoadBalancerSpec) DeepCopy ¶
func (in *NetworkLoadBalancerSpec) DeepCopy() *NetworkLoadBalancerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworkLoadBalancerSpec.
func (*NetworkLoadBalancerSpec) DeepCopyInto ¶
func (in *NetworkLoadBalancerSpec) DeepCopyInto(out *NetworkLoadBalancerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NetworkLoadBalancerSpec) Default ¶
func (spec *NetworkLoadBalancerSpec) Default(def NetworkLoadBalancerSpec)
Default sets default values for any value not specifically set in the NLBLoadBalancerSpec 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"`
// "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 ¶
func (in *PodDisruptionBudgetSpec) DeepCopy() *PodDisruptionBudgetSpec
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 ¶
InitializeProbeSpec initializes a ProbeSpec struct
func (*ProbeSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProbeSpec.
func (*ProbeSpec) DeepCopyInto ¶
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 ¶
type PublishingStrategies ¶
type PublishingStrategies struct {
// PublishingStrategiesReconcileMode specifies if the list of strategies
// should be merged with the defaults or replace them entirely. Allowed values
// are "Merge" or "Replace". "Replace" strategy should be used to enable 2 strategies
// at the same time for a single endpoint.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:validation:Enum=Merge;Replace
// +optional
Mode *PublishingStrategiesReconcileMode `json:"mode,omitempty"`
// Endpoints holds the list of publishing strategies for each workload endpoint.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Endpoints []PublishingStrategy `json:"endpoints,omitempty"`
}
func InitializePublishingStrategies ¶
func InitializePublishingStrategies(spec *PublishingStrategies) *PublishingStrategies
InitializePublishingStrategies initializes a PublishingStrategies struct
func (*PublishingStrategies) DeepCopy ¶
func (in *PublishingStrategies) DeepCopy() *PublishingStrategies
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublishingStrategies.
func (*PublishingStrategies) DeepCopyInto ¶
func (in *PublishingStrategies) DeepCopyInto(out *PublishingStrategies)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PublishingStrategies) Default ¶
func (ps *PublishingStrategies) Default()
type PublishingStrategiesReconcileMode ¶
type PublishingStrategiesReconcileMode string
const ( PublishingStrategiesReconcileModeMerge PublishingStrategiesReconcileMode = "Merge" PublishingStrategiesReconcileModeReplace PublishingStrategiesReconcileMode = "Replace" )
type PublishingStrategy ¶
type PublishingStrategy struct {
// Strategy defines the type of publishing strategy
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:validation:Enum=Simple;Marin3rSidecar
Strategy Strategy `json:"strategy"`
// EndpointName defines the endpoint affected by this publishing strategy
// +operator-sdk:csv:customresourcedefinitions:type=spec
EndpointName string `json:"name"`
// Simple holds configuration for the Simple publishing strategy
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Simple *Simple `json:"simple,omitempty"`
// Marin3rSidecar holds configuration for the Marin3rSidecar publishing strategy
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Marin3rSidecar *Marin3rSidecarSpec `json:"marin3rSidecar,omitempty"`
// Create explicitly tells the controller that this is a new endpoint that
// should be added. Default is false, causing the controller to error when seeing
// an unknown endpoint.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Create *bool `json:"create,omitempty"`
}
func (*PublishingStrategy) DeepCopy ¶
func (in *PublishingStrategy) DeepCopy() *PublishingStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublishingStrategy.
func (*PublishingStrategy) DeepCopyInto ¶
func (in *PublishingStrategy) DeepCopyInto(out *PublishingStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueSpec.
func (*QueSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RateLimitOptions ¶
type RateLimitOptions struct {
// The rate limit domain
// +operator-sdk:csv:customresourcedefinitions:type=spec
Domain string `json:"domain"`
// Whether to allow requests or not if the rate limit service
// is unavailable
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:default:=false
// +optional
FailureModeDeny *bool `json:"failureModeDeny,omitempty"`
// Max time to wait for a response from the rate limit service
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:validation:Format:=duration
Timeout metav1.Duration `json:"timeout"`
// Location of the rate limit service. Must point to one of the
// defined clusters.
// +operator-sdk:csv:customresourcedefinitions:type=spec
RateLimitCluster string `json:"rateLimitCluster"`
}
RateLimitOptions contains options for the ratelimit filter of the http connection manager
func (*RateLimitOptions) DeepCopy ¶
func (in *RateLimitOptions) DeepCopy() *RateLimitOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RateLimitOptions.
func (*RateLimitOptions) DeepCopyInto ¶
func (in *RateLimitOptions) DeepCopyInto(out *RateLimitOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RawConfig ¶
type RawConfig struct {
// Type is the type url for the protobuf message
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +kubebuilder:validation:Enum=listener;routeConfiguration;cluster;runtime
Type string `json:"type"`
// +operator-sdk:csv:customresourcedefinitions:type=spec
// Allows defining configuration using directly envoy's config API.
// WARNING: no validation of this field's value is performed before
// writing the custom resource to etcd.
Value runtime.RawExtension `json:"value"`
}
RawConfig is a struct with methods to manage a configuration defined using directly the Envoy config API
func (*RawConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RawConfig.
func (*RawConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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"`
// Realm
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Realm *string `json:"realm,omitempty"`
}
RedHatCustomerPortalSpec has configuration for integration with Red Hat Customer Portal
func (*RedHatCustomerPortalSpec) DeepCopy ¶
func (in *RedHatCustomerPortalSpec) DeepCopy() *RedHatCustomerPortalSpec
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 RedisServerDetails ¶
type RedisServerDetails struct {
// +operator-sdk:csv:customresourcedefinitions:type=status
Role client.Role `json:"role"`
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
Address string `json:"address,omitempty"`
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
Config map[string]string `json:"config,omitempty"`
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
Info map[string]string `json:"info,omitempty"`
}
func (*RedisServerDetails) DeepCopy ¶
func (in *RedisServerDetails) DeepCopy() *RedisServerDetails
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisServerDetails.
func (*RedisServerDetails) DeepCopyInto ¶
func (in *RedisServerDetails) DeepCopyInto(out *RedisServerDetails)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RedisShard ¶
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 ¶
func (in *RedisShard) DeepCopy() *RedisShard
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisShard.
func (*RedisShard) DeepCopyInto ¶
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 ¶
func (in *RedisShard) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*RedisShard) Default ¶
func (rs *RedisShard) Default()
Default implements defaulting for the RedisShard resource
func (*RedisShard) GetStatus ¶
func (d *RedisShard) GetStatus() any
type RedisShardList ¶
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 ¶
func (in *RedisShardList) DeepCopy() *RedisShardList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisShardList.
func (*RedisShardList) DeepCopyInto ¶
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 ¶
func (in *RedisShardList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RedisShardNodes ¶
type RedisShardNodes struct {
// Master is the node that acts as master role in the redis shard
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
Master map[string]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 map[string]string `json:"slaves,omitempty"`
}
func (*RedisShardNodes) DeepCopy ¶
func (in *RedisShardNodes) DeepCopy() *RedisShardNodes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisShardNodes.
func (*RedisShardNodes) DeepCopyInto ¶
func (in *RedisShardNodes) DeepCopyInto(out *RedisShardNodes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RedisShardNodes) GetAliasByPodIndex ¶
func (rsn *RedisShardNodes) GetAliasByPodIndex(podIndex int) string
func (*RedisShardNodes) GetHostPortByPodIndex ¶
func (rsn *RedisShardNodes) GetHostPortByPodIndex(podIndex int) string
func (*RedisShardNodes) GetIndexByHostPort ¶
func (rsn *RedisShardNodes) GetIndexByHostPort(hostport string) int
func (*RedisShardNodes) GetNodeByPodIndex ¶
func (rsn *RedisShardNodes) GetNodeByPodIndex(podIndex int) (string, string)
func (*RedisShardNodes) MasterHostPort ¶
func (rsn *RedisShardNodes) MasterHostPort() string
type RedisShardSpec ¶
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"`
// Command overrides the redis container command
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Command *string `json:"command,omitempty"`
}
RedisShardSpec defines the desired state of RedisShard
func (*RedisShardSpec) DeepCopy ¶
func (in *RedisShardSpec) DeepCopy() *RedisShardSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisShardSpec.
func (*RedisShardSpec) DeepCopyInto ¶
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 ¶
func (spec *RedisShardSpec) Default()
Default implements defaulting for RedisShardSpec
type RedisShardStatus ¶
type RedisShardStatus struct {
AggregatedStatus `json:",inline"`
// 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 ¶
func (in *RedisShardStatus) DeepCopy() *RedisShardStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisShardStatus.
func (*RedisShardStatus) DeepCopyInto ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisSpec.
func (*RedisSpec) DeepCopyInto ¶
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"`
// Claims lists the names of resources, defined in spec.resourceClaims,
// that are used by this container.
//
// This is an alpha field and requires enabling the
// DynamicResourceAllocation feature gate.
//
// This field is immutable.
//
// +listType=map
// +listMapKey=name
// +featureGate=DynamicResourceAllocation
// +optional
Claims []corev1.ResourceClaim `json:"claims,omitempty" protobuf:"bytes,3,opt,name=claims"`
}
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 ¶
func (in *ResourceRequirementsSpec) DeepCopy() *ResourceRequirementsSpec
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 RouteConfiguration ¶
type RouteConfiguration struct {
// The virtual_hosts definitions for this route configuration.
// Virtual hosts must be specified using directly Envoy's API
// +operator-sdk:csv:customresourcedefinitions:type=spec
VirtualHosts []runtime.RawExtension `json:"virtualHosts"`
}
RouteConfiguration contains options for an Envoy route_configuration protobuffer message
func (*RouteConfiguration) DeepCopy ¶
func (in *RouteConfiguration) DeepCopy() *RouteConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteConfiguration.
func (*RouteConfiguration) DeepCopyInto ¶
func (in *RouteConfiguration) DeepCopyInto(out *RouteConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Runtime ¶
type Runtime struct {
// The list of listeners to apply overload protection limits to
// +operator-sdk:csv:customresourcedefinitions:type=spec
ListenerNames []string `json:"listenerNames"`
}
Runtime contains options for an Envoy runtime protobuffer message
func (*Runtime) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Runtime.
func (*Runtime) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type S3Options ¶
type S3Options struct {
// S3 bucket name
// +operator-sdk:csv:customresourcedefinitions:type=spec
Bucket string `json:"bucket"`
// S3 path where backups should be uploaded
// +operator-sdk:csv:customresourcedefinitions:type=spec
Path string `json:"path"`
// AWS region
// +operator-sdk:csv:customresourcedefinitions:type=spec
Region string `json:"region"`
// Reference to a Secret tha contains credentials to access S3 API. The credentials
// must have the following permissions: s3:GetObject, s3:PutObject, and s3:ListBucket,
// s3:ListObjects, s3:PutObjectTagging.
// +operator-sdk:csv:customresourcedefinitions:type=spec
CredentialsSecretRef corev1.LocalObjectReference `json:"credentialsSecretRef"`
// Optionally use a custom s3 service endpoint. Useful for testing with Minio.
// +optional
// +operator-sdk:csv:customresourcedefinitions:type=spec
ServiceEndpoint *string `json:"serviceEndpoint"`
}
func (*S3Options) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new S3Options.
func (*S3Options) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 STARTTLS
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
STARTTLS *bool `json:"starttls,omitempty"`
// Enable/disable auto STARTTLS
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
STARTTLSAuto *bool `json:"starttlsAuto,omitempty"`
}
SMTPSpec has options to configure system's SMTP
func (*SMTPSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SMTPSpec.
func (*SMTPSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SSHOptions ¶
type SSHOptions struct {
// SSH user
// +operator-sdk:csv:customresourcedefinitions:type=spec
User string `json:"user"`
// Reference to a Secret that contains the SSH private key
// +operator-sdk:csv:customresourcedefinitions:type=spec
PrivateKeySecretRef corev1.LocalObjectReference `json:"privateKeySecretRef"`
// SSH port (default is 22)
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Port *uint32 `json:"port,omitempty"`
// Use sudo to execute commands against the remote host
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Sudo *bool `json:"sudo,omitempty"`
}
func (*SSHOptions) DeepCopy ¶
func (in *SSHOptions) DeepCopy() *SSHOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SSHOptions.
func (*SSHOptions) DeepCopyInto ¶
func (in *SSHOptions) DeepCopyInto(out *SSHOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SSHOptions) Default ¶
func (opts *SSHOptions) Default()
type SearchServerSpec ¶
type SearchServerSpec struct {
AddressSpec `json:",inline"`
// Defines the batch size
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
BatchSize *int32 `json:"batchSize,omitempty"`
}
func (*SearchServerSpec) DeepCopy ¶
func (in *SearchServerSpec) DeepCopy() *SearchServerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SearchServerSpec.
func (*SearchServerSpec) DeepCopyInto ¶
func (in *SearchServerSpec) DeepCopyInto(out *SearchServerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SearchdConfig ¶
type SearchdConfig struct {
// Allows setting the service name for Searchd
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ServiceName *string `json:"serviceName,omitempty"`
// The TCP port Searchd will run its daemon on
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Port *int32 `json:"port,omitempty"`
// Searchd database path
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
DatabasePath *string `json:"databasePath,omitempty"`
// Searchd database storage size
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
DatabaseStorageSize *resource.Quantity `json:"databaseStorageSize,omitempty"`
// Searchd database storage type
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
DatabaseStorageClass *string `json:"databaseStorageClass,omitempty"`
}
SearchdConfig has configuration options for System's searchd
func (*SearchdConfig) DeepCopy ¶
func (in *SearchdConfig) DeepCopy() *SearchdConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SearchdConfig.
func (*SearchdConfig) DeepCopyInto ¶
func (in *SearchdConfig) DeepCopyInto(out *SearchdConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SearchdConfig) Default ¶
func (sc *SearchdConfig) Default()
Default implements defaulting for SearchdConfig
type SecretReference ¶
type SecretReference struct {
// FromVault is a reference to a secret key/value 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"`
// FromSeed will try to retrieve the secret value from
// the default seed Secret.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
FromSeed *SeedSecretReference `json:"fromSeed,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 SeedSecretReference ¶
type SeedSecretReference struct{}
SeedSecretReference represents options to retrieve the secret value from the default seed Secret. There are no configurable options at this point.
func (*SeedSecretReference) DeepCopy ¶
func (in *SeedSecretReference) DeepCopy() *SeedSecretReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SeedSecretReference.
func (*SeedSecretReference) DeepCopyInto ¶
func (in *SeedSecretReference) DeepCopyInto(out *SeedSecretReference)
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 ¶
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sentinel.
func (*Sentinel) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Sentinel) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SentinelConfig ¶
type SentinelConfig struct {
// Monitored shards indicates the redis servers that form
// part of each shard monitored by sentinel
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
MonitoredShards map[string][]string `json:"monitoredShards"`
// ClusterTopology indicates the redis servers that form
// part of each shard monitored by sentinel
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ClusterTopology map[string]map[string]string `json:"clusterTopology"`
// 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 ¶
func (in *SentinelConfig) DeepCopy() *SentinelConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelConfig.
func (*SentinelConfig) DeepCopyInto ¶
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 ¶
func (cfg *SentinelConfig) Default()
Default sets default values for any value not specifically set in the AutoSSLConfig struct
type SentinelList ¶
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 ¶
func (in *SentinelList) DeepCopy() *SentinelList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelList.
func (*SentinelList) DeepCopyInto ¶
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 ¶
func (in *SentinelList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SentinelSpec ¶
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 ¶
func (in *SentinelSpec) DeepCopy() *SentinelSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelSpec.
func (*SentinelSpec) DeepCopyInto ¶
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 ¶
func (spec *SentinelSpec) Default()
Default implements defaulting for SentinelSpec
type SentinelStatus ¶
type SentinelStatus struct {
AggregatedStatus `json:",inline"`
// 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 ¶
func (in *SentinelStatus) DeepCopy() *SentinelStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentinelStatus.
func (*SentinelStatus) DeepCopyInto ¶
func (in *SentinelStatus) DeepCopyInto(out *SentinelStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SentinelStatus) ShardedCluster ¶
func (ss *SentinelStatus) ShardedCluster(ctx context.Context, pool *redis.ServerPool) (*sharded.Cluster, error)
ShardedCluster returns a *sharded.Cluster struct from the information reported by the sentinel status instead of directly contacting sentinel/redis to gather the state of the cluster. This avoids calls to sentinel/redis but is less robust as it depends entirely on the Sentinel controller working properly and without delays. As of now, this is used in the SharededRedisBackup controller but not in the TwemproxyConfig controller.
type ServiceType ¶
type ServiceType string
const ( ServiceTypeClusterIP ServiceType = "ClusterIP" ServiceTypeNLB ServiceType = "NLB" ServiceTypeELB ServiceType = "ELB" )
type ShardedRedisBackup ¶
type ShardedRedisBackup struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ShardedRedisBackupSpec `json:"spec,omitempty"`
Status ShardedRedisBackupStatus `json:"status,omitempty"`
}
ShardedRedisBackup is the Schema for the shardedredisbackups API
func (*ShardedRedisBackup) DeepCopy ¶
func (in *ShardedRedisBackup) DeepCopy() *ShardedRedisBackup
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShardedRedisBackup.
func (*ShardedRedisBackup) DeepCopyInto ¶
func (in *ShardedRedisBackup) DeepCopyInto(out *ShardedRedisBackup)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ShardedRedisBackup) DeepCopyObject ¶
func (in *ShardedRedisBackup) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ShardedRedisBackup) Default ¶
func (srb *ShardedRedisBackup) Default()
Default implements defaulting for the Sentinel resource
type ShardedRedisBackupList ¶
type ShardedRedisBackupList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ShardedRedisBackup `json:"items"`
}
ShardedRedisBackupList contains a list of ShardedRedisBackup
func (*ShardedRedisBackupList) DeepCopy ¶
func (in *ShardedRedisBackupList) DeepCopy() *ShardedRedisBackupList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShardedRedisBackupList.
func (*ShardedRedisBackupList) DeepCopyInto ¶
func (in *ShardedRedisBackupList) DeepCopyInto(out *ShardedRedisBackupList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ShardedRedisBackupList) DeepCopyObject ¶
func (in *ShardedRedisBackupList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ShardedRedisBackupSpec ¶
type ShardedRedisBackupSpec struct {
// Reference to a sentinel instance
// +operator-sdk:csv:customresourcedefinitions:type=spec
SentinelRef string `json:"sentinelRef"`
// Cron-like schedule specification
// +operator-sdk:csv:customresourcedefinitions:type=spec
Schedule string `json:"schedule"`
// Name of the dbfile in the redis instances
// +operator-sdk:csv:customresourcedefinitions:type=spec
DBFile string `json:"dbFile"`
// SSH connection options
// +operator-sdk:csv:customresourcedefinitions:type=spec
SSHOptions SSHOptions `json:"sshOptions"`
// S3 storage options
// +operator-sdk:csv:customresourcedefinitions:type=spec
S3Options S3Options `json:"s3Options"`
// Max allowed time for a backup to complete
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Timeout *metav1.Duration `json:"timeout"`
// Max number of backup history to keep
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
HistoryLimit *int32 `json:"historyLimit,omitempty"`
// How frequently redis is polled for the BGSave status
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
PollInterval *metav1.Duration `json:"pollInterval,omitempty"`
// If true, backup execution is stopped
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Pause *bool `json:"pause,omitempty"`
}
ShardedRedisBackupSpec defines the desired state of ShardedRedisBackup
func (*ShardedRedisBackupSpec) DeepCopy ¶
func (in *ShardedRedisBackupSpec) DeepCopy() *ShardedRedisBackupSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShardedRedisBackupSpec.
func (*ShardedRedisBackupSpec) DeepCopyInto ¶
func (in *ShardedRedisBackupSpec) DeepCopyInto(out *ShardedRedisBackupSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ShardedRedisBackupSpec) Default ¶
func (spec *ShardedRedisBackupSpec) Default()
Default implements defaulting for ShardedRedisBackuppec
type ShardedRedisBackupStatus ¶
type ShardedRedisBackupStatus struct {
// +optional
Backups BackupStatusList `json:"backups,omitempty"`
}
ShardedRedisBackupStatus defines the observed state of ShardedRedisBackup
func (*ShardedRedisBackupStatus) AddBackup ¶
func (status *ShardedRedisBackupStatus) AddBackup(b BackupStatus)
func (*ShardedRedisBackupStatus) ApplyHistoryLimit ¶
func (status *ShardedRedisBackupStatus) ApplyHistoryLimit(limit int32, shards []string) bool
func (*ShardedRedisBackupStatus) DeepCopy ¶
func (in *ShardedRedisBackupStatus) DeepCopy() *ShardedRedisBackupStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShardedRedisBackupStatus.
func (*ShardedRedisBackupStatus) DeepCopyInto ¶
func (in *ShardedRedisBackupStatus) DeepCopyInto(out *ShardedRedisBackupStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ShardedRedisBackupStatus) DeleteBackup ¶
func (status *ShardedRedisBackupStatus) DeleteBackup(pos int)
func (*ShardedRedisBackupStatus) FindLastBackup ¶
func (status *ShardedRedisBackupStatus) FindLastBackup(shardName string, state BackupState) (*BackupStatus, int)
func (*ShardedRedisBackupStatus) GetRunningBackups ¶
func (status *ShardedRedisBackupStatus) GetRunningBackups() []*BackupStatus
type ShardedRedisTopology ¶
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 ¶
func (in *ShardedRedisTopology) DeepCopy() *ShardedRedisTopology
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShardedRedisTopology.
func (*ShardedRedisTopology) DeepCopyInto ¶
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 ¶
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 ¶
func (in *SidekiqConfig) DeepCopy() *SidekiqConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SidekiqConfig.
func (*SidekiqConfig) DeepCopyInto ¶
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 ¶
func (cfg *SidekiqConfig) Default(def defaultSidekiqConfig)
Default sets default values for any value not specifically set in the SidekiqConfig struct
type Simple ¶
type Simple struct {
// ServiceType defines the type of k8s Service to use for exposing
// the service to its consumers
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
// +kubebuilder:validation:Enum=ClusterIP;ELB;NLB
ServiceType *ServiceType `json:"serviceType,omitempty"`
// ExternalDnsHostnames defines the hostnames that ExternalDNS
// should configure records for external consumners to reach the service
// Only works with Services of type NLB/ELB
ExternalDnsHostnames []string `json:"externalDnsHostnames,omitempty"`
// ServiceNameOverride allows the user to override the generated
// Service name
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ServiceNameOverride *string `json:"serviceName,omitempty"`
// ServicePortsOverride allows the user to override the ports
// of a Service. It's a replace operation, so specify all the
// required ports.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ServicePortsOverride []corev1.ServicePort `json:"servicePorts,omitempty"`
// Classic LB configuration
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ElasticLoadBalancerConfig *ElasticLoadBalancerSpec `json:"elasticLoadBalancerConfig,omitempty"`
// NLB configuration
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
NetworkLoadBalancerConfig *NetworkLoadBalancerSpec `json:"networkLoadBalancerConfig,omitempty"`
}
func (*Simple) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Simple.
func (*Simple) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new System.
func (*System) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*System) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type SystemApicastEndpointsSpec ¶
type SystemApicastEndpointsSpec struct {
// Apicast Staging endpoint
StagingDomain string `json:"stagingDomain"`
// Apicast Production endpoint
ProductionDomain string `json:"productionDomain"`
// Policies registry URL for Apicast Cloud Hosteed
CloudHostedRegistryURL string `json:"cloudHostedRegistryURL"`
// Policies registry URL for Apicast Self Managed (on-prem)
SelfManagedRegistryURL string `json:"selfManagedRegistryURL"`
}
ApicastSpec holds properties to configure Apicast endpoints
func (*SystemApicastEndpointsSpec) DeepCopy ¶
func (in *SystemApicastEndpointsSpec) DeepCopy() *SystemApicastEndpointsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemApicastEndpointsSpec.
func (*SystemApicastEndpointsSpec) DeepCopyInto ¶
func (in *SystemApicastEndpointsSpec) DeepCopyInto(out *SystemApicastEndpointsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SystemAppSpec ¶
type SystemAppSpec struct {
// The deployment strategy to use to replace existing pods with new ones.
// +optional
// +patchStrategy=retainKeys
DeploymentStrategy *DeploymentStrategySpec `json:"deploymentStrategy,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.
// +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"`
// Configures the TerminationGracePeriodSeconds
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"`
// 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"`
// Describes how the services provided by this workload are exposed to its consumers
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
PublishingStrategies *PublishingStrategies `json:"publishingStrategies,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"`
// Search service options
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
SearchServer SearchServerSpec `json:"searchServer,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"`
// hooks endpoint.
// +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: https://api.rubyonrails.org/classes/Rails/Application.html#method-i-secret_key_base
// You can generate one random key using 'bundle exec rake secret'
// +operator-sdk:csv:customresourcedefinitions:type=spec
SecretKeyBase SecretReference `json:"secretKeyBase"`
// AccessCode to protect admin urls
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
AccessCode *SecretReference `json:"accessCode,omitempty"`
// 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"`
// DatabaseSecret is a site key stored off-database for improved more secure password hashing
// See https://github.com/3scale/porta/blob/ae498814cef3d856613f60d29330882fa870271d/config/initializers/site_keys.rb#L2-L19
// +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 has configuration options for system to contact zync
// +operator-sdk:csv:customresourcedefinitions:type=spec
Zync SystemZyncSpec `json:"zync,omitempty"`
// 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
// +operator-sdk:csv:customresourcedefinitions:type=spec
Assets AssetsSpec `json:"assets"`
// Apicast can be used to pass down apicast endpoints configuration
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Apicast *SystemApicastEndpointsSpec `json:"apicast,omitempty"`
}
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.
type SystemRailsConsoleSpec ¶
type SystemRailsConsoleSpec struct {
// Image specification for the Console component.
// Defaults to system image if not defined.
// +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"`
// 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 ¶
func (in *SystemRailsConsoleSpec) DeepCopy() *SystemRailsConsoleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemRailsConsoleSpec.
func (*SystemRailsConsoleSpec) DeepCopyInto ¶
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 ¶
func (spec *SystemRailsConsoleSpec) Default(systemDefaultImage *ImageSpec)
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 SystemSearchdSpec ¶
type SystemSearchdSpec struct {
// Deploy searchd instance
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Enabled *bool `json:"enabled,omitempty"`
// Image specification for the Searchd 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 Searchd
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Config *SearchdConfig `json:"config,omitempty"`
// Resource requirements for the Searchd component
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Resources *ResourceRequirementsSpec `json:"resources,omitempty"`
// Liveness probe for the Searchd component
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
LivenessProbe *ProbeSpec `json:"livenessProbe,omitempty"`
// Readiness probe for the Searchd component
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ReadinessProbe *ProbeSpec `json:"readinessProbe,omitempty"`
// Describes node affinity scheduling rules for the Searchd pod
// +optional
NodeAffinity *corev1.NodeAffinity `json:"nodeAffinity,omitempty" protobuf:"bytes,1,opt,name=nodeAffinity"`
// If specified, the Searchd pod's tolerations.
// +optional
Tolerations []corev1.Toleration `json:"tolerations,omitempty" protobuf:"bytes,22,opt,name=tolerations"`
// Configures the TerminationGracePeriodSeconds for Searchd
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"`
}
SystemSearchdSpec configures the App component of System
func (*SystemSearchdSpec) DeepCopy ¶
func (in *SystemSearchdSpec) DeepCopy() *SystemSearchdSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemSearchdSpec.
func (*SystemSearchdSpec) DeepCopyInto ¶
func (in *SystemSearchdSpec) DeepCopyInto(out *SystemSearchdSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SystemSearchdSpec) Default ¶
func (spec *SystemSearchdSpec) Default()
Default implements defaulting for the system searchd component
type SystemSidekiqSpec ¶
type SystemSidekiqSpec struct {
// The deployment strategy to use to replace existing pods with new ones.
// +optional
// +patchStrategy=retainKeys
DeploymentStrategy *DeploymentStrategySpec `json:"deploymentStrategy,omitempty"`
// 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"`
// 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"`
// Configures the TerminationGracePeriodSeconds
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,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"`
// Searchd specific configuration options
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Searchd *SystemSearchdSpec `json:"searchd,omitempty"`
// Console specific configuration options
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Console *SystemRailsConsoleSpec `json:"console,omitempty"`
// Configures the Tekton Tasks for the component
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Tasks []SystemTektonTaskSpec `json:"tasks,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 ¶
func (spec *SystemSpec) Default()
Default implements defaulting for SystemSpec
func (*SystemSpec) ResolveCanarySpec ¶
func (spec *SystemSpec) ResolveCanarySpec(canary *Canary) (*SystemSpec, error)
ResolveCanarySpec modifies the SystemSpec given the provided canary configuration
type SystemStatus ¶
type SystemStatus struct {
AggregatedStatus `json:",inline"`
}
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 SystemTektonTaskConfig ¶
type SystemTektonTaskConfig struct {
// Image specification for the Console component.
// Defaults to system image if not defined.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Image *ImageSpec `json:"image,omitempty"`
// List of commands to be consumed by the task.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Command []string `json:"command,omitempty"`
// List of args to be consumed by the task.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Args []string `json:"args,omitempty"`
// List of extra evironment variables to be consumed by the task.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
ExtraEnv []corev1.EnvVar `json:"extraEnv,omitempty"`
// Timeout for the Tekton task
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Timeout *metav1.Duration `json:"timeout,omitempty"`
}
SystemTektonTaskConfig configures app behavior for System SystemTektonTask
func (*SystemTektonTaskConfig) DeepCopy ¶
func (in *SystemTektonTaskConfig) DeepCopy() *SystemTektonTaskConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemTektonTaskConfig.
func (*SystemTektonTaskConfig) DeepCopyInto ¶
func (in *SystemTektonTaskConfig) DeepCopyInto(out *SystemTektonTaskConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SystemTektonTaskConfig) Default ¶
func (cfg *SystemTektonTaskConfig) Default(systemDefaultImage *ImageSpec)
Default sets default values for any value not specifically set in the SystemTektonTaskConfig struct
func (*SystemTektonTaskConfig) Merge ¶
func (cfg *SystemTektonTaskConfig) Merge(def SystemTektonTaskConfig)
Merges default preloaded task values for any value not specifically set in the SystemTektonTaskConfig struct
type SystemTektonTaskSpec ¶
type SystemTektonTaskSpec struct {
// Deploy task instance
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Enabled *bool `json:"enabled,omitempty"`
// Name for the Tekton task and pipeline
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Name *string `json:"name,omitempty"`
// Description for the Tekton task and pipeline
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Description *string `json:"description,omitempty"`
// System Tekton Task specific configuration options for the component element
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Config *SystemTektonTaskConfig `json:"config,omitempty"`
// Pod Disruption Budget 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"`
// Configures the TerminationGracePeriodSeconds
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"`
}
SystemTektonTaskSpec configures the Sidekiq component of System
func (*SystemTektonTaskSpec) DeepCopy ¶
func (in *SystemTektonTaskSpec) DeepCopy() *SystemTektonTaskSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemTektonTaskSpec.
func (*SystemTektonTaskSpec) DeepCopyInto ¶
func (in *SystemTektonTaskSpec) DeepCopyInto(out *SystemTektonTaskSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SystemTektonTaskSpec) Default ¶
func (spec *SystemTektonTaskSpec) Default(systemDefaultImage *ImageSpec)
Default implements defaulting for the system SystemTektonTask component
type SystemZyncSpec ¶
type SystemZyncSpec struct {
// Zync authentication token
// +operator-sdk:csv:customresourcedefinitions:type=spec
AuthToken SecretReference `json:"authToken"`
// Zync endpoint
// +operator-sdk:csv:customresourcedefinitions:type=spec
Endpoint string `json:"endpoint"`
}
SystemZyncSpec has configuration options for zync
func (*SystemZyncSpec) DeepCopy ¶
func (in *SystemZyncSpec) DeepCopy() *SystemZyncSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SystemZyncSpec.
func (*SystemZyncSpec) DeepCopyInto ¶
func (in *SystemZyncSpec) DeepCopyInto(out *SystemZyncSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetRedisServers ¶
type TargetRedisServers string
const ( Masters TargetRedisServers = "masters" SlavesRW TargetRedisServers = "slaves-rw" )
type TargetServer ¶
type TargetServer struct {
ServerAlias *string `json:"serverAlias,omitempty"`
ServerAddress string `json:"serverAddress"`
}
Defines a server targeted by one of the TwemproxyConfig server pools
func (*TargetServer) DeepCopy ¶
func (in *TargetServer) DeepCopy() *TargetServer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetServer.
func (*TargetServer) DeepCopyInto ¶
func (in *TargetServer) DeepCopyInto(out *TargetServer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TwemproxyConfig ¶
type TwemproxyConfig struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec TwemproxyConfigSpec `json:"spec,omitempty"`
Status TwemproxyConfigStatus `json:"status,omitempty"`
}
+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:JSONPath=`.status.targets`,name=Selected Targets,type=string TwemproxyConfig is the Schema for the twemproxyconfigs API
func (*TwemproxyConfig) DeepCopy ¶
func (in *TwemproxyConfig) DeepCopy() *TwemproxyConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwemproxyConfig.
func (*TwemproxyConfig) DeepCopyInto ¶
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 ¶
func (in *TwemproxyConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*TwemproxyConfig) Default ¶
func (tc *TwemproxyConfig) Default()
func (*TwemproxyConfig) PodSyncSelector ¶
func (tc *TwemproxyConfig) PodSyncSelector() client.MatchingLabels
type TwemproxyConfigList ¶
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 ¶
func (in *TwemproxyConfigList) DeepCopy() *TwemproxyConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwemproxyConfigList.
func (*TwemproxyConfigList) DeepCopyInto ¶
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 ¶
func (in *TwemproxyConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TwemproxyConfigSpec ¶
type TwemproxyConfigSpec struct {
// SentinelURI is the redis URI of sentinel. If not set, the controller
// will try to autodiscover Sentinel within the namespace.
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
SentinelURIs []string `json:"sentinelURIs,omitempty"`
// ServerPools is the list of Twemproxy server pools
// WARNING: only 1 pool is supported at this time
// +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"`
// Configures the Grafana Dashboard for the component
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
GrafanaDashboard *GrafanaDashboardSpec `json:"grafanaDashboard,omitempty"`
}
TwemproxyConfigSpec defines the desired state of TwemproxyConfig
func (*TwemproxyConfigSpec) DeepCopy ¶
func (in *TwemproxyConfigSpec) DeepCopy() *TwemproxyConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwemproxyConfigSpec.
func (*TwemproxyConfigSpec) DeepCopyInto ¶
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 ¶
func (spec *TwemproxyConfigSpec) Default()
type TwemproxyConfigStatus ¶
type TwemproxyConfigStatus struct {
// The list of serves currently targeted by this TwemproxyConfig
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
SelectedTargets map[string]TargetServer `json:"targets,omitempty"`
}
TwemproxyConfigStatus defines the observed state of TwemproxyConfig
func (*TwemproxyConfigStatus) DeepCopy ¶
func (in *TwemproxyConfigStatus) DeepCopy() *TwemproxyConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwemproxyConfigStatus.
func (*TwemproxyConfigStatus) DeepCopyInto ¶
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 ¶
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 ¶
func (in *TwemproxyOptions) DeepCopy() *TwemproxyOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwemproxyOptions.
func (*TwemproxyOptions) DeepCopyInto ¶
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 ¶
func (opts *TwemproxyOptions) Default()
type TwemproxyServerPool ¶
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 ¶
func (in *TwemproxyServerPool) DeepCopy() *TwemproxyServerPool
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwemproxyServerPool.
func (*TwemproxyServerPool) DeepCopyInto ¶
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 ¶
func (pool *TwemproxyServerPool) Default()
type TwemproxySpec ¶
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 ¶
func (spec *TwemproxySpec) ConfigMapName() string
func (*TwemproxySpec) DeepCopy ¶
func (in *TwemproxySpec) DeepCopy() *TwemproxySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwemproxySpec.
func (*TwemproxySpec) DeepCopyInto ¶
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 ¶
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 ¶
func (in *VaultSecretReference) DeepCopy() *VaultSecretReference
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 ¶
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 WorkloadStatus ¶
type WorkloadStatus struct {
// HealthStatus holds the status of the individual workload
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
HealthStatus string `json:"healthStatus,omitempty"`
// HealthMessage holds the message describing the health status
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
HealthMessage string `json:"healthMessage,omitempty"`
// DeploymentStatus is a copy of the status of the owned Deployment
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
DeploymentStatus *appsv1.DeploymentStatus `json:"deploymentStatus,omitempty"`
// StatefulSetStatus is a copy of the status of the owned Deployment
// +operator-sdk:csv:customresourcedefinitions:type=status
// +optional
StatefulSetStatus *appsv1.StatefulSetStatus `json:"statefulsetStatus,omitempty"`
}
func (*WorkloadStatus) DeepCopy ¶
func (in *WorkloadStatus) DeepCopy() *WorkloadStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadStatus.
func (*WorkloadStatus) DeepCopyInto ¶
func (in *WorkloadStatus) DeepCopyInto(out *WorkloadStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Zync.
func (*Zync) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Zync) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
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) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZyncList.
func (*ZyncList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ZyncList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ZyncRailsConsoleSpec ¶
type ZyncRailsConsoleSpec struct {
// Enables or disables the Zync Console statefulset
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Enabled *bool `json:"enabled,omitempty"` // Image specification for the Console component.
// Defaults to zync image if not defined.
// +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"`
// 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"`
}
ZyncRailsConsoleSpec configures the Console component of Zync
func (*ZyncRailsConsoleSpec) DeepCopy ¶
func (in *ZyncRailsConsoleSpec) DeepCopy() *ZyncRailsConsoleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZyncRailsConsoleSpec.
func (*ZyncRailsConsoleSpec) DeepCopyInto ¶
func (in *ZyncRailsConsoleSpec) DeepCopyInto(out *ZyncRailsConsoleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ZyncRailsConsoleSpec) Default ¶
func (spec *ZyncRailsConsoleSpec) Default(zyncDefaultImage *ImageSpec)
Default implements defaulting for the Zync console component
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"`
// Console specific configuration options
// +operator-sdk:csv:customresourcedefinitions:type=spec
// +optional
Console *ZyncRailsConsoleSpec `json:"console,omitempty"`
}
ZyncSpec defines the desired state of Zync
func (*ZyncSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZyncSpec.
func (*ZyncSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ZyncStatus ¶
type ZyncStatus struct {
AggregatedStatus `json:",inline"`
}
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.
Source Files
¶
- apicast_types.go
- autossl_types.go
- backend_types.go
- common_types.go
- corsproxy_types.go
- echoapi_types.go
- groupversion_info.go
- mappingservice_types.go
- publishing_strategy_types.go
- redisshard_types.go
- sentinel_types.go
- shardedredisbackup_types.go
- system_types.go
- twemproxy_types.go
- twemproxyconfig_types.go
- zync_types.go
- zz_generated.deepcopy.go