monitoring.v1.prometheus
"Prometheus defines a Prometheus deployment."
Index
fn new(name)
obj metadata
fn withAnnotations(annotations)
fn withAnnotationsMixin(annotations)
fn withClusterName(clusterName)
fn withCreationTimestamp(creationTimestamp)
fn withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
fn withDeletionTimestamp(deletionTimestamp)
fn withFinalizers(finalizers)
fn withFinalizersMixin(finalizers)
fn withGenerateName(generateName)
fn withGeneration(generation)
fn withLabels(labels)
fn withLabelsMixin(labels)
fn withManagedFields(managedFields)
fn withManagedFieldsMixin(managedFields)
fn withName(name)
fn withNamespace(namespace)
fn withOwnerReferences(ownerReferences)
fn withOwnerReferencesMixin(ownerReferences)
fn withResourceVersion(resourceVersion)
fn withSelfLink(selfLink)
fn withUid(uid)
obj spec
fn withAllowOverlappingBlocks(allowOverlappingBlocks)
fn withBaseImage(baseImage)
fn withConfigMaps(configMaps)
fn withConfigMapsMixin(configMaps)
fn withContainers(containers)
fn withContainersMixin(containers)
fn withDisableCompaction(disableCompaction)
fn withEnableAdminAPI(enableAdminAPI)
fn withEnableFeatures(enableFeatures)
fn withEnableFeaturesMixin(enableFeatures)
fn withEnforcedBodySizeLimit(enforcedBodySizeLimit)
fn withEnforcedLabelLimit(enforcedLabelLimit)
fn withEnforcedLabelNameLengthLimit(enforcedLabelNameLengthLimit)
fn withEnforcedLabelValueLengthLimit(enforcedLabelValueLengthLimit)
fn withEnforcedNamespaceLabel(enforcedNamespaceLabel)
fn withEnforcedSampleLimit(enforcedSampleLimit)
fn withEnforcedTargetLimit(enforcedTargetLimit)
fn withEvaluationInterval(evaluationInterval)
fn withExternalLabels(externalLabels)
fn withExternalLabelsMixin(externalLabels)
fn withExternalUrl(externalUrl)
fn withIgnoreNamespaceSelectors(ignoreNamespaceSelectors)
fn withImage(image)
fn withImagePullSecrets(imagePullSecrets)
fn withImagePullSecretsMixin(imagePullSecrets)
fn withInitContainers(initContainers)
fn withInitContainersMixin(initContainers)
fn withListenLocal(listenLocal)
fn withLogFormat(logFormat)
fn withLogLevel(logLevel)
fn withMinReadySeconds(minReadySeconds)
fn withNodeSelector(nodeSelector)
fn withNodeSelectorMixin(nodeSelector)
fn withOverrideHonorLabels(overrideHonorLabels)
fn withOverrideHonorTimestamps(overrideHonorTimestamps)
fn withPaused(paused)
fn withPortName(portName)
fn withPriorityClassName(priorityClassName)
fn withPrometheusExternalLabelName(prometheusExternalLabelName)
fn withPrometheusRulesExcludedFromEnforce(prometheusRulesExcludedFromEnforce)
fn withPrometheusRulesExcludedFromEnforceMixin(prometheusRulesExcludedFromEnforce)
fn withQueryLogFile(queryLogFile)
fn withRemoteRead(remoteRead)
fn withRemoteReadMixin(remoteRead)
fn withRemoteWrite(remoteWrite)
fn withRemoteWriteMixin(remoteWrite)
fn withReplicaExternalLabelName(replicaExternalLabelName)
fn withReplicas(replicas)
fn withRetention(retention)
fn withRetentionSize(retentionSize)
fn withRoutePrefix(routePrefix)
fn withScrapeInterval(scrapeInterval)
fn withScrapeTimeout(scrapeTimeout)
fn withSecrets(secrets)
fn withSecretsMixin(secrets)
fn withServiceAccountName(serviceAccountName)
fn withSha(sha)
fn withShards(shards)
fn withTag(tag)
fn withTolerations(tolerations)
fn withTolerationsMixin(tolerations)
fn withTopologySpreadConstraints(topologySpreadConstraints)
fn withTopologySpreadConstraintsMixin(topologySpreadConstraints)
fn withVersion(version)
fn withVolumeMounts(volumeMounts)
fn withVolumeMountsMixin(volumeMounts)
fn withVolumes(volumes)
fn withVolumesMixin(volumes)
fn withWalCompression(walCompression)
obj spec.additionalAlertManagerConfigs
obj spec.additionalAlertRelabelConfigs
obj spec.additionalScrapeConfigs
obj spec.affinity
obj spec.affinity.nodeAffinity
fn withPreferredDuringSchedulingIgnoredDuringExecution(preferredDuringSchedulingIgnoredDuringExecution)
fn withPreferredDuringSchedulingIgnoredDuringExecutionMixin(preferredDuringSchedulingIgnoredDuringExecution)
obj spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
obj spec.affinity.podAffinity
fn withPreferredDuringSchedulingIgnoredDuringExecution(preferredDuringSchedulingIgnoredDuringExecution)
fn withPreferredDuringSchedulingIgnoredDuringExecutionMixin(preferredDuringSchedulingIgnoredDuringExecution)
fn withRequiredDuringSchedulingIgnoredDuringExecution(requiredDuringSchedulingIgnoredDuringExecution)
fn withRequiredDuringSchedulingIgnoredDuringExecutionMixin(requiredDuringSchedulingIgnoredDuringExecution)
obj spec.affinity.podAntiAffinity
fn withPreferredDuringSchedulingIgnoredDuringExecution(preferredDuringSchedulingIgnoredDuringExecution)
fn withPreferredDuringSchedulingIgnoredDuringExecutionMixin(preferredDuringSchedulingIgnoredDuringExecution)
fn withRequiredDuringSchedulingIgnoredDuringExecution(requiredDuringSchedulingIgnoredDuringExecution)
fn withRequiredDuringSchedulingIgnoredDuringExecutionMixin(requiredDuringSchedulingIgnoredDuringExecution)
obj spec.alerting
obj spec.apiserverConfig
fn withBearerToken(bearerToken)
fn withBearerTokenFile(bearerTokenFile)
fn withHost(host)
obj spec.apiserverConfig.authorization
fn withCredentialsFile(credentialsFile)
fn withType(type)
obj spec.apiserverConfig.authorization.credentials
obj spec.apiserverConfig.basicAuth
obj spec.apiserverConfig.basicAuth.password
obj spec.apiserverConfig.basicAuth.username
obj spec.apiserverConfig.tlsConfig
fn withCaFile(caFile)
fn withCertFile(certFile)
fn withInsecureSkipVerify(insecureSkipVerify)
fn withKeyFile(keyFile)
fn withServerName(serverName)
obj spec.apiserverConfig.tlsConfig.ca
obj spec.apiserverConfig.tlsConfig.cert
obj spec.apiserverConfig.tlsConfig.keySecret
obj spec.arbitraryFSAccessThroughSMs
obj spec.podMetadata
obj spec.podMonitorNamespaceSelector
obj spec.podMonitorSelector
obj spec.probeNamespaceSelector
obj spec.probeSelector
obj spec.query
obj spec.resources
obj spec.ruleNamespaceSelector
obj spec.ruleSelector
obj spec.rules
obj spec.securityContext
fn withFsGroup(fsGroup)
fn withFsGroupChangePolicy(fsGroupChangePolicy)
fn withRunAsGroup(runAsGroup)
fn withRunAsNonRoot(runAsNonRoot)
fn withRunAsUser(runAsUser)
fn withSupplementalGroups(supplementalGroups)
fn withSupplementalGroupsMixin(supplementalGroups)
fn withSysctls(sysctls)
fn withSysctlsMixin(sysctls)
obj spec.securityContext.seLinuxOptions
fn withLevel(level)
fn withRole(role)
fn withType(type)
fn withUser(user)
obj spec.securityContext.seccompProfile
fn withLocalhostProfile(localhostProfile)
fn withType(type)
obj spec.securityContext.windowsOptions
fn withGmsaCredentialSpec(gmsaCredentialSpec)
fn withGmsaCredentialSpecName(gmsaCredentialSpecName)
fn withHostProcess(hostProcess)
fn withRunAsUserName(runAsUserName)
obj spec.serviceMonitorNamespaceSelector
obj spec.serviceMonitorSelector
obj spec.storage
fn withDisableMountSubPath(disableMountSubPath)
obj spec.storage.emptyDir
fn withMedium(medium)
fn withSizeLimit(sizeLimit)
obj spec.storage.ephemeral
obj spec.storage.ephemeral.volumeClaimTemplate
fn withMetadata(metadata)
fn withMetadataMixin(metadata)
obj spec.storage.ephemeral.volumeClaimTemplate.spec
fn withAccessModes(accessModes)
fn withAccessModesMixin(accessModes)
fn withStorageClassName(storageClassName)
fn withVolumeMode(volumeMode)
fn withVolumeName(volumeName)
obj spec.storage.ephemeral.volumeClaimTemplate.spec.dataSource
obj spec.storage.ephemeral.volumeClaimTemplate.spec.dataSourceRef
obj spec.storage.ephemeral.volumeClaimTemplate.spec.resources
obj spec.storage.ephemeral.volumeClaimTemplate.spec.selector
obj spec.storage.volumeClaimTemplate
fn withApiVersion(apiVersion)
fn withKind(kind)
obj spec.storage.volumeClaimTemplate.metadata
obj spec.storage.volumeClaimTemplate.spec
fn withAccessModes(accessModes)
fn withAccessModesMixin(accessModes)
fn withStorageClassName(storageClassName)
fn withVolumeMode(volumeMode)
fn withVolumeName(volumeName)
obj spec.storage.volumeClaimTemplate.spec.dataSource
fn withApiGroup(apiGroup)
fn withKind(kind)
fn withName(name)
obj spec.storage.volumeClaimTemplate.spec.dataSourceRef
fn withApiGroup(apiGroup)
fn withKind(kind)
fn withName(name)
obj spec.storage.volumeClaimTemplate.spec.resources
fn withLimits(limits)
fn withLimitsMixin(limits)
fn withRequests(requests)
fn withRequestsMixin(requests)
obj spec.storage.volumeClaimTemplate.spec.selector
fn withMatchExpressions(matchExpressions)
fn withMatchExpressionsMixin(matchExpressions)
fn withMatchLabels(matchLabels)
fn withMatchLabelsMixin(matchLabels)
obj spec.thanos
fn withBaseImage(baseImage)
fn withImage(image)
fn withListenLocal(listenLocal)
fn withLogFormat(logFormat)
fn withLogLevel(logLevel)
fn withMinTime(minTime)
fn withObjectStorageConfigFile(objectStorageConfigFile)
fn withReadyTimeout(readyTimeout)
fn withSha(sha)
fn withTag(tag)
fn withTracingConfigFile(tracingConfigFile)
fn withVersion(version)
fn withVolumeMounts(volumeMounts)
fn withVolumeMountsMixin(volumeMounts)
obj spec.thanos.grpcServerTlsConfig
fn withCaFile(caFile)
fn withCertFile(certFile)
fn withInsecureSkipVerify(insecureSkipVerify)
fn withKeyFile(keyFile)
fn withServerName(serverName)
obj spec.thanos.grpcServerTlsConfig.ca
obj spec.thanos.grpcServerTlsConfig.cert
obj spec.thanos.grpcServerTlsConfig.keySecret
obj spec.thanos.objectStorageConfig
fn withKey(key)
fn withName(name)
fn withOptional(optional)
obj spec.thanos.resources
fn withLimits(limits)
fn withLimitsMixin(limits)
fn withRequests(requests)
fn withRequestsMixin(requests)
obj spec.thanos.tracingConfig
fn withKey(key)
fn withName(name)
fn withOptional(optional)
obj spec.web
fn withPageTitle(pageTitle)
obj spec.web.tlsConfig
fn withCipherSuites(cipherSuites)
fn withCipherSuitesMixin(cipherSuites)
fn withClientAuthType(clientAuthType)
fn withCurvePreferences(curvePreferences)
fn withCurvePreferencesMixin(curvePreferences)
fn withMaxVersion(maxVersion)
fn withMinVersion(minVersion)
fn withPreferServerCipherSuites(preferServerCipherSuites)
obj spec.web.tlsConfig.cert
obj spec.web.tlsConfig.client_ca
obj spec.web.tlsConfig.keySecret
Fields
fn new
new(name)
new returns an instance of Prometheus
obj metadata
"ObjectMeta is metadata that all persisted resources must have, which includes all objects users must create."
fn metadata.withAnnotations
withAnnotations(annotations)
"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"
fn metadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"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"
Note: This function appends passed data to existing values
fn metadata.withClusterName
withClusterName(clusterName)
"The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request."
fn metadata.withCreationTimestamp
withCreationTimestamp(creationTimestamp)
"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."
fn metadata.withDeletionGracePeriodSeconds
withDeletionGracePeriodSeconds(deletionGracePeriodSeconds)
"Number of seconds allowed for this object to gracefully terminate before it will be removed from the system. Only set when deletionTimestamp is also set. May only be shortened. Read-only."
fn metadata.withDeletionTimestamp
withDeletionTimestamp(deletionTimestamp)
"Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers."
fn metadata.withFinalizers
withFinalizers(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
fn metadata.withFinalizersMixin
withFinalizersMixin(finalizers)
"Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list."
Note: This function appends passed data to existing values
fn metadata.withGenerateName
withGenerateName(generateName)
"GenerateName is an optional prefix, used by the server, to generate a unique name ONLY IF the Name field has not been provided. If this field is used, the name returned to the client will be different than the name passed. This value will also be combined with a unique suffix. The provided value has the same validation rules as the Name field, and may be truncated by the length of the suffix required to make the value unique on the server.\n\nIf this field is specified and the generated name exists, the server will NOT return a 409 - instead, it will either return 201 Created or 500 with Reason ServerTimeout indicating a unique name could not be found in the time allotted, and the client should retry (optionally after the time indicated in the Retry-After header).\n\nApplied only if Name is not specified. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency"
fn metadata.withGeneration
withGeneration(generation)
"A sequence number representing a specific generation of the desired state. Populated by the system. Read-only."
fn metadata.withLabels
withLabels(labels)
"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"
fn metadata.withLabelsMixin
withLabelsMixin(labels)
"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"
Note: This function appends passed data to existing values
fn metadata.withManagedFields
withManagedFields(managedFields)
"ManagedFields maps workflow-id and version to the set of fields that are managed by that workflow. This is mostly for internal housekeeping, and users typically shouldn't need to set or understand this field. A workflow can be the user's name, a controller's name, or the name of a specific apply path like \"ci-cd\". The set of fields is always in the version that the workflow used when modifying the object."
fn metadata.withManagedFieldsMixin
withManagedFieldsMixin(managedFields)
"ManagedFields maps workflow-id and version to the set of fields that are managed by that workflow. This is mostly for internal housekeeping, and users typically shouldn't need to set or understand this field. A workflow can be the user's name, a controller's name, or the name of a specific apply path like \"ci-cd\". The set of fields is always in the version that the workflow used when modifying the object."
Note: This function appends passed data to existing values
fn metadata.withName
withName(name)
"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"
fn metadata.withNamespace
withNamespace(namespace)
"Namespace defines the space within which each name must be unique. An empty namespace is equivalent to the \"default\" namespace, but \"default\" is the canonical representation. Not all objects are required to be scoped to a namespace - the value of this field for those objects will be empty.\n\nMust be a DNS_LABEL. Cannot be updated. More info: http://kubernetes.io/docs/user-guide/namespaces"
fn metadata.withOwnerReferences
withOwnerReferences(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
fn metadata.withOwnerReferencesMixin
withOwnerReferencesMixin(ownerReferences)
"List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller."
Note: This function appends passed data to existing values
fn metadata.withResourceVersion
withResourceVersion(resourceVersion)
"An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. Clients must treat these values as opaque and passed unmodified back to the server. They may only be valid for a particular resource or set of resources.\n\nPopulated by the system. Read-only. Value must be treated as opaque by clients and . More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency"
fn metadata.withSelfLink
withSelfLink(selfLink)
"SelfLink is a URL representing this object. Populated by the system. Read-only.\n\nDEPRECATED Kubernetes will stop propagating this field in 1.20 release and the field is planned to be removed in 1.21 release."
fn metadata.withUid
withUid(uid)
"UID is the unique in time and space value for this object. It is typically generated by the server on successful creation of a resource and is not allowed to change on PUT operations.\n\nPopulated by the system. Read-only. More info: http://kubernetes.io/docs/user-guide/identifiers#uids"
obj spec
"Specification of the desired behavior of the Prometheus cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status"
fn spec.withAllowOverlappingBlocks
withAllowOverlappingBlocks(allowOverlappingBlocks)
"AllowOverlappingBlocks enables vertical compaction and vertical query merge in Prometheus. This is still experimental in Prometheus so it may change in any upcoming release."
fn spec.withBaseImage
withBaseImage(baseImage)
"Base image to use for a Prometheus deployment. Deprecated: use 'image' instead"
fn spec.withConfigMaps
withConfigMaps(configMaps)
"ConfigMaps is a list of ConfigMaps in the same namespace as the Prometheus object, which shall be mounted into the Prometheus Pods. The ConfigMaps are mounted into /etc/prometheus/configmaps/
fn spec.withConfigMapsMixin
withConfigMapsMixin(configMaps)
"ConfigMaps is a list of ConfigMaps in the same namespace as the Prometheus object, which shall be mounted into the Prometheus Pods. The ConfigMaps are mounted into /etc/prometheus/configmaps/
Note: This function appends passed data to existing values
fn spec.withContainers
withContainers(containers)
"Containers allows injecting additional containers or modifying operator generated containers. This can be used to allow adding an authentication proxy to a Prometheus pod or to change the behavior of an operator generated container. Containers described here modify an operator generated container if they share the same name and modifications are done via a strategic merge patch. The current container names are: prometheus
, config-reloader
, and thanos-sidecar
. Overriding containers is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice."
fn spec.withContainersMixin
withContainersMixin(containers)
"Containers allows injecting additional containers or modifying operator generated containers. This can be used to allow adding an authentication proxy to a Prometheus pod or to change the behavior of an operator generated container. Containers described here modify an operator generated container if they share the same name and modifications are done via a strategic merge patch. The current container names are: prometheus
, config-reloader
, and thanos-sidecar
. Overriding containers is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice."
Note: This function appends passed data to existing values
fn spec.withDisableCompaction
withDisableCompaction(disableCompaction)
"Disable prometheus compaction."
fn spec.withEnableAdminAPI
withEnableAdminAPI(enableAdminAPI)
"Enable access to prometheus web admin API. Defaults to the value of false
. WARNING: Enabling the admin APIs enables mutating endpoints, to delete data, shutdown Prometheus, and more. Enabling this should be done with care and the user is advised to add additional authentication authorization via a proxy to ensure only clients authorized to perform these actions can do so. For more information see https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis"
fn spec.withEnableFeatures
withEnableFeatures(enableFeatures)
"Enable access to Prometheus disabled features. By default, no features are enabled. Enabling disabled features is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice. For more information see https://prometheus.io/docs/prometheus/latest/disabled_features/"
fn spec.withEnableFeaturesMixin
withEnableFeaturesMixin(enableFeatures)
"Enable access to Prometheus disabled features. By default, no features are enabled. Enabling disabled features is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice. For more information see https://prometheus.io/docs/prometheus/latest/disabled_features/"
Note: This function appends passed data to existing values
fn spec.withEnforcedBodySizeLimit
withEnforcedBodySizeLimit(enforcedBodySizeLimit)
"EnforcedBodySizeLimit defines the maximum size of uncompressed response body that will be accepted by Prometheus. Targets responding with a body larger than this many bytes will cause the scrape to fail. Example: 100MB. If defined, the limit will apply to all service/pod monitors and probes. This is an experimental feature, this behaviour could change or be removed in the future. Only valid in Prometheus versions 2.28.0 and newer."
fn spec.withEnforcedLabelLimit
withEnforcedLabelLimit(enforcedLabelLimit)
"Per-scrape limit on number of labels that will be accepted for a sample. If more than this number of labels are present post metric-relabeling, the entire scrape will be treated as failed. 0 means no limit. Only valid in Prometheus versions 2.27.0 and newer."
fn spec.withEnforcedLabelNameLengthLimit
withEnforcedLabelNameLengthLimit(enforcedLabelNameLengthLimit)
"Per-scrape limit on length of labels name that will be accepted for a sample. If a label name is longer than this number post metric-relabeling, the entire scrape will be treated as failed. 0 means no limit. Only valid in Prometheus versions 2.27.0 and newer."
fn spec.withEnforcedLabelValueLengthLimit
withEnforcedLabelValueLengthLimit(enforcedLabelValueLengthLimit)
"Per-scrape limit on length of labels value that will be accepted for a sample. If a label value is longer than this number post metric-relabeling, the entire scrape will be treated as failed. 0 means no limit. Only valid in Prometheus versions 2.27.0 and newer."
fn spec.withEnforcedNamespaceLabel
withEnforcedNamespaceLabel(enforcedNamespaceLabel)
"EnforcedNamespaceLabel If set, a label will be added to \n 1. all user-metrics (created by ServiceMonitor
, PodMonitor
and ProbeConfig
object) and 2. in all PrometheusRule
objects (except the ones excluded in prometheusRulesExcludedFromEnforce
) to * alerting & recording rules and * the metrics used in their expressions (expr
). \n Label name is this field's value. Label value is the namespace of the created object (mentioned above)."
fn spec.withEnforcedSampleLimit
withEnforcedSampleLimit(enforcedSampleLimit)
"EnforcedSampleLimit defines global limit on number of scraped samples that will be accepted. This overrides any SampleLimit set per ServiceMonitor or/and PodMonitor. It is meant to be used by admins to enforce the SampleLimit to keep overall number of samples/series under the desired limit. Note that if SampleLimit is lower that value will be taken instead."
fn spec.withEnforcedTargetLimit
withEnforcedTargetLimit(enforcedTargetLimit)
"EnforcedTargetLimit defines a global limit on the number of scraped targets. This overrides any TargetLimit set per ServiceMonitor or/and PodMonitor. It is meant to be used by admins to enforce the TargetLimit to keep the overall number of targets under the desired limit. Note that if TargetLimit is lower, that value will be taken instead, except if either value is zero, in which case the non-zero value will be used. If both values are zero, no limit is enforced."
fn spec.withEvaluationInterval
withEvaluationInterval(evaluationInterval)
"Interval between consecutive evaluations. Default: 1m
"
fn spec.withExternalLabels
withExternalLabels(externalLabels)
"The labels to add to any time series or alerts when communicating with external systems (federation, remote storage, Alertmanager)."
fn spec.withExternalLabelsMixin
withExternalLabelsMixin(externalLabels)
"The labels to add to any time series or alerts when communicating with external systems (federation, remote storage, Alertmanager)."
Note: This function appends passed data to existing values
fn spec.withExternalUrl
withExternalUrl(externalUrl)
"The external URL the Prometheus instances will be available under. This is necessary to generate correct URLs. This is necessary if Prometheus is not served from root of a DNS name."
fn spec.withIgnoreNamespaceSelectors
withIgnoreNamespaceSelectors(ignoreNamespaceSelectors)
"IgnoreNamespaceSelectors if set to true will ignore NamespaceSelector settings from the podmonitor and servicemonitor configs, and they will only discover endpoints within their current namespace. Defaults to false."
fn spec.withImage
withImage(image)
"Image if specified has precedence over baseImage, tag and sha combinations. Specifying the version is still necessary to ensure the Prometheus Operator knows what version of Prometheus is being configured."
fn spec.withImagePullSecrets
withImagePullSecrets(imagePullSecrets)
"An optional list of references to secrets in the same namespace to use for pulling prometheus and alertmanager images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod"
fn spec.withImagePullSecretsMixin
withImagePullSecretsMixin(imagePullSecrets)
"An optional list of references to secrets in the same namespace to use for pulling prometheus and alertmanager images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod"
Note: This function appends passed data to existing values
fn spec.withInitContainers
withInitContainers(initContainers)
"InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. fetch secrets for injection into the Prometheus configuration from external sources. Any errors during the execution of an initContainer will lead to a restart of the Pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ InitContainers described here modify an operator generated init containers if they share the same name and modifications are done via a strategic merge patch. The current init container name is: init-config-reloader
. Overriding init containers is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice."
fn spec.withInitContainersMixin
withInitContainersMixin(initContainers)
"InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. fetch secrets for injection into the Prometheus configuration from external sources. Any errors during the execution of an initContainer will lead to a restart of the Pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ InitContainers described here modify an operator generated init containers if they share the same name and modifications are done via a strategic merge patch. The current init container name is: init-config-reloader
. Overriding init containers is entirely outside the scope of what the maintainers will support and by doing so, you accept that this behaviour may break at any time without notice."
Note: This function appends passed data to existing values
fn spec.withListenLocal
withListenLocal(listenLocal)
"ListenLocal makes the Prometheus server listen on loopback, so that it does not bind against the Pod IP."
fn spec.withLogFormat
withLogFormat(logFormat)
"Log format for Prometheus to be configured with."
fn spec.withLogLevel
withLogLevel(logLevel)
"Log level for Prometheus to be configured with."
fn spec.withMinReadySeconds
withMinReadySeconds(minReadySeconds)
"Minimum number of seconds for which a newly created pod should be ready without any of its container crashing for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready) This is an alpha field and requires enabling StatefulSetMinReadySeconds feature gate."
fn spec.withNodeSelector
withNodeSelector(nodeSelector)
"Define which Nodes the Pods are scheduled on."
fn spec.withNodeSelectorMixin
withNodeSelectorMixin(nodeSelector)
"Define which Nodes the Pods are scheduled on."
Note: This function appends passed data to existing values
fn spec.withOverrideHonorLabels
withOverrideHonorLabels(overrideHonorLabels)
"OverrideHonorLabels if set to true overrides all user configured honor_labels. If HonorLabels is set in ServiceMonitor or PodMonitor to true, this overrides honor_labels to false."
fn spec.withOverrideHonorTimestamps
withOverrideHonorTimestamps(overrideHonorTimestamps)
"OverrideHonorTimestamps allows to globally enforce honoring timestamps in all scrape configs."
fn spec.withPaused
withPaused(paused)
"When a Prometheus deployment is paused, no actions except for deletion will be performed on the underlying objects."
fn spec.withPortName
withPortName(portName)
"Port name used for the pods and governing service. This defaults to web"
fn spec.withPriorityClassName
withPriorityClassName(priorityClassName)
"Priority class assigned to the Pods"
fn spec.withPrometheusExternalLabelName
withPrometheusExternalLabelName(prometheusExternalLabelName)
"Name of Prometheus external label used to denote Prometheus instance name. Defaults to the value of prometheus
. External label will not be added when value is set to empty string (\"\"
)."
fn spec.withPrometheusRulesExcludedFromEnforce
withPrometheusRulesExcludedFromEnforce(prometheusRulesExcludedFromEnforce)
"PrometheusRulesExcludedFromEnforce - list of prometheus rules to be excluded from enforcing of adding namespace labels. Works only if enforcedNamespaceLabel set to true. Make sure both ruleNamespace and ruleName are set for each pair"
fn spec.withPrometheusRulesExcludedFromEnforceMixin
withPrometheusRulesExcludedFromEnforceMixin(prometheusRulesExcludedFromEnforce)
"PrometheusRulesExcludedFromEnforce - list of prometheus rules to be excluded from enforcing of adding namespace labels. Works only if enforcedNamespaceLabel set to true. Make sure both ruleNamespace and ruleName are set for each pair"
Note: This function appends passed data to existing values
fn spec.withQueryLogFile
withQueryLogFile(queryLogFile)
"QueryLogFile specifies the file to which PromQL queries are logged. Note that this location must be writable, and can be persisted using an attached volume. Alternatively, the location can be set to a stdout location such as /dev/stdout
to log querie information to the default Prometheus log stream. This is only available in versions of Prometheus >= 2.16.0. For more details, see the Prometheus docs (https://prometheus.io/docs/guides/query-log/)"
fn spec.withRemoteRead
withRemoteRead(remoteRead)
"If specified, the remote_read spec. This is an experimental feature, it may change in any upcoming release in a breaking way."
fn spec.withRemoteReadMixin
withRemoteReadMixin(remoteRead)
"If specified, the remote_read spec. This is an experimental feature, it may change in any upcoming release in a breaking way."
Note: This function appends passed data to existing values
fn spec.withRemoteWrite
withRemoteWrite(remoteWrite)
"If specified, the remote_write spec. This is an experimental feature, it may change in any upcoming release in a breaking way."
fn spec.withRemoteWriteMixin
withRemoteWriteMixin(remoteWrite)
"If specified, the remote_write spec. This is an experimental feature, it may change in any upcoming release in a breaking way."
Note: This function appends passed data to existing values
fn spec.withReplicaExternalLabelName
withReplicaExternalLabelName(replicaExternalLabelName)
"Name of Prometheus external label used to denote replica name. Defaults to the value of prometheus_replica
. External label will not be added when value is set to empty string (\"\"
)."
fn spec.withReplicas
withReplicas(replicas)
"Number of replicas of each shard to deploy for a Prometheus deployment. Number of replicas multiplied by shards is the total number of Pods created."
fn spec.withRetention
withRetention(retention)
"Time duration Prometheus shall retain data for. Default is '24h', and must match the regular expression [0-9]+(ms|s|m|h|d|w|y)
(milliseconds seconds minutes hours days weeks years)."
fn spec.withRetentionSize
withRetentionSize(retentionSize)
"Maximum amount of disk space used by blocks. Supported units: B, KB, MB, GB, TB, PB, EB. Ex: 512MB
."
fn spec.withRoutePrefix
withRoutePrefix(routePrefix)
"The route prefix Prometheus registers HTTP handlers for. This is useful, if using ExternalURL and a proxy is rewriting HTTP routes of a request, and the actual ExternalURL is still true, but the server serves requests under a different route prefix. For example for use with kubectl proxy
."
fn spec.withScrapeInterval
withScrapeInterval(scrapeInterval)
"Interval between consecutive scrapes. Default: 1m
"
fn spec.withScrapeTimeout
withScrapeTimeout(scrapeTimeout)
"Number of seconds to wait for target to respond before erroring."
fn spec.withSecrets
withSecrets(secrets)
"Secrets is a list of Secrets in the same namespace as the Prometheus object, which shall be mounted into the Prometheus Pods. The Secrets are mounted into /etc/prometheus/secrets/
fn spec.withSecretsMixin
withSecretsMixin(secrets)
"Secrets is a list of Secrets in the same namespace as the Prometheus object, which shall be mounted into the Prometheus Pods. The Secrets are mounted into /etc/prometheus/secrets/
Note: This function appends passed data to existing values
fn spec.withServiceAccountName
withServiceAccountName(serviceAccountName)
"ServiceAccountName is the name of the ServiceAccount to use to run the Prometheus Pods."
fn spec.withSha
withSha(sha)
"SHA of Prometheus container image to be deployed. Defaults to the value of version
. Similar to a tag, but the SHA explicitly deploys an immutable container image. Version and Tag are ignored if SHA is set. Deprecated: use 'image' instead. The image digest can be specified as part of the image URL."
fn spec.withShards
withShards(shards)
"EXPERIMENTAL: Number of shards to distribute targets onto. Number of replicas multiplied by shards is the total number of Pods created. Note that scaling down shards will not reshard data onto remaining instances, it must be manually moved. Increasing shards will not reshard data either but it will continue to be available from the same instances. To query globally use Thanos sidecar and Thanos querier or remote write data to a central location. Sharding is done on the content of the __address__
target meta-label."
fn spec.withTag
withTag(tag)
"Tag of Prometheus container image to be deployed. Defaults to the value of version
. Version is ignored if Tag is set. Deprecated: use 'image' instead. The image tag can be specified as part of the image URL."
fn spec.withTolerations
withTolerations(tolerations)
"If specified, the pod's tolerations."
fn spec.withTolerationsMixin
withTolerationsMixin(tolerations)
"If specified, the pod's tolerations."
Note: This function appends passed data to existing values
fn spec.withTopologySpreadConstraints
withTopologySpreadConstraints(topologySpreadConstraints)
"If specified, the pod's topology spread constraints."
fn spec.withTopologySpreadConstraintsMixin
withTopologySpreadConstraintsMixin(topologySpreadConstraints)
"If specified, the pod's topology spread constraints."
Note: This function appends passed data to existing values
fn spec.withVersion
withVersion(version)
"Version of Prometheus to be deployed."
fn spec.withVolumeMounts
withVolumeMounts(volumeMounts)
"VolumeMounts allows configuration of additional VolumeMounts on the output StatefulSet definition. VolumeMounts specified will be appended to other VolumeMounts in the prometheus container, that are generated as a result of StorageSpec objects."
fn spec.withVolumeMountsMixin
withVolumeMountsMixin(volumeMounts)
"VolumeMounts allows configuration of additional VolumeMounts on the output StatefulSet definition. VolumeMounts specified will be appended to other VolumeMounts in the prometheus container, that are generated as a result of StorageSpec objects."
Note: This function appends passed data to existing values
fn spec.withVolumes
withVolumes(volumes)
"Volumes allows configuration of additional volumes on the output StatefulSet definition. Volumes specified will be appended to other volumes that are generated as a result of StorageSpec objects."
fn spec.withVolumesMixin
withVolumesMixin(volumes)
"Volumes allows configuration of additional volumes on the output StatefulSet definition. Volumes specified will be appended to other volumes that are generated as a result of StorageSpec objects."
Note: This function appends passed data to existing values
fn spec.withWalCompression
withWalCompression(walCompression)
"Enable compression of the write-ahead log using Snappy. This flag is only available in versions of Prometheus >= 2.11.0."
obj spec.additionalAlertManagerConfigs
"AdditionalAlertManagerConfigs allows specifying a key of a Secret containing additional Prometheus AlertManager configurations. AlertManager configurations specified are appended to the configurations generated by the Prometheus Operator. Job configurations specified must have the form as specified in the official Prometheus documentation: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config. As AlertManager configs are appended, the user is responsible to make sure it is valid. Note that using this feature may expose the possibility to break upgrades of Prometheus. It is advised to review Prometheus release notes to ensure that no incompatible AlertManager configs are going to break Prometheus after the upgrade."
fn spec.additionalAlertManagerConfigs.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.additionalAlertManagerConfigs.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.additionalAlertManagerConfigs.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.additionalAlertRelabelConfigs
"AdditionalAlertRelabelConfigs allows specifying a key of a Secret containing additional Prometheus alert relabel configurations. Alert relabel configurations specified are appended to the configurations generated by the Prometheus Operator. Alert relabel configurations specified must have the form as specified in the official Prometheus documentation: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs. As alert relabel configs are appended, the user is responsible to make sure it is valid. Note that using this feature may expose the possibility to break upgrades of Prometheus. It is advised to review Prometheus release notes to ensure that no incompatible alert relabel configs are going to break Prometheus after the upgrade."
fn spec.additionalAlertRelabelConfigs.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.additionalAlertRelabelConfigs.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.additionalAlertRelabelConfigs.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.additionalScrapeConfigs
"AdditionalScrapeConfigs allows specifying a key of a Secret containing additional Prometheus scrape configurations. Scrape configurations specified are appended to the configurations generated by the Prometheus Operator. Job configurations specified must have the form as specified in the official Prometheus documentation: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config. As scrape configs are appended, the user is responsible to make sure it is valid. Note that using this feature may expose the possibility to break upgrades of Prometheus. It is advised to review Prometheus release notes to ensure that no incompatible scrape configs are going to break Prometheus after the upgrade."
fn spec.additionalScrapeConfigs.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.additionalScrapeConfigs.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.additionalScrapeConfigs.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.affinity
"If specified, the pod's scheduling constraints."
obj spec.affinity.nodeAffinity
"Describes node affinity scheduling rules for the pod."
fn spec.affinity.nodeAffinity.withPreferredDuringSchedulingIgnoredDuringExecution
withPreferredDuringSchedulingIgnoredDuringExecution(preferredDuringSchedulingIgnoredDuringExecution)
"The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred."
fn spec.affinity.nodeAffinity.withPreferredDuringSchedulingIgnoredDuringExecutionMixin
withPreferredDuringSchedulingIgnoredDuringExecutionMixin(preferredDuringSchedulingIgnoredDuringExecution)
"The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node matches the corresponding matchExpressions; the node(s) with the highest sum are the most preferred."
Note: This function appends passed data to existing values
obj spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution
"If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to an update), the system may or may not try to eventually evict the pod from its node."
fn spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.withNodeSelectorTerms
withNodeSelectorTerms(nodeSelectorTerms)
"Required. A list of node selector terms. The terms are ORed."
fn spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.withNodeSelectorTermsMixin
withNodeSelectorTermsMixin(nodeSelectorTerms)
"Required. A list of node selector terms. The terms are ORed."
Note: This function appends passed data to existing values
obj spec.affinity.podAffinity
"Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s))."
fn spec.affinity.podAffinity.withPreferredDuringSchedulingIgnoredDuringExecution
withPreferredDuringSchedulingIgnoredDuringExecution(preferredDuringSchedulingIgnoredDuringExecution)
"The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred."
fn spec.affinity.podAffinity.withPreferredDuringSchedulingIgnoredDuringExecutionMixin
withPreferredDuringSchedulingIgnoredDuringExecutionMixin(preferredDuringSchedulingIgnoredDuringExecution)
"The scheduler will prefer to schedule pods to nodes that satisfy the affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred."
Note: This function appends passed data to existing values
fn spec.affinity.podAffinity.withRequiredDuringSchedulingIgnoredDuringExecution
withRequiredDuringSchedulingIgnoredDuringExecution(requiredDuringSchedulingIgnoredDuringExecution)
"If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied."
fn spec.affinity.podAffinity.withRequiredDuringSchedulingIgnoredDuringExecutionMixin
withRequiredDuringSchedulingIgnoredDuringExecutionMixin(requiredDuringSchedulingIgnoredDuringExecution)
"If the affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied."
Note: This function appends passed data to existing values
obj spec.affinity.podAntiAffinity
"Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s))."
fn spec.affinity.podAntiAffinity.withPreferredDuringSchedulingIgnoredDuringExecution
withPreferredDuringSchedulingIgnoredDuringExecution(preferredDuringSchedulingIgnoredDuringExecution)
"The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred."
fn spec.affinity.podAntiAffinity.withPreferredDuringSchedulingIgnoredDuringExecutionMixin
withPreferredDuringSchedulingIgnoredDuringExecutionMixin(preferredDuringSchedulingIgnoredDuringExecution)
"The scheduler will prefer to schedule pods to nodes that satisfy the anti-affinity expressions specified by this field, but it may choose a node that violates one or more of the expressions. The node that is most preferred is the one with the greatest sum of weights, i.e. for each node that meets all of the scheduling requirements (resource request, requiredDuringScheduling anti-affinity expressions, etc.), compute a sum by iterating through the elements of this field and adding \"weight\" to the sum if the node has pods which matches the corresponding podAffinityTerm; the node(s) with the highest sum are the most preferred."
Note: This function appends passed data to existing values
fn spec.affinity.podAntiAffinity.withRequiredDuringSchedulingIgnoredDuringExecution
withRequiredDuringSchedulingIgnoredDuringExecution(requiredDuringSchedulingIgnoredDuringExecution)
"If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied."
fn spec.affinity.podAntiAffinity.withRequiredDuringSchedulingIgnoredDuringExecutionMixin
withRequiredDuringSchedulingIgnoredDuringExecutionMixin(requiredDuringSchedulingIgnoredDuringExecution)
"If the anti-affinity requirements specified by this field are not met at scheduling time, the pod will not be scheduled onto the node. If the anti-affinity requirements specified by this field cease to be met at some point during pod execution (e.g. due to a pod label update), the system may or may not try to eventually evict the pod from its node. When there are multiple elements, the lists of nodes corresponding to each podAffinityTerm are intersected, i.e. all terms must be satisfied."
Note: This function appends passed data to existing values
obj spec.alerting
"Define details regarding alerting."
fn spec.alerting.withAlertmanagers
withAlertmanagers(alertmanagers)
"AlertmanagerEndpoints Prometheus should fire alerts against."
fn spec.alerting.withAlertmanagersMixin
withAlertmanagersMixin(alertmanagers)
"AlertmanagerEndpoints Prometheus should fire alerts against."
Note: This function appends passed data to existing values
obj spec.apiserverConfig
"APIServerConfig allows specifying a host and auth methods to access apiserver. If left empty, Prometheus is assumed to run inside of the cluster and will discover API servers automatically and use the pod's CA certificate and bearer token file at /var/run/secrets/kubernetes.io/serviceaccount/."
fn spec.apiserverConfig.withBearerToken
withBearerToken(bearerToken)
"Bearer token for accessing apiserver."
fn spec.apiserverConfig.withBearerTokenFile
withBearerTokenFile(bearerTokenFile)
"File to read bearer token for accessing apiserver."
fn spec.apiserverConfig.withHost
withHost(host)
"Host of apiserver. A valid string consisting of a hostname or IP followed by an optional port number"
obj spec.apiserverConfig.authorization
"Authorization section for accessing apiserver"
fn spec.apiserverConfig.authorization.withCredentialsFile
withCredentialsFile(credentialsFile)
"File to read a secret from, mutually exclusive with Credentials (from SafeAuthorization)"
fn spec.apiserverConfig.authorization.withType
withType(type)
"Set the authentication type. Defaults to Bearer, Basic will cause an error"
obj spec.apiserverConfig.authorization.credentials
"The secret's key that contains the credentials of the request"
fn spec.apiserverConfig.authorization.credentials.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.apiserverConfig.authorization.credentials.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.apiserverConfig.authorization.credentials.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.apiserverConfig.basicAuth
"BasicAuth allow an endpoint to authenticate over basic authentication"
obj spec.apiserverConfig.basicAuth.password
"The secret in the service monitor namespace that contains the password for authentication."
fn spec.apiserverConfig.basicAuth.password.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.apiserverConfig.basicAuth.password.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.apiserverConfig.basicAuth.password.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.apiserverConfig.basicAuth.username
"The secret in the service monitor namespace that contains the username for authentication."
fn spec.apiserverConfig.basicAuth.username.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.apiserverConfig.basicAuth.username.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.apiserverConfig.basicAuth.username.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.apiserverConfig.tlsConfig
"TLS Config to use for accessing apiserver."
fn spec.apiserverConfig.tlsConfig.withCaFile
withCaFile(caFile)
"Path to the CA cert in the Prometheus container to use for the targets."
fn spec.apiserverConfig.tlsConfig.withCertFile
withCertFile(certFile)
"Path to the client cert file in the Prometheus container for the targets."
fn spec.apiserverConfig.tlsConfig.withInsecureSkipVerify
withInsecureSkipVerify(insecureSkipVerify)
"Disable target certificate validation."
fn spec.apiserverConfig.tlsConfig.withKeyFile
withKeyFile(keyFile)
"Path to the client key file in the Prometheus container for the targets."
fn spec.apiserverConfig.tlsConfig.withServerName
withServerName(serverName)
"Used to verify the hostname for the targets."
obj spec.apiserverConfig.tlsConfig.ca
"Struct containing the CA cert to use for the targets."
obj spec.apiserverConfig.tlsConfig.ca.configMap
"ConfigMap containing data to use for the targets."
fn spec.apiserverConfig.tlsConfig.ca.configMap.withKey
withKey(key)
"The key to select."
fn spec.apiserverConfig.tlsConfig.ca.configMap.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.apiserverConfig.tlsConfig.ca.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.apiserverConfig.tlsConfig.ca.secret
"Secret containing data to use for the targets."
fn spec.apiserverConfig.tlsConfig.ca.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.apiserverConfig.tlsConfig.ca.secret.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.apiserverConfig.tlsConfig.ca.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.apiserverConfig.tlsConfig.cert
"Struct containing the client cert file for the targets."
obj spec.apiserverConfig.tlsConfig.cert.configMap
"ConfigMap containing data to use for the targets."
fn spec.apiserverConfig.tlsConfig.cert.configMap.withKey
withKey(key)
"The key to select."
fn spec.apiserverConfig.tlsConfig.cert.configMap.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.apiserverConfig.tlsConfig.cert.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.apiserverConfig.tlsConfig.cert.secret
"Secret containing data to use for the targets."
fn spec.apiserverConfig.tlsConfig.cert.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.apiserverConfig.tlsConfig.cert.secret.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.apiserverConfig.tlsConfig.cert.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.apiserverConfig.tlsConfig.keySecret
"Secret containing the client key file for the targets."
fn spec.apiserverConfig.tlsConfig.keySecret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.apiserverConfig.tlsConfig.keySecret.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.apiserverConfig.tlsConfig.keySecret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.arbitraryFSAccessThroughSMs
"ArbitraryFSAccessThroughSMs configures whether configuration based on a service monitor can access arbitrary files on the file system of the Prometheus container e.g. bearer token files."
fn spec.arbitraryFSAccessThroughSMs.withDeny
withDeny(deny)
obj spec.podMetadata
"PodMetadata configures Labels and Annotations which are propagated to the prometheus pods."
fn spec.podMetadata.withAnnotations
withAnnotations(annotations)
"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"
fn spec.podMetadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"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"
Note: This function appends passed data to existing values
fn spec.podMetadata.withLabels
withLabels(labels)
"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"
fn spec.podMetadata.withLabelsMixin
withLabelsMixin(labels)
"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"
Note: This function appends passed data to existing values
fn spec.podMetadata.withName
withName(name)
"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"
obj spec.podMonitorNamespaceSelector
"Namespace's labels to match for PodMonitor discovery. If nil, only check own namespace."
fn spec.podMonitorNamespaceSelector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.podMonitorNamespaceSelector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.podMonitorNamespaceSelector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.podMonitorNamespaceSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.podMonitorSelector
"Experimental PodMonitors to be selected for target discovery. Deprecated: if neither this nor serviceMonitorSelector are specified, configuration is unmanaged."
fn spec.podMonitorSelector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.podMonitorSelector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.podMonitorSelector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.podMonitorSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.probeNamespaceSelector
"Experimental Namespaces to be selected for Probe discovery. If nil, only check own namespace."
fn spec.probeNamespaceSelector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.probeNamespaceSelector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.probeNamespaceSelector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.probeNamespaceSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.probeSelector
"Experimental Probes to be selected for target discovery."
fn spec.probeSelector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.probeSelector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.probeSelector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.probeSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.query
"QuerySpec defines the query command line flags when starting Prometheus."
fn spec.query.withLookbackDelta
withLookbackDelta(lookbackDelta)
"The delta difference allowed for retrieving metrics during expression evaluations."
fn spec.query.withMaxConcurrency
withMaxConcurrency(maxConcurrency)
"Number of concurrent queries that can be run at once."
fn spec.query.withMaxSamples
withMaxSamples(maxSamples)
"Maximum number of samples a single query can load into memory. Note that queries will fail if they would load more samples than this into memory, so this also limits the number of samples a query can return."
fn spec.query.withTimeout
withTimeout(timeout)
"Maximum time a query may take before being aborted."
obj spec.resources
"Define resources requests and limits for single Pods."
fn spec.resources.withLimits
withLimits(limits)
"Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
fn spec.resources.withLimitsMixin
withLimitsMixin(limits)
"Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
Note: This function appends passed data to existing values
fn spec.resources.withRequests
withRequests(requests)
"Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
fn spec.resources.withRequestsMixin
withRequestsMixin(requests)
"Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
Note: This function appends passed data to existing values
obj spec.ruleNamespaceSelector
"Namespaces to be selected for PrometheusRules discovery. If unspecified, only the same namespace as the Prometheus object is in is used."
fn spec.ruleNamespaceSelector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.ruleNamespaceSelector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.ruleNamespaceSelector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.ruleNamespaceSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.ruleSelector
"A selector to select which PrometheusRules to mount for loading alerting/recording rules from. Until (excluding) Prometheus Operator v0.24.0 Prometheus Operator will migrate any legacy rule ConfigMaps to PrometheusRule custom resources selected by RuleSelector. Make sure it does not match any config maps that you do not want to be migrated."
fn spec.ruleSelector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.ruleSelector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.ruleSelector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.ruleSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.rules
"/--rules.*/ command-line arguments."
obj spec.rules.alert
"/--rules.alert.*/ command-line arguments"
fn spec.rules.alert.withForGracePeriod
withForGracePeriod(forGracePeriod)
"Minimum duration between alert and restored 'for' state. This is maintained only for alerts with configured 'for' time greater than grace period."
fn spec.rules.alert.withForOutageTolerance
withForOutageTolerance(forOutageTolerance)
"Max time to tolerate prometheus outage for restoring 'for' state of alert."
fn spec.rules.alert.withResendDelay
withResendDelay(resendDelay)
"Minimum amount of time to wait before resending an alert to Alertmanager."
obj spec.securityContext
"SecurityContext holds pod-level security attributes and common container settings. This defaults to the default PodSecurityContext."
fn spec.securityContext.withFsGroup
withFsGroup(fsGroup)
"A special supplemental group that applies to all containers in a pod. Some volume types allow the Kubelet to change the ownership of that volume to be owned by the pod: \n 1. The owning GID will be the FSGroup 2. The setgid bit is set (new files created in the volume will be owned by FSGroup) 3. The permission bits are OR'd with rw-rw---- \n If unset, the Kubelet will not modify the ownership and permissions of any volume. Note that this field cannot be set when spec.os.name is windows."
fn spec.securityContext.withFsGroupChangePolicy
withFsGroupChangePolicy(fsGroupChangePolicy)
"fsGroupChangePolicy defines behavior of changing ownership and permission of the volume before being exposed inside Pod. This field will only apply to volume types which support fsGroup based ownership(and permissions). It will have no effect on ephemeral volume types such as: secret, configmaps and emptydir. Valid values are \"OnRootMismatch\" and \"Always\". If not specified, \"Always\" is used. Note that this field cannot be set when spec.os.name is windows."
fn spec.securityContext.withRunAsGroup
withRunAsGroup(runAsGroup)
"The GID to run the entrypoint of the container process. Uses runtime default if unset. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows."
fn spec.securityContext.withRunAsNonRoot
withRunAsNonRoot(runAsNonRoot)
"Indicates that the container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence."
fn spec.securityContext.withRunAsUser
withRunAsUser(runAsUser)
"The UID to run the entrypoint of the container process. Defaults to user specified in image metadata if unspecified. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows."
fn spec.securityContext.withSupplementalGroups
withSupplementalGroups(supplementalGroups)
"A list of groups applied to the first process run in each container, in addition to the container's primary GID. If unspecified, no groups will be added to any container. Note that this field cannot be set when spec.os.name is windows."
fn spec.securityContext.withSupplementalGroupsMixin
withSupplementalGroupsMixin(supplementalGroups)
"A list of groups applied to the first process run in each container, in addition to the container's primary GID. If unspecified, no groups will be added to any container. Note that this field cannot be set when spec.os.name is windows."
Note: This function appends passed data to existing values
fn spec.securityContext.withSysctls
withSysctls(sysctls)
"Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows."
fn spec.securityContext.withSysctlsMixin
withSysctlsMixin(sysctls)
"Sysctls hold a list of namespaced sysctls used for the pod. Pods with unsupported sysctls (by the container runtime) might fail to launch. Note that this field cannot be set when spec.os.name is windows."
Note: This function appends passed data to existing values
obj spec.securityContext.seLinuxOptions
"The SELinux context to be applied to all containers. If unspecified, the container runtime will allocate a random SELinux context for each container. May also be set in SecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence for that container. Note that this field cannot be set when spec.os.name is windows."
fn spec.securityContext.seLinuxOptions.withLevel
withLevel(level)
"Level is SELinux level label that applies to the container."
fn spec.securityContext.seLinuxOptions.withRole
withRole(role)
"Role is a SELinux role label that applies to the container."
fn spec.securityContext.seLinuxOptions.withType
withType(type)
"Type is a SELinux type label that applies to the container."
fn spec.securityContext.seLinuxOptions.withUser
withUser(user)
"User is a SELinux user label that applies to the container."
obj spec.securityContext.seccompProfile
"The seccomp options to use by the containers in this pod. Note that this field cannot be set when spec.os.name is windows."
fn spec.securityContext.seccompProfile.withLocalhostProfile
withLocalhostProfile(localhostProfile)
"localhostProfile indicates a profile defined in a file on the node should be used. The profile must be preconfigured on the node to work. Must be a descending path, relative to the kubelet's configured seccomp profile location. Must only be set if type is \"Localhost\"."
fn spec.securityContext.seccompProfile.withType
withType(type)
"type indicates which kind of seccomp profile will be applied. Valid options are: \n Localhost - a profile defined in a file on the node should be used. RuntimeDefault - the container runtime default profile should be used. Unconfined - no profile should be applied."
obj spec.securityContext.windowsOptions
"The Windows specific settings applied to all containers. If unspecified, the options within a container's SecurityContext will be used. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence. Note that this field cannot be set when spec.os.name is linux."
fn spec.securityContext.windowsOptions.withGmsaCredentialSpec
withGmsaCredentialSpec(gmsaCredentialSpec)
"GMSACredentialSpec is where the GMSA admission webhook (https://github.com/kubernetes-sigs/windows-gmsa) inlines the contents of the GMSA credential spec named by the GMSACredentialSpecName field."
fn spec.securityContext.windowsOptions.withGmsaCredentialSpecName
withGmsaCredentialSpecName(gmsaCredentialSpecName)
"GMSACredentialSpecName is the name of the GMSA credential spec to use."
fn spec.securityContext.windowsOptions.withHostProcess
withHostProcess(hostProcess)
"HostProcess determines if a container should be run as a 'Host Process' container. This field is alpha-level and will only be honored by components that enable the WindowsHostProcessContainers feature flag. Setting this field without the feature flag will result in errors when validating the Pod. All of a Pod's containers must have the same effective HostProcess value (it is not allowed to have a mix of HostProcess containers and non-HostProcess containers). In addition, if HostProcess is true then HostNetwork must also be set to true."
fn spec.securityContext.windowsOptions.withRunAsUserName
withRunAsUserName(runAsUserName)
"The UserName in Windows to run the entrypoint of the container process. Defaults to the user specified in image metadata if unspecified. May also be set in PodSecurityContext. If set in both SecurityContext and PodSecurityContext, the value specified in SecurityContext takes precedence."
obj spec.serviceMonitorNamespaceSelector
"Namespace's labels to match for ServiceMonitor discovery. If nil, only check own namespace."
fn spec.serviceMonitorNamespaceSelector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.serviceMonitorNamespaceSelector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.serviceMonitorNamespaceSelector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.serviceMonitorNamespaceSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.serviceMonitorSelector
"ServiceMonitors to be selected for target discovery. Deprecated: if neither this nor podMonitorSelector are specified, configuration is unmanaged."
fn spec.serviceMonitorSelector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.serviceMonitorSelector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.serviceMonitorSelector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.serviceMonitorSelector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.storage
"Storage spec to specify how storage shall be used."
fn spec.storage.withDisableMountSubPath
withDisableMountSubPath(disableMountSubPath)
"Deprecated: subPath usage will be disabled by default in a future release, this option will become unnecessary. DisableMountSubPath allows to remove any subPath usage in volume mounts."
obj spec.storage.emptyDir
"EmptyDirVolumeSource to be used by the Prometheus StatefulSets. If specified, used in place of any volumeClaimTemplate. More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir"
fn spec.storage.emptyDir.withMedium
withMedium(medium)
"What type of storage medium should back this directory. The default is \"\" which means to use the node's default medium. Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir"
fn spec.storage.emptyDir.withSizeLimit
withSizeLimit(sizeLimit)
"Total amount of local storage required for this EmptyDir volume. The size limit is also applicable for memory medium. The maximum usage on memory medium EmptyDir would be the minimum value between the SizeLimit specified here and the sum of memory limits of all containers in a pod. The default is nil which means that the limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir"
obj spec.storage.ephemeral
"EphemeralVolumeSource to be used by the Prometheus StatefulSets. This is a beta field in k8s 1.21, for lower versions, starting with k8s 1.19, it requires enabling the GenericEphemeralVolume feature gate. More info: https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes"
obj spec.storage.ephemeral.volumeClaimTemplate
"Will be used to create a stand-alone PVC to provision the volume. The pod in which this EphemeralVolumeSource is embedded will be the owner of the PVC, i.e. the PVC will be deleted together with the pod. The name of the PVC will be <pod name>-<volume name>
where <volume name>
is the name from the PodSpec.Volumes
array entry. Pod validation will reject the pod if the concatenated name is not valid for a PVC (for example, too long). \n An existing PVC with that name that is not owned by the pod will not be used for the pod to avoid using an unrelated volume by mistake. Starting the pod is then blocked until the unrelated PVC is removed. If such a pre-created PVC is meant to be used by the pod, the PVC has to updated with an owner reference to the pod once the pod exists. Normally this should not be necessary, but it may be useful when manually reconstructing a broken cluster. \n This field is read-only and no changes will be made by Kubernetes to the PVC after it has been created. \n Required, must not be nil."
fn spec.storage.ephemeral.volumeClaimTemplate.withMetadata
withMetadata(metadata)
"May contain labels and annotations that will be copied into the PVC when creating it. No other fields are allowed and will be rejected during validation."
fn spec.storage.ephemeral.volumeClaimTemplate.withMetadataMixin
withMetadataMixin(metadata)
"May contain labels and annotations that will be copied into the PVC when creating it. No other fields are allowed and will be rejected during validation."
Note: This function appends passed data to existing values
obj spec.storage.ephemeral.volumeClaimTemplate.spec
"The specification for the PersistentVolumeClaim. The entire content is copied unchanged into the PVC that gets created from this template. The same fields as in a PersistentVolumeClaim are also valid here."
fn spec.storage.ephemeral.volumeClaimTemplate.spec.withAccessModes
withAccessModes(accessModes)
"AccessModes contains the desired access modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1"
fn spec.storage.ephemeral.volumeClaimTemplate.spec.withAccessModesMixin
withAccessModesMixin(accessModes)
"AccessModes contains the desired access modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1"
Note: This function appends passed data to existing values
fn spec.storage.ephemeral.volumeClaimTemplate.spec.withStorageClassName
withStorageClassName(storageClassName)
"Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1"
fn spec.storage.ephemeral.volumeClaimTemplate.spec.withVolumeMode
withVolumeMode(volumeMode)
"volumeMode defines what type of volume is required by the claim. Value of Filesystem is implied when not included in claim spec."
fn spec.storage.ephemeral.volumeClaimTemplate.spec.withVolumeName
withVolumeName(volumeName)
"VolumeName is the binding reference to the PersistentVolume backing this claim."
obj spec.storage.ephemeral.volumeClaimTemplate.spec.dataSource
"This field can be used to specify either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot) * An existing PVC (PersistentVolumeClaim) If the provisioner or an external controller can support the specified data source, it will create a new volume based on the contents of the specified data source. If the AnyVolumeDataSource feature gate is enabled, this field will always have the same contents as the DataSourceRef field."
fn spec.storage.ephemeral.volumeClaimTemplate.spec.dataSource.withApiGroup
withApiGroup(apiGroup)
"APIGroup is the group for the resource being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. For any other third-party types, APIGroup is required."
fn spec.storage.ephemeral.volumeClaimTemplate.spec.dataSource.withKind
withKind(kind)
"Kind is the type of resource being referenced"
fn spec.storage.ephemeral.volumeClaimTemplate.spec.dataSource.withName
withName(name)
"Name is the name of resource being referenced"
obj spec.storage.ephemeral.volumeClaimTemplate.spec.dataSourceRef
"Specifies the object from which to populate the volume with data, if a non-empty volume is desired. This may be any local object from a non-empty API group (non core object) or a PersistentVolumeClaim object. When this field is specified, volume binding will only succeed if the type of the specified object matches some installed volume populator or dynamic provisioner. This field will replace the functionality of the DataSource field and as such if both fields are non-empty, they must have the same value. For backwards compatibility, both fields (DataSource and DataSourceRef) will be set to the same value automatically if one of them is empty and the other is non-empty. There are two important differences between DataSource and DataSourceRef: * While DataSource only allows two specific types of objects, DataSourceRef allows any non-core object, as well as PersistentVolumeClaim objects. * While DataSource ignores disallowed values (dropping them), DataSourceRef preserves all values, and generates an error if a disallowed value is specified. (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled."
fn spec.storage.ephemeral.volumeClaimTemplate.spec.dataSourceRef.withApiGroup
withApiGroup(apiGroup)
"APIGroup is the group for the resource being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. For any other third-party types, APIGroup is required."
fn spec.storage.ephemeral.volumeClaimTemplate.spec.dataSourceRef.withKind
withKind(kind)
"Kind is the type of resource being referenced"
fn spec.storage.ephemeral.volumeClaimTemplate.spec.dataSourceRef.withName
withName(name)
"Name is the name of resource being referenced"
obj spec.storage.ephemeral.volumeClaimTemplate.spec.resources
"Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources"
fn spec.storage.ephemeral.volumeClaimTemplate.spec.resources.withLimits
withLimits(limits)
"Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
fn spec.storage.ephemeral.volumeClaimTemplate.spec.resources.withLimitsMixin
withLimitsMixin(limits)
"Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
Note: This function appends passed data to existing values
fn spec.storage.ephemeral.volumeClaimTemplate.spec.resources.withRequests
withRequests(requests)
"Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
fn spec.storage.ephemeral.volumeClaimTemplate.spec.resources.withRequestsMixin
withRequestsMixin(requests)
"Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
Note: This function appends passed data to existing values
obj spec.storage.ephemeral.volumeClaimTemplate.spec.selector
"A label query over volumes to consider for binding."
fn spec.storage.ephemeral.volumeClaimTemplate.spec.selector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.storage.ephemeral.volumeClaimTemplate.spec.selector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.storage.ephemeral.volumeClaimTemplate.spec.selector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.storage.ephemeral.volumeClaimTemplate.spec.selector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.storage.volumeClaimTemplate
"A PVC spec to be used by the Prometheus StatefulSets."
fn spec.storage.volumeClaimTemplate.withApiVersion
withApiVersion(apiVersion)
"APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
fn spec.storage.volumeClaimTemplate.withKind
withKind(kind)
"Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
obj spec.storage.volumeClaimTemplate.metadata
"EmbeddedMetadata contains metadata relevant to an EmbeddedResource."
fn spec.storage.volumeClaimTemplate.metadata.withAnnotations
withAnnotations(annotations)
"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"
fn spec.storage.volumeClaimTemplate.metadata.withAnnotationsMixin
withAnnotationsMixin(annotations)
"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"
Note: This function appends passed data to existing values
fn spec.storage.volumeClaimTemplate.metadata.withLabels
withLabels(labels)
"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"
fn spec.storage.volumeClaimTemplate.metadata.withLabelsMixin
withLabelsMixin(labels)
"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"
Note: This function appends passed data to existing values
fn spec.storage.volumeClaimTemplate.metadata.withName
withName(name)
"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"
obj spec.storage.volumeClaimTemplate.spec
"Spec defines the desired characteristics of a volume requested by a pod author. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims"
fn spec.storage.volumeClaimTemplate.spec.withAccessModes
withAccessModes(accessModes)
"AccessModes contains the desired access modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1"
fn spec.storage.volumeClaimTemplate.spec.withAccessModesMixin
withAccessModesMixin(accessModes)
"AccessModes contains the desired access modes the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1"
Note: This function appends passed data to existing values
fn spec.storage.volumeClaimTemplate.spec.withStorageClassName
withStorageClassName(storageClassName)
"Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1"
fn spec.storage.volumeClaimTemplate.spec.withVolumeMode
withVolumeMode(volumeMode)
"volumeMode defines what type of volume is required by the claim. Value of Filesystem is implied when not included in claim spec."
fn spec.storage.volumeClaimTemplate.spec.withVolumeName
withVolumeName(volumeName)
"VolumeName is the binding reference to the PersistentVolume backing this claim."
obj spec.storage.volumeClaimTemplate.spec.dataSource
"This field can be used to specify either: * An existing VolumeSnapshot object (snapshot.storage.k8s.io/VolumeSnapshot) * An existing PVC (PersistentVolumeClaim) If the provisioner or an external controller can support the specified data source, it will create a new volume based on the contents of the specified data source. If the AnyVolumeDataSource feature gate is enabled, this field will always have the same contents as the DataSourceRef field."
fn spec.storage.volumeClaimTemplate.spec.dataSource.withApiGroup
withApiGroup(apiGroup)
"APIGroup is the group for the resource being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. For any other third-party types, APIGroup is required."
fn spec.storage.volumeClaimTemplate.spec.dataSource.withKind
withKind(kind)
"Kind is the type of resource being referenced"
fn spec.storage.volumeClaimTemplate.spec.dataSource.withName
withName(name)
"Name is the name of resource being referenced"
obj spec.storage.volumeClaimTemplate.spec.dataSourceRef
"Specifies the object from which to populate the volume with data, if a non-empty volume is desired. This may be any local object from a non-empty API group (non core object) or a PersistentVolumeClaim object. When this field is specified, volume binding will only succeed if the type of the specified object matches some installed volume populator or dynamic provisioner. This field will replace the functionality of the DataSource field and as such if both fields are non-empty, they must have the same value. For backwards compatibility, both fields (DataSource and DataSourceRef) will be set to the same value automatically if one of them is empty and the other is non-empty. There are two important differences between DataSource and DataSourceRef: * While DataSource only allows two specific types of objects, DataSourceRef allows any non-core object, as well as PersistentVolumeClaim objects. * While DataSource ignores disallowed values (dropping them), DataSourceRef preserves all values, and generates an error if a disallowed value is specified. (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled."
fn spec.storage.volumeClaimTemplate.spec.dataSourceRef.withApiGroup
withApiGroup(apiGroup)
"APIGroup is the group for the resource being referenced. If APIGroup is not specified, the specified Kind must be in the core API group. For any other third-party types, APIGroup is required."
fn spec.storage.volumeClaimTemplate.spec.dataSourceRef.withKind
withKind(kind)
"Kind is the type of resource being referenced"
fn spec.storage.volumeClaimTemplate.spec.dataSourceRef.withName
withName(name)
"Name is the name of resource being referenced"
obj spec.storage.volumeClaimTemplate.spec.resources
"Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature is enabled users are allowed to specify resource requirements that are lower than previous value but must still be higher than capacity recorded in the status field of the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources"
fn spec.storage.volumeClaimTemplate.spec.resources.withLimits
withLimits(limits)
"Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
fn spec.storage.volumeClaimTemplate.spec.resources.withLimitsMixin
withLimitsMixin(limits)
"Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
Note: This function appends passed data to existing values
fn spec.storage.volumeClaimTemplate.spec.resources.withRequests
withRequests(requests)
"Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
fn spec.storage.volumeClaimTemplate.spec.resources.withRequestsMixin
withRequestsMixin(requests)
"Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
Note: This function appends passed data to existing values
obj spec.storage.volumeClaimTemplate.spec.selector
"A label query over volumes to consider for binding."
fn spec.storage.volumeClaimTemplate.spec.selector.withMatchExpressions
withMatchExpressions(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
fn spec.storage.volumeClaimTemplate.spec.selector.withMatchExpressionsMixin
withMatchExpressionsMixin(matchExpressions)
"matchExpressions is a list of label selector requirements. The requirements are ANDed."
Note: This function appends passed data to existing values
fn spec.storage.volumeClaimTemplate.spec.selector.withMatchLabels
withMatchLabels(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
fn spec.storage.volumeClaimTemplate.spec.selector.withMatchLabelsMixin
withMatchLabelsMixin(matchLabels)
"matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed."
Note: This function appends passed data to existing values
obj spec.thanos
"Thanos configuration allows configuring various aspects of a Prometheus server in a Thanos environment. \n This section is experimental, it may change significantly without deprecation notice in any release. \n This is experimental and may change significantly without backward compatibility in any release."
fn spec.thanos.withBaseImage
withBaseImage(baseImage)
"Thanos base image if other than default. Deprecated: use 'image' instead"
fn spec.thanos.withImage
withImage(image)
"Image if specified has precedence over baseImage, tag and sha combinations. Specifying the version is still necessary to ensure the Prometheus Operator knows what version of Thanos is being configured."
fn spec.thanos.withListenLocal
withListenLocal(listenLocal)
"ListenLocal makes the Thanos sidecar listen on loopback, so that it does not bind against the Pod IP."
fn spec.thanos.withLogFormat
withLogFormat(logFormat)
"LogFormat for Thanos sidecar to be configured with."
fn spec.thanos.withLogLevel
withLogLevel(logLevel)
"LogLevel for Thanos sidecar to be configured with."
fn spec.thanos.withMinTime
withMinTime(minTime)
"MinTime for Thanos sidecar to be configured with. Option can be a constant time in RFC3339 format or time duration relative to current time, such as -1d or 2h45m. Valid duration units are ms, s, m, h, d, w, y."
fn spec.thanos.withObjectStorageConfigFile
withObjectStorageConfigFile(objectStorageConfigFile)
"ObjectStorageConfigFile specifies the path of the object storage configuration file. When used alongside with ObjectStorageConfig, ObjectStorageConfigFile takes precedence."
fn spec.thanos.withReadyTimeout
withReadyTimeout(readyTimeout)
"ReadyTimeout is the maximum time Thanos sidecar will wait for Prometheus to start. Eg 10m"
fn spec.thanos.withSha
withSha(sha)
"SHA of Thanos container image to be deployed. Defaults to the value of version
. Similar to a tag, but the SHA explicitly deploys an immutable container image. Version and Tag are ignored if SHA is set. Deprecated: use 'image' instead. The image digest can be specified as part of the image URL."
fn spec.thanos.withTag
withTag(tag)
"Tag of Thanos sidecar container image to be deployed. Defaults to the value of version
. Version is ignored if Tag is set. Deprecated: use 'image' instead. The image tag can be specified as part of the image URL."
fn spec.thanos.withTracingConfigFile
withTracingConfigFile(tracingConfigFile)
"TracingConfig specifies the path of the tracing configuration file. When used alongside with TracingConfig, TracingConfigFile takes precedence."
fn spec.thanos.withVersion
withVersion(version)
"Version describes the version of Thanos to use."
fn spec.thanos.withVolumeMounts
withVolumeMounts(volumeMounts)
"VolumeMounts allows configuration of additional VolumeMounts on the output StatefulSet definition. VolumeMounts specified will be appended to other VolumeMounts in the thanos-sidecar container."
fn spec.thanos.withVolumeMountsMixin
withVolumeMountsMixin(volumeMounts)
"VolumeMounts allows configuration of additional VolumeMounts on the output StatefulSet definition. VolumeMounts specified will be appended to other VolumeMounts in the thanos-sidecar container."
Note: This function appends passed data to existing values
obj spec.thanos.grpcServerTlsConfig
"GRPCServerTLSConfig configures the gRPC server from which Thanos Querier reads recorded rule data. Note: Currently only the CAFile, CertFile, and KeyFile fields are supported. Maps to the '--grpc-server-tls-*' CLI args."
fn spec.thanos.grpcServerTlsConfig.withCaFile
withCaFile(caFile)
"Path to the CA cert in the Prometheus container to use for the targets."
fn spec.thanos.grpcServerTlsConfig.withCertFile
withCertFile(certFile)
"Path to the client cert file in the Prometheus container for the targets."
fn spec.thanos.grpcServerTlsConfig.withInsecureSkipVerify
withInsecureSkipVerify(insecureSkipVerify)
"Disable target certificate validation."
fn spec.thanos.grpcServerTlsConfig.withKeyFile
withKeyFile(keyFile)
"Path to the client key file in the Prometheus container for the targets."
fn spec.thanos.grpcServerTlsConfig.withServerName
withServerName(serverName)
"Used to verify the hostname for the targets."
obj spec.thanos.grpcServerTlsConfig.ca
"Struct containing the CA cert to use for the targets."
obj spec.thanos.grpcServerTlsConfig.ca.configMap
"ConfigMap containing data to use for the targets."
fn spec.thanos.grpcServerTlsConfig.ca.configMap.withKey
withKey(key)
"The key to select."
fn spec.thanos.grpcServerTlsConfig.ca.configMap.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.thanos.grpcServerTlsConfig.ca.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.thanos.grpcServerTlsConfig.ca.secret
"Secret containing data to use for the targets."
fn spec.thanos.grpcServerTlsConfig.ca.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.thanos.grpcServerTlsConfig.ca.secret.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.thanos.grpcServerTlsConfig.ca.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.thanos.grpcServerTlsConfig.cert
"Struct containing the client cert file for the targets."
obj spec.thanos.grpcServerTlsConfig.cert.configMap
"ConfigMap containing data to use for the targets."
fn spec.thanos.grpcServerTlsConfig.cert.configMap.withKey
withKey(key)
"The key to select."
fn spec.thanos.grpcServerTlsConfig.cert.configMap.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.thanos.grpcServerTlsConfig.cert.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.thanos.grpcServerTlsConfig.cert.secret
"Secret containing data to use for the targets."
fn spec.thanos.grpcServerTlsConfig.cert.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.thanos.grpcServerTlsConfig.cert.secret.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.thanos.grpcServerTlsConfig.cert.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.thanos.grpcServerTlsConfig.keySecret
"Secret containing the client key file for the targets."
fn spec.thanos.grpcServerTlsConfig.keySecret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.thanos.grpcServerTlsConfig.keySecret.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.thanos.grpcServerTlsConfig.keySecret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.thanos.objectStorageConfig
"ObjectStorageConfig configures object storage in Thanos. Alternative to ObjectStorageConfigFile, and lower order priority."
fn spec.thanos.objectStorageConfig.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.thanos.objectStorageConfig.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.thanos.objectStorageConfig.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.thanos.resources
"Resources defines the resource requirements for the Thanos sidecar. If not provided, no requests/limits will be set"
fn spec.thanos.resources.withLimits
withLimits(limits)
"Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
fn spec.thanos.resources.withLimitsMixin
withLimitsMixin(limits)
"Limits describes the maximum amount of compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
Note: This function appends passed data to existing values
fn spec.thanos.resources.withRequests
withRequests(requests)
"Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
fn spec.thanos.resources.withRequestsMixin
withRequestsMixin(requests)
"Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/"
Note: This function appends passed data to existing values
obj spec.thanos.tracingConfig
"TracingConfig configures tracing in Thanos. This is an experimental feature, it may change in any upcoming release in a breaking way."
fn spec.thanos.tracingConfig.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.thanos.tracingConfig.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.thanos.tracingConfig.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.web
"WebSpec defines the web command line flags when starting Prometheus."
fn spec.web.withPageTitle
withPageTitle(pageTitle)
"The prometheus web page title"
obj spec.web.tlsConfig
"WebTLSConfig defines the TLS parameters for HTTPS."
fn spec.web.tlsConfig.withCipherSuites
withCipherSuites(cipherSuites)
"List of supported cipher suites for TLS versions up to TLS 1.2. If empty, Go default cipher suites are used. Available cipher suites are documented in the go documentation: https://golang.org/pkg/crypto/tls/#pkg-constants"
fn spec.web.tlsConfig.withCipherSuitesMixin
withCipherSuitesMixin(cipherSuites)
"List of supported cipher suites for TLS versions up to TLS 1.2. If empty, Go default cipher suites are used. Available cipher suites are documented in the go documentation: https://golang.org/pkg/crypto/tls/#pkg-constants"
Note: This function appends passed data to existing values
fn spec.web.tlsConfig.withClientAuthType
withClientAuthType(clientAuthType)
"Server policy for client authentication. Maps to ClientAuth Policies. For more detail on clientAuth options: https://golang.org/pkg/crypto/tls/#ClientAuthType"
fn spec.web.tlsConfig.withCurvePreferences
withCurvePreferences(curvePreferences)
"Elliptic curves that will be used in an ECDHE handshake, in preference order. Available curves are documented in the go documentation: https://golang.org/pkg/crypto/tls/#CurveID"
fn spec.web.tlsConfig.withCurvePreferencesMixin
withCurvePreferencesMixin(curvePreferences)
"Elliptic curves that will be used in an ECDHE handshake, in preference order. Available curves are documented in the go documentation: https://golang.org/pkg/crypto/tls/#CurveID"
Note: This function appends passed data to existing values
fn spec.web.tlsConfig.withMaxVersion
withMaxVersion(maxVersion)
"Maximum TLS version that is acceptable. Defaults to TLS13."
fn spec.web.tlsConfig.withMinVersion
withMinVersion(minVersion)
"Minimum TLS version that is acceptable. Defaults to TLS12."
fn spec.web.tlsConfig.withPreferServerCipherSuites
withPreferServerCipherSuites(preferServerCipherSuites)
"Controls whether the server selects the client's most preferred cipher suite, or the server's most preferred cipher suite. If true then the server's preference, as expressed in the order of elements in cipherSuites, is used."
obj spec.web.tlsConfig.cert
"Contains the TLS certificate for the server."
obj spec.web.tlsConfig.cert.configMap
"ConfigMap containing data to use for the targets."
fn spec.web.tlsConfig.cert.configMap.withKey
withKey(key)
"The key to select."
fn spec.web.tlsConfig.cert.configMap.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.web.tlsConfig.cert.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.web.tlsConfig.cert.secret
"Secret containing data to use for the targets."
fn spec.web.tlsConfig.cert.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.web.tlsConfig.cert.secret.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.web.tlsConfig.cert.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.web.tlsConfig.client_ca
"Contains the CA certificate for client certificate authentication to the server."
obj spec.web.tlsConfig.client_ca.configMap
"ConfigMap containing data to use for the targets."
fn spec.web.tlsConfig.client_ca.configMap.withKey
withKey(key)
"The key to select."
fn spec.web.tlsConfig.client_ca.configMap.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.web.tlsConfig.client_ca.configMap.withOptional
withOptional(optional)
"Specify whether the ConfigMap or its key must be defined"
obj spec.web.tlsConfig.client_ca.secret
"Secret containing data to use for the targets."
fn spec.web.tlsConfig.client_ca.secret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.web.tlsConfig.client_ca.secret.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.web.tlsConfig.client_ca.secret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"
obj spec.web.tlsConfig.keySecret
"Secret containing the TLS key for the server."
fn spec.web.tlsConfig.keySecret.withKey
withKey(key)
"The key of the secret to select from. Must be a valid secret key."
fn spec.web.tlsConfig.keySecret.withName
withName(name)
"Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names TODO: Add other useful fields. apiVersion, kind, uid?"
fn spec.web.tlsConfig.keySecret.withOptional
withOptional(optional)
"Specify whether the Secret or its key must be defined"