Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the cloud.redhat.com v1alpha1 API group +kubebuilder:object:generate=true +groupName=cloud.redhat.com
Index ¶
- Constants
- Variables
- func GetAppInSameEnv(ctx context.Context, pClient client.Client, app *ClowdApp, ...) error
- func Labels(labels map[string]string) omfunc
- func Name(name string) omfunc
- func Namespace(namespace string) omfunc
- type APIPath
- type AppInfo
- type AppProtocol
- type AppResourceStatus
- type AutoScaler
- type AutoScalerConfig
- type AutoScalerMode
- type AutoScalerSimple
- type ClowdApp
- func (in *ClowdApp) DeepCopy() *ClowdApp
- func (in *ClowdApp) DeepCopyInto(out *ClowdApp)
- func (in *ClowdApp) DeepCopyObject() runtime.Object
- func (i *ClowdApp) GetClowdName() string
- func (i *ClowdApp) GetClowdNamespace() string
- func (i *ClowdApp) GetClowdSAName() string
- func (i *ClowdApp) GetConditions() clusterv1.Conditions
- func (i *ClowdApp) GetCronJobNamespacedName(d *Job) types.NamespacedName
- func (i *ClowdApp) GetDeploymentNamespacedName(d *Deployment) types.NamespacedName
- func (i *ClowdApp) GetDeploymentStatus() *AppResourceStatus
- func (i *ClowdApp) GetIdent() string
- func (i *ClowdApp) GetLabels() map[string]string
- func (i *ClowdApp) GetNamespacedName(pattern string) types.NamespacedName
- func (i *ClowdApp) GetNamespacesInEnv(ctx context.Context, pClient client.Client) ([]string, error)
- func (i *ClowdApp) GetOurEnv(ctx context.Context, pClient client.Client, env *ClowdEnvironment) error
- func (i *ClowdApp) GetPrimaryLabel() string
- func (i *ClowdApp) GetUID() types.UID
- func (i *ClowdApp) IsReady() bool
- func (i *ClowdApp) MakeOwnerReference() metav1.OwnerReference
- func (i *ClowdApp) SetConditions(conditions clusterv1.Conditions)
- func (i *ClowdApp) SetObjectMeta(o metav1.Object, opts ...omfunc)
- func (r *ClowdApp) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *ClowdApp) ValidateCreate() (admission.Warnings, error)
- func (r *ClowdApp) ValidateDelete() (admission.Warnings, error)
- func (r *ClowdApp) ValidateUpdate(_ runtime.Object) (admission.Warnings, error)
- type ClowdAppList
- type ClowdAppSpec
- type ClowdAppStatus
- type ClowdEnvironment
- func (i *ClowdEnvironment) ConvertDeprecatedKafkaSpec()
- func (in *ClowdEnvironment) DeepCopy() *ClowdEnvironment
- func (in *ClowdEnvironment) DeepCopyInto(out *ClowdEnvironment)
- func (in *ClowdEnvironment) DeepCopyObject() runtime.Object
- func (i *ClowdEnvironment) GenerateHostname(ctx context.Context, pClient client.Client, log logr.Logger, random bool) string
- func (i *ClowdEnvironment) GenerateTargetNamespace() string
- func (i *ClowdEnvironment) GetAppsInEnv(ctx context.Context, pClient client.Client) (*ClowdAppList, error)
- func (i *ClowdEnvironment) GetClowdName() string
- func (i *ClowdEnvironment) GetClowdNamespace() string
- func (i *ClowdEnvironment) GetClowdSAName() string
- func (i *ClowdEnvironment) GetConditions() clusterv1.Conditions
- func (i *ClowdEnvironment) GetDeploymentStatus() *EnvResourceStatus
- func (i *ClowdEnvironment) GetLabels() map[string]string
- func (i *ClowdEnvironment) GetNamespacesInEnv(ctx context.Context, pClient client.Client) ([]string, error)
- func (i *ClowdEnvironment) GetPrimaryLabel() string
- func (i *ClowdEnvironment) GetUID() types.UID
- func (i *ClowdEnvironment) IsNodePort() bool
- func (i *ClowdEnvironment) IsReady() bool
- func (i *ClowdEnvironment) MakeOwnerReference() metav1.OwnerReference
- func (i *ClowdEnvironment) SetConditions(conditions clusterv1.Conditions)
- type ClowdEnvironmentList
- type ClowdEnvironmentSpec
- type ClowdEnvironmentStatus
- type ClowdJobInvocation
- func (in *ClowdJobInvocation) DeepCopy() *ClowdJobInvocation
- func (in *ClowdJobInvocation) DeepCopyInto(out *ClowdJobInvocation)
- func (in *ClowdJobInvocation) DeepCopyObject() runtime.Object
- func (i *ClowdJobInvocation) GenerateJobName() string
- func (i *ClowdJobInvocation) GetClowdName() string
- func (i *ClowdJobInvocation) GetClowdNamespace() string
- func (i *ClowdJobInvocation) GetClowdSAName() string
- func (i *ClowdJobInvocation) GetConditions() clusterv1.Conditions
- func (i *ClowdJobInvocation) GetIQEName() string
- func (i *ClowdJobInvocation) GetInvokedJobs(ctx context.Context, c client.Client) (*batchv1.JobList, error)
- func (i *ClowdJobInvocation) GetLabels() map[string]string
- func (i *ClowdJobInvocation) GetNamespacedName(pattern string) types.NamespacedName
- func (i *ClowdJobInvocation) GetUID() types.UID
- func (i *ClowdJobInvocation) MakeOwnerReference() metav1.OwnerReference
- func (i *ClowdJobInvocation) SetConditions(conditions clusterv1.Conditions)
- func (i *ClowdJobInvocation) SetObjectMeta(o metav1.Object, opts ...omfunc)
- type ClowdJobInvocationList
- type ClowdJobInvocationSpec
- type ClowdJobInvocationStatus
- type ConfigAccessMode
- type CyndiSpec
- type DatabaseConfig
- type DatabaseMode
- type DatabaseSpec
- type Deployment
- type DeploymentConfig
- type DeploymentInfo
- type DeploymentMetadata
- type DeploymentStrategy
- type EnvResourceStatus
- type FeatureFlagsConfig
- type FeatureFlagsImages
- type FeatureFlagsMode
- type GatewayCert
- type GatewayCertMode
- type InMemoryDBConfig
- type InMemoryMode
- type InitContainer
- type IqeConfig
- type IqeJobSpec
- type IqeSeleniumSpec
- type IqeUIConfig
- type IqeUISeleniumConfig
- type IqeUISpec
- type Job
- type JobConditionState
- type JobTestingSpec
- type K8sAccessLevel
- type KafkaClusterConfig
- type KafkaConfig
- type KafkaConnectClusterConfig
- type KafkaMode
- type KafkaTopicSpec
- type LoggingConfig
- type LoggingMode
- type MetricsConfig
- type MetricsMode
- type MetricsWebService
- type MinioStatus
- type NamespacedName
- type ObjectStoreConfig
- type ObjectStoreImages
- type ObjectStoreMode
- type OtelCollectorConfig
- type PodSpec
- type PodspecMetadata
- type PrivateWebService
- type PrometheusConfig
- type PrometheusStatus
- type ProvidersConfig
- type PublicWebService
- type ServiceConfig
- type ServiceMeshConfig
- type ServiceMeshMode
- type Sidecar
- type Sidecars
- type SimpleAutoScalerMetric
- type SimpleAutoScalerReplicas
- type TLS
- type TestingConfig
- type TestingSpec
- type TokenRefresherConfig
- type WebConfig
- type WebDeprecated
- type WebImages
- type WebMode
- type WebServices
Constants ¶
const ( // Ready means all the deployments are ready DeploymentsReady clusterv1.ConditionType = "DeploymentsReady" // ReconciliationSuccessful represents status of successful reconciliation ReconciliationSuccessful clusterv1.ConditionType = "ReconciliationSuccessful" // ReconciliationFailed means the reconciliation failed ReconciliationFailed clusterv1.ConditionType = "ReconciliationFailed" // JobInvocationComplete means all the Jobs have finished JobInvocationComplete clusterv1.ConditionType = "JobInvocationComplete" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "cloud.redhat.com", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func GetAppInSameEnv ¶
func GetAppInSameEnv(ctx context.Context, pClient client.Client, app *ClowdApp, appList *ClowdAppList) error
GetAppInSameEnv populates the appList with a list of all apps in the same ClowdEnvironment. The environment is inferred from the given app.
func Labels ¶
Labels returns a function that sets the labels of an object to that of the passed in labels.
Types ¶
type APIPath ¶ added in v0.65.0
type APIPath string
A string representing an API path that should route to this app for Clowder-managed Ingresses (in format "/api/somepath/") +kubebuilder:validation:Pattern=`^\/api\/[a-zA-Z0-9-]+\/$`
type AppInfo ¶
type AppInfo struct { Name string `json:"name"` Deployments []DeploymentInfo `json:"deployments"` }
AppInfo details information about a specific app.
func (*AppInfo) DeepCopy ¶ added in v0.18.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppInfo.
func (*AppInfo) DeepCopyInto ¶ added in v0.18.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AppProtocol ¶ added in v0.25.0
type AppProtocol string
AppProtocol is used to define an appProtocol for Istio +kubebuilder:validation:Enum={"http", "http2", "https", "tcp", "tls", "grpc", "grpc-web", "mongo", "mysql", "redis"}
type AppResourceStatus ¶ added in v0.21.0
type AppResourceStatus struct { ManagedDeployments int32 `json:"managedDeployments"` ReadyDeployments int32 `json:"readyDeployments"` }
func (*AppResourceStatus) DeepCopy ¶ added in v0.21.0
func (in *AppResourceStatus) DeepCopy() *AppResourceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AppResourceStatus.
func (*AppResourceStatus) DeepCopyInto ¶ added in v0.21.0
func (in *AppResourceStatus) DeepCopyInto(out *AppResourceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoScaler ¶ added in v0.22.0
type AutoScaler struct { // PollingInterval is the interval (in seconds) to check each trigger on. // Default is 30 seconds. // +optional PollingInterval *int32 `json:"pollingInterval,omitempty"` // CooldownPeriod is the interval (in seconds) to wait after the last trigger reported active before // scaling the deployment down. Default is 5 minutes (300 seconds). // +optional CooldownPeriod *int32 `json:"cooldownPeriod,omitempty"` // MaxReplicaCount is the maximum number of replicas the scaler will scale the deployment to. // Default is 10. // +optional MaxReplicaCount *int32 `json:"maxReplicaCount,omitempty"` // MinReplicaCount is the minimum number of replicas the scaler will scale the deployment to. MinReplicaCount *int32 `json:"minReplicaCount,omitempty"` // +optional Advanced *keda.AdvancedConfig `json:"advanced,omitempty"` // +optional Triggers []keda.ScaleTriggers `json:"triggers,omitempty"` // +optional Fallback *keda.Fallback `json:"fallback,omitempty"` // ExternalHPA allows replicas on deployments to be controlled by another resource, but will // not be allowed to fall under the minReplicas as set in the ClowdApp. ExternalHPA bool `json:"externalHPA,omitempty"` }
AutoScaler defines the autoscaling parameters of a KEDA ScaledObject targeting the given deployment.
func (*AutoScaler) DeepCopy ¶ added in v0.22.0
func (in *AutoScaler) DeepCopy() *AutoScaler
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScaler.
func (*AutoScaler) DeepCopyInto ¶ added in v0.22.0
func (in *AutoScaler) DeepCopyInto(out *AutoScaler)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoScalerConfig ¶ added in v0.24.0
type AutoScalerConfig struct { // Enable the autoscaler feature Mode AutoScalerMode `json:"mode,omitempty"` }
AutoScalerConfig configures the Clowder provider controlling the creation of AutoScaler configuration.
func (*AutoScalerConfig) DeepCopy ¶ added in v0.24.0
func (in *AutoScalerConfig) DeepCopy() *AutoScalerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScalerConfig.
func (*AutoScalerConfig) DeepCopyInto ¶ added in v0.24.0
func (in *AutoScalerConfig) DeepCopyInto(out *AutoScalerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoScalerMode ¶ added in v0.24.0
type AutoScalerMode string
AutoScaler mode enabled or disabled the autoscaler. The key "keda" is deprecated but preserved for backwards compatibility +kubebuilder:validation:Enum={"none", "enabled", "keda"}
type AutoScalerSimple ¶ added in v0.43.0
type AutoScalerSimple struct { Replicas SimpleAutoScalerReplicas `json:"replicas"` RAM SimpleAutoScalerMetric `json:"ram,omitempty"` CPU SimpleAutoScalerMetric `json:"cpu,omitempty"` }
SimpleAutoScaler defines a simple HPA with scaling for RAM and CPU by value and utilization thresholds, along with replica count limits
func (*AutoScalerSimple) DeepCopy ¶ added in v0.43.0
func (in *AutoScalerSimple) DeepCopy() *AutoScalerSimple
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoScalerSimple.
func (*AutoScalerSimple) DeepCopyInto ¶ added in v0.43.0
func (in *AutoScalerSimple) DeepCopyInto(out *AutoScalerSimple)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClowdApp ¶
type ClowdApp struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // A ClowdApp specification. Spec ClowdAppSpec `json:"spec,omitempty"` Status ClowdAppStatus `json:"status,omitempty"` }
ClowdApp is the Schema for the clowdapps API
func GetAppForDBInSameEnv ¶
func GetAppForDBInSameEnv(ctx context.Context, pClient client.Client, app *ClowdApp) (*ClowdApp, error)
GetAppForDBInSameEnv returns a point to a ClowdApp that has the sharedDB referenced by the given ClowdApp.
func (*ClowdApp) DeepCopy ¶ added in v0.18.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdApp.
func (*ClowdApp) DeepCopyInto ¶ added in v0.18.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClowdApp) DeepCopyObject ¶ added in v0.18.1
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClowdApp) GetClowdName ¶
GetClowdName returns the name of the ClowdApp object.
func (*ClowdApp) GetClowdNamespace ¶
GetClowdNamespace returns the namespace of the ClowdApp object.
func (*ClowdApp) GetClowdSAName ¶
GetClowdSAName returns the ServiceAccount Name for the App
func (*ClowdApp) GetConditions ¶ added in v0.25.0
func (i *ClowdApp) GetConditions() clusterv1.Conditions
func (*ClowdApp) GetCronJobNamespacedName ¶
func (i *ClowdApp) GetCronJobNamespacedName(d *Job) types.NamespacedName
GetDeploymentStatus returns the Status.Deployments member
func (*ClowdApp) GetDeploymentNamespacedName ¶
func (i *ClowdApp) GetDeploymentNamespacedName(d *Deployment) types.NamespacedName
GetDeploymentStatus returns the Status.Deployments member
func (*ClowdApp) GetDeploymentStatus ¶
func (i *ClowdApp) GetDeploymentStatus() *AppResourceStatus
GetDeploymentStatus returns the Status.Deployments member
func (*ClowdApp) GetIdent ¶
GetIdent returns an ident <env>.<app> that should be unique across the cluster.
func (*ClowdApp) GetNamespacedName ¶
func (i *ClowdApp) GetNamespacedName(pattern string) types.NamespacedName
GetNamespacedName contructs a new namespaced name for an object from the pattern.
func (*ClowdApp) GetNamespacesInEnv ¶ added in v0.27.3
GetAppsInEnv populates the appList with a list of all apps in the ClowdEnvironment.
func (*ClowdApp) GetPrimaryLabel ¶
GetPrimaryLabel returns the primary label name use for identification.
func (*ClowdApp) IsReady ¶
IsReady returns true when all deployments are ready and the reconciliation is successful
func (*ClowdApp) MakeOwnerReference ¶
func (i *ClowdApp) MakeOwnerReference() metav1.OwnerReference
MakeOwnerReference defines the owner reference pointing to the ClowdApp resource.
func (*ClowdApp) SetConditions ¶ added in v0.25.0
func (i *ClowdApp) SetConditions(conditions clusterv1.Conditions)
func (*ClowdApp) SetObjectMeta ¶
SetObjectMeta sets the metadata on a ClowdApp object.
func (*ClowdApp) SetupWebhookWithManager ¶
func (*ClowdApp) ValidateCreate ¶
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*ClowdApp) ValidateDelete ¶
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
type ClowdAppList ¶
type ClowdAppList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // A list of ClowdApp Resources. Items []ClowdApp `json:"items"` }
ClowdAppList contains a list of ClowdApp
func (*ClowdAppList) DeepCopy ¶ added in v0.18.1
func (in *ClowdAppList) DeepCopy() *ClowdAppList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdAppList.
func (*ClowdAppList) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdAppList) DeepCopyInto(out *ClowdAppList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClowdAppList) DeepCopyObject ¶ added in v0.18.1
func (in *ClowdAppList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClowdAppSpec ¶
type ClowdAppSpec struct { // A list of deployments Deployments []Deployment `json:"deployments,omitempty"` // A list of jobs Jobs []Job `json:"jobs,omitempty"` // The name of the ClowdEnvironment resource that this ClowdApp will use as // its base. This does not mean that the ClowdApp needs to be placed in the // same directory as the targetNamespace of the ClowdEnvironment. EnvName string `json:"envName"` // A list of Kafka topics that will be created and made available to all // the pods listed in the ClowdApp. KafkaTopics []KafkaTopicSpec `json:"kafkaTopics,omitempty"` // The database specification defines a single database, the configuration // of which will be made available to all the pods in the ClowdApp. Database DatabaseSpec `json:"database,omitempty"` // A list of string names defining storage buckets. In certain modes, // defined by the ClowdEnvironment, Clowder will create those buckets. ObjectStore []string `json:"objectStore,omitempty"` // If inMemoryDb is set to true, Clowder will pass configuration // of an In Memory Database to the pods in the ClowdApp. This single // instance will be shared between all apps. InMemoryDB bool `json:"inMemoryDb,omitempty"` // If featureFlags is set to true, Clowder will pass configuration of a // FeatureFlags instance to the pods in the ClowdApp. This single // instance will be shared between all apps. FeatureFlags bool `json:"featureFlags,omitempty"` // A list of dependencies in the form of the name of the ClowdApps that are // required to be present for this ClowdApp to function. Dependencies []string `json:"dependencies,omitempty"` // A list of optional dependencies in the form of the name of the ClowdApps that // will be added to the configuration when present. OptionalDependencies []string `json:"optionalDependencies,omitempty"` // Iqe plugin and other specifics Testing TestingSpec `json:"testing,omitempty"` // Configures 'cyndi' database syndication for this app. When the app's ClowdEnvironment has // the kafka provider set to (*_operator_*) mode, Clowder will configure a CyndiPipeline // for this app in the environment's kafka-connect namespace. When the kafka provider is in // (*_app-interface_*) mode, Clowder will check to ensure that a CyndiPipeline resource exists // for the application in the environment's kafka-connect namespace. For all other kafka // provider modes, this configuration option has no effect. Cyndi CyndiSpec `json:"cyndi,omitempty"` // Disabled turns off reconciliation for this ClowdApp Disabled bool `json:"disabled,omitempty"` }
ClowdAppSpec is the main specification for a single Clowder Application it defines n pods along with dependencies that are shared between them.
func (*ClowdAppSpec) DeepCopy ¶ added in v0.18.1
func (in *ClowdAppSpec) DeepCopy() *ClowdAppSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdAppSpec.
func (*ClowdAppSpec) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdAppSpec) DeepCopyInto(out *ClowdAppSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClowdAppStatus ¶
type ClowdAppStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file // ClowdEnvironmentStatus defines the observed state of ClowdEnvironment Deployments AppResourceStatus `json:"deployments,omitempty"` Ready bool `json:"ready"` Conditions []clusterv1.Condition `json:"conditions,omitempty"` }
ClowdAppStatus defines the observed state of ClowdApp
func (*ClowdAppStatus) DeepCopy ¶ added in v0.18.1
func (in *ClowdAppStatus) DeepCopy() *ClowdAppStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdAppStatus.
func (*ClowdAppStatus) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdAppStatus) DeepCopyInto(out *ClowdAppStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClowdEnvironment ¶
type ClowdEnvironment struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // A ClowdEnvironmentSpec object. Spec ClowdEnvironmentSpec `json:"spec,omitempty"` Status ClowdEnvironmentStatus `json:"status,omitempty"` }
ClowdEnvironment is the Schema for the clowdenvironments API
func (*ClowdEnvironment) ConvertDeprecatedKafkaSpec ¶
func (i *ClowdEnvironment) ConvertDeprecatedKafkaSpec()
ConvertDeprecatedKafkaSpec converts values from the old Kafka provider spec into the new format
func (*ClowdEnvironment) DeepCopy ¶ added in v0.18.1
func (in *ClowdEnvironment) DeepCopy() *ClowdEnvironment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdEnvironment.
func (*ClowdEnvironment) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdEnvironment) DeepCopyInto(out *ClowdEnvironment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClowdEnvironment) DeepCopyObject ¶ added in v0.18.1
func (in *ClowdEnvironment) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClowdEnvironment) GenerateHostname ¶ added in v0.21.0
func (i *ClowdEnvironment) GenerateHostname(ctx context.Context, pClient client.Client, log logr.Logger, random bool) string
GetClowdHostname gets the hostname for a particular environment
func (*ClowdEnvironment) GenerateTargetNamespace ¶
func (i *ClowdEnvironment) GenerateTargetNamespace() string
GenerateTargetNamespace gets a generated target namespace if one is not provided
func (*ClowdEnvironment) GetAppsInEnv ¶
func (i *ClowdEnvironment) GetAppsInEnv(ctx context.Context, pClient client.Client) (*ClowdAppList, error)
GetAppsInEnv populates the appList with a list of all apps in the ClowdEnvironment.
func (*ClowdEnvironment) GetClowdName ¶
func (i *ClowdEnvironment) GetClowdName() string
GetClowdName returns the name of the ClowdApp object.
func (*ClowdEnvironment) GetClowdNamespace ¶
func (i *ClowdEnvironment) GetClowdNamespace() string
GetClowdNamespace returns the namespace of the ClowdApp object.
func (*ClowdEnvironment) GetClowdSAName ¶
func (i *ClowdEnvironment) GetClowdSAName() string
GetClowdSAName returns the ServiceAccount Name for the App
func (*ClowdEnvironment) GetConditions ¶ added in v0.25.0
func (i *ClowdEnvironment) GetConditions() clusterv1.Conditions
func (*ClowdEnvironment) GetDeploymentStatus ¶
func (i *ClowdEnvironment) GetDeploymentStatus() *EnvResourceStatus
GetDeploymentStatus returns the Status.Deployments member
func (*ClowdEnvironment) GetLabels ¶
func (i *ClowdEnvironment) GetLabels() map[string]string
GetLabels returns a base set of labels relating to the ClowdEnvironment.
func (*ClowdEnvironment) GetNamespacesInEnv ¶
func (i *ClowdEnvironment) GetNamespacesInEnv(ctx context.Context, pClient client.Client) ([]string, error)
GetAppsInEnv populates the appList with a list of all apps in the ClowdEnvironment.
func (*ClowdEnvironment) GetPrimaryLabel ¶
func (i *ClowdEnvironment) GetPrimaryLabel() string
GetPrimaryLabel returns the primary label name use for igentification.
func (*ClowdEnvironment) GetUID ¶
func (i *ClowdEnvironment) GetUID() types.UID
GetUID returns ObjectMeta.UID
func (*ClowdEnvironment) IsNodePort ¶
func (i *ClowdEnvironment) IsNodePort() bool
IsNodePort indicates whether or not services are configured as NodePort or not
func (*ClowdEnvironment) IsReady ¶
func (i *ClowdEnvironment) IsReady() bool
IsReady returns true when all deployments are ready and the reconciliation is successful
func (*ClowdEnvironment) MakeOwnerReference ¶
func (i *ClowdEnvironment) MakeOwnerReference() metav1.OwnerReference
MakeOwnerReference defines the owner reference pointing to the ClowdApp resource.
func (*ClowdEnvironment) SetConditions ¶ added in v0.25.0
func (i *ClowdEnvironment) SetConditions(conditions clusterv1.Conditions)
type ClowdEnvironmentList ¶
type ClowdEnvironmentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // A list of ClowdEnvironment objects. Items []ClowdEnvironment `json:"items"` }
ClowdEnvironmentList contains a list of ClowdEnvironment
func (*ClowdEnvironmentList) DeepCopy ¶ added in v0.18.1
func (in *ClowdEnvironmentList) DeepCopy() *ClowdEnvironmentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdEnvironmentList.
func (*ClowdEnvironmentList) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdEnvironmentList) DeepCopyInto(out *ClowdEnvironmentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClowdEnvironmentList) DeepCopyObject ¶ added in v0.18.1
func (in *ClowdEnvironmentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClowdEnvironmentSpec ¶
type ClowdEnvironmentSpec struct { // TargetNamespace describes the namespace where any generated environmental // resources should end up, this is particularly important in (*_local_*) mode. TargetNamespace string `json:"targetNamespace,omitempty"` // A ProvidersConfig object, detailing the setup and configuration of all the // providers used in this ClowdEnvironment. Providers ProvidersConfig `json:"providers"` // Defines the default resource requirements in standard k8s format in the // event that they omitted from a PodSpec inside a ClowdApp. ResourceDefaults core.ResourceRequirements `json:"resourceDefaults"` ServiceConfig ServiceConfig `json:"serviceConfig,omitempty"` // Disabled turns off reconciliation for this ClowdEnv Disabled bool `json:"disabled,omitempty"` }
ClowdEnvironmentSpec defines the desired state of ClowdEnvironment.
func (*ClowdEnvironmentSpec) DeepCopy ¶ added in v0.18.1
func (in *ClowdEnvironmentSpec) DeepCopy() *ClowdEnvironmentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdEnvironmentSpec.
func (*ClowdEnvironmentSpec) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdEnvironmentSpec) DeepCopyInto(out *ClowdEnvironmentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClowdEnvironmentStatus ¶
type ClowdEnvironmentStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file Conditions []clusterv1.Condition `json:"conditions,omitempty"` TargetNamespace string `json:"targetNamespace,omitempty"` Ready bool `json:"ready,omitempty"` Deployments EnvResourceStatus `json:"deployments,omitempty"` Apps []AppInfo `json:"apps,omitempty"` Generation int64 `json:"generation,omitempty"` Hostname string `json:"hostname,omitempty"` Prometheus PrometheusStatus `json:"prometheus,omitempty"` }
ClowdEnvironmentStatus defines the observed state of ClowdEnvironment
func (*ClowdEnvironmentStatus) DeepCopy ¶ added in v0.18.1
func (in *ClowdEnvironmentStatus) DeepCopy() *ClowdEnvironmentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdEnvironmentStatus.
func (*ClowdEnvironmentStatus) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdEnvironmentStatus) DeepCopyInto(out *ClowdEnvironmentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClowdJobInvocation ¶
type ClowdJobInvocation struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClowdJobInvocationSpec `json:"spec,omitempty"` Status ClowdJobInvocationStatus `json:"status,omitempty"` }
ClowdJobInvocation is the Schema for the jobinvocations API
func (*ClowdJobInvocation) DeepCopy ¶ added in v0.18.1
func (in *ClowdJobInvocation) DeepCopy() *ClowdJobInvocation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdJobInvocation.
func (*ClowdJobInvocation) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdJobInvocation) DeepCopyInto(out *ClowdJobInvocation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClowdJobInvocation) DeepCopyObject ¶ added in v0.18.1
func (in *ClowdJobInvocation) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClowdJobInvocation) GenerateJobName ¶ added in v0.21.0
func (i *ClowdJobInvocation) GenerateJobName() string
func (*ClowdJobInvocation) GetClowdName ¶
func (i *ClowdJobInvocation) GetClowdName() string
GetClowdName returns the name of the ClowdJobInvocation object.
func (*ClowdJobInvocation) GetClowdNamespace ¶
func (i *ClowdJobInvocation) GetClowdNamespace() string
GetClowdNamespace returns the namespace of the ClowdJobInvocation object.
func (*ClowdJobInvocation) GetClowdSAName ¶
func (i *ClowdJobInvocation) GetClowdSAName() string
GetClowdName returns the name of the ClowdJobInvocation object.
func (*ClowdJobInvocation) GetConditions ¶ added in v0.25.0
func (i *ClowdJobInvocation) GetConditions() clusterv1.Conditions
func (*ClowdJobInvocation) GetIQEName ¶ added in v0.21.0
func (i *ClowdJobInvocation) GetIQEName() string
GetIQEName returns the name of the ClowdJobInvocation's IQE job.
func (*ClowdJobInvocation) GetInvokedJobs ¶ added in v0.21.0
func (*ClowdJobInvocation) GetLabels ¶
func (i *ClowdJobInvocation) GetLabels() map[string]string
GetLabels returns a base set of labels relating to the ClowdJobInvocation.
func (*ClowdJobInvocation) GetNamespacedName ¶
func (i *ClowdJobInvocation) GetNamespacedName(pattern string) types.NamespacedName
GetNamespacedName contructs a new namespaced name for an object from the pattern.
func (*ClowdJobInvocation) GetUID ¶
func (i *ClowdJobInvocation) GetUID() types.UID
GetUID returns ObjectMeta.UID
func (*ClowdJobInvocation) MakeOwnerReference ¶
func (i *ClowdJobInvocation) MakeOwnerReference() metav1.OwnerReference
MakeOwnerReference defines the owner reference pointing to the ClowdJobInvocation resource.
func (*ClowdJobInvocation) SetConditions ¶ added in v0.25.0
func (i *ClowdJobInvocation) SetConditions(conditions clusterv1.Conditions)
func (*ClowdJobInvocation) SetObjectMeta ¶
func (i *ClowdJobInvocation) SetObjectMeta(o metav1.Object, opts ...omfunc)
SetObjectMeta sets the metadata on a ClowdApp object.
type ClowdJobInvocationList ¶
type ClowdJobInvocationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []ClowdJobInvocation `json:"items"` }
ClowdJobInvocationList contains a list of ClowdJobInvocation
func (*ClowdJobInvocationList) DeepCopy ¶ added in v0.18.1
func (in *ClowdJobInvocationList) DeepCopy() *ClowdJobInvocationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdJobInvocationList.
func (*ClowdJobInvocationList) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdJobInvocationList) DeepCopyInto(out *ClowdJobInvocationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClowdJobInvocationList) DeepCopyObject ¶ added in v0.18.1
func (in *ClowdJobInvocationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClowdJobInvocationSpec ¶
type ClowdJobInvocationSpec struct { // Name of the ClowdApp who owns the jobs AppName string `json:"appName"` // Jobs is the set of jobs to be run by the invocation Jobs []string `json:"jobs,omitempty"` // Testing is the struct for building out test jobs (iqe, etc) in a CJI Testing JobTestingSpec `json:"testing,omitempty"` // RunOnNotReady is a flag that when true, the job will not wait for the deployment to be ready to run RunOnNotReady bool `json:"runOnNotReady,omitempty"` // Disabled is a flag to turn off CJI(s) from running Disabled bool `json:"disabled,omitempty"` }
ClowdJobInvocationSpec defines the desired state of ClowdJobInvocation
func (*ClowdJobInvocationSpec) DeepCopy ¶ added in v0.18.1
func (in *ClowdJobInvocationSpec) DeepCopy() *ClowdJobInvocationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdJobInvocationSpec.
func (*ClowdJobInvocationSpec) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdJobInvocationSpec) DeepCopyInto(out *ClowdJobInvocationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClowdJobInvocationStatus ¶
type ClowdJobInvocationStatus struct { // Completed is false and updated when all jobs have either finished // successfully or failed past their backoff and retry values Completed bool `json:"completed"` // DEPRECATED : Jobs is an array of jobs name run by a CJI. Jobs []string `json:"jobs,omitempty"` // JobMap is a map of the job names run by Job invocation and their outcomes JobMap map[string]JobConditionState `json:"jobMap"` Conditions []clusterv1.Condition `json:"conditions,omitempty"` }
ClowdJobInvocationStatus defines the observed state of ClowdJobInvocation
func (*ClowdJobInvocationStatus) DeepCopy ¶ added in v0.18.1
func (in *ClowdJobInvocationStatus) DeepCopy() *ClowdJobInvocationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClowdJobInvocationStatus.
func (*ClowdJobInvocationStatus) DeepCopyInto ¶ added in v0.18.1
func (in *ClowdJobInvocationStatus) DeepCopyInto(out *ClowdJobInvocationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigAccessMode ¶
type ConfigAccessMode string
Describes what amount of app config is mounted to the pod +kubebuilder:validation:Enum={"none", "app", "", "environment"}
type CyndiSpec ¶
type CyndiSpec struct { // Enables or Disables the Cyndi pipeline for the Clowdapp Enabled bool `json:"enabled,omitempty"` // Application name - if empty will default to Clowdapp's name // +kubebuilder:validation:MinLength:=1 // +kubebuilder:validation:MaxLength:=64 // +kubebuilder:validation:Pattern:="[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*" AppName string `json:"appName,omitempty"` // AdditionalFilters AdditionalFilters []map[string]string `json:"additionalFilters,omitempty"` // Desired host syndication type (all or Insights hosts only) - defaults to false (All hosts) InsightsOnly bool `json:"insightsOnly,omitempty"` }
CyndiSpec is used to indicate whether a ClowdApp needs database syndication configured by the cyndi operator and exposes a limited set of cyndi configuration options
func (*CyndiSpec) DeepCopy ¶ added in v0.18.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CyndiSpec.
func (*CyndiSpec) DeepCopyInto ¶ added in v0.18.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatabaseConfig ¶
type DatabaseConfig struct { // The mode of operation of the Clowder Database Provider. Valid options are: // (*_app-interface_*) where the provider will pass through database credentials // found in the secret defined by the database name in the ClowdApp, and (*_local_*) // where the provider will spin up a local instance of the database. Mode DatabaseMode `json:"mode"` // Indicates where Clowder will fetch the database CA certificate bundle from. Currently only used in // (*_app-interface_*) mode. If none is specified, the AWS RDS combined CA bundle is used. // +kubebuilder:validation:Pattern=`^https?:\/\/.+$` CaBundleURL string `json:"caBundleURL,omitempty"` // If using the (*_local_*) mode and PVC is set to true, this instructs the local // Database instance to use a PVC instead of emptyDir for its volumes. PVC bool `json:"pvc,omitempty"` }
DatabaseConfig configures the Clowder provider controlling the creation of Database instances.
func (*DatabaseConfig) DeepCopy ¶ added in v0.18.1
func (in *DatabaseConfig) DeepCopy() *DatabaseConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseConfig.
func (*DatabaseConfig) DeepCopyInto ¶ added in v0.18.1
func (in *DatabaseConfig) DeepCopyInto(out *DatabaseConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatabaseMode ¶
type DatabaseMode string
DatabaseMode details the mode of operation of the Clowder Database Provider +kubebuilder:validation:Enum=shared;app-interface;local;none
type DatabaseSpec ¶
type DatabaseSpec struct { // Defines the Version of the PostGreSQL database, defaults to 12. // +kubebuilder:validation:Enum:=12;13;14;15;16 Version *int32 `json:"version,omitempty"` // Defines the Name of the database used by this app. This will be used as the // name of the logical database created by Clowder when the DB provider is in (*_local_*) mode. // In (*_app-interface_*) mode, the name here is used to locate the DB secret as a fallback mechanism // in cases where there is no 'clowder/database: <app-name>' annotation set on any secrets by looking // for a secret with 'db.host' starting with '<name>-<env>' where env is usually 'stage' or 'prod' Name string `json:"name,omitempty"` SharedDBAppName string `json:"sharedDbAppName,omitempty"` // T-shirt size, one of small, medium, large // +kubebuilder:validation:Enum={"small", "medium", "large"} DBVolumeSize string `json:"dbVolumeSize,omitempty"` // T-shirt size, one of small, medium, large // +kubebuilder:validation:Enum={"small", "medium", "large"} DBResourceSize string `json:"dbResourceSize,omitempty"` }
DatabaseSpec is a struct defining a database to be exposed to a ClowdApp.
func (*DatabaseSpec) DeepCopy ¶ added in v0.18.1
func (in *DatabaseSpec) DeepCopy() *DatabaseSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseSpec.
func (*DatabaseSpec) DeepCopyInto ¶ added in v0.18.1
func (in *DatabaseSpec) DeepCopyInto(out *DatabaseSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Deployment ¶
type Deployment struct { // Name defines the identifier of a Pod inside the ClowdApp. This name will // be used along side the name of the ClowdApp itself to form a <app>-<pod> // pattern which will be used for all other created resources and also for // some labels. It must be unique within a ClowdApp. Name string `json:"name"` // Deprecated: Use Replicas instead // If Replicas is not set and MinReplicas is set, then MinReplicas will be used MinReplicas *int32 `json:"minReplicas,omitempty"` // Defines the desired replica count for the pod Replicas *int32 `json:"replicas,omitempty"` // If set to true, creates a service on the webPort defined in // the ClowdEnvironment resource, along with the relevant liveness and // readiness probes. Web WebDeprecated `json:"web,omitempty"` WebServices WebServices `json:"webServices,omitempty"` // PodSpec defines a container running inside a ClowdApp. PodSpec PodSpec `json:"podSpec"` // K8sAccessLevel defines the level of access for this deployment K8sAccessLevel K8sAccessLevel `json:"k8sAccessLevel,omitempty"` // AutoScaler defines the configuration for the Keda auto scaler AutoScaler *AutoScaler `json:"autoScaler,omitempty"` AutoScalerSimple *AutoScalerSimple `json:"autoScalerSimple,omitempty"` // DeploymentStrategy allows the deployment strategy to be set only if the // deployment has no public service enabled DeploymentStrategy *DeploymentStrategy `json:"deploymentStrategy,omitempty"` Metadata DeploymentMetadata `json:"metadata,omitempty"` }
Deployment defines a service running inside a ClowdApp and will output a deployment resource. Only one container per pod is allowed and this is defined in the PodSpec attribute.
func (*Deployment) DeepCopy ¶ added in v0.18.1
func (in *Deployment) DeepCopy() *Deployment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Deployment.
func (*Deployment) DeepCopyInto ¶ added in v0.18.1
func (in *Deployment) DeepCopyInto(out *Deployment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Deployment) GetReplicaCount ¶ added in v0.50.0
func (d *Deployment) GetReplicaCount() *int32
type DeploymentConfig ¶ added in v0.27.0
type DeploymentConfig struct {
OmitPullPolicy bool `json:"omitPullPolicy,omitempty"`
}
func (*DeploymentConfig) DeepCopy ¶ added in v0.27.0
func (in *DeploymentConfig) DeepCopy() *DeploymentConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentConfig.
func (*DeploymentConfig) DeepCopyInto ¶ added in v0.27.0
func (in *DeploymentConfig) DeepCopyInto(out *DeploymentConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentInfo ¶
type DeploymentInfo struct { Name string `json:"name"` Hostname string `json:"hostname,omitempty"` Port int32 `json:"port,omitempty"` }
DeploymentInfo defailts information about a specific deployment.
func (*DeploymentInfo) DeepCopy ¶ added in v0.18.1
func (in *DeploymentInfo) DeepCopy() *DeploymentInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentInfo.
func (*DeploymentInfo) DeepCopyInto ¶ added in v0.18.1
func (in *DeploymentInfo) DeepCopyInto(out *DeploymentInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentMetadata ¶ added in v0.43.0
func (*DeploymentMetadata) DeepCopy ¶ added in v0.43.0
func (in *DeploymentMetadata) DeepCopy() *DeploymentMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentMetadata.
func (*DeploymentMetadata) DeepCopyInto ¶ added in v0.43.0
func (in *DeploymentMetadata) DeepCopyInto(out *DeploymentMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentStrategy ¶ added in v0.29.0
type DeploymentStrategy struct { // PrivateStrategy allows a deployment that only uses a private port to set // the deployment strategy one of Recreate or Rolling, default for a // private service is Recreate. This is to enable a quicker roll out for // services that do not have public facing endpoints. PrivateStrategy apps.DeploymentStrategyType `json:"privateStrategy,omitempty"` }
func (*DeploymentStrategy) DeepCopy ¶ added in v0.29.0
func (in *DeploymentStrategy) DeepCopy() *DeploymentStrategy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentStrategy.
func (*DeploymentStrategy) DeepCopyInto ¶ added in v0.29.0
func (in *DeploymentStrategy) DeepCopyInto(out *DeploymentStrategy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EnvResourceStatus ¶ added in v0.21.0
type EnvResourceStatus struct { ManagedDeployments int32 `json:"managedDeployments"` ReadyDeployments int32 `json:"readyDeployments"` ManagedTopics int32 `json:"managedTopics"` ReadyTopics int32 `json:"readyTopics"` }
func (*EnvResourceStatus) DeepCopy ¶ added in v0.21.0
func (in *EnvResourceStatus) DeepCopy() *EnvResourceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EnvResourceStatus.
func (*EnvResourceStatus) DeepCopyInto ¶ added in v0.21.0
func (in *EnvResourceStatus) DeepCopyInto(out *EnvResourceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FeatureFlagsConfig ¶
type FeatureFlagsConfig struct { // The mode of operation of the Clowder FeatureFlag Provider. Valid options are: // (*_app-interface_*) where the provider will pass through credentials // to the app configuration, and (*_local_*) where a local Unleash instance will // be created. Mode FeatureFlagsMode `json:"mode,omitempty"` // If using the (*_local_*) mode and PVC is set to true, this instructs the local // Database instance to use a PVC instead of emptyDir for its volumes. PVC bool `json:"pvc,omitempty"` // Defines the secret containing the client access token, only used for (*_app-interface_*) // mode. CredentialRef NamespacedName `json:"credentialRef,omitempty"` // Defines the hostname for (*_app-interface_*) mode Hostname string `json:"hostname,omitempty"` // Defineds the port for (*_app-interface_*) mode Port int32 `json:"port,omitempty"` // Defines images used for the feature flags provider Images FeatureFlagsImages `json:"images,omitempty"` }
FeatureFlagsConfig configures the Clowder provider controlling the creation of FeatureFlag instances.
func (*FeatureFlagsConfig) DeepCopy ¶ added in v0.18.1
func (in *FeatureFlagsConfig) DeepCopy() *FeatureFlagsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureFlagsConfig.
func (*FeatureFlagsConfig) DeepCopyInto ¶ added in v0.18.1
func (in *FeatureFlagsConfig) DeepCopyInto(out *FeatureFlagsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FeatureFlagsImages ¶ added in v0.90.0
type FeatureFlagsImages struct {
Unleash string `json:"unleash,omitempty"`
}
func (*FeatureFlagsImages) DeepCopy ¶ added in v0.90.0
func (in *FeatureFlagsImages) DeepCopy() *FeatureFlagsImages
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureFlagsImages.
func (*FeatureFlagsImages) DeepCopyInto ¶ added in v0.90.0
func (in *FeatureFlagsImages) DeepCopyInto(out *FeatureFlagsImages)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FeatureFlagsMode ¶
type FeatureFlagsMode string
FeatureFlagsMode details the mode of operation of the Clowder FeatureFlags Provider +kubebuilder:validation:Enum=local;app-interface;none +kubebuilder:validation:Optional
type GatewayCert ¶ added in v0.65.0
type GatewayCert struct { // Determines whether to enable the gateway cert, default is disabled Enabled bool `json:"enabled,omitempty"` // Determines the mode of certificate generation, either self-signed or acme CertMode GatewayCertMode `json:"certMode,omitempty"` // Determines a ConfigMap in the target namespace of the env which has ca.pem detailing the cert to use for mTLS verification LocalCAConfigMap string `json:"localCAConfigMap,omitempty"` // The email address used to register with Let's Encrypt for acme mode certs EmailAddress string `json:"emailAddress,omitempty"` }
func (*GatewayCert) DeepCopy ¶ added in v0.65.0
func (in *GatewayCert) DeepCopy() *GatewayCert
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GatewayCert.
func (*GatewayCert) DeepCopyInto ¶ added in v0.65.0
func (in *GatewayCert) DeepCopyInto(out *GatewayCert)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GatewayCertMode ¶ added in v0.65.0
type GatewayCertMode string
GatewayCertMode details the mode of operation of the Gateway Cert +kubebuilder:validation:Enum=self-signed;acme;none
type InMemoryDBConfig ¶
type InMemoryDBConfig struct { // The mode of operation of the Clowder InMemory Provider. Valid options are: // (*_redis_*) where a local Minio instance will be created, and (*_elasticache_*) // which will search the namespace of the ClowdApp for a secret called 'elasticache' Mode InMemoryMode `json:"mode"` // If using the (*_local_*) mode and PVC is set to true, this instructs the local // Database instance to use a PVC instead of emptyDir for its volumes. PVC bool `json:"pvc,omitempty"` }
InMemoryDBConfig configures the Clowder provider controlling the creation of InMemoryDB instances.
func (*InMemoryDBConfig) DeepCopy ¶ added in v0.18.1
func (in *InMemoryDBConfig) DeepCopy() *InMemoryDBConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InMemoryDBConfig.
func (*InMemoryDBConfig) DeepCopyInto ¶ added in v0.18.1
func (in *InMemoryDBConfig) DeepCopyInto(out *InMemoryDBConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InMemoryMode ¶
type InMemoryMode string
InMemoryMode details the mode of operation of the Clowder InMemoryDB Provider +kubebuilder:validation:Enum=redis;app-interface;elasticache;none
type InitContainer ¶
type InitContainer struct { // Name gives an identifier in the situation where multiple init containers exist Name string `json:"name,omitempty"` // Image refers to the container image used to create the init container // (if different from the primary pod image). Image string `json:"image,omitempty"` // A list of commands to run inside the parent Pod. Command []string `json:"command,omitempty"` // A list of args to be passed to the init container. Args []string `json:"args,omitempty"` // If true, inheirts the environment variables from the parent pod. // specification InheritEnv bool `json:"inheritEnv,omitempty"` // A list of environment variables used only by the initContainer. Env []v1.EnvVar `json:"env,omitempty"` }
InitContainer is a struct defining a k8s init container. This will be deployed along with the parent pod and is used to carry out one time initialization procedures.
func (*InitContainer) DeepCopy ¶ added in v0.18.1
func (in *InitContainer) DeepCopy() *InitContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InitContainer.
func (*InitContainer) DeepCopyInto ¶ added in v0.18.1
func (in *InitContainer) DeepCopyInto(out *InitContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IqeConfig ¶
type IqeConfig struct { ImageBase string `json:"imageBase"` // A pass-through of a resource requirements in k8s ResourceRequirements // format. If omitted, the default resource requirements from the // ClowdEnvironment will be used. Resources core.ResourceRequirements `json:"resources,omitempty"` // Defines the secret reference for loading vault credentials into the IQE job VaultSecretRef NamespacedName `json:"vaultSecretRef,omitempty"` // Defines configurations related to UI testing containers UI IqeUIConfig `json:"ui,omitempty"` }
func (*IqeConfig) DeepCopy ¶ added in v0.18.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IqeConfig.
func (*IqeConfig) DeepCopyInto ¶ added in v0.18.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IqeJobSpec ¶
type IqeJobSpec struct { // Image tag to use for IQE container. By default, Clowder will set the image tag to be // baseImage:name-of-iqe-plugin, where baseImage is defined in the ClowdEnvironment. Only the tag can be overridden here. ImageTag string `json:"imageTag,omitempty"` // A comma,separated,list indicating IQE plugin(s) to run tests for. By default, Clowder will use the plugin name given on the ClowdApp's // spec.testing.iqePlugin field. Use this field if you wish you override the plugin list. IqePlugins string `json:"plugins,omitempty"` // Defines configuration for a selenium container (optional) UI IqeUISpec `json:"ui,omitempty"` // Specifies environment variables to set on the IQE container Env *[]core.EnvVar `json:"env,omitempty"` // Changes entrypoint to invoke 'iqe container-debug' so that container starts but does not run tests, allowing 'rsh' to be invoked Debug bool `json:"debug,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_MARKER_EXPRESSION env var on the IQE container Marker string `json:"marker,omitempty"` // (DEPRECATED, using 'env' now preferred) sets ENV_FOR_DYNACONF env var on the IQE container DynaconfEnvName string `json:"dynaconfEnvName,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_FILTER_EXPRESSION env var on the IQE container Filter string `json:"filter,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_REQUIREMENTS env var on the IQE container Requirements *[]string `json:"requirements,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_REQUIREMENTS_PRIORITY env var on the IQE container RequirementsPriority *[]string `json:"requirementsPriority,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_TEST_IMPORTANCE env var on the IQE container TestImportance *[]string `json:"testImportance,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_LOG_LEVEL env var on the IQE container //+kubebuilder:validation:Enum={"", "critical", "error", "warning", "info", "debug", "notset"} LogLevel string `json:"logLevel,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_PARALLEL_ENABLED env var on the IQE container ParallelEnabled string `json:"parallelEnabled,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_PARALLEL_WORKER_COUNT env var on the IQE container ParallelWorkerCount string `json:"parallelWorkerCount,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_RP_ARGS env var on the IQE container RpArgs string `json:"rpArgs,omitempty"` // (DEPRECATED, using 'env' now preferred) sets IQE_IBUTSU_SOURCE env var on the IQE container IbutsuSource string `json:"ibutsuSource,omitempty"` }
func (*IqeJobSpec) DeepCopy ¶ added in v0.18.1
func (in *IqeJobSpec) DeepCopy() *IqeJobSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IqeJobSpec.
func (*IqeJobSpec) DeepCopyInto ¶ added in v0.18.1
func (in *IqeJobSpec) DeepCopyInto(out *IqeJobSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IqeSeleniumSpec ¶ added in v0.29.0
type IqeSeleniumSpec struct { // Whether or not a selenium container should be deployed in the IQE pod Deploy bool `json:"deploy,omitempty"` // Name of selenium image tag to use if not using the environment's default ImageTag string `json:"imageTag,omitempty"` }
func (*IqeSeleniumSpec) DeepCopy ¶ added in v0.29.0
func (in *IqeSeleniumSpec) DeepCopy() *IqeSeleniumSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IqeSeleniumSpec.
func (*IqeSeleniumSpec) DeepCopyInto ¶ added in v0.29.0
func (in *IqeSeleniumSpec) DeepCopyInto(out *IqeSeleniumSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IqeUIConfig ¶ added in v0.29.0
type IqeUIConfig struct { // Defines configurations for selenium containers in this environment Selenium IqeUISeleniumConfig `json:"selenium,omitempty"` }
func (*IqeUIConfig) DeepCopy ¶ added in v0.29.0
func (in *IqeUIConfig) DeepCopy() *IqeUIConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IqeUIConfig.
func (*IqeUIConfig) DeepCopyInto ¶ added in v0.29.0
func (in *IqeUIConfig) DeepCopyInto(out *IqeUIConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IqeUISeleniumConfig ¶ added in v0.29.0
type IqeUISeleniumConfig struct { // Defines the image used for selenium containers in this environment ImageBase string `json:"imageBase,omitempty"` // Defines the default image tag used for selenium containers in this environment DefaultImageTag string `json:"defaultImageTag,omitempty"` // Defines the resource requests/limits set on selenium containers Resources core.ResourceRequirements `json:"resources,omitempty"` }
func (*IqeUISeleniumConfig) DeepCopy ¶ added in v0.29.0
func (in *IqeUISeleniumConfig) DeepCopy() *IqeUISeleniumConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IqeUISeleniumConfig.
func (*IqeUISeleniumConfig) DeepCopyInto ¶ added in v0.29.0
func (in *IqeUISeleniumConfig) DeepCopyInto(out *IqeUISeleniumConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IqeUISpec ¶ added in v0.29.0
type IqeUISpec struct { // No longer used Enabled bool `json:"enabled,omitempty"` // Configuration options for running IQE with a selenium container Selenium IqeSeleniumSpec `json:"selenium,omitempty"` }
func (*IqeUISpec) DeepCopy ¶ added in v0.29.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IqeUISpec.
func (*IqeUISpec) DeepCopyInto ¶ added in v0.29.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Job ¶
type Job struct { // Name defines identifier of the Job. This name will be used to name the // CronJob resource, the container will be name identically. Name string `json:"name"` // Disabled allows a job to be disabled, as such, the resource is not // created on the system and cannot be invoked with a CJI Disabled bool `json:"disabled,omitempty"` // Defines the schedule for the job to run Schedule string `json:"schedule,omitempty"` // Defines the parallelism of the job Parallelism *int32 `json:"parallelism,omitempty"` // Defines the completions of the job Completions *int32 `json:"completions,omitempty"` // PodSpec defines a container running inside the CronJob. PodSpec PodSpec `json:"podSpec"` // Defines the restart policy for the CronJob, defaults to never RestartPolicy v1.RestartPolicy `json:"restartPolicy,omitempty"` // Defines the concurrency policy for the CronJob, defaults to Allow // Only applies to Cronjobs ConcurrencyPolicy batch.ConcurrencyPolicy `json:"concurrencyPolicy,omitempty"` // This flag tells the controller to suspend subsequent executions, it does // not apply to already started executions. Defaults to false. // Only applies to Cronjobs Suspend *bool `json:"suspend,omitempty"` // The number of successful finished jobs to retain. Value must be non-negative integer. // Defaults to 3. // Only applies to Cronjobs SuccessfulJobsHistoryLimit *int32 `json:"successfulJobsHistoryLimit,omitempty"` // The number of failed finished jobs to retain. Value must be non-negative integer. // Defaults to 1. // Only applies to Cronjobs FailedJobsHistoryLimit *int32 `json:"failedJobsHistoryLimit,omitempty"` // Defines the StartingDeadlineSeconds for the CronJob StartingDeadlineSeconds *int64 `json:"startingDeadlineSeconds,omitempty"` // The activeDeadlineSeconds for the Job or CronJob. // More info: https://kubernetes.io/docs/concepts/workloads/controllers/job/ ActiveDeadlineSeconds *int64 `json:"activeDeadlineSeconds,omitempty"` }
Job defines a ClowdJob A Job struct will deploy as a CronJob if `schedule` is set and will deploy as a Job if it is not set. Unsupported fields will be dropped from Jobs
func (*Job) DeepCopy ¶ added in v0.18.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Job.
func (*Job) DeepCopyInto ¶ added in v0.18.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type JobConditionState ¶ added in v0.21.0
type JobConditionState string
const ( JobInvoked JobConditionState = "Invoked" JobComplete JobConditionState = "Complete" JobFailed JobConditionState = "Failed" )
type JobTestingSpec ¶
type JobTestingSpec struct { // Iqe is the job spec to override defaults from the ClowdApp's // definition of the job Iqe IqeJobSpec `json:"iqe,omitempty"` }
func (*JobTestingSpec) DeepCopy ¶ added in v0.18.1
func (in *JobTestingSpec) DeepCopy() *JobTestingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobTestingSpec.
func (*JobTestingSpec) DeepCopyInto ¶ added in v0.18.1
func (in *JobTestingSpec) DeepCopyInto(out *JobTestingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type K8sAccessLevel ¶
type K8sAccessLevel string
K8sAccessLevel defines the access level for the deployment, one of 'default', 'view' or 'edit' +kubebuilder:validation:Enum={"default", "view", "", "edit"}
type KafkaClusterConfig ¶
type KafkaClusterConfig struct { // Defines the kafka cluster name (default: <ClowdEnvironment Name>-<UID>) Name string `json:"name,omitempty"` // The namespace the kafka cluster is expected to reside in (default: the environment's targetNamespace) Namespace string `json:"namespace,omitempty"` // Force TLS ForceTLS bool `json:"forceTLS,omitempty"` // The requested number of replicas for kafka/zookeeper. If unset, default is '1' // +kubebuilder:validation:Minimum:=1 Replicas int32 `json:"replicas,omitempty"` // Persistent volume storage size. If unset, default is '1Gi' // Only applies when KafkaConfig.PVC is set to 'true' StorageSize string `json:"storageSize,omitempty"` // Delete persistent volume claim if the Kafka cluster is deleted // Only applies when KafkaConfig.PVC is set to 'true' DeleteClaim bool `json:"deleteClaim,omitempty"` // Version. If unset, default is '2.5.0' Version string `json:"version,omitempty"` // Config full options Config *map[string]string `json:"config,omitempty"` // JVM Options JVMOptions strimzi.KafkaSpecKafkaJvmOptions `json:"jvmOptions,omitempty"` // Resource Limits Resources strimzi.KafkaSpecKafkaResources `json:"resources,omitempty"` }
KafkaClusterConfig defines options related to the Kafka cluster managed/monitored by Clowder
func (*KafkaClusterConfig) DeepCopy ¶ added in v0.18.1
func (in *KafkaClusterConfig) DeepCopy() *KafkaClusterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaClusterConfig.
func (*KafkaClusterConfig) DeepCopyInto ¶ added in v0.18.1
func (in *KafkaClusterConfig) DeepCopyInto(out *KafkaClusterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KafkaConfig ¶
type KafkaConfig struct { // The mode of operation of the Clowder Kafka Provider. Valid options are: // (*_operator_*) which provisions Strimzi resources and will configure // KafkaTopic CRs and place them in the Kafka cluster's namespace described in the configuration, // (*_app-interface_*) which simply passes the topic names through to the App's // cdappconfig.json and expects app-interface to have created the relevant // topics, and (*_local_*) where a small instance of Kafka is created in the desired cluster namespace // and configured to auto-create topics. Mode KafkaMode `json:"mode"` // EnableLegacyStrimzi disables TLS + user auth EnableLegacyStrimzi bool `json:"enableLegacyStrimzi,omitempty"` // If using the (*_local_*) or (*_operator_*) mode and PVC is set to true, this sets the provisioned // Kafka instance to use a PVC instead of emptyDir for its volumes. PVC bool `json:"pvc,omitempty"` // Defines options related to the Kafka cluster for this environment. Ignored for (*_local_*) mode. Cluster KafkaClusterConfig `json:"cluster,omitempty"` // Defines options related to the Kafka Connect cluster for this environment. Ignored for (*_local_*) mode. Connect KafkaConnectClusterConfig `json:"connect,omitempty"` // Defines the secret reference for the Managed Kafka mode. Only used in (*_managed_*) mode. ManagedSecretRef NamespacedName `json:"managedSecretRef,omitempty"` // Managed topic prefix for the managed cluster. Only used in (*_managed_*) mode. ManagedPrefix string `json:"managedPrefix,omitempty"` // Namespace that kafkaTopics should be written to for (*_msk_*) mode. TopicNamespace string `json:"topicNamespace,omitempty"` // Cluster annotation identifier for (*_msk_*) mode. ClusterAnnotation string `json:"clusterAnnotation,omitempty"` // (Deprecated) Defines the cluster name to be used by the Kafka Provider this will // be used in some modes to locate the Kafka instance. ClusterName string `json:"clusterName,omitempty"` // (Deprecated) The Namespace the cluster is expected to reside in. This is only used // in (*_app-interface_*) and (*_operator_*) modes. Namespace string `json:"namespace,omitempty"` // (Deprecated) The namespace that the Kafka Connect cluster is expected to reside in. This is only used // in (*_app-interface_*) and (*_operator_*) modes. ConnectNamespace string `json:"connectNamespace,omitempty"` // (Deprecated) Defines the kafka connect cluster name that is used in this environment. ConnectClusterName string `json:"connectClusterName,omitempty"` // (Deprecated) (Unused) Suffix string `json:"suffix,omitempty"` // Sets the replica count for ephem-msk mode for kafka connect KafkaConnectReplicaCount int `json:"kafkaConnectReplicaCount,omitempty"` }
KafkaConfig configures the Clowder provider controlling the creation of Kafka instances.
func (*KafkaConfig) DeepCopy ¶ added in v0.18.1
func (in *KafkaConfig) DeepCopy() *KafkaConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaConfig.
func (*KafkaConfig) DeepCopyInto ¶ added in v0.18.1
func (in *KafkaConfig) DeepCopyInto(out *KafkaConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KafkaConnectClusterConfig ¶
type KafkaConnectClusterConfig struct { // Defines the kafka connect cluster name (default: <kafka cluster's name>) Name string `json:"name,omitempty"` // The namespace the kafka connect cluster is expected to reside in (default: the kafka cluster's namespace) Namespace string `json:"namespace,omitempty"` // The requested number of replicas for kafka connect. If unset, default is '1' // +kubebuilder:validation:Minimum:=1 Replicas int32 `json:"replicas,omitempty"` // Version. If unset, default is '2.5.0' Version string `json:"version,omitempty"` // Image. If unset, default is 'quay.io/cloudservices/xjoin-kafka-connect-strimzi:latest' Image string `json:"image,omitempty"` // Resource Limits Resources strimzi.KafkaConnectSpecResources `json:"resources,omitempty"` }
KafkaConnectClusterConfig defines options related to the Kafka Connect cluster managed/monitored by Clowder
func (*KafkaConnectClusterConfig) DeepCopy ¶ added in v0.18.1
func (in *KafkaConnectClusterConfig) DeepCopy() *KafkaConnectClusterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaConnectClusterConfig.
func (*KafkaConnectClusterConfig) DeepCopyInto ¶ added in v0.18.1
func (in *KafkaConnectClusterConfig) DeepCopyInto(out *KafkaConnectClusterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KafkaMode ¶
type KafkaMode string
KafkaMode details the mode of operation of the Clowder Kafka Provider +kubebuilder:validation:Enum=ephem-msk;managed;operator;app-interface;local;none
type KafkaTopicSpec ¶
type KafkaTopicSpec struct { // A key/value pair describing the configuration of a particular topic. // +optional Config map[string]string `json:"config,omitempty"` // The requested number of partitions for this topic. If unset, default is '3' // +optional // +kubebuilder:validation:Minimum:=1 // +kubebuilder:validation:Maximum:=200000 Partitions int32 `json:"partitions,omitempty"` // The requested number of replicas for this topic. If unset, default is '3' // +optional // +kubebuilder:validation:Minimum:=1 // +kubebuilder:validation:Maximum:=32767 Replicas int32 `json:"replicas,omitempty"` // The requested name for this topic. // +kubebuilder:validation:MinLength:=1 // +kubebuilder:validation:MaxLength:=249 // +kubebuilder:validation:Pattern:="[a-zA-Z0-9\\._\\-]" TopicName string `json:"topicName"` }
KafkaTopicSpec defines the desired state of KafkaTopic
func (*KafkaTopicSpec) DeepCopy ¶ added in v0.18.1
func (in *KafkaTopicSpec) DeepCopy() *KafkaTopicSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaTopicSpec.
func (*KafkaTopicSpec) DeepCopyInto ¶ added in v0.18.1
func (in *KafkaTopicSpec) DeepCopyInto(out *KafkaTopicSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoggingConfig ¶
type LoggingConfig struct { // The mode of operation of the Clowder Logging Provider. Valid options are: // (*_app-interface_*) where the provider will pass through cloudwatch credentials // to the app configuration, and (*_none_*) where no logging will be configured. Mode LoggingMode `json:"mode"` }
LoggingConfig configures the Clowder provider controlling the creation of Logging instances.
func (*LoggingConfig) DeepCopy ¶ added in v0.18.1
func (in *LoggingConfig) DeepCopy() *LoggingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingConfig.
func (*LoggingConfig) DeepCopyInto ¶ added in v0.18.1
func (in *LoggingConfig) DeepCopyInto(out *LoggingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoggingMode ¶
type LoggingMode string
LoggingMode details the mode of operation of the Clowder Logging Provider +kubebuilder:validation:Enum=app-interface;null;none
type MetricsConfig ¶
type MetricsConfig struct { // The port that metrics services inside ClowdApp pods should be served on. Port int32 `json:"port"` // A prefix path that pods will be instructed to use when setting up their // metrics server. Path string `json:"path,omitempty"` // The mode of operation of the Metrics provider. The allowed modes are // (*_none_*), which disables metrics service generation, or // (*_operator_*) where services and probes are generated. // (*_app-interface_*) where services and probes are generated for app-interface. Mode MetricsMode `json:"mode"` // Prometheus specific configuration Prometheus PrometheusConfig `json:"prometheus,omitempty"` }
MetricsConfig configures the Clowder provider controlling the creation of metrics services and their probes.
func (*MetricsConfig) DeepCopy ¶ added in v0.18.1
func (in *MetricsConfig) DeepCopy() *MetricsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsConfig.
func (*MetricsConfig) DeepCopyInto ¶ added in v0.18.1
func (in *MetricsConfig) DeepCopyInto(out *MetricsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricsMode ¶
type MetricsMode string
MetricsMode details the mode of operation of the Clowder Metrics Provider +kubebuilder:validation:Enum=none;operator;app-interface
type MetricsWebService ¶
type MetricsWebService struct { }
MetricsWebService is the definition of the metrics web service. This is automatically enabled and the configuration here at the moment is included for completeness, as there are no configurable options.
func (*MetricsWebService) DeepCopy ¶ added in v0.18.1
func (in *MetricsWebService) DeepCopy() *MetricsWebService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsWebService.
func (*MetricsWebService) DeepCopyInto ¶ added in v0.18.1
func (in *MetricsWebService) DeepCopyInto(out *MetricsWebService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MinioStatus ¶
type MinioStatus struct { // A reference to standard k8s secret. Credentials core.SecretReference `json:"credentials"` // The hostname of a Minio instance. Hostname string `json:"hostname"` // The port number the Minio instance is to be served on. Port int32 `json:"port"` }
MinioStatus defines the status of a minio instance in local mode.
func (*MinioStatus) DeepCopy ¶ added in v0.18.1
func (in *MinioStatus) DeepCopy() *MinioStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MinioStatus.
func (*MinioStatus) DeepCopyInto ¶ added in v0.18.1
func (in *MinioStatus) DeepCopyInto(out *MinioStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NamespacedName ¶
type NamespacedName struct { // Name defines the Name of a resource. Name string `json:"name"` // Namespace defines the Namespace of a resource. Namespace string `json:"namespace"` }
NamespacedName type to represent a real Namespaced Name
func (*NamespacedName) DeepCopy ¶ added in v0.18.1
func (in *NamespacedName) DeepCopy() *NamespacedName
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedName.
func (*NamespacedName) DeepCopyInto ¶ added in v0.18.1
func (in *NamespacedName) DeepCopyInto(out *NamespacedName)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectStoreConfig ¶
type ObjectStoreConfig struct { // The mode of operation of the Clowder ObjectStore Provider. Valid options are: // (*_app-interface_*) where the provider will pass through Amazon S3 credentials // to the app configuration, and (*_minio_*) where a local Minio instance will // be created. Mode ObjectStoreMode `json:"mode"` // Currently unused. Suffix string `json:"suffix,omitempty"` // If using the (*_local_*) mode and PVC is set to true, this instructs the local // Database instance to use a PVC instead of emptyDir for its volumes. PVC bool `json:"pvc,omitempty"` // Override the object store images Images ObjectStoreImages `json:"images,omitempty"` }
ObjectStoreConfig configures the Clowder provider controlling the creation of ObjectStore instances.
func (*ObjectStoreConfig) DeepCopy ¶ added in v0.18.1
func (in *ObjectStoreConfig) DeepCopy() *ObjectStoreConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStoreConfig.
func (*ObjectStoreConfig) DeepCopyInto ¶ added in v0.18.1
func (in *ObjectStoreConfig) DeepCopyInto(out *ObjectStoreConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectStoreImages ¶ added in v0.90.0
type ObjectStoreImages struct {
Minio string `json:"minio,omitempty"`
}
func (*ObjectStoreImages) DeepCopy ¶ added in v0.90.0
func (in *ObjectStoreImages) DeepCopy() *ObjectStoreImages
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectStoreImages.
func (*ObjectStoreImages) DeepCopyInto ¶ added in v0.90.0
func (in *ObjectStoreImages) DeepCopyInto(out *ObjectStoreImages)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectStoreMode ¶
type ObjectStoreMode string
ObjectStoreMode details the mode of operation of the Clowder ObjectStore Provider +kubebuilder:validation:Enum=minio;app-interface;none
type OtelCollectorConfig ¶ added in v0.90.0
type OtelCollectorConfig struct { // Enable or disable otel collector sidecar Enabled bool `json:"enabled"` // Configurable image Image string `json:"image,omitempty"` }
func (*OtelCollectorConfig) DeepCopy ¶ added in v0.90.0
func (in *OtelCollectorConfig) DeepCopy() *OtelCollectorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OtelCollectorConfig.
func (*OtelCollectorConfig) DeepCopyInto ¶ added in v0.90.0
func (in *OtelCollectorConfig) DeepCopyInto(out *OtelCollectorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodSpec ¶
type PodSpec struct { // Image refers to the container image used to create the pod. Image string `json:"image,omitempty"` // A list of init containers used to perform at-startup operations. InitContainers []InitContainer `json:"initContainers,omitempty"` // Allows for defining custom PodSpec metadata, such as annotations Metadata PodspecMetadata `json:"metadata,omitempty"` // The command that will be invoked inside the pod at startup. Command []string `json:"command,omitempty"` // A list of args to be passed to the pod container. Args []string `json:"args,omitempty"` // A list of environment variables in k8s defined format. Env []v1.EnvVar `json:"env,omitempty"` // A pass-through of a resource requirements in k8s ResourceRequirements // format. If omitted, the default resource requirements from the // ClowdEnvironment will be used. Resources v1.ResourceRequirements `json:"resources,omitempty"` // A pass-through of a Liveness Probe specification in standard k8s format. // If omitted, a standard probe will be setup point to the webPort defined // in the ClowdEnvironment and a path of /healthz. Ignored if Web is set to // false. LivenessProbe *v1.Probe `json:"livenessProbe,omitempty"` // A pass-through of a Readiness Probe specification in standard k8s format. // If omitted, a standard probe will be setup point to the webPort defined // in the ClowdEnvironment and a path of /healthz. Ignored if Web is set to // false. ReadinessProbe *v1.Probe `json:"readinessProbe,omitempty"` // A pass-through of a list of Volumes in standa k8s format. Volumes []v1.Volume `json:"volumes,omitempty"` // A pass-through of a list of VolumesMounts in standa k8s format. VolumeMounts []v1.VolumeMount `json:"volumeMounts,omitempty"` // A pass-through of Lifecycle specification in standard k8s format Lifecycle *v1.Lifecycle `json:"lifecycle,omitempty"` // A pass-through of TerminationGracePeriodSeconds specification in standard k8s format // default is 30 seconds TerminationGracePeriodSeconds *int64 `json:"terminationGracePeriodSeconds,omitempty"` // Lists the expected side cars, will be validated in the validating webhook Sidecars []Sidecar `json:"sidecars,omitempty"` // MachinePool allows the pod to be scheduled to a particular machine pool. MachinePool string `json:"machinePool,omitempty"` }
PodSpec defines a container running inside a ClowdApp.
func (*PodSpec) DeepCopy ¶ added in v0.18.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodSpec.
func (*PodSpec) DeepCopyInto ¶ added in v0.18.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodspecMetadata ¶ added in v0.45.0
Metadata for applying annotations etc to PodSpec
func (*PodspecMetadata) DeepCopy ¶ added in v0.45.0
func (in *PodspecMetadata) DeepCopy() *PodspecMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodspecMetadata.
func (*PodspecMetadata) DeepCopyInto ¶ added in v0.45.0
func (in *PodspecMetadata) DeepCopyInto(out *PodspecMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrivateWebService ¶
type PrivateWebService struct { // Enabled describes if Clowder should enable the private service and provide the // configuration in the cdappconfig. Enabled bool `json:"enabled,omitempty"` // AppProtocol determines the protocol to be used for the private port, (defaults to http) AppProtocol AppProtocol `json:"appProtocol,omitempty"` }
PrivateWebService is the definition of the private web service. There can be only one private service managed by Clowder.
func (*PrivateWebService) DeepCopy ¶ added in v0.18.1
func (in *PrivateWebService) DeepCopy() *PrivateWebService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrivateWebService.
func (*PrivateWebService) DeepCopyInto ¶ added in v0.18.1
func (in *PrivateWebService) DeepCopyInto(out *PrivateWebService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrometheusConfig ¶
type PrometheusConfig struct { // Determines whether to deploy prometheus in operator mode Deploy bool `json:"deploy,omitempty"` // Specify prometheus hostname when in app-interface mode AppInterfaceHostname string `json:"appInterfaceHostname,omitempty"` }
func (*PrometheusConfig) DeepCopy ¶ added in v0.18.1
func (in *PrometheusConfig) DeepCopy() *PrometheusConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusConfig.
func (*PrometheusConfig) DeepCopyInto ¶ added in v0.18.1
func (in *PrometheusConfig) DeepCopyInto(out *PrometheusConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrometheusStatus ¶ added in v0.21.0
type PrometheusStatus struct {
Hostname string `json:"hostname"`
}
PrometheusStatus provides info on how to connect to Prometheus
func (*PrometheusStatus) DeepCopy ¶ added in v0.21.0
func (in *PrometheusStatus) DeepCopy() *PrometheusStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusStatus.
func (*PrometheusStatus) DeepCopyInto ¶ added in v0.21.0
func (in *PrometheusStatus) DeepCopyInto(out *PrometheusStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProvidersConfig ¶
type ProvidersConfig struct { // Defines the Configuration for the Clowder Database Provider. Database DatabaseConfig `json:"db,omitempty"` // Defines the Configuration for the Clowder InMemoryDB Provider. InMemoryDB InMemoryDBConfig `json:"inMemoryDb"` // Defines the Configuration for the Clowder Kafka Provider. Kafka KafkaConfig `json:"kafka"` // Defines the Configuration for the Clowder Logging Provider. Logging LoggingConfig `json:"logging"` // Defines the Configuration for the Clowder Metrics Provider. Metrics MetricsConfig `json:"metrics,omitempty"` // Defines the Configuration for the Clowder ObjectStore Provider. ObjectStore ObjectStoreConfig `json:"objectStore"` // Defines the Configuration for the Clowder Web Provider. Web WebConfig `json:"web,omitempty"` // Defines the Configuration for the Clowder FeatureFlags Provider. FeatureFlags FeatureFlagsConfig `json:"featureFlags,omitempty"` // Defines the Configuration for the Clowder ServiceMesh Provider. ServiceMesh ServiceMeshConfig `json:"serviceMesh,omitempty"` // Defines the pull secret to use for the service accounts. PullSecrets []NamespacedName `json:"pullSecrets,omitempty"` // Defines the environment for iqe/smoke testing Testing TestingConfig `json:"testing,omitempty"` // Defines the sidecar configuration Sidecars Sidecars `json:"sidecars,omitempty"` // Defines the autoscaler configuration AutoScaler AutoScalerConfig `json:"autoScaler,omitempty"` // Defines the Deployment provider options Deployment DeploymentConfig `json:"deployment,omitempty"` }
ProvidersConfig defines a group of providers configuration for a ClowdEnvironment.
func (*ProvidersConfig) DeepCopy ¶ added in v0.18.1
func (in *ProvidersConfig) DeepCopy() *ProvidersConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProvidersConfig.
func (*ProvidersConfig) DeepCopyInto ¶ added in v0.18.1
func (in *ProvidersConfig) DeepCopyInto(out *ProvidersConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PublicWebService ¶
type PublicWebService struct { // Enabled describes if Clowder should enable the public service and provide the // configuration in the cdappconfig. Enabled bool `json:"enabled,omitempty"` // (DEPRECATED, use apiPaths instead) Configures a path named '/api/<apiPath>/' that this app will serve requests from. APIPath string `json:"apiPath,omitempty"` // Defines a list of API paths (each matching format: "/api/some-path/") that this app will serve requests from. APIPaths []APIPath `json:"apiPaths,omitempty"` // WhitelistPaths define the paths that do not require authentication WhitelistPaths []string `json:"whitelistPaths,omitempty"` // Set SessionAffinity to true to enable sticky sessions SessionAffinity bool `json:"sessionAffinity,omitempty"` }
PublicWebService is the definition of the public web service. There can be only one public service managed by Clowder.
func (*PublicWebService) DeepCopy ¶ added in v0.18.1
func (in *PublicWebService) DeepCopy() *PublicWebService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicWebService.
func (*PublicWebService) DeepCopyInto ¶ added in v0.18.1
func (in *PublicWebService) DeepCopyInto(out *PublicWebService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceConfig ¶
type ServiceConfig struct { // +kubebuilder:validation:Enum=ClusterIP;NodePort;"" Type string `json:"type"` }
ServiceConfig provides options for k8s Service resources
func (*ServiceConfig) DeepCopy ¶ added in v0.18.1
func (in *ServiceConfig) DeepCopy() *ServiceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceConfig.
func (*ServiceConfig) DeepCopyInto ¶ added in v0.18.1
func (in *ServiceConfig) DeepCopyInto(out *ServiceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceMeshConfig ¶
type ServiceMeshConfig struct {
Mode ServiceMeshMode `json:"mode,omitempty"`
}
ServiceMeshConfig determines if this env should be part of a service mesh and, if enabled, configures the service mesh
func (*ServiceMeshConfig) DeepCopy ¶ added in v0.18.1
func (in *ServiceMeshConfig) DeepCopy() *ServiceMeshConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceMeshConfig.
func (*ServiceMeshConfig) DeepCopyInto ¶ added in v0.18.1
func (in *ServiceMeshConfig) DeepCopyInto(out *ServiceMeshConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceMeshMode ¶
type ServiceMeshMode string
ServiceMeshMode just determines if we enable or disable the service mesh +kubebuilder:validation:Enum=enabled;disabled
type Sidecar ¶
type Sidecar struct { // The name of the sidecar, only supported names allowed, (otel-collector, token-refresher) Name string `json:"name"` // Defines if the sidecar is enabled, defaults to False Enabled bool `json:"enabled"` }
func (*Sidecar) DeepCopy ¶ added in v0.18.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sidecar.
func (*Sidecar) DeepCopyInto ¶ added in v0.18.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Sidecars ¶
type Sidecars struct { // Sets up Token Refresher configuration TokenRefresher TokenRefresherConfig `json:"tokenRefresher,omitempty"` // Sets up OpenTelemetry collector configuration OtelCollector OtelCollectorConfig `json:"otelCollector,omitempty"` }
func (*Sidecars) DeepCopy ¶ added in v0.18.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Sidecars.
func (*Sidecars) DeepCopyInto ¶ added in v0.18.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SimpleAutoScalerMetric ¶ added in v0.43.0
type SimpleAutoScalerMetric struct { ScaleAtValue string `json:"scaleAtValue,omitempty"` ScaleAtUtilization int32 `json:"scaleAtUtilization,omitempty"` }
SimpleAutoScalerMetric defines a metric of either a value or utilization
func (*SimpleAutoScalerMetric) DeepCopy ¶ added in v0.43.0
func (in *SimpleAutoScalerMetric) DeepCopy() *SimpleAutoScalerMetric
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SimpleAutoScalerMetric.
func (*SimpleAutoScalerMetric) DeepCopyInto ¶ added in v0.43.0
func (in *SimpleAutoScalerMetric) DeepCopyInto(out *SimpleAutoScalerMetric)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SimpleAutoScalerReplicas ¶ added in v0.43.0
SimpleAutoScalerReplicas defines the minimum and maximum replica counts for the auto scaler
func (*SimpleAutoScalerReplicas) DeepCopy ¶ added in v0.43.0
func (in *SimpleAutoScalerReplicas) DeepCopy() *SimpleAutoScalerReplicas
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SimpleAutoScalerReplicas.
func (*SimpleAutoScalerReplicas) DeepCopyInto ¶ added in v0.43.0
func (in *SimpleAutoScalerReplicas) DeepCopyInto(out *SimpleAutoScalerReplicas)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TLS ¶ added in v0.55.0
type TLS struct { Enabled bool `json:"enabled,omitempty"` Port int32 `json:"port,omitempty"` PrivatePort int32 `json:"privatePort,omitempty"` }
func (*TLS) DeepCopy ¶ added in v0.55.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TLS.
func (*TLS) DeepCopyInto ¶ added in v0.55.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TestingConfig ¶
type TestingConfig struct { // Defines the environment for iqe/smoke testing Iqe IqeConfig `json:"iqe,omitempty"` // The mode of operation of the testing Pod. Valid options are: // 'default', 'view' or 'edit' K8SAccessLevel K8sAccessLevel `json:"k8sAccessLevel"` // The mode of operation for access to outside app configs. Valid // options are: // (*_none_*) -- no app config is mounted to the pod // (*_app_*) -- only the ClowdApp's config is mounted to the pod // (*_environment_*) -- the config for all apps in the env are mounted ConfigAccess ConfigAccessMode `json:"configAccess"` }
func (*TestingConfig) DeepCopy ¶ added in v0.18.1
func (in *TestingConfig) DeepCopy() *TestingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TestingConfig.
func (*TestingConfig) DeepCopyInto ¶ added in v0.18.1
func (in *TestingConfig) DeepCopyInto(out *TestingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TestingSpec ¶
type TestingSpec struct {
IqePlugin string `json:"iqePlugin"`
}
func (*TestingSpec) DeepCopy ¶ added in v0.18.1
func (in *TestingSpec) DeepCopy() *TestingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TestingSpec.
func (*TestingSpec) DeepCopyInto ¶ added in v0.18.1
func (in *TestingSpec) DeepCopyInto(out *TestingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TokenRefresherConfig ¶
type TokenRefresherConfig struct { // Enables or disables token refresher sidecars Enabled bool `json:"enabled"` // Configurable image Image string `json:"image,omitempty"` }
func (*TokenRefresherConfig) DeepCopy ¶ added in v0.18.1
func (in *TokenRefresherConfig) DeepCopy() *TokenRefresherConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenRefresherConfig.
func (*TokenRefresherConfig) DeepCopyInto ¶ added in v0.18.1
func (in *TokenRefresherConfig) DeepCopyInto(out *TokenRefresherConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebConfig ¶
type WebConfig struct { // The port that web services inside ClowdApp pods should be served on. Port int32 `json:"port"` // The private port that web services inside a ClowdApp should be served on. PrivatePort int32 `json:"privatePort,omitempty"` // The auth port that the web local mode will use with the AuthSidecar AuthPort int32 `json:"aiuthPort,omitempty"` // An api prefix path that pods will be instructed to use when setting up // their web server. APIPrefix string `json:"apiPrefix,omitempty"` // The mode of operation of the Web provider. The allowed modes are // (*_none_*/*_operator_*), and (*_local_*) which deploys keycloak and BOP. Mode WebMode `json:"mode"` // The URL of BOP - only used in (*_none_*/*_operator_*) mode. BOPURL string `json:"bopURL,omitempty"` // Ingress Class Name used only in (*_local_*) mode. IngressClass string `json:"ingressClass,omitempty"` // Optional keycloak version override -- used only in (*_local_*) mode -- if not set, a hard-coded default is used. KeycloakVersion string `json:"keycloakVersion,omitempty"` // Optionally use PVC storage for keycloak db KeycloakPVC bool `json:"keycloakPVC,omitempty"` // Optional images to use for web provider components -- only applies when running in (*_local_*) mode. Images WebImages `json:"images,omitempty"` // TLS sidecar enablement TLS TLS `json:"tls,omitempty"` // Gateway cert GatewayCert GatewayCert `json:"gatewayCert,omitempty"` }
WebConfig configures the Clowder provider controlling the creation of web services and their probes.
func (*WebConfig) DeepCopy ¶ added in v0.18.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebConfig.
func (*WebConfig) DeepCopyInto ¶ added in v0.18.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebDeprecated ¶
type WebDeprecated bool
WebDeprecated defines a boolean flag to help distinguish from the newer WebServices
type WebImages ¶ added in v0.42.0
type WebImages struct { // Mock entitlements image -- if not defined, value from operator config is used if set, otherwise a hard-coded default is used. Mocktitlements string `json:"mocktitlements,omitempty"` // Keycloak image -- default is 'quay.io/keycloak/keycloak:{KeycloakVersion}' unless overridden here Keycloak string `json:"keycloak,omitempty"` // Caddy image -- if not defined, value from operator config is used if set, otherwise a hard-coded default is used. Caddy string `json:"caddy,omitempty"` // Caddy Gateway image -- if not defined, value from operator config is used if set, otherwise a hard-coded default is used. CaddyGateway string `json:"caddyGateway,omitempty"` // Mock BOP image -- if not defined, value from operator config is used if set, otherwise a hard-coded default is used. MockBOP string `json:"mockBop,omitempty"` }
WebImages defines optional container image overrides for the web provider components
func (*WebImages) DeepCopy ¶ added in v0.42.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebImages.
func (*WebImages) DeepCopyInto ¶ added in v0.42.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebMode ¶
type WebMode string
WebMode details the mode of operation of the Clowder Web Provider +kubebuilder:validation:Enum=none;operator;local
type WebServices ¶
type WebServices struct { Public PublicWebService `json:"public,omitempty"` Private PrivateWebService `json:"private,omitempty"` Metrics MetricsWebService `json:"metrics,omitempty"` }
WebServices defines the structs for the three exposed web services: public, private and metrics.
func (*WebServices) DeepCopy ¶ added in v0.18.1
func (in *WebServices) DeepCopy() *WebServices
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebServices.
func (*WebServices) DeepCopyInto ¶ added in v0.18.1
func (in *WebServices) DeepCopyInto(out *WebServices)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.