# Functions
CommonAnnotations returns common annotations for each pod created by the operator.
CommonLabels returns common labels for each object created by the operator.
CommonOperatorLabels returns the common labels for operator components.
ComponentLabels is a list of all commonLabels including the app.kubernetes.io/component:<component> label.
ConfigureAzureStorage mounts the Azure Storage credentials in a pod.
ConfigureGCS mounts the Google Cloud Storage credentials in a pod.
ConfigureS3Storage mounts the Amazon S3 credentials and TLS certs in a pod.
ConfigureServiceCA modify the PodSpec adding the volumes and volumeMounts to the specified containers.
ConfigureServiceCAByContainerName modify the PodSpec adding the volumes and volumeMounts to the specified containers.
ConfigureServicePKI modify the PodSpec adding cert the volumes and volumeMounts to the specified containers.
ConfigureServicePKIByContainerName modify the PodSpec adding cert the volumes and volumeMounts to the specified containers.
ConfigureStorage configures storage.
DefaultAffinity returns the default affinity for Tempo components.
MountCAConfigMap mounts the CA ConfigMap in a pod.
MountCertSecret mounts the Certificate Secret in a pod.
MountTLSSpecVolumes mounts the CA ConfigMap and Certificate Secret in a pod.
NewConfigMapCABundle creates a new ConfigMap with an annotation that triggers the service-ca-operator to inject the cluster CA bundle in this ConfigMap (service-ca.crt key).
PatchTracingJaegerEnv adds configures jaeger-sdk via environment variables if operand observability settings exist.
Resources calculates the resource requirements of a specific component.
S3AWSSTSAnnotations returns service account annotations required by AWS STS.
TempoContainerSecurityContext returns the default container security context.
TempoReadinessProbe returns a readiness Probe spec for tempo components.
# Constants
nolint #nosec BearerTokenFile declares the path for bearer token file for service monitors.
CompactorComponentName declares the internal name of the compactor component.
ConfigVolumeName declares the name of the volume containing the tempo configuration.
DistributorComponentName declares the internal name of the distributor component.
GatewayComponentName declares the internal name of the gateway component.
GatewayGrpcPortName declares the name of the Gateway public gRPC port.
GatewayHttpPortName declares the name of the Gateway HTTP port (e.g.
GatewayInternalHttpPortName declares the name of the Gateway Internal HTTP port (e.g.
GatewayPortGRPCServer declares the port number of the Gateway public gRPC port.
GatewayPortHTTPServer declares the port number of the Gateway HTTP port.
GatewayPortInternalHTTPServer declares the port number of the Gateway Internal HTTP port.
GatewayRBACFileName the name of the RBAC config file in the ConfigMap.
GatewayTenantFileName the name of the tenant config file in the secret.
GrpcPortName declares the name of the tempo gRPC port.
HttpMemberlistPortName declares the name of the tempo memberlist port.
HttpPortName declares the name of the tempo http port.
IngesterComponentName declares the internal name of the ingester component.
JaegerFrontendComponentName declares the internal name of the jaeger-frontend component.
JaegerGRPCQuery declares the name of the Jaeger UI gPRC port.
JaegerMetricsPortName declares the name of the Jaeger UI metrics port.
JaegerUIComponentName declares the name of the Jaeger UI component.
JaegerUIPortName declares the name of the Jaeger UI HTTP port.
OAuthProxyPort declares the port number of the Jaeger UI oauth proxy HTTP port.
OAuthProxyPortName declares the name of the Jaeger UI oauth proxy HTTP port.
OtlpGrpcPortName declares the name of the OpenTelemetry Collector gRPC receiver port.
PortGRPCServer declares the port number of the tempo gRPC port.
PortHTTPServer declares the port number of the tempo http port.
PortInternalHTTPServer declares the port number of the internal tempo http port.
PortJaegerGrpc declares the port number of the Jaeger gRPC port.
PortJaegerGrpcName declares the port number of the Jaeger gRPC port.
PortJaegerGRPCQuery declares the port number of the Jaeger UI gPRC port.
PortJaegerMetrics declares the port number of the Jaeger UI metrics port.
PortJaegerQuery declares the port number of the jaeger query UI port.
PortJaegerThriftBinary declares the port number of the Jaeger Thrift binary protocol.
PortJaegerThriftBinaryName declares the port name of the Jaeger Thrift binary protocol.
PortJaegerThriftCompact declares the port number of the Jaeger Thrift compact protocol.
PortJaegerThriftCompactName declares the port name of the Jaeger Thrift compact protocol.
PortJaegerThriftHTTP declares the port number of the Jaeger Thrift HTTP protocol.
PortJaegerThriftHTTPName declares the port name of the Jaeger Thrift HTTP protocol.
PortJaegerUI declares the port number of the Jaeger UI HTTP port.
PortMemberlist declares the port number of the tempo memberlist port.
PortOtlpGrpcServer declares the port number of the OpenTelemetry Collector gRPC receiver port.
PortOtlpHttp declares the port number of the OpenTelemetry protocol over HTTP.
PortOtlpHttpName declares the port name of the OpenTelemetry protocol over HTTP.
PortTempoGRPCQuery declares the port number of the Tempo storage gPRC port.
PortZipkin declares the port number of zipkin receiver port.
PortZipkinName declares the port number of zipkin receiver port.
PrometheusCAFile declares the path for prometheus CA file for service monitors.
QuerierComponentName declares the internal name of the querier component.
QueryFrontendComponentName declares the internal name of the query-frontend component.
QueryFrontendOauthProxyComponentName declares the internal name of the query-frontend-proxy component.
ReceiverGRPCTLSCADir is the path that is mounted from the configmap for TLS for receiver.
ReceiverGRPCTLSCertDir returns the mount path of the receivers certificates (for ingesting traces).
ReceiverHTTPTLSCADir is the path that is mounted from the configmap for TLS for receiver.
ReceiverHTTPTLSCertDir returns the mount path of the receivers certificates (for ingesting traces).
ReceiverTLSCADir is the path that is mounted from the configmap for TLS for receiver.
ReceiverTLSCertDir returns the mount path of the receivers certificates (for ingesting traces).
StorageTLSCADir contains the CA file for accessing object storage.
StorageTLSCAFilename is the key name of the CA file in the ConfigMap for accessing object storage.
StorageTLSCertDir contains the certificate and key file for accessing object storage.
TempoConfigName declares the name of the Tempo ConfigMap (tempo-$name-config).
TempoGRPCQuery declares the name of the Jaeger UI gPRC port.
TempoInternalServerPortName declares the name of the internal Tempo HTTP Server (for healthchecks).
TempoInternalTLSCADir is the path that is mounted from the configmap for TLS.
TempoInternalTLSCertDir returns the mount path of the HTTP service certificates for communication between Tempo components.
TempoLivenessPath specifies the path for the liveness probe.
TempoMonolithComponentName declares the internal name of the Tempo Monolith component.
TempoReadinessPath specifies the path for the readiness probe.
TenantHeader is the header name that contains tenant name.
TLSCAFilename is the key name of the CA file in the ConfigMap.
TLSCertFilename is the key name of the certificate file in the Secret.
TLSDir is the path that is mounted from the secret for TLS.
TLSKeyFilename is the key name of the private key file in the Secret.
TmpStoragePath declares generic default /tmp storage path.
TmpStorageVolumeName declares the name of the volume containing temporary storage for tempo.
TmpTempoStoragePath declares the path of temporary storage for tempo.
# Structs
AzureStorage for Azure Storage.
GatewayTenantOIDCSecret holds clientID, clientSecret and issuerCAPath for tenant's authentication.
GatewayTenantsData holds cookie secret for opa-openshift sidecar.
GCS for Google Cloud Storage.
Params holds parameters used to create Tempo objects.
S3 holds S3 configuration.
S3LongLived holds long-lived S3 configuration.
S3ShortLived holds short-lived S3 configuration.
StorageParams holds storage configuration from the storage secret, except the credentials.
StorageTLS holds StorageTLS configuration.