Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the rcs v1alpha1 API group +kubebuilder:object:generate=true +groupName=rcs.dana.io
Index ¶
- Constants
- Variables
- type AutoscaleConfig
- type Capp
- type CappConfig
- type CappConfigList
- type CappConfigSpec
- type CappConfigStatus
- type CappList
- type CappRevision
- type CappRevisionList
- type CappRevisionSpec
- type CappSpec
- type CappStatus
- type CappTemplate
- type DNSConfig
- type DNSRecordObjectStatus
- type EventSourceStatus
- type EventSourcesSpec
- type EventingStatus
- type HostnamePattern
- type IssuerRef
- type KafkaSourceConfiguration
- type LogSpec
- type LogType
- type LoggingStatus
- type NFSVolume
- type NFSVolumeStatus
- type PingSourceConfiguration
- type RevisionInfo
- type RouteSpec
- type RouteStatus
- type ScaleSpec
- type SourceConfiguration
- type StateStatus
- type VolumesSpec
- type VolumesStatus
Constants ¶
const ( // CappStateDisabled is the disabled state value for a Capp. CappStateDisabled = "disabled" // CappConditionReady indicates that all Capp child resources are healthy // and the workload is serving traffic. CappConditionReady = "Ready" // Reasons for the Ready condition. CappReadyReasonReady = "Ready" CappReadyReasonKnativeNotReady = "KnativeServiceNotReady" CappReadyReasonLoggingNotReady = "LoggingNotReady" CappReadyReasonDomainMappingNotReady = "DomainMappingNotReady" CappReadyReasonCertificateNotReady = "CertificateNotReady" CappReadyReasonVolumesNotReady = "VolumesNotReady" CappReadyReasonEventingNotReady = "EventingNotReady" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "rcs.dana.io", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type AutoscaleConfig ¶ added in v0.3.6
type AutoscaleConfig struct {
// RPS is the desired requests per second to trigger upscaling.
// +kubebuilder:validation:Minimum=1
RPS int `json:"rps"`
// CPU is the desired CPU utilization to trigger upscaling.
// +kubebuilder:validation:Minimum=1
CPU int `json:"cpu"`
// Memory is the desired memory utilization to trigger upscaling.
// +kubebuilder:validation:Minimum=1
Memory int `json:"memory"`
// Concurrency is the maximum concurrency of a Capp.
// +kubebuilder:validation:Minimum=1
Concurrency int `json:"concurrency"`
// ActivationScale is the default number of replicas used when a scale-to-zero Capp scales up from idle.
// +kubebuilder:validation:Minimum=2
ActivationScale int `json:"activationScale"`
// MinReplicasLimit is the global minimum scale. (maximum allowed value for minReplicas).
// +kubebuilder:validation:Minimum=1
MinReplicasLimit int `json:"minReplicasLimit"`
// MaxReplicasLimit is the global maximum scale (maximum allowed value for maxReplicas).
// +kubebuilder:validation:Minimum=1
MaxReplicasLimit int `json:"maxReplicasLimit"`
// MaxScaleDelay is the maximum delay in seconds before the Autoscaler scales down the Capp to zero.
// +kubebuilder:default:=3600
// +kubebuilder:validation:Minimum=0
MaxScaleDelay int `json:"maxScaleDelay"`
}
func (*AutoscaleConfig) DeepCopy ¶ added in v0.3.6
func (in *AutoscaleConfig) DeepCopy() *AutoscaleConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoscaleConfig.
func (*AutoscaleConfig) DeepCopyInto ¶ added in v0.3.6
func (in *AutoscaleConfig) DeepCopyInto(out *AutoscaleConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Capp ¶
type Capp struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// CappSpec defines the desired state of Capp.
// +optional
Spec CappSpec `json:"spec,omitempty"`
// CappStatus defines the observed state of Capp.
// +optional
Status CappStatus `json:"status,omitempty"`
}
Capp is the Schema for the capps API.
func (*Capp) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Capp.
func (*Capp) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Capp) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CappConfig ¶ added in v0.3.6
type CappConfig struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec CappConfigSpec `json:"spec,omitempty"`
Status CappConfigStatus `json:"status,omitempty"`
}
CappConfig is the Schema for the cappconfigs API
func (*CappConfig) DeepCopy ¶ added in v0.3.6
func (in *CappConfig) DeepCopy() *CappConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappConfig.
func (*CappConfig) DeepCopyInto ¶ added in v0.3.6
func (in *CappConfig) DeepCopyInto(out *CappConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CappConfig) DeepCopyObject ¶ added in v0.3.6
func (in *CappConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CappConfigList ¶ added in v0.3.6
type CappConfigList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []CappConfig `json:"items"`
}
CappConfigList contains a list of CappConfig
func (*CappConfigList) DeepCopy ¶ added in v0.3.6
func (in *CappConfigList) DeepCopy() *CappConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappConfigList.
func (*CappConfigList) DeepCopyInto ¶ added in v0.3.6
func (in *CappConfigList) DeepCopyInto(out *CappConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CappConfigList) DeepCopyObject ¶ added in v0.3.6
func (in *CappConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CappConfigSpec ¶ added in v0.3.6
type CappConfigSpec struct {
// +kubebuilder:validation:Required
DNSConfig DNSConfig `json:"dnsConfig"`
// +kubebuilder:validation:Required
AutoscaleConfig AutoscaleConfig `json:"autoscaleConfig"`
// DefaultResources is the default resources to be assigned to Capp.
// If other resources are specified then they override the default values.
DefaultResources corev1.ResourceRequirements `json:"defaultResources"`
// AllowedHostnamePatterns is a list of hostname patterns used to validate Capp hostnames.
// If the Capp hostname matches a pattern, it is allowed to be created.
// Defaults to an empty list (all hostnames denied) if not specified.
// +kubebuilder:default:={}
AllowedHostnamePatterns []HostnamePattern `json:"allowedHostnamePatterns"`
// RevisionHistoryLimit defines how many CappRevisions will be retained
// +kubebuilder:default:=10
// +kubebuilder:validation:Minimum=1
RevisionHistoryLimit int `json:"revisionHistoryLimit,omitempty"`
// MaxKafkaConsumers is the maximum allowed KafkaSource consumers per kafka source entry.
// +kubebuilder:default:=5
// +kubebuilder:validation:Minimum=1
MaxKafkaConsumers int32 `json:"maxKafkaConsumers,omitempty"`
}
CappConfigSpec defines the desired state of CappConfig
func (*CappConfigSpec) DeepCopy ¶ added in v0.3.6
func (in *CappConfigSpec) DeepCopy() *CappConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappConfigSpec.
func (*CappConfigSpec) DeepCopyInto ¶ added in v0.3.6
func (in *CappConfigSpec) DeepCopyInto(out *CappConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CappConfigStatus ¶ added in v0.3.6
type CappConfigStatus struct{}
CappConfigStatus defines the observed state of CappConfig
func (*CappConfigStatus) DeepCopy ¶ added in v0.3.6
func (in *CappConfigStatus) DeepCopy() *CappConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappConfigStatus.
func (*CappConfigStatus) DeepCopyInto ¶ added in v0.3.6
func (in *CappConfigStatus) DeepCopyInto(out *CappConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CappList ¶
type CappList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Capp `json:"items"`
}
CappList contains a list of Capp.
func (*CappList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappList.
func (*CappList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CappList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CappRevision ¶ added in v0.2.0
type CappRevision struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec CappRevisionSpec `json:"spec,omitempty"`
}
CappRevision is the Schema for the CappRevisions API
func (*CappRevision) DeepCopy ¶ added in v0.2.0
func (in *CappRevision) DeepCopy() *CappRevision
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappRevision.
func (*CappRevision) DeepCopyInto ¶ added in v0.2.0
func (in *CappRevision) DeepCopyInto(out *CappRevision)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CappRevision) DeepCopyObject ¶ added in v0.2.0
func (in *CappRevision) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CappRevisionList ¶ added in v0.2.0
type CappRevisionList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []CappRevision `json:"items"`
}
CappRevisionList contains a list of CappRevision
func (*CappRevisionList) DeepCopy ¶ added in v0.2.0
func (in *CappRevisionList) DeepCopy() *CappRevisionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappRevisionList.
func (*CappRevisionList) DeepCopyInto ¶ added in v0.2.0
func (in *CappRevisionList) DeepCopyInto(out *CappRevisionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*CappRevisionList) DeepCopyObject ¶ added in v0.2.0
func (in *CappRevisionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type CappRevisionSpec ¶ added in v0.2.0
type CappRevisionSpec struct {
// RevisionNumber represent the revision number of Capp
RevisionNumber int `json:"revisionNumber"`
// CappTemplate holds the manifest of a specific Capp corresponding to a particular RevisionNumber
CappTemplate CappTemplate `json:"cappTemplate"`
}
CappRevisionSpec defines the desired state of CappRevision
func (*CappRevisionSpec) DeepCopy ¶ added in v0.2.0
func (in *CappRevisionSpec) DeepCopy() *CappRevisionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappRevisionSpec.
func (*CappRevisionSpec) DeepCopyInto ¶ added in v0.2.0
func (in *CappRevisionSpec) DeepCopyInto(out *CappRevisionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CappSpec ¶
type CappSpec struct {
// State defines the state of capp
// Possible values examples: "enabled", "disabled".
// +optional
// +kubebuilder:default:="enabled"
// +kubebuilder:validation:Enum=enabled;disabled
State string `json:"state,omitempty"`
// ScaleSpec holds the Capp scaling configuration.
ScaleSpec ScaleSpec `json:"scaleSpec"`
// ConfigurationSpec holds the desired state of the Configuration (from the client).
ConfigurationSpec knativev1.ConfigurationSpec `json:"configurationSpec"`
// RouteSpec defines the route specification for the Capp.
// +optional
RouteSpec RouteSpec `json:"routeSpec,omitempty"`
// LogSpec defines the configuration for shipping Capp logs.
LogSpec LogSpec `json:"logSpec,omitempty"`
// VolumesSpec defines the volumes specification for the Capp.
VolumesSpec VolumesSpec `json:"volumesSpec,omitempty"`
// EventSourcesSpec defines the event sources for the Capp.
// +optional
EventSourcesSpec EventSourcesSpec `json:"eventSourcesSpec,omitempty"`
}
CappSpec defines the desired state of Capp.
func (*CappSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappSpec.
func (*CappSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CappStatus ¶
type CappStatus struct {
// KnativeObjectStatus represents the Status stanza of the Service resource.
// +optional
KnativeObjectStatus knativev1.ServiceStatus `json:"knativeObjectStatus,omitempty"`
// RevisionInfo shows the revision information.
// +optional
RevisionInfo []RevisionInfo `json:"revisions,omitempty"`
// StateStatus shows the current Capp state
// +optional
StateStatus StateStatus `json:"stateStatus,omitempty"`
// LoggingStatus defines the state of the Flow and Output objects linked to the Capp.
// +optional
LoggingStatus LoggingStatus `json:"loggingStatus,omitempty"`
// RouteStatus shows the state of the DomainMapping object linked to the Capp.
// +optional
RouteStatus RouteStatus `json:"routeStatus,omitempty"`
// VolumesStatus shows the state of the Volumes objects linked to the Capp.
// +optional
VolumesStatus VolumesStatus `json:"volumesStatus,omitempty"`
// EventingStatus shows the state of event sources linked to the Capp.
// +optional
EventingStatus EventingStatus `json:"eventingStatus,omitempty"`
// Conditions contain details about the current state of the Capp.
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
CappStatus defines the observed state of Capp.
func (*CappStatus) DeepCopy ¶
func (in *CappStatus) DeepCopy() *CappStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappStatus.
func (*CappStatus) DeepCopyInto ¶
func (in *CappStatus) DeepCopyInto(out *CappStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CappTemplate ¶ added in v0.2.0
type CappTemplate struct {
// Spec is the related Capp spec
Spec CappSpec `json:"cappSpec,omitempty"`
// Labels is a map of string keys and values which are the actual labels of the related Capp
// +optional
Labels map[string]string `json:"labels,omitempty"`
// Annotations is a map of string keys and values which are the actual annotations of the related Capp
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
}
CappTemplate template of Capp.
func (*CappTemplate) DeepCopy ¶ added in v0.2.0
func (in *CappTemplate) DeepCopy() *CappTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CappTemplate.
func (*CappTemplate) DeepCopyInto ¶ added in v0.2.0
func (in *CappTemplate) DeepCopyInto(out *CappTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNSConfig ¶ added in v0.3.6
type DNSConfig struct {
// Zone defines the DNS zone for Capp Hostnames.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:XValidation:rule="self.endsWith('.')",message="zone must end with '.'"
Zone string `json:"zone"`
// CNAME defines the CNAME record that will be used for Capp Hostnames.
// +kubebuilder:validation:MinLength=1
CNAME string `json:"cname"`
// Provider defines the DNS provider.
// +kubebuilder:validation:MinLength=1
Provider string `json:"provider"`
// IssuerRef identifies the cert-manager issuer used to issue certificates.
IssuerRef IssuerRef `json:"issuerRef"`
}
func (*DNSConfig) DeepCopy ¶ added in v0.3.6
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSConfig.
func (*DNSConfig) DeepCopyInto ¶ added in v0.3.6
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNSRecordObjectStatus ¶ added in v0.3.0
type DNSRecordObjectStatus struct {
// CNAMERecordObjectStatus is the status of the underlying ARecordSet object
// +optional
CNAMERecordObjectStatus dnsrecordv1alpha1.CNAMERecordStatus `json:"cnameRecordObjectStatus,omitempty"`
}
func (*DNSRecordObjectStatus) DeepCopy ¶ added in v0.3.0
func (in *DNSRecordObjectStatus) DeepCopy() *DNSRecordObjectStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSRecordObjectStatus.
func (*DNSRecordObjectStatus) DeepCopyInto ¶ added in v0.3.0
func (in *DNSRecordObjectStatus) DeepCopyInto(out *DNSRecordObjectStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EventSourceStatus ¶ added in v0.9.0
type EventSourceStatus struct {
// Name is the K8s name of the underlying source resource.
// +optional
Name string `json:"name,omitempty"`
// Condition holds the readiness condition for the underlying source resource.
Condition kapis.Condition `json:"condition"`
}
EventSourceStatus shows the observed state of a single event source resource.
func (*EventSourceStatus) DeepCopy ¶ added in v0.9.0
func (in *EventSourceStatus) DeepCopy() *EventSourceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventSourceStatus.
func (*EventSourceStatus) DeepCopyInto ¶ added in v0.9.0
func (in *EventSourceStatus) DeepCopyInto(out *EventSourceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EventSourcesSpec ¶ added in v0.9.0
type EventSourcesSpec struct {
// Sources is the list of event sources connected to the Capp's Knative Service.
// +optional
Sources []SourceConfiguration `json:"sources,omitempty"`
}
EventSourcesSpec defines all event sources for a Capp.
func (*EventSourcesSpec) DeepCopy ¶ added in v0.9.0
func (in *EventSourcesSpec) DeepCopy() *EventSourcesSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventSourcesSpec.
func (*EventSourcesSpec) DeepCopyInto ¶ added in v0.9.0
func (in *EventSourcesSpec) DeepCopyInto(out *EventSourcesSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EventingStatus ¶ added in v0.9.0
type EventingStatus struct {
// EventSources lists the status of each owned event source resource.
// +optional
EventSources []EventSourceStatus `json:"eventSources,omitempty"`
}
EventingStatus shows the observed state of all event sources linked to the Capp.
func (*EventingStatus) DeepCopy ¶ added in v0.9.0
func (in *EventingStatus) DeepCopy() *EventingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EventingStatus.
func (*EventingStatus) DeepCopyInto ¶ added in v0.9.0
func (in *EventingStatus) DeepCopyInto(out *EventingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HostnamePattern ¶ added in v0.7.0
type HostnamePattern struct {
// Match is a regex used to match Capp hostnames.
// +kubebuilder:validation:MinLength=1
Match string `json:"match"`
// Explanation is a human-readable description shown in webhook error messages.
// +kubebuilder:validation:MaxLength=100
// +optional
Explanation string `json:"explanation,omitempty"`
}
HostnamePattern defines a regex pattern for validating Capp hostnames.
func (*HostnamePattern) DeepCopy ¶ added in v0.7.0
func (in *HostnamePattern) DeepCopy() *HostnamePattern
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HostnamePattern.
func (*HostnamePattern) DeepCopyInto ¶ added in v0.7.0
func (in *HostnamePattern) DeepCopyInto(out *HostnamePattern)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IssuerRef ¶ added in v0.9.1
type IssuerRef struct {
// Name is the name of the certificate issuer.
// +kubebuilder:validation:MinLength=1
Name string `json:"name"`
// Kind is the kind of the certificate issuer (e.g. ClusterIssuer).
// +kubebuilder:validation:MinLength=1
Kind string `json:"kind"`
// Group is the API group of the certificate issuer (e.g. cert-manager.io).
// +kubebuilder:validation:MinLength=1
Group string `json:"group"`
}
IssuerRef identifies a cert-manager issuer by name, kind, and API group.
func (*IssuerRef) DeepCopy ¶ added in v0.9.1
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IssuerRef.
func (*IssuerRef) DeepCopyInto ¶ added in v0.9.1
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KafkaSourceConfiguration ¶ added in v0.9.1
type KafkaSourceConfiguration struct {
// BootstrapServers is the list of Kafka broker addresses.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinItems=1
BootstrapServers []string `json:"bootstrapServers"`
// Topics is the list of Kafka topics to consume.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinItems=1
Topics []string `json:"topics"`
// ConsumerGroup is the Kafka consumer group ID.
// Optional; when unset the operator assigns a dedicated group for this source.
// +optional
ConsumerGroup string `json:"consumerGroup,omitempty"`
// Consumers is the number of parallel KafkaSource consumers for this source.
// +kubebuilder:validation:Minimum=1
// +optional
Consumers *int32 `json:"consumers,omitempty"`
// SecretRef references a Secret in the Capp namespace with credentials for the Kafka cluster.
// +kubebuilder:validation:Required
SecretRef corev1.LocalObjectReference `json:"secretRef"`
}
KafkaSourceConfiguration defines the configuration for a Capp Kafka event source. +kubebuilder:validation:XValidation:rule="size(self.secretRef.name) > 0",message="secretRef.name is required"
func (*KafkaSourceConfiguration) DeepCopy ¶ added in v0.9.1
func (in *KafkaSourceConfiguration) DeepCopy() *KafkaSourceConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KafkaSourceConfiguration.
func (*KafkaSourceConfiguration) DeepCopyInto ¶ added in v0.9.1
func (in *KafkaSourceConfiguration) DeepCopyInto(out *KafkaSourceConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogSpec ¶ added in v0.1.2
type LogSpec struct {
// Type defines where to send the Capp logs
// +kubebuilder:validation:Enum=elastic;elastic-datastream
// +optional
Type LogType `json:"type,omitempty"`
// Host defines Elasticsearch or Splunk host.
// Should include full URL with protocol and port (e.g. https://elasticsearch:9200/_bulk).
// +optional
Host string `json:"host,omitempty"`
// Index defines the index name to write events to.
// Ignored if type is set to "elastic-datastream".
// +optional
Index string `json:"index,omitempty"`
// User defines a User for authentication.
// +optional
User string `json:"user,omitempty"`
// PasswordSecret defines the name of the secret
// containing the password for authentication.
// +optional
PasswordSecret string `json:"passwordSecret,omitempty"`
}
LogSpec defines the configuration for shipping Capp logs. +kubebuilder:validation:XValidation:rule="!has(self.type) || self.type != 'elastic' || (has(self.host) && size(self.host) > 0 && has(self.index) && size(self.index) > 0 && has(self.user) && size(self.user) > 0 && has(self.passwordSecret) && size(self.passwordSecret) > 0)",message="elastic log configuration requires host, index, user, and passwordSecret" +kubebuilder:validation:XValidation:rule="!has(self.type) || self.type != 'elastic-datastream' || (has(self.host) && size(self.host) > 0 && has(self.user) && size(self.user) > 0 && has(self.passwordSecret) && size(self.passwordSecret) > 0)",message="elastic-datastream log configuration requires host, user, and passwordSecret" +kubebuilder:validation:XValidation:rule="(!has(self.host) || size(self.host) == 0) && (!has(self.index) || size(self.index) == 0) && (!has(self.user) || size(self.user) == 0) && (!has(self.passwordSecret) || size(self.passwordSecret) == 0) || (has(self.type) && (self.type == 'elastic' || self.type == 'elastic-datastream'))",message="type must be elastic or elastic-datastream when log configuration fields are set"
func (*LogSpec) DeepCopy ¶ added in v0.1.2
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogSpec.
func (*LogSpec) DeepCopyInto ¶ added in v0.1.2
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LoggingStatus ¶ added in v0.1.4
type LoggingStatus struct {
// SyslogNGFlow represents the Status of the SyslogNGFlow used by the Capp.
// +optional
SyslogNGFlow loggingv1beta1.SyslogNGFlowStatus `json:"syslogngflow,omitempty"`
// SyslogNGOutput represents the Status of the SyslogNGOutput used by the Capp.
// +optional
SyslogNGOutput loggingv1beta1.SyslogNGOutputStatus `json:"syslogngoutput,omitempty"`
// Conditions contain details about the current state of the SyslogNGFlow and SyslogNGOutput used by the Capp.
// +optional
Conditions []metav1.Condition `json:"conditions,omitempty"`
}
LoggingStatus defines the state of the SyslogNGFlow and SyslogNGOutput objects linked to the Capp.
func (*LoggingStatus) DeepCopy ¶ added in v0.1.4
func (in *LoggingStatus) DeepCopy() *LoggingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LoggingStatus.
func (*LoggingStatus) DeepCopyInto ¶ added in v0.1.4
func (in *LoggingStatus) DeepCopyInto(out *LoggingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NFSVolume ¶ added in v0.1.8
type NFSVolume struct {
// Server is the hostname or IP address of the NFS server.
// +kubebuilder:validation:MinLength=1
Server string `json:"server"`
// Path is the exported path on the NFS server.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:XValidation:rule="self.startsWith('/')",message="path must start with '/'"
Path string `json:"path"`
// Name is the name of the volume.
// +kubebuilder:validation:MinLength=1
// +kubebuilder:validation:MaxLength=63
// +kubebuilder:validation:Pattern=`^[a-z0-9]([-a-z0-9]*[a-z0-9])?$`
Name string `json:"name"`
// Capacity is the capacity of the volume.
Capacity corev1.ResourceList `json:"capacity"`
}
NFSVolume defines the NFS volume specification for the Capp.
func (*NFSVolume) DeepCopy ¶ added in v0.1.8
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NFSVolume.
func (*NFSVolume) DeepCopyInto ¶ added in v0.1.8
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NFSVolumeStatus ¶ added in v0.1.8
type NFSVolumeStatus struct {
// VolumeName is the name of the volume.
VolumeName string `json:"volumeName,omitempty"`
// NFSPVCStatus is the status of the underlying NfsPvc object.
NFSPVCStatus nfspvcv1alpha1.NfsPvcStatus `json:"nfsPvcStatus,omitempty"`
}
func (*NFSVolumeStatus) DeepCopy ¶ added in v0.1.8
func (in *NFSVolumeStatus) DeepCopy() *NFSVolumeStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NFSVolumeStatus.
func (*NFSVolumeStatus) DeepCopyInto ¶ added in v0.1.8
func (in *NFSVolumeStatus) DeepCopyInto(out *NFSVolumeStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PingSourceConfiguration ¶ added in v0.9.0
type PingSourceConfiguration struct {
// Schedule is the cron expression that defines the schedule for the PingSource.
// +kubebuilder:default:="* * * * *"
Schedule string `json:"schedule"`
// Data is the payload that the PingSource will send when it triggers.
// Must be valid JSON.
// +optional
Data string `json:"data,omitempty"`
}
PingSourceConfiguration defines the configuration for a Capp PingSource. This event source sends a specified payload to the capp at regular intervals defined by a cron expression schedule.
func (*PingSourceConfiguration) DeepCopy ¶ added in v0.9.0
func (in *PingSourceConfiguration) DeepCopy() *PingSourceConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PingSourceConfiguration.
func (*PingSourceConfiguration) DeepCopyInto ¶ added in v0.9.0
func (in *PingSourceConfiguration) DeepCopyInto(out *PingSourceConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RevisionInfo ¶
type RevisionInfo struct {
// RevisionStatus communicates the observed state of the Revision (from the controller).
// +optional
RevisionStatus knativev1.RevisionStatus `json:"revisionsStatus,omitempty"`
// RevisionName is the name of the revision.
// +optional
RevisionName string `json:"name,omitempty"`
}
RevisionInfo shows the revision information.
func (*RevisionInfo) DeepCopy ¶
func (in *RevisionInfo) DeepCopy() *RevisionInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevisionInfo.
func (*RevisionInfo) DeepCopyInto ¶
func (in *RevisionInfo) DeepCopyInto(out *RevisionInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteSpec ¶
type RouteSpec struct {
// Hostname is the custom DNS name for the Capp route.
// Required when tlsEnabled is true.
// +optional
Hostname string `json:"hostname,omitempty"`
// TlsEnabled enables HTTPS and automatic certificate management for hostname.
// +optional
TlsEnabled bool `json:"tlsEnabled,omitempty"`
// TrafficTarget holds a single entry of the routing table for the Capp route.
// +optional
TrafficTarget knativev1.TrafficTarget `json:"trafficTarget,omitempty"`
// RouteTimeoutSeconds is the maximum duration in seconds
// that the request instance is allowed to respond to a request.
// +optional
RouteTimeoutSeconds *int64 `json:"routeTimeoutSeconds,omitempty"`
}
RouteSpec defines the route specification for the Capp. +kubebuilder:validation:XValidation:rule="!has(self.tlsEnabled) || !self.tlsEnabled || (has(self.hostname) && size(self.hostname) > 0)",message="hostname must be set when tlsEnabled is true"
func (*RouteSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteSpec.
func (*RouteSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RouteStatus ¶ added in v0.1.4
type RouteStatus struct {
// DomainMappingObjectStatus is the status of the underlying DomainMapping object
// +optional
DomainMappingObjectStatus knativev1beta1.DomainMappingStatus `json:"domainMappingObjectStatus,omitempty"`
// ARecordSetObjectStatus is the status of the underlying ARecordSet object
// +optional
DNSRecordObjectStatus DNSRecordObjectStatus `json:"dnsRecordObjectStatus,omitempty"`
// CertificateObjectStatus is the status of the underlying Certificate object
// +optional
CertificateObjectStatus cmapi.CertificateStatus `json:"certificateObjectStatus,omitempty"`
}
RouteStatus shows the state of the DomainMapping object linked to the Capp.
func (*RouteStatus) DeepCopy ¶ added in v0.1.4
func (in *RouteStatus) DeepCopy() *RouteStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RouteStatus.
func (*RouteStatus) DeepCopyInto ¶ added in v0.1.4
func (in *RouteStatus) DeepCopyInto(out *RouteStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScaleSpec ¶ added in v0.8.0
type ScaleSpec struct {
// Metric defines which metric type is watched by the Autoscaler.
// Possible values examples: "concurrency", "rps", "cpu", "memory".
// +kubebuilder:default:="concurrency"
// +kubebuilder:validation:Enum=cpu;memory;rps;concurrency
Metric string `json:"metric,omitempty"`
// MinReplicas is the minimum number of replicas for the Capp.
// +kubebuilder:validation:Minimum=0
// +optional
MinReplicas *int32 `json:"minReplicas,omitempty"`
// MaxReplicas is the maximum number of replicas for the Capp.
// +kubebuilder:validation:Minimum=1
// +optional
MaxReplicas *int32 `json:"maxReplicas,omitempty"`
// ScaleDelaySeconds is the delay in seconds before the Autoscaler scales down the Capp to zero.
// +kubebuilder:validation:Minimum=0
// +optional
ScaleDelaySeconds *int32 `json:"scaleDelaySeconds,omitempty"`
}
ScaleSpec defines the scale specification for the Capp.
func (*ScaleSpec) DeepCopy ¶ added in v0.8.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleSpec.
func (*ScaleSpec) DeepCopyInto ¶ added in v0.8.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SourceConfiguration ¶ added in v0.9.0
type SourceConfiguration struct {
// Name is a unique logical identifier for this source within the Capp.
// +kubebuilder:validation:Required
// +kubebuilder:validation:MinLength=1
Name string `json:"name"`
// URI is a relative path appended to the resolved Capp Knative Service address (e.g. "/path").
// +kubebuilder:validation:Optional
// +kubebuilder:validation:XValidation:rule="self.startsWith('/')",message="uri must be a relative path"
URI *kapis.URL `json:"uri,omitempty"`
// Configuration for a PingSource.
// +optional
PingSourceConfiguration *PingSourceConfiguration `json:"pingSourceConfiguration,omitempty"`
// Configuration for a KafkaSource.
// +optional
KafkaSourceConfiguration *KafkaSourceConfiguration `json:"kafkaSourceConfiguration,omitempty"`
}
SourceConfiguration defines a single Knative Eventing source connected to the Capp. +kubebuilder:validation:XValidation:rule="(has(self.pingSourceConfiguration) && !has(self.kafkaSourceConfiguration)) || (!has(self.pingSourceConfiguration) && has(self.kafkaSourceConfiguration))",message="exactly one of pingSourceConfiguration or kafkaSourceConfiguration must be set"
func (*SourceConfiguration) DeepCopy ¶ added in v0.9.0
func (in *SourceConfiguration) DeepCopy() *SourceConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceConfiguration.
func (*SourceConfiguration) DeepCopyInto ¶ added in v0.9.0
func (in *SourceConfiguration) DeepCopyInto(out *SourceConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StateStatus ¶ added in v0.1.4
type StateStatus struct {
// State is actual enabled state of the capp
// +optional
State string `json:"state,omitempty"`
// LastChange is the last time the state of capp changed
// +optional
LastChange metav1.Time `json:"lastChange,omitempty"`
}
func (*StateStatus) DeepCopy ¶ added in v0.1.4
func (in *StateStatus) DeepCopy() *StateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StateStatus.
func (*StateStatus) DeepCopyInto ¶ added in v0.1.4
func (in *StateStatus) DeepCopyInto(out *StateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumesSpec ¶ added in v0.1.8
type VolumesSpec struct {
// NFSVolumes is a list of NFS volumes to be mounted.
NFSVolumes []NFSVolume `json:"nfsVolumes,omitempty"`
}
VolumesSpec defines the volumes specification for the Capp.
func (*VolumesSpec) DeepCopy ¶ added in v0.1.8
func (in *VolumesSpec) DeepCopy() *VolumesSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumesSpec.
func (*VolumesSpec) DeepCopyInto ¶ added in v0.1.8
func (in *VolumesSpec) DeepCopyInto(out *VolumesSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VolumesStatus ¶ added in v0.1.8
type VolumesStatus struct {
// NFSVolumeStatus is the status of the underlying NFSVolume objects.
NFSVolumesStatus []NFSVolumeStatus `json:"nfsVolumesStatus,omitempty"`
}
VolumesStatus shows the state of the Volumes objects linked to the Capp.
func (*VolumesStatus) DeepCopy ¶ added in v0.1.8
func (in *VolumesStatus) DeepCopy() *VolumesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VolumesStatus.
func (*VolumesStatus) DeepCopyInto ¶ added in v0.1.8
func (in *VolumesStatus) DeepCopyInto(out *VolumesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.