Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the observability v1alpha1 API group +kubebuilder:object:generate=true +groupName=observability.oracle.com
Index ¶
- Constants
- Variables
- type AdditionalWalletSecrets
- type AzureConfig
- type ConfigMapDetails
- type ConfigPrivateKey
- type DBAzureVault
- type DBOCIVault
- type DBSecret
- type DatabaseConfig
- type DatabaseObserver
- func (in *DatabaseObserver) DeepCopy() *DatabaseObserver
- func (in *DatabaseObserver) DeepCopyInto(out *DatabaseObserver)
- func (in *DatabaseObserver) DeepCopyObject() runtime.Object
- func (r *DatabaseObserver) Default(ctx context.Context, obj runtime.Object) error
- func (r *DatabaseObserver) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *DatabaseObserver) ValidateCreate(ctx context.Context, obj runtime.Object) (admission.Warnings, error)
- func (r *DatabaseObserver) ValidateDelete(ctx context.Context, obj runtime.Object) (admission.Warnings, error)
- func (r *DatabaseObserver) ValidateUpdate(ctx context.Context, oldObj, newObj runtime.Object) (admission.Warnings, error)
- type DatabaseObserverList
- type DatabaseObserverSpec
- type DatabaseObserverStatus
- type DeploymentPodTemplate
- type ExporterConfig
- type ExporterDeployment
- type ExporterService
- type ExporterServiceMonitor
- type LogConfig
- type LogVolume
- type LogVolumePVC
- type MetricsConfig
- type MultiDatabaseConfig
- type OCIConfig
- type SidecarConfig
- type StatusEnum
- type WalletSecret
Constants ¶
const ( AllowedExporterImage = "container-registry.oracle.com/database/observability-exporter" ErrorSpecValidationMissingConnString = "a required field for database connection string secret is missing or does not have a value" ErrorSpecValidationMissingDBUser = "a required field for database user secret is missing or does not have a value" ErrorSpecValidationMissingVaultField = "a field for configuring the vault has a value but the other required field(s) is missing or does not have a value" ErrorSpecValidationMissingOCIConfig = "a field(s) for the OCI Config is missing or does not have a value when fields for the OCI vault has values" ErrorSpecValidationMissingDBPasswordSecret = "a required field for the database password secret is missing or does not have a value" ErrorSpecExporterImageNotAllowed = "a different exporter image was found, only official database exporter container images are currently supported" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "observability.oracle.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 ¶
This section is empty.
Types ¶
type AdditionalWalletSecrets ¶
type AdditionalWalletSecrets struct {
Name string `json:"name,omitempty"`
SecretName string `json:"secret,omitempty"`
MountPath string `json:"mountPath,omitempty"`
}
AdditionalWalletSecrets defines multiple other secrets and where the wallet will be mounted if provided
func (*AdditionalWalletSecrets) DeepCopy ¶
func (in *AdditionalWalletSecrets) DeepCopy() *AdditionalWalletSecrets
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdditionalWalletSecrets.
func (*AdditionalWalletSecrets) DeepCopyInto ¶
func (in *AdditionalWalletSecrets) DeepCopyInto(out *AdditionalWalletSecrets)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AzureConfig ¶
type AzureConfig struct {
ConfigMap ConfigMapDetails `json:"configMap,omitempty"`
}
AzureConfig defines the configmap name and secret name used for connecting to Azure
func (*AzureConfig) DeepCopy ¶
func (in *AzureConfig) DeepCopy() *AzureConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AzureConfig.
func (*AzureConfig) DeepCopyInto ¶
func (in *AzureConfig) DeepCopyInto(out *AzureConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigMapDetails ¶
type ConfigMapDetails struct {
Key string `json:"key,omitempty"`
Name string `json:"name,omitempty"`
}
ConfigMapDetails defines the configmap name used by the exporterConfig and metricsConfig
func (*ConfigMapDetails) DeepCopy ¶
func (in *ConfigMapDetails) DeepCopy() *ConfigMapDetails
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapDetails.
func (*ConfigMapDetails) DeepCopyInto ¶
func (in *ConfigMapDetails) DeepCopyInto(out *ConfigMapDetails)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigPrivateKey ¶
type ConfigPrivateKey struct {
SecretName string `json:"secret,omitempty"`
}
func (*ConfigPrivateKey) DeepCopy ¶
func (in *ConfigPrivateKey) DeepCopy() *ConfigPrivateKey
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigPrivateKey.
func (*ConfigPrivateKey) DeepCopyInto ¶
func (in *ConfigPrivateKey) DeepCopyInto(out *ConfigPrivateKey)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DBAzureVault ¶
type DBAzureVault struct {
VaultID string `json:"vaultID,omitempty"`
VaultUsernameSecret string `json:"vaultUsernameSecret,omitempty"`
VaultPasswordSecret string `json:"vaultPasswordSecret,omitempty"`
}
DBAzureVault defines Azure Vault details
func (*DBAzureVault) DeepCopy ¶
func (in *DBAzureVault) DeepCopy() *DBAzureVault
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBAzureVault.
func (*DBAzureVault) DeepCopyInto ¶
func (in *DBAzureVault) DeepCopyInto(out *DBAzureVault)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DBOCIVault ¶
type DBOCIVault struct {
VaultID string `json:"vaultID,omitempty"`
VaultPasswordSecret string `json:"vaultPasswordSecret,omitempty"`
}
DBOCIVault defines OCI Vault details
func (*DBOCIVault) DeepCopy ¶
func (in *DBOCIVault) DeepCopy() *DBOCIVault
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBOCIVault.
func (*DBOCIVault) DeepCopyInto ¶
func (in *DBOCIVault) DeepCopyInto(out *DBOCIVault)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DBSecret ¶
type DBSecret struct {
Key string `json:"key,omitempty"`
SecretName string `json:"secret,omitempty"`
EnvName string `json:"envName,omitempty"`
}
DBSecret defines secrets used in reference
func (*DBSecret) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBSecret.
func (*DBSecret) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatabaseConfig ¶
type DatabaseConfig struct {
DBUser DBSecret `json:"dbUser,omitempty"`
DBPassword DBSecret `json:"dbPassword,omitempty"`
DBConnectionString DBSecret `json:"dbConnectionString,omitempty"`
OCIVault DBOCIVault `json:"oci,omitempty"`
AzureVault DBAzureVault `json:"azure,omitempty"`
}
DatabaseConfig defines the database details used for DatabaseObserver
func (*DatabaseConfig) DeepCopy ¶
func (in *DatabaseConfig) DeepCopy() *DatabaseConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseConfig.
func (*DatabaseConfig) DeepCopyInto ¶
func (in *DatabaseConfig) DeepCopyInto(out *DatabaseConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatabaseObserver ¶
type DatabaseObserver struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec DatabaseObserverSpec `json:"spec,omitempty"`
Status DatabaseObserverStatus `json:"status,omitempty"`
}
DatabaseObserver is the Schema for the databaseobservers API +kubebuilder:printcolumn:JSONPath=".status.metricsConfig",name="MetricsConfig",type=string +kubebuilder:printcolumn:JSONPath=".status.status",name="Status",type=string +kubebuilder:printcolumn:JSONPath=".status.version",name="Version",type=string
func (*DatabaseObserver) DeepCopy ¶
func (in *DatabaseObserver) DeepCopy() *DatabaseObserver
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseObserver.
func (*DatabaseObserver) DeepCopyInto ¶
func (in *DatabaseObserver) DeepCopyInto(out *DatabaseObserver)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DatabaseObserver) DeepCopyObject ¶
func (in *DatabaseObserver) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*DatabaseObserver) Default ¶
Default implements webhook.CustomDefaulter so a webhook will be registered for the type
func (*DatabaseObserver) SetupWebhookWithManager ¶
func (r *DatabaseObserver) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*DatabaseObserver) ValidateCreate ¶
func (r *DatabaseObserver) ValidateCreate(ctx context.Context, obj runtime.Object) (admission.Warnings, error)
ValidateCreate implements webhook.CustomValidator so a webhook will be registered for the type
func (*DatabaseObserver) ValidateDelete ¶
func (r *DatabaseObserver) ValidateDelete(ctx context.Context, obj runtime.Object) (admission.Warnings, error)
ValidateDelete implements webhook.CustomValidator so a webhook will be registered for the type
func (*DatabaseObserver) ValidateUpdate ¶
func (r *DatabaseObserver) ValidateUpdate(ctx context.Context, oldObj, newObj runtime.Object) (admission.Warnings, error)
ValidateUpdate implements webhook.CustomValidator so a webhook will be registered for the type
type DatabaseObserverList ¶
type DatabaseObserverList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []DatabaseObserver `json:"items"`
}
DatabaseObserverList contains a list of DatabaseObserver
func (*DatabaseObserverList) DeepCopy ¶
func (in *DatabaseObserverList) DeepCopy() *DatabaseObserverList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseObserverList.
func (*DatabaseObserverList) DeepCopyInto ¶
func (in *DatabaseObserverList) DeepCopyInto(out *DatabaseObserverList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DatabaseObserverList) DeepCopyObject ¶
func (in *DatabaseObserverList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DatabaseObserverSpec ¶
type DatabaseObserverSpec struct {
Database DatabaseConfig `json:"database,omitempty"`
Databases map[string]MultiDatabaseConfig `json:"databases,omitempty"`
Wallet WalletSecret `json:"wallet,omitempty"`
Deployment ExporterDeployment `json:"deployment,omitempty"`
Service ExporterService `json:"service,omitempty"`
ServiceMonitor ExporterServiceMonitor `json:"serviceMonitor,omitempty"`
ExporterConfig ExporterConfig `json:"exporterConfig,omitempty"`
OCIConfig OCIConfig `json:"ociConfig,omitempty"`
AzureConfig AzureConfig `json:"azureConfig,omitempty"`
Metrics MetricsConfig `json:"metrics,omitempty"`
InheritLabels []string `json:"inheritLabels,omitempty"`
Log LogConfig `json:"log,omitempty"`
Sidecar SidecarConfig `json:"sidecar,omitempty"`
Replicas int32 `json:"replicas,omitempty"`
}
DatabaseObserverSpec defines the desired state of DatabaseObserver
func (*DatabaseObserverSpec) DeepCopy ¶
func (in *DatabaseObserverSpec) DeepCopy() *DatabaseObserverSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseObserverSpec.
func (*DatabaseObserverSpec) DeepCopyInto ¶
func (in *DatabaseObserverSpec) DeepCopyInto(out *DatabaseObserverSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DatabaseObserverStatus ¶
type DatabaseObserverStatus struct {
Conditions []metav1.Condition `json:"conditions"`
Status string `json:"status,omitempty"`
MetricsConfig string `json:"metricsConfig"`
Version string `json:"version"`
Replicas int `json:"replicas,omitempty"`
}
DatabaseObserverStatus defines the observed state of DatabaseObserver
func (*DatabaseObserverStatus) DeepCopy ¶
func (in *DatabaseObserverStatus) DeepCopy() *DatabaseObserverStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DatabaseObserverStatus.
func (*DatabaseObserverStatus) DeepCopyInto ¶
func (in *DatabaseObserverStatus) DeepCopyInto(out *DatabaseObserverStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentPodTemplate ¶
DeploymentPodTemplate defines the labels for the DatabaseObserver pods component of a deployment
func (*DeploymentPodTemplate) DeepCopy ¶
func (in *DeploymentPodTemplate) DeepCopy() *DeploymentPodTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentPodTemplate.
func (*DeploymentPodTemplate) DeepCopyInto ¶
func (in *DeploymentPodTemplate) DeepCopyInto(out *DeploymentPodTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExporterConfig ¶
type ExporterConfig struct {
ConfigMap ConfigMapDetails `json:"configMap,omitempty"`
MountPath string `json:"mountPath,omitempty"`
}
ExporterConfig defines configMap used for exporter configuration
func (*ExporterConfig) DeepCopy ¶
func (in *ExporterConfig) DeepCopy() *ExporterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExporterConfig.
func (*ExporterConfig) DeepCopyInto ¶
func (in *ExporterConfig) DeepCopyInto(out *ExporterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExporterDeployment ¶
type ExporterDeployment struct {
ExporterImage string `json:"image,omitempty"`
SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"`
PodSecurityContext *corev1.PodSecurityContext `json:"podSecurityContext,omitempty"`
ExporterArgs []string `json:"args,omitempty"`
ExporterCommands []string `json:"commands,omitempty"`
ExporterEnvs map[string]string `json:"env,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
DeploymentPodTemplate DeploymentPodTemplate `json:"podTemplate,omitempty"`
}
ExporterDeployment defines the exporter deployment component of DatabaseObserver
func (*ExporterDeployment) DeepCopy ¶
func (in *ExporterDeployment) DeepCopy() *ExporterDeployment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExporterDeployment.
func (*ExporterDeployment) DeepCopyInto ¶
func (in *ExporterDeployment) DeepCopyInto(out *ExporterDeployment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExporterService ¶
type ExporterService struct {
Ports []corev1.ServicePort `json:"ports,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
}
ExporterService defines the exporter service component of DatabaseObserver
func (*ExporterService) DeepCopy ¶
func (in *ExporterService) DeepCopy() *ExporterService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExporterService.
func (*ExporterService) DeepCopyInto ¶
func (in *ExporterService) DeepCopyInto(out *ExporterService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExporterServiceMonitor ¶
type ExporterServiceMonitor struct {
Labels map[string]string `json:"labels,omitempty"`
NamespaceSelector *monitorv1.NamespaceSelector `json:"namespaceSelector,omitempty"`
Endpoints []monitorv1.Endpoint `json:"endpoints,omitempty"`
}
ExporterServiceMonitor defines DatabaseObserver servicemonitor spec
func (*ExporterServiceMonitor) DeepCopy ¶
func (in *ExporterServiceMonitor) DeepCopy() *ExporterServiceMonitor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExporterServiceMonitor.
func (*ExporterServiceMonitor) DeepCopyInto ¶
func (in *ExporterServiceMonitor) DeepCopyInto(out *ExporterServiceMonitor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogConfig ¶
type LogConfig struct {
Disable bool `json:"disable,omitempty"`
Destination string `json:"destination,omitempty"`
Filename string `json:"filename,omitempty"`
Volume LogVolume `json:"volume,omitempty"`
}
LogConfig defines the configuration details relation to the logs of DatabaseObserver
func (*LogConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogConfig.
func (*LogConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogVolume ¶
type LogVolume struct {
Name string `json:"name,omitempty"`
PersistentVolumeClaim LogVolumePVC `json:"persistentVolumeClaim,omitempty"`
}
LogVolume defines the shared volume between the exporter container and other containers
func (*LogVolume) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogVolume.
func (*LogVolume) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogVolumePVC ¶
type LogVolumePVC struct {
ClaimName string `json:"claimName,omitempty"`
}
LogVolumePVC defines the PVC in which to store the logs
func (*LogVolumePVC) DeepCopy ¶
func (in *LogVolumePVC) DeepCopy() *LogVolumePVC
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogVolumePVC.
func (*LogVolumePVC) DeepCopyInto ¶
func (in *LogVolumePVC) DeepCopyInto(out *LogVolumePVC)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MetricsConfig ¶
type MetricsConfig struct {
Configmap []ConfigMapDetails `json:"configMap,omitempty"`
}
MetricsConfig defines configMap used for multiple metrics TOML configuration
func (*MetricsConfig) DeepCopy ¶
func (in *MetricsConfig) DeepCopy() *MetricsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsConfig.
func (*MetricsConfig) DeepCopyInto ¶
func (in *MetricsConfig) DeepCopyInto(out *MetricsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultiDatabaseConfig ¶
type MultiDatabaseConfig struct {
DBUser DBSecret `json:"dbUser,omitempty"`
DBPassword DBSecret `json:"dbPassword,omitempty"`
DBConnectionString DBSecret `json:"dbConnectionString,omitempty"`
}
MultiDatabaseConfig defines each database details used for DatabaseObserver
func (*MultiDatabaseConfig) DeepCopy ¶
func (in *MultiDatabaseConfig) DeepCopy() *MultiDatabaseConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiDatabaseConfig.
func (*MultiDatabaseConfig) DeepCopyInto ¶
func (in *MultiDatabaseConfig) DeepCopyInto(out *MultiDatabaseConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OCIConfig ¶
type OCIConfig struct {
ConfigMap ConfigMapDetails `json:"configMap,omitempty"`
PrivateKey ConfigPrivateKey `json:"privateKey,omitempty"`
MountPath string `json:"mountPath,omitempty"`
}
OCIConfig defines the configmap name and secret name used for connecting to OCI
func (*OCIConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OCIConfig.
func (*OCIConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SidecarConfig ¶
type SidecarConfig struct {
Containers []corev1.Container `json:"containers,omitempty"`
Volumes []corev1.Volume `json:"volumes,omitempty"`
}
SidecarConfig defines sidecar containers and volumes to add
func (*SidecarConfig) DeepCopy ¶
func (in *SidecarConfig) DeepCopy() *SidecarConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SidecarConfig.
func (*SidecarConfig) DeepCopyInto ¶
func (in *SidecarConfig) DeepCopyInto(out *SidecarConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StatusEnum ¶
type StatusEnum string
type WalletSecret ¶
type WalletSecret struct {
SecretName string `json:"secret,omitempty"`
MountPath string `json:"mountPath,omitempty"`
AdditionalWallets []AdditionalWalletSecrets `json:"additional,omitempty"`
}
WalletSecret defines secret and where the wallet will be mounted if provided
func (*WalletSecret) DeepCopy ¶
func (in *WalletSecret) DeepCopy() *WalletSecret
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WalletSecret.
func (*WalletSecret) DeepCopyInto ¶
func (in *WalletSecret) DeepCopyInto(out *WalletSecret)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.