Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the koku-metrics-cfg v1beta1 API group +kubebuilder:object:generate=true +groupName=koku-metrics-cfg.openshift.io
Index ¶
- Constants
- Variables
- type AuthenticationSpec
- type AuthenticationStatus
- type AuthenticationType
- type CloudDotRedHatSourceSpec
- type CloudDotRedHatSourceStatus
- type EmbeddedObjectMetadata
- type EmbeddedPersistentVolumeClaim
- type KokuMetricsConfig
- type KokuMetricsConfigList
- type KokuMetricsConfigSpec
- type KokuMetricsConfigStatus
- type PackagingSpec
- type PackagingStatus
- type PrometheusSpec
- type PrometheusStatus
- type ReportsStatus
- type StorageStatus
- type UploadSpec
- type UploadStatus
Constants ¶
const ( // DefaultAuthenticationType The default authencation type. DefaultAuthenticationType AuthenticationType = Token // DefaultAPIURL The default ingress path. DefaultAPIURL string = "https://cloud.redhat.com" // DefaultIngressPath The default ingress path. DefaultIngressPath string = "/api/ingress/v1/upload" // DefaultSourcesPath The default ingress path. DefaultSourcesPath string = "/api/sources/v1.0/" // DefaultPrometheusSvcAddress The default address to thanos-querier. DefaultPrometheusSvcAddress string = "https://thanos-querier.openshift-monitoring.svc:9091" // DefaultValidateCert The default cert validation setting DefaultValidateCert bool = CertIgnore //DefaultUploadToggle The default upload toggle DefaultUploadToggle bool = UploadOn //DefaultUploadCycle The default upload cycle DefaultUploadCycle int64 = UploadSchedule //DefaultSourceCheckCycle The default source check cycle DefaultSourceCheckCycle int64 = SourceCheckSchedule //DefaultMaxSize The default max size for report files DefaultMaxSize int64 = PackagingMaxSize )
const ( // CertIgnore allows certificate validation to be bypassed. CertIgnore bool = false // CertCheck allows certificate validation to occur. CertCheck bool = true //UploadOn sets the operator to upload to cloud.redhat.com. UploadOn bool = true //UploadOff sets the operator to not upload to cloud.redhat.com. UploadOff bool = false //UploadCycle sets the default cycle to be 360 minutes (6 hours). UploadSchedule int64 = 360 //SourceCheckSchedule sets the default cycle to be 1440 minutes (24 hours). SourceCheckSchedule int64 = 1440 //PackagingMaxSize sets the default max file size to be 100 MB PackagingMaxSize int64 = 100 )
CertValidationType describes how the certificate validation will be handled. Only one of the following certificate validation types may be specified. If none of the following types are specified, the default one is Token.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "koku-metrics-cfg.openshift.io", Version: "v1beta1"} // 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 AuthenticationSpec ¶
type AuthenticationSpec struct { // AuthType is a field of KokuMetricsConfig to represent the authentication type to be used basic or token. // Valid values are: // - "basic" : Enables authentication using user and password from authentication secret. // - "token" (default): Uses cluster token for authentication. // +kubebuilder:default="token" AuthType AuthenticationType `json:"type"` // AuthenticationSecretName is a field of KokuMetricsConfig to represent the secret with the user and password used for uploads. // +optional AuthenticationSecretName string `json:"secret_name,omitempty"` }
AuthenticationSpec defines the desired state of Authentication object in the KokuMetricsConfigSpec.
func (*AuthenticationSpec) DeepCopy ¶
func (in *AuthenticationSpec) DeepCopy() *AuthenticationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationSpec.
func (*AuthenticationSpec) DeepCopyInto ¶
func (in *AuthenticationSpec) DeepCopyInto(out *AuthenticationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthenticationStatus ¶
type AuthenticationStatus struct { // AuthType is a field of KokuMetricsConfig to represent the authentication type to be used basic or token. AuthType AuthenticationType `json:"type,omitempty"` // AuthenticationSecretName is a field of KokuMetricsConfig to represent the secret with the user and password used for uploads. AuthenticationSecretName string `json:"secret_name,omitempty"` // AuthenticationCredentialsFound is a field of KokuMetricsConfig to represent if used for uploads were found. AuthenticationCredentialsFound *bool `json:"credentials_found,omitempty"` // ValidBasicAuth is a field of KokuMetricsConfig to represent if the given basic auth credentials are valid. ValidBasicAuth *bool `json:"valid_basic_auth,omitempty"` // AuthErrorMessage is a field of KokuMetricsConfig to represent an `invalid credentials` error message. AuthErrorMessage string `json:"error,omitempty"` // LastVerificationTime is a field of KokuMetricsConfig to represent the last time credentials were verified. // +nullable LastVerificationTime *metav1.Time `json:"last_credential_verification_time,omitempty"` }
AuthenticationStatus defines the desired state of Authentication object in the KokuMetricsConfigStatus.
func (*AuthenticationStatus) DeepCopy ¶
func (in *AuthenticationStatus) DeepCopy() *AuthenticationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationStatus.
func (*AuthenticationStatus) DeepCopyInto ¶
func (in *AuthenticationStatus) DeepCopyInto(out *AuthenticationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthenticationType ¶
type AuthenticationType string
AuthenticationType describes how the upload will be handled. Only one of the following authentication types may be specified. If none of the following types are specified, the default one is Token. +kubebuilder:validation:Enum=token;basic
const ( // Basic allows upload of data using basic authentication. Basic AuthenticationType = "basic" // Token allows upload of data using token authentication. Token AuthenticationType = "token" )
type CloudDotRedHatSourceSpec ¶
type CloudDotRedHatSourceSpec struct { // FOR DEVELOPMENT ONLY. // SourcesAPIPath is a field of KokuMetricsConfig to represent the path of the Sources API service. // The default is `/api/sources/v1.0/`. // +kubebuilder:default=`/api/sources/v1.0/` SourcesAPIPath string `json:"sources_path"` // SourceName is a field of KokuMetricsConfigSpec to represent the source name on cloud.redhat.com. // +optional SourceName string `json:"name,omitempty"` // CreateSource is a field of KokuMetricsConfigSpec to represent if the source should be created if not found. // +kubebuilder:default=false CreateSource *bool `json:"create_source"` // CheckCycle is a field of KokuMetricsConfig to represent the number of minutes between each source check schedule // The default is 1440 min (24 hours). // +kubebuilder:validation:Minimum=0 // +kubebuilder:default=1440 CheckCycle *int64 `json:"check_cycle"` }
CloudDotRedHatSourceSpec defines the desired state of CloudDotRedHatSource object in the KokuMetricsConfigSpec.
func (*CloudDotRedHatSourceSpec) DeepCopy ¶
func (in *CloudDotRedHatSourceSpec) DeepCopy() *CloudDotRedHatSourceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudDotRedHatSourceSpec.
func (*CloudDotRedHatSourceSpec) DeepCopyInto ¶
func (in *CloudDotRedHatSourceSpec) DeepCopyInto(out *CloudDotRedHatSourceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CloudDotRedHatSourceStatus ¶
type CloudDotRedHatSourceStatus struct { // SourcesAPIPath is a field of KokuMetricsConfig to represent the path of the Sources API service. // +optional SourcesAPIPath string `json:"sources_path,omitempty"` // SourceName is a field of KokuMetricsConfigStatus to represent the source name on cloud.redhat.com. // +optional SourceName string `json:"name,omitempty"` // SourceDefined is a field of KokuMetricsConfigStatus to represent if the source exists as defined on cloud.redhat.com. // +optional SourceDefined *bool `json:"source_defined,omitempty"` // CreateSource is a field of KokuMetricsConfigStatus to represent if the source should be created if not found. // A source will not be created if upload_toggle is `false`. // +optional CreateSource *bool `json:"create_source,omitempty"` // SourceError is a field of KokuMetricsConfigStatus to represent the error encountered creating the source. // +optional SourceError string `json:"error,omitempty"` // LastSourceCheckTime is a field of KokuMetricsConfig that shows the time that the last check was attempted. // +nullable LastSourceCheckTime metav1.Time `json:"last_check_time,omitempty"` // CheckCycle is a field of KokuMetricsConfig to represent the number of minutes between each source check schedule. // The default is 1440 min (24 hours). CheckCycle *int64 `json:"check_cycle,omitempty"` }
CloudDotRedHatSourceStatus defines the observed state of CloudDotRedHatSource object in the KokuMetricsConfigStatus.
func (*CloudDotRedHatSourceStatus) DeepCopy ¶
func (in *CloudDotRedHatSourceStatus) DeepCopy() *CloudDotRedHatSourceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudDotRedHatSourceStatus.
func (*CloudDotRedHatSourceStatus) DeepCopyInto ¶
func (in *CloudDotRedHatSourceStatus) DeepCopyInto(out *CloudDotRedHatSourceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmbeddedObjectMetadata ¶
type EmbeddedObjectMetadata struct { // Name must be unique within a namespace. Is required when creating resources, although // some resources may allow a client to request the generation of an appropriate name // automatically. Name is primarily intended for creation idempotence and configuration // definition. // Cannot be updated. // More info: http://kubernetes.io/docs/user-guide/identifiers#names // +optional Name string `json:"name,omitempty" protobuf:"bytes,1,opt,name=name"` // Map of string keys and values that can be used to organize and categorize // (scope and select) objects. May match selectors of replication controllers // and services. // More info: http://kubernetes.io/docs/user-guide/labels // +optional Labels map[string]string `json:"labels,omitempty" protobuf:"bytes,11,rep,name=labels"` // Annotations is an unstructured key value map stored with a resource that may be // set by external tools to store and retrieve arbitrary metadata. They are not // queryable and should be preserved when modifying objects. // More info: http://kubernetes.io/docs/user-guide/annotations // +optional Annotations map[string]string `json:"annotations,omitempty" protobuf:"bytes,12,rep,name=annotations"` }
EmbeddedObjectMetadata contains a subset of the fields included in k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta Only fields which are relevant to embedded resources are included.
func (*EmbeddedObjectMetadata) DeepCopy ¶
func (in *EmbeddedObjectMetadata) DeepCopy() *EmbeddedObjectMetadata
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedObjectMetadata.
func (*EmbeddedObjectMetadata) DeepCopyInto ¶
func (in *EmbeddedObjectMetadata) DeepCopyInto(out *EmbeddedObjectMetadata)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EmbeddedPersistentVolumeClaim ¶
type EmbeddedPersistentVolumeClaim struct { metav1.TypeMeta `json:",inline"` // EmbeddedMetadata contains metadata relevant to an EmbeddedResource. EmbeddedObjectMetadata `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"` // Spec defines the desired characteristics of a volume requested by a pod author. // More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims // +optional Spec corev1.PersistentVolumeClaimSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"` }
EmbeddedPersistentVolumeClaim is an embedded version of k8s.io/api/core/v1.PersistentVolumeClaim. It contains TypeMeta and a reduced ObjectMeta.
func (*EmbeddedPersistentVolumeClaim) DeepCopy ¶
func (in *EmbeddedPersistentVolumeClaim) DeepCopy() *EmbeddedPersistentVolumeClaim
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EmbeddedPersistentVolumeClaim.
func (*EmbeddedPersistentVolumeClaim) DeepCopyInto ¶
func (in *EmbeddedPersistentVolumeClaim) DeepCopyInto(out *EmbeddedPersistentVolumeClaim)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KokuMetricsConfig ¶
type KokuMetricsConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec KokuMetricsConfigSpec `json:"spec"` Status KokuMetricsConfigStatus `json:"status,omitempty"` }
KokuMetricsConfig is the Schema for the kokumetricsconfig API
func (*KokuMetricsConfig) DeepCopy ¶
func (in *KokuMetricsConfig) DeepCopy() *KokuMetricsConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KokuMetricsConfig.
func (*KokuMetricsConfig) DeepCopyInto ¶
func (in *KokuMetricsConfig) DeepCopyInto(out *KokuMetricsConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KokuMetricsConfig) DeepCopyObject ¶
func (in *KokuMetricsConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KokuMetricsConfigList ¶
type KokuMetricsConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []KokuMetricsConfig `json:"items"` }
KokuMetricsConfigList contains a list of KokuMetricsConfig
func (*KokuMetricsConfigList) DeepCopy ¶
func (in *KokuMetricsConfigList) DeepCopy() *KokuMetricsConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KokuMetricsConfigList.
func (*KokuMetricsConfigList) DeepCopyInto ¶
func (in *KokuMetricsConfigList) DeepCopyInto(out *KokuMetricsConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KokuMetricsConfigList) DeepCopyObject ¶
func (in *KokuMetricsConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KokuMetricsConfigSpec ¶
type KokuMetricsConfigSpec struct { // ClusterID is a field of KokuMetricsConfig to represent the cluster UUID. Normally this value should not be // specified. Only set this value if the clusterID cannot be obtained from the ClusterVersion. // +optional ClusterID string `json:"clusterID,omitempty"` // ClusterVersion is a field of KokuMetricsConfig to represent the cluster version. Normally this value should not be // specified. Only set this value if the clusterVersion cannot be obtained from the ClusterVersion. // +optional ClusterVersion string `json:"clusterVersion,omitempty"` // FOR DEVELOPMENT ONLY. // APIURL is a field of KokuMetricsConfig to represent the url of the API endpoint for service interaction. // The default is `https://cloud.redhat.com`. // +kubebuilder:default=`https://cloud.redhat.com` APIURL string `json:"api_url,omitempty"` // Authentication is a field of KokuMetricsConfig to represent the authentication object. Authentication AuthenticationSpec `json:"authentication"` //Packaging is a field of KokuMetricsConfig to represent the packaging object. Packaging PackagingSpec `json:"packaging"` // Upload is a field of KokuMetricsConfig to represent the upload object. Upload UploadSpec `json:"upload"` // PrometheusConfig is a field of KokuMetricsConfig to represent the configuration of Prometheus connection. PrometheusConfig PrometheusSpec `json:"prometheus_config"` // Source is a field of KokuMetricsConfig to represent the desired source on cloud.redhat.com. Source CloudDotRedHatSourceSpec `json:"source"` // VolumeClaimTemplate is a field of KokuMetricsConfig to represent a PVC template. VolumeClaimTemplate *EmbeddedPersistentVolumeClaim `json:"volume_claim_template,omitempty"` }
KokuMetricsConfigSpec defines the desired state of KokuMetricsConfig.
func (*KokuMetricsConfigSpec) DeepCopy ¶
func (in *KokuMetricsConfigSpec) DeepCopy() *KokuMetricsConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KokuMetricsConfigSpec.
func (*KokuMetricsConfigSpec) DeepCopyInto ¶
func (in *KokuMetricsConfigSpec) DeepCopyInto(out *KokuMetricsConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KokuMetricsConfigStatus ¶
type KokuMetricsConfigStatus struct { // ClusterID is a field of KokuMetricsConfig to represent the cluster UUID. ClusterID string `json:"clusterID,omitempty"` // ClusterVersion is a field of KokuMetricsConfig to represent the cluster version. ClusterVersion string `json:"clusterVersion,omitempty"` // APIURL is a field of KokuMetricsConfig to represent the url of the API endpoint for service interaction. // +optional APIURL string `json:"api_url,omitempty"` // Authentication is a field of KokuMetricsConfig to represent the authentication status. Authentication AuthenticationStatus `json:"authentication,omitempty"` // Packaging is a field of KokuMetricsConfig to represent the packaging status Packaging PackagingStatus `json:"packaging,omitempty"` // Upload is a field of KokuMetricsConfig to represent the upload object. Upload UploadStatus `json:"upload,omitempty"` // OperatorCommit is a field of KokuMetricsConfig that shows the commit hash of the operator. OperatorCommit string `json:"operator_commit,omitempty"` // Prometheus represents the status of premetheus queries. Prometheus PrometheusStatus `json:"prometheus,omitempty"` // Reports represents the status of report generation. Reports ReportsStatus `json:"reports,omitempty"` // Source is a field of KokuMetricsConfig to represent the observed state of the source on cloud.redhat.com. // +optional Source CloudDotRedHatSourceStatus `json:"source,omitempty"` // Storage is a field Storage StorageStatus `json:"storage,omitempty"` // PersistentVolumeClaim is a field of KokuMetricsConfig to represent a PVC. PersistentVolumeClaim *EmbeddedPersistentVolumeClaim `json:"persistent_volume_claim,omitempty"` }
KokuMetricsConfigStatus defines the observed state of KokuMetricsConfig.
func (*KokuMetricsConfigStatus) DeepCopy ¶
func (in *KokuMetricsConfigStatus) DeepCopy() *KokuMetricsConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KokuMetricsConfigStatus.
func (*KokuMetricsConfigStatus) DeepCopyInto ¶
func (in *KokuMetricsConfigStatus) DeepCopyInto(out *KokuMetricsConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackagingSpec ¶
type PackagingSpec struct { // MaxSize is a field of KokuMetricsConfig to represent the max file size in megabytes that will be compressed for upload to Ingress. // The default is 100. // +kubebuilder:validation:Minimum=1 // +kubebuilder:validation:Maximum=100 // +kubebuilder:default=100 MaxSize int64 `json:"max_size_MB"` // MaxReports is a field of KokuMetricsConfig to represent the maximum number of reports to store. // The default is 30 reports which corresponds to approximately 7 days worth of data given the other default values. // +kubebuilder:validation:Minimum=1 // +kubebuilder:default=30 MaxReports int64 `json:"max_reports_to_store"` }
PackagingSpec defines the desired state of the Packaging object in the KokuMetricsConfigSpec.
func (*PackagingSpec) DeepCopy ¶
func (in *PackagingSpec) DeepCopy() *PackagingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackagingSpec.
func (*PackagingSpec) DeepCopyInto ¶
func (in *PackagingSpec) DeepCopyInto(out *PackagingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PackagingStatus ¶
type PackagingStatus struct { // LastSuccessfulPackagingTime is a field of KokuMetricsConfig that shows the time of the last successful file packaging. // +nullable LastSuccessfulPackagingTime metav1.Time `json:"last_successful_packaging_time,omitempty"` // MaxReports is a field of KokuMetricsConfig to represent the maximum number of reports to store. MaxReports *int64 `json:"max_reports_to_store,omitempty"` // MaxSize is a field of KokuMetricsConfig to represent the max file size in megabytes that will be compressed for upload to Ingress. MaxSize *int64 `json:"max_size_MB,omitempty"` // PackagedFiles is a field of KokuMetricsConfig to represent the list of file packages in storage. PackagedFiles []string `json:"packaged_files,omitempty"` // PackagingError is a field of KokuMetricsConfig to represent the error encountered packaging the reports. PackagingError string `json:"error,omitempty"` // ReportCount is a field of KokuMetricsConfig to represent the number of reports in storage. ReportCount *int64 `json:"number_reports_stored,omitempty"` }
PackagingStatus defines the observed state of the Packing object in the KokuMetricsConfigStatus.
func (*PackagingStatus) DeepCopy ¶
func (in *PackagingStatus) DeepCopy() *PackagingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackagingStatus.
func (*PackagingStatus) DeepCopyInto ¶
func (in *PackagingStatus) DeepCopyInto(out *PackagingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrometheusSpec ¶
type PrometheusSpec struct { // ContextTimeout is a field of KokuMetricsConfig to represent how long a query to prometheus should run in seconds before timing out. // The default is 120 seconds. // +kubebuilder:validation:Minimum=10 // +kubebuilder:validation:Maximum=180 // +kubebuilder:default=120 ContextTimeout *int64 `json:"context_timeout,omitempty"` // FOR DEVELOPMENT ONLY. // SvcAddress is a field of KokuMetricsConfig to represent the thanos-querier address. // The default is `https://thanos-querier.openshift-monitoring.svc:9091`. // +kubebuilder:default=`https://thanos-querier.openshift-monitoring.svc:9091` SvcAddress string `json:"service_address"` // FOR DEVELOPMENT ONLY. // SkipTLSVerification is a field of KokuMetricsConfig to represent if the thanos-querier endpoint must be certificate validated. // The default is false. // +kubebuilder:default=false SkipTLSVerification *bool `json:"skip_tls_verification"` }
PrometheusSpec defines the desired state of PrometheusConfig object in the KokuMetricsConfigSpec.
func (*PrometheusSpec) DeepCopy ¶
func (in *PrometheusSpec) DeepCopy() *PrometheusSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusSpec.
func (*PrometheusSpec) DeepCopyInto ¶
func (in *PrometheusSpec) DeepCopyInto(out *PrometheusSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PrometheusStatus ¶
type PrometheusStatus struct { // PrometheusConfigured is a field of KokuMetricsConfigStatus to represent if the operator is configured to connect to prometheus. PrometheusConfigured bool `json:"prometheus_configured"` // ConfigError is a field of KokuMetricsConfigStatus to represent errors during prometheus configuration. ConfigError string `json:"configuration_error,omitempty"` // PrometheusConnected is a field of KokuMetricsConfigStatus to represent if prometheus can be queried. PrometheusConnected bool `json:"prometheus_connected"` //ContextTimeout is a field of KokuMetricsConfigState to represent how long a query to prometheus should run in seconds before timing out. ContextTimeout *int64 `json:"context_timeout,omitempty"` // ConnectionError is a field of KokuMetricsConfigStatus to represent errors during prometheus test query. ConnectionError string `json:"prometheus_connection_error,omitempty"` // LastQueryStartTime is a field of KokuMetricsConfigStatus to represent the last time queries were started. // +nullable LastQueryStartTime metav1.Time `json:"last_query_start_time,omitempty"` // LastQuerySuccessTime is a field of KokuMetricsConfigStatus to represent the last time queries were successful. // +nullable LastQuerySuccessTime metav1.Time `json:"last_query_success_time,omitempty"` // SvcAddress is the internal thanos-querier address. SvcAddress string `json:"service_address,omitempty"` // SkipTLSVerification is a field of KokuMetricsConfigStatus to represent if the thanos-querier endpoint must be certificate validated. SkipTLSVerification *bool `json:"skip_tls_verification,omitempty"` }
PrometheusStatus defines the status for querying prometheus.
func (*PrometheusStatus) DeepCopy ¶
func (in *PrometheusStatus) DeepCopy() *PrometheusStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PrometheusStatus.
func (*PrometheusStatus) DeepCopyInto ¶
func (in *PrometheusStatus) DeepCopyInto(out *PrometheusStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReportsStatus ¶
type ReportsStatus struct { // ReportMonth is a field of KokuMetricsConfigStatus to represent the month for which reports are being generated. ReportMonth string `json:"report_month,omitempty"` // LastHourQueried is a field of KokuMetricsConfigStatus to represent the time range for which metrics were last queried. LastHourQueried string `json:"last_hour_queried,omitempty"` // DataCollected is a field of KokuMetricsConfigStatus to represent whether or not data was collected for the last query. DataCollected bool `json:"data_collected,omitempty"` // DataCollectionMessage is a field of KokuMetricsConfigStatus to represent a message associated with the data_collected status. DataCollectionMessage string `json:"data_collection_message,omitempty"` }
ReportsStatus defines the status for generating reports.
func (*ReportsStatus) DeepCopy ¶
func (in *ReportsStatus) DeepCopy() *ReportsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReportsStatus.
func (*ReportsStatus) DeepCopyInto ¶
func (in *ReportsStatus) DeepCopyInto(out *ReportsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StorageStatus ¶
type StorageStatus struct { // VolumeType is the string representation of the volume type. VolumeType string `json:"volume_type,omitempty"` // VolumeMounted is a bool to indicate if storage volume was mounted. VolumeMounted bool `json:"volume_mounted,omitempty"` }
StorageStatus defines the status for storage.
func (*StorageStatus) DeepCopy ¶
func (in *StorageStatus) DeepCopy() *StorageStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StorageStatus.
func (*StorageStatus) DeepCopyInto ¶
func (in *StorageStatus) DeepCopyInto(out *StorageStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UploadSpec ¶
type UploadSpec struct { // FOR DEVELOPMENT ONLY. // IngressAPIPath is a field of KokuMetricsConfig to represent the path of the Ingress API service. // The default is `/api/ingress/v1/upload`. // +kubebuilder:default=`/api/ingress/v1/upload` IngressAPIPath string `json:"ingress_path"` // UploadWait is a field of KokuMetricsConfig to represent the time to wait before sending an upload. // +optional // +kubebuilder:validation:Minimum=0 UploadWait *int64 `json:"upload_wait,omitempty"` // UploadCycle is a field of KokuMetricsConfig to represent the number of minutes between each upload schedule. // The default is 360 min (6 hours). // +kubebuilder:validation:Minimum=0 // +kubebuilder:default=360 UploadCycle *int64 `json:"upload_cycle"` // UploadToggle is a field of KokuMetricsConfig to represent if the operator is installed in a restricted-network. // If `false`, the operator will not upload to cloud.redhat.com or check/create sources. // The default is true. // +kubebuilder:default=true UploadToggle *bool `json:"upload_toggle"` // ValidateCert is a field of KokuMetricsConfig to represent if the Ingress endpoint must be certificate validated. // +kubebuilder:default=true ValidateCert *bool `json:"validate_cert"` }
UploadSpec defines the desired state of Authentication object in the KokuMetricsConfigSpec.
func (*UploadSpec) DeepCopy ¶
func (in *UploadSpec) DeepCopy() *UploadSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UploadSpec.
func (*UploadSpec) DeepCopyInto ¶
func (in *UploadSpec) DeepCopyInto(out *UploadSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type UploadStatus ¶
type UploadStatus struct { // IngressAPIPath is a field of KokuMetricsConfig to represent the path of the Ingress API service. // +optional IngressAPIPath string `json:"ingress_path,omitempty"` // UploadToggle is a field of KokuMetricsConfig to represent if the operator should upload to cloud.redhat.com. // The default is true UploadToggle *bool `json:"upload,omitempty"` // UploadWait is a field of KokuMetricsConfig to represent the time to wait before sending an upload. UploadWait *int64 `json:"upload_wait,omitempty"` // UploadCycle is a field of KokuMetricsConfig to represent the number of minutes between each upload schedule. // The default is 360 min (6 hours). UploadCycle *int64 `json:"upload_cycle,omitempty"` // UploadError is a field of KokuMetricsConfigStatus to represent the error encountered uploading reports. // +optional UploadError string `json:"error,omitempty"` // LastUploadStatus is a field of KokuMetricsConfig that shows the http status of the last upload. LastUploadStatus string `json:"last_upload_status,omitempty"` // LastPayloadName is a field of KokuMetricsConfig that shows the name of the last payload file. LastPayloadName string `json:"last_payload_name,omitempty"` // LastPayloadManifest is a field of KokuMetricsConfig that shows the manifestID of the last payload. LastPayloadManifestID string `json:"last_payload_manifest_id,omitempty"` // LastPayloadRequestID is a field of KokuMetricsConfig that shows the insights request id of the last payload. LastPayloadRequestID string `json:"last_payload_request_id,omitempty"` // LastPayloadFiles is a field of KokuMetricsConfig to represent the list of files in the last payload that was sent. LastPayloadFiles []string `json:"last_payload_files,omitempty"` // LastSuccessfulUploadTime is a field of KokuMetricsConfig that shows the time of the last successful upload. // +nullable LastSuccessfulUploadTime metav1.Time `json:"last_successful_upload_time,omitempty"` // ValidateCert is a field of KokuMetricsConfig to represent if the Ingress endpoint must be certificate validated. ValidateCert *bool `json:"validate_cert,omitempty"` }
UploadStatus defines the observed state of Upload object in the KokuMetricsConfigStatus.
func (*UploadStatus) DeepCopy ¶
func (in *UploadStatus) DeepCopy() *UploadStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UploadStatus.
func (*UploadStatus) DeepCopyInto ¶
func (in *UploadStatus) DeepCopyInto(out *UploadStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.