diff --git a/.mdox.validate.yaml b/.mdox.validate.yaml index af11491d0..d33fb7bba 100644 --- a/.mdox.validate.yaml +++ b/.mdox.validate.yaml @@ -25,3 +25,6 @@ validators: # Ignore links to /img/ because the generated content will resolve them correctly. - regex: '/img/.+' type: ignore + # Ignore anchor links pointing to the API documentation which are HTML <a> tags and not supported by mdox. + - regex: 'api\.md#monitoring\.coreos\.com/v1\.(BasicAuth|PrometheusSpec|StorageSpec)$' + type: ignore diff --git a/Documentation/additional-scrape-config.md b/Documentation/additional-scrape-config.md index 52f6c92a3..0fefde809 100644 --- a/Documentation/additional-scrape-config.md +++ b/Documentation/additional-scrape-config.md @@ -61,5 +61,5 @@ NOTE: Use only one secret for ALL additional scrape configurations. ## Additional References -* [Prometheus Spec](api.md#prometheusspec) +* [Prometheus Spec](api.md#monitoring.coreos.com/v1.PrometheusSpec) * [Additional Scrape Configs](../example/additional-scrape-configs) diff --git a/Documentation/api.md b/Documentation/api.md index 71eb06893..6df33a45a 100644 --- a/Documentation/api.md +++ b/Documentation/api.md @@ -1,1961 +1,18306 @@ --- -title: "API" -description: "Generated API docs for the Prometheus Operator" -lead: "" -date: 2021-03-08T08:49:31+00:00 +title: "API reference" +description: "Prometheus operator generated API reference docs" draft: false images: [] menu: - docs: - parent: "operator" +docs: +parent: "operator" weight: 1000 toc: true --- - -This Document documents the types introduced by the Prometheus Operator to be consumed by users. - -> Note this document is generated from code comments. When contributing a change to this document please do so by changing the code comments. - -## Table of Contents -* [APIServerConfig](#apiserverconfig) -* [AlertingSpec](#alertingspec) -* [Alertmanager](#alertmanager) -* [AlertmanagerConfiguration](#alertmanagerconfiguration) -* [AlertmanagerEndpoints](#alertmanagerendpoints) -* [AlertmanagerList](#alertmanagerlist) -* [AlertmanagerSpec](#alertmanagerspec) -* [AlertmanagerStatus](#alertmanagerstatus) -* [AlertmanagerWebSpec](#alertmanagerwebspec) -* [ArbitraryFSAccessThroughSMsConfig](#arbitraryfsaccessthroughsmsconfig) -* [AttachMetadata](#attachmetadata) -* [Authorization](#authorization) -* [BasicAuth](#basicauth) -* [EmbeddedObjectMetadata](#embeddedobjectmetadata) -* [EmbeddedPersistentVolumeClaim](#embeddedpersistentvolumeclaim) -* [Endpoint](#endpoint) -* [Exemplars](#exemplars) -* [HostAlias](#hostalias) -* [MetadataConfig](#metadataconfig) -* [NamespaceSelector](#namespaceselector) -* [OAuth2](#oauth2) -* [ObjectReference](#objectreference) -* [PodMetricsEndpoint](#podmetricsendpoint) -* [PodMetricsEndpointTLSConfig](#podmetricsendpointtlsconfig) -* [PodMonitor](#podmonitor) -* [PodMonitorList](#podmonitorlist) -* [PodMonitorSpec](#podmonitorspec) -* [Probe](#probe) -* [ProbeList](#probelist) -* [ProbeSpec](#probespec) -* [ProbeTLSConfig](#probetlsconfig) -* [ProbeTargetIngress](#probetargetingress) -* [ProbeTargetStaticConfig](#probetargetstaticconfig) -* [ProbeTargets](#probetargets) -* [ProberSpec](#proberspec) -* [Prometheus](#prometheus) -* [PrometheusCondition](#prometheuscondition) -* [PrometheusList](#prometheuslist) -* [PrometheusRule](#prometheusrule) -* [PrometheusRuleExcludeConfig](#prometheusruleexcludeconfig) -* [PrometheusRuleList](#prometheusrulelist) -* [PrometheusRuleSpec](#prometheusrulespec) -* [PrometheusSpec](#prometheusspec) -* [PrometheusStatus](#prometheusstatus) -* [PrometheusWebSpec](#prometheuswebspec) -* [QuerySpec](#queryspec) -* [QueueConfig](#queueconfig) -* [RelabelConfig](#relabelconfig) -* [RemoteReadSpec](#remotereadspec) -* [RemoteWriteSpec](#remotewritespec) -* [Rule](#rule) -* [RuleGroup](#rulegroup) -* [Rules](#rules) -* [RulesAlert](#rulesalert) -* [SafeAuthorization](#safeauthorization) -* [SecretOrConfigMap](#secretorconfigmap) -* [ServiceMonitor](#servicemonitor) -* [ServiceMonitorList](#servicemonitorlist) -* [ServiceMonitorSpec](#servicemonitorspec) -* [ShardStatus](#shardstatus) -* [Sigv4](#sigv4) -* [StorageSpec](#storagespec) -* [TLSConfig](#tlsconfig) -* [ThanosSpec](#thanosspec) -* [WebTLSConfig](#webtlsconfig) -* [ThanosRuler](#thanosruler) -* [ThanosRulerList](#thanosrulerlist) -* [ThanosRulerSpec](#thanosrulerspec) -* [ThanosRulerStatus](#thanosrulerstatus) -* [AlertmanagerConfig](#alertmanagerconfig) -* [AlertmanagerConfigList](#alertmanagerconfiglist) -* [AlertmanagerConfigSpec](#alertmanagerconfigspec) -* [DayOfMonthRange](#dayofmonthrange) -* [EmailConfig](#emailconfig) -* [HTTPConfig](#httpconfig) -* [InhibitRule](#inhibitrule) -* [KeyValue](#keyvalue) -* [Matcher](#matcher) -* [MuteTimeInterval](#mutetimeinterval) -* [OpsGenieConfig](#opsgenieconfig) -* [OpsGenieConfigResponder](#opsgenieconfigresponder) -* [PagerDutyConfig](#pagerdutyconfig) -* [PagerDutyImageConfig](#pagerdutyimageconfig) -* [PagerDutyLinkConfig](#pagerdutylinkconfig) -* [PushoverConfig](#pushoverconfig) -* [Receiver](#receiver) -* [Route](#route) -* [SNSConfig](#snsconfig) -* [SlackAction](#slackaction) -* [SlackConfig](#slackconfig) -* [SlackConfirmationField](#slackconfirmationfield) -* [SlackField](#slackfield) -* [TelegramConfig](#telegramconfig) -* [TimeInterval](#timeinterval) -* [TimeRange](#timerange) -* [VictorOpsConfig](#victoropsconfig) -* [WeChatConfig](#wechatconfig) -* [WebhookConfig](#webhookconfig) - -## APIServerConfig - -APIServerConfig defines a host and auth methods to access apiserver. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| host | Host of apiserver. A valid string consisting of a hostname or IP followed by an optional port number | string | true | -| basicAuth | BasicAuth allow an endpoint to authenticate over basic authentication | *[BasicAuth](#basicauth) | false | -| bearerToken | Bearer token for accessing apiserver. | string | false | -| bearerTokenFile | File to read bearer token for accessing apiserver. | string | false | -| tlsConfig | TLS Config to use for accessing apiserver. | *[TLSConfig](#tlsconfig) | false | -| authorization | Authorization section for accessing apiserver | *[Authorization](#authorization) | false | - -[Back to TOC](#table-of-contents) - -## AlertingSpec - -AlertingSpec defines parameters for alerting configuration of Prometheus servers. - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| alertmanagers | AlertmanagerEndpoints Prometheus should fire alerts against. | [][AlertmanagerEndpoints](#alertmanagerendpoints) | true | - -[Back to TOC](#table-of-contents) - -## Alertmanager - -Alertmanager describes an Alertmanager cluster. - - -<em>appears in: [AlertmanagerList](#alertmanagerlist)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | | [metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#objectmeta-v1-meta) | false | -| spec | Specification of the desired behavior of the Alertmanager cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status | [AlertmanagerSpec](#alertmanagerspec) | true | -| status | Most recent observed status of the Alertmanager cluster. Read-only. Not included when requesting from the apiserver, only from the Prometheus Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status | *[AlertmanagerStatus](#alertmanagerstatus) | false | - -[Back to TOC](#table-of-contents) - -## AlertmanagerConfiguration - -AlertmanagerConfiguration defines the global Alertmanager configuration. - - -<em>appears in: [AlertmanagerSpec](#alertmanagerspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| name | The name of the AlertmanagerConfig resource which is used to generate the global configuration. It must be defined in the same namespace as the Alertmanager object. The operator will not enforce a `namespace` label for routes and inhibition rules. | string | false | - -[Back to TOC](#table-of-contents) - -## AlertmanagerEndpoints - -AlertmanagerEndpoints defines a selection of a single Endpoints object containing alertmanager IPs to fire alerts against. - - -<em>appears in: [AlertingSpec](#alertingspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| namespace | Namespace of Endpoints object. | string | true | -| name | Name of Endpoints object in Namespace. | string | true | -| port | Port the Alertmanager API is exposed on. | intstr.IntOrString | true | -| scheme | Scheme to use when firing alerts. | string | false | -| pathPrefix | Prefix for the HTTP path alerts are pushed to. | string | false | -| tlsConfig | TLS Config to use for alertmanager connection. | *[TLSConfig](#tlsconfig) | false | -| bearerTokenFile | BearerTokenFile to read from filesystem to use when authenticating to Alertmanager. | string | false | -| authorization | Authorization section for this alertmanager endpoint | *[SafeAuthorization](#safeauthorization) | false | -| apiVersion | Version of the Alertmanager API that Prometheus uses to send alerts. It can be \"v1\" or \"v2\". | string | false | -| timeout | Timeout is a per-target Alertmanager timeout when pushing alerts. | *Duration | false | - -[Back to TOC](#table-of-contents) - -## AlertmanagerList - -AlertmanagerList is a list of Alertmanagers. - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata | [metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#listmeta-v1-meta) | false | -| items | List of Alertmanagers | [][Alertmanager](#alertmanager) | true | - -[Back to TOC](#table-of-contents) - -## AlertmanagerSpec - -AlertmanagerSpec is a specification of the desired behavior of the Alertmanager cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status - - -<em>appears in: [Alertmanager](#alertmanager)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| podMetadata | PodMetadata configures Labels and Annotations which are propagated to the alertmanager pods. | *[EmbeddedObjectMetadata](#embeddedobjectmetadata) | false | -| 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 Alertmanager is being configured. | *string | false | -| version | Version the cluster should be on. | string | false | -| tag | Tag of Alertmanager 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. | string | false | -| sha | SHA of Alertmanager 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. | string | false | -| baseImage | Base image that is used to deploy pods, without tag. Deprecated: use 'image' instead | string | false | -| 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 | [][v1.LocalObjectReference](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#localobjectreference-v1-core) | false | -| secrets | Secrets is a list of Secrets in the same namespace as the Alertmanager object, which shall be mounted into the Alertmanager Pods. The Secrets are mounted into /etc/alertmanager/secrets/<secret-name>. | []string | false | -| configMaps | ConfigMaps is a list of ConfigMaps in the same namespace as the Alertmanager object, which shall be mounted into the Alertmanager Pods. The ConfigMaps are mounted into /etc/alertmanager/configmaps/<configmap-name>. | []string | false | -| configSecret | ConfigSecret is the name of a Kubernetes Secret in the same namespace as the Alertmanager object, which contains the configuration for this Alertmanager instance. If empty, it defaults to 'alertmanager-<alertmanager-name>'.\n\nThe Alertmanager configuration should be available under the `alertmanager.yaml` key. Additional keys from the original secret are copied to the generated secret.\n\nIf either the secret or the `alertmanager.yaml` key is missing, the operator provisions an Alertmanager configuration with one empty receiver (effectively dropping alert notifications). | string | false | -| logLevel | Log level for Alertmanager to be configured with. | string | false | -| logFormat | Log format for Alertmanager to be configured with. | string | false | -| replicas | Size is the expected size of the alertmanager cluster. The controller will eventually make the size of the running cluster equal to the expected size. | *int32 | false | -| retention | Time duration Alertmanager shall retain data for. Default is '120h', and must match the regular expression `[0-9]+(ms\|s\|m\|h)` (milliseconds seconds minutes hours). | GoDuration | false | -| storage | Storage is the definition of how storage will be used by the Alertmanager instances. | *[StorageSpec](#storagespec) | false | -| 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. | []v1.Volume | false | -| volumeMounts | VolumeMounts allows configuration of additional VolumeMounts on the output StatefulSet definition. VolumeMounts specified will be appended to other VolumeMounts in the alertmanager container, that are generated as a result of StorageSpec objects. | []v1.VolumeMount | false | -| externalUrl | The external URL the Alertmanager instances will be available under. This is necessary to generate correct URLs. This is necessary if Alertmanager is not served from root of a DNS name. | string | false | -| routePrefix | The route prefix Alertmanager 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`. | string | false | -| paused | If set to true all actions on the underlying managed objects are not goint to be performed, except for delete actions. | bool | false | -| nodeSelector | Define which Nodes the Pods are scheduled on. | map[string]string | false | -| resources | Define resources requests and limits for single Pods. | [v1.ResourceRequirements](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core) | false | -| affinity | If specified, the pod's scheduling constraints. | *v1.Affinity | false | -| tolerations | If specified, the pod's tolerations. | []v1.Toleration | false | -| topologySpreadConstraints | If specified, the pod's topology spread constraints. | []v1.TopologySpreadConstraint | false | -| securityContext | SecurityContext holds pod-level security attributes and common container settings. This defaults to the default PodSecurityContext. | *v1.PodSecurityContext | false | -| serviceAccountName | ServiceAccountName is the name of the ServiceAccount to use to run the Prometheus Pods. | string | false | -| listenLocal | ListenLocal makes the Alertmanager server listen on loopback, so that it does not bind against the Pod IP. Note this is only for the Alertmanager UI, not the gossip communication. | bool | false | -| containers | Containers allows injecting additional containers. This is meant to allow adding an authentication proxy to an Alertmanager pod. 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: `alertmanager` and `config-reloader`. 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. | []v1.Container | false | -| initContainers | InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. fetch secrets for injection into the Alertmanager 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/ Using initContainers for any use case other then secret fetching 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. | []v1.Container | false | -| priorityClassName | Priority class assigned to the Pods | string | false | -| additionalPeers | AdditionalPeers allows injecting a set of additional Alertmanagers to peer with to form a highly available cluster. | []string | false | -| clusterAdvertiseAddress | ClusterAdvertiseAddress is the explicit address to advertise in cluster. Needs to be provided for non RFC1918 [1] (public) addresses. [1] RFC1918: https://tools.ietf.org/html/rfc1918 | string | false | -| clusterGossipInterval | Interval between gossip attempts. | GoDuration | false | -| clusterPushpullInterval | Interval between pushpull attempts. | GoDuration | false | -| clusterPeerTimeout | Timeout for cluster peering. | GoDuration | false | -| portName | Port name used for the pods and governing service. This defaults to web | string | false | -| forceEnableClusterMode | ForceEnableClusterMode ensures Alertmanager does not deactivate the cluster mode when running with a single replica. Use case is e.g. spanning an Alertmanager cluster across Kubernetes clusters with a single replica in each. | bool | false | -| alertmanagerConfigSelector | AlertmanagerConfigs to be selected for to merge and configure Alertmanager with. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| alertmanagerConfigNamespaceSelector | Namespaces to be selected for AlertmanagerConfig discovery. If nil, only check own namespace. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| 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. | *uint32 | false | -| hostAliases | Pods' hostAliases configuration | [][HostAlias](#hostalias) | false | -| web | Defines the web command line flags when starting Alertmanager. | *[AlertmanagerWebSpec](#alertmanagerwebspec) | false | -| alertmanagerConfiguration | EXPERIMENTAL: alertmanagerConfiguration specifies the global Alertmanager configuration. If defined, it takes precedence over the `configSecret` field. This field may change in future releases. | *[AlertmanagerConfiguration](#alertmanagerconfiguration) | false | - -[Back to TOC](#table-of-contents) - -## AlertmanagerStatus - -AlertmanagerStatus is the most recent observed status of the Alertmanager cluster. Read-only. Not included when requesting from the apiserver, only from the Prometheus Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status - - -<em>appears in: [Alertmanager](#alertmanager)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| paused | Represents whether any actions on the underlying managed objects are being performed. Only delete actions will be performed. | bool | true | -| replicas | Total number of non-terminated pods targeted by this Alertmanager cluster (their labels match the selector). | int32 | true | -| updatedReplicas | Total number of non-terminated pods targeted by this Alertmanager cluster that have the desired version spec. | int32 | true | -| availableReplicas | Total number of available pods (ready for at least minReadySeconds) targeted by this Alertmanager cluster. | int32 | true | -| unavailableReplicas | Total number of unavailable pods targeted by this Alertmanager cluster. | int32 | true | - -[Back to TOC](#table-of-contents) - -## AlertmanagerWebSpec - -AlertmanagerWebSpec defines the query command line flags when starting Alertmanager. - - -<em>appears in: [AlertmanagerSpec](#alertmanagerspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| tlsConfig | | *[WebTLSConfig](#webtlsconfig) | false | - -[Back to TOC](#table-of-contents) - -## ArbitraryFSAccessThroughSMsConfig - -ArbitraryFSAccessThroughSMsConfig enables users to configure, whether a service monitor selected by the Prometheus instance is allowed to use arbitrary files on the file system of the Prometheus container. This is the case when e.g. a service monitor specifies a BearerTokenFile in an endpoint. A malicious user could create a service monitor selecting arbitrary secret files in the Prometheus container. Those secrets would then be sent with a scrape request by Prometheus to a malicious target. Denying the above would prevent the attack, users can instead use the BearerTokenSecret field. - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| deny | | bool | false | - -[Back to TOC](#table-of-contents) - -## AttachMetadata - - - - -<em>appears in: [PodMonitorSpec](#podmonitorspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| node | When set to true, Prometheus must have permissions to get Nodes. | bool | false | - -[Back to TOC](#table-of-contents) - -## Authorization - -Authorization contains optional `Authorization` header configuration. This section is only understood by versions of Prometheus >= 2.26.0. - - -<em>appears in: [APIServerConfig](#apiserverconfig), [RemoteReadSpec](#remotereadspec), [RemoteWriteSpec](#remotewritespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| type | Set the authentication type. Defaults to Bearer, Basic will cause an error | string | false | -| credentials | The secret's key that contains the credentials of the request | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| credentialsFile | File to read a secret from, mutually exclusive with Credentials (from SafeAuthorization) | string | false | - -[Back to TOC](#table-of-contents) - -## BasicAuth - -BasicAuth allow an endpoint to authenticate over basic authentication More info: https://prometheus.io/docs/operating/configuration/#endpoints - - -<em>appears in: [APIServerConfig](#apiserverconfig), [Endpoint](#endpoint), [PodMetricsEndpoint](#podmetricsendpoint), [ProbeSpec](#probespec), [RemoteReadSpec](#remotereadspec), [RemoteWriteSpec](#remotewritespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| username | The secret in the service monitor namespace that contains the username for authentication. | [v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| password | The secret in the service monitor namespace that contains the password for authentication. | [v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | - -[Back to TOC](#table-of-contents) - -## EmbeddedObjectMetadata - -EmbeddedObjectMetadata contains a subset of the fields included in k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta Only fields which are relevant to embedded resources are included. - - -<em>appears in: [AlertmanagerSpec](#alertmanagerspec), [EmbeddedPersistentVolumeClaim](#embeddedpersistentvolumeclaim), [PrometheusSpec](#prometheusspec), [ThanosRulerSpec](#thanosrulerspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| 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 | string | false | -| 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 | map[string]string | false | -| 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 | map[string]string | false | - -[Back to TOC](#table-of-contents) - -## EmbeddedPersistentVolumeClaim - -EmbeddedPersistentVolumeClaim is an embedded version of k8s.io/api/core/v1.PersistentVolumeClaim. It contains TypeMeta and a reduced ObjectMeta. - - -<em>appears in: [StorageSpec](#storagespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | EmbeddedMetadata contains metadata relevant to an EmbeddedResource. | [EmbeddedObjectMetadata](#embeddedobjectmetadata) | false | -| 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 | v1.PersistentVolumeClaimSpec | false | -| status | Status represents the current information/status of a persistent volume claim. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims | v1.PersistentVolumeClaimStatus | false | - -[Back to TOC](#table-of-contents) - -## Endpoint - -Endpoint defines a scrapeable endpoint serving Prometheus metrics. - - -<em>appears in: [ServiceMonitorSpec](#servicemonitorspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| port | Name of the service port this endpoint refers to. Mutually exclusive with targetPort. | string | false | -| targetPort | Name or number of the target port of the Pod behind the Service, the port must be specified with container port property. Mutually exclusive with port. | *intstr.IntOrString | false | -| path | HTTP path to scrape for metrics. If empty, Prometheus uses the default value (e.g. `/metrics`). | string | false | -| scheme | HTTP scheme to use for scraping. | string | false | -| params | Optional HTTP URL parameters | map[string][]string | false | -| interval | Interval at which metrics should be scraped If not specified Prometheus' global scrape interval is used. | Duration | false | -| scrapeTimeout | Timeout after which the scrape is ended If not specified, the Prometheus global scrape timeout is used unless it is less than `Interval` in which the latter is used. | Duration | false | -| tlsConfig | TLS configuration to use when scraping the endpoint | *[TLSConfig](#tlsconfig) | false | -| bearerTokenFile | File to read bearer token for scraping targets. | string | false | -| bearerTokenSecret | Secret to mount to read bearer token for scraping targets. The secret needs to be in the same namespace as the service monitor and accessible by the Prometheus Operator. | [v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| authorization | Authorization section for this endpoint | *[SafeAuthorization](#safeauthorization) | false | -| honorLabels | HonorLabels chooses the metric's labels on collisions with target labels. | bool | false | -| honorTimestamps | HonorTimestamps controls whether Prometheus respects the timestamps present in scraped data. | *bool | false | -| basicAuth | BasicAuth allow an endpoint to authenticate over basic authentication More info: https://prometheus.io/docs/operating/configuration/#endpoints | *[BasicAuth](#basicauth) | false | -| oauth2 | OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer. | *[OAuth2](#oauth2) | false | -| metricRelabelings | MetricRelabelConfigs to apply to samples before ingestion. | []*[RelabelConfig](#relabelconfig) | false | -| relabelings | RelabelConfigs to apply to samples before scraping. Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields. The original scrape job's name is available via the `__tmp_prometheus_job_name` label. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config | []*[RelabelConfig](#relabelconfig) | false | -| proxyUrl | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | *string | false | -| followRedirects | FollowRedirects configures whether scrape requests follow HTTP 3xx redirects. | *bool | false | -| enableHttp2 | Whether to enable HTTP2. | *bool | false | - -[Back to TOC](#table-of-contents) - -## Exemplars - - - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| maxSize | Maximum number of exemplars stored in memory for all series. If not set, Prometheus uses its default value. A value of zero or less than zero disables the storage. | *int64 | false | - -[Back to TOC](#table-of-contents) - -## HostAlias - -HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the pod's hosts file. - - -<em>appears in: [AlertmanagerSpec](#alertmanagerspec), [PrometheusSpec](#prometheusspec), [ThanosRulerSpec](#thanosrulerspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| ip | IP address of the host file entry. | string | true | -| hostnames | Hostnames for the above IP address. | []string | true | - -[Back to TOC](#table-of-contents) - -## MetadataConfig - -MetadataConfig configures the sending of series metadata to the remote storage. - - -<em>appears in: [RemoteWriteSpec](#remotewritespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| send | Whether metric metadata is sent to the remote storage or not. | bool | false | -| sendInterval | How frequently metric metadata is sent to the remote storage. | Duration | false | - -[Back to TOC](#table-of-contents) - -## NamespaceSelector - -NamespaceSelector is a selector for selecting either all namespaces or a list of namespaces. If `any` is true, it takes precedence over `matchNames`. If `matchNames` is empty and `any` is false, it means that the objects are selected from the current namespace. - - -<em>appears in: [PodMonitorSpec](#podmonitorspec), [ProbeTargetIngress](#probetargetingress), [ServiceMonitorSpec](#servicemonitorspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| any | Boolean describing whether all namespaces are selected in contrast to a list restricting them. | bool | false | -| matchNames | List of namespace names to select from. | []string | false | - -[Back to TOC](#table-of-contents) - -## OAuth2 - -OAuth2 allows an endpoint to authenticate with OAuth2. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#oauth2 - - -<em>appears in: [Endpoint](#endpoint), [PodMetricsEndpoint](#podmetricsendpoint), [ProbeSpec](#probespec), [RemoteReadSpec](#remotereadspec), [RemoteWriteSpec](#remotewritespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| clientId | The secret or configmap containing the OAuth2 client id | [SecretOrConfigMap](#secretorconfigmap) | true | -| clientSecret | The secret containing the OAuth2 client secret | [v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | true | -| tokenUrl | The URL to fetch the token from | string | true | -| scopes | OAuth2 scopes used for the token request | []string | false | -| endpointParams | Parameters to append to the token URL | map[string]string | false | - -[Back to TOC](#table-of-contents) - -## ObjectReference - -ObjectReference references a PodMonitor, ServiceMonitor, Probe or PrometheusRule object. - - -<em>appears in: [PrometheusSpec](#prometheusspec), [ThanosRulerSpec](#thanosrulerspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| group | Group of the referent. When not specified, it defaults to `monitoring.coreos.com` | string | true | -| resource | Resource of the referent. | string | true | -| namespace | Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ | string | true | -| name | Name of the referent. When not set, all resources are matched. | string | false | - -[Back to TOC](#table-of-contents) - -## PodMetricsEndpoint - -PodMetricsEndpoint defines a scrapeable endpoint of a Kubernetes Pod serving Prometheus metrics. - - -<em>appears in: [PodMonitorSpec](#podmonitorspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| port | Name of the pod port this endpoint refers to. Mutually exclusive with targetPort. | string | false | -| targetPort | Deprecated: Use 'port' instead. | *intstr.IntOrString | false | -| path | HTTP path to scrape for metrics. If empty, Prometheus uses the default value (e.g. `/metrics`). | string | false | -| scheme | HTTP scheme to use for scraping. | string | false | -| params | Optional HTTP URL parameters | map[string][]string | false | -| interval | Interval at which metrics should be scraped If not specified Prometheus' global scrape interval is used. | Duration | false | -| scrapeTimeout | Timeout after which the scrape is ended If not specified, the Prometheus global scrape interval is used. | Duration | false | -| tlsConfig | TLS configuration to use when scraping the endpoint. | *[PodMetricsEndpointTLSConfig](#podmetricsendpointtlsconfig) | false | -| bearerTokenSecret | Secret to mount to read bearer token for scraping targets. The secret needs to be in the same namespace as the pod monitor and accessible by the Prometheus Operator. | [v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| honorLabels | HonorLabels chooses the metric's labels on collisions with target labels. | bool | false | -| honorTimestamps | HonorTimestamps controls whether Prometheus respects the timestamps present in scraped data. | *bool | false | -| basicAuth | BasicAuth allow an endpoint to authenticate over basic authentication. More info: https://prometheus.io/docs/operating/configuration/#endpoint | *[BasicAuth](#basicauth) | false | -| oauth2 | OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer. | *[OAuth2](#oauth2) | false | -| authorization | Authorization section for this endpoint | *[SafeAuthorization](#safeauthorization) | false | -| metricRelabelings | MetricRelabelConfigs to apply to samples before ingestion. | []*[RelabelConfig](#relabelconfig) | false | -| relabelings | RelabelConfigs to apply to samples before scraping. Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields. The original scrape job's name is available via the `__tmp_prometheus_job_name` label. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config | []*[RelabelConfig](#relabelconfig) | false | -| proxyUrl | ProxyURL eg http://proxyserver:2195 Directs scrapes to proxy through this endpoint. | *string | false | -| followRedirects | FollowRedirects configures whether scrape requests follow HTTP 3xx redirects. | *bool | false | -| enableHttp2 | Whether to enable HTTP2. | *bool | false | - -[Back to TOC](#table-of-contents) - -## PodMetricsEndpointTLSConfig - -PodMetricsEndpointTLSConfig specifies TLS configuration parameters. - - -<em>appears in: [PodMetricsEndpoint](#podmetricsendpoint)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| ca | Struct containing the CA cert to use for the targets. | [SecretOrConfigMap](#secretorconfigmap) | false | -| cert | Struct containing the client cert file for the targets. | [SecretOrConfigMap](#secretorconfigmap) | false | -| keySecret | Secret containing the client key file for the targets. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| serverName | Used to verify the hostname for the targets. | string | false | -| insecureSkipVerify | Disable target certificate validation. | bool | false | - -[Back to TOC](#table-of-contents) - -## PodMonitor - -PodMonitor defines monitoring for a set of pods. - - -<em>appears in: [PodMonitorList](#podmonitorlist)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | | [metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#objectmeta-v1-meta) | false | -| spec | Specification of desired Pod selection for target discovery by Prometheus. | [PodMonitorSpec](#podmonitorspec) | true | - -[Back to TOC](#table-of-contents) - -## PodMonitorList - -PodMonitorList is a list of PodMonitors. - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata | [metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#listmeta-v1-meta) | false | -| items | List of PodMonitors | []*[PodMonitor](#podmonitor) | true | - -[Back to TOC](#table-of-contents) - -## PodMonitorSpec - -PodMonitorSpec contains specification parameters for a PodMonitor. - - -<em>appears in: [PodMonitor](#podmonitor)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| jobLabel | The label to use to retrieve the job name from. | string | false | -| podTargetLabels | PodTargetLabels transfers labels on the Kubernetes Pod onto the target. | []string | false | -| podMetricsEndpoints | A list of endpoints allowed as part of this PodMonitor. | [][PodMetricsEndpoint](#podmetricsendpoint) | true | -| selector | Selector to select Pod objects. | [metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | true | -| namespaceSelector | Selector to select which namespaces the Endpoints objects are discovered from. | [NamespaceSelector](#namespaceselector) | false | -| sampleLimit | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | uint64 | false | -| targetLimit | TargetLimit defines a limit on the number of scraped targets that will be accepted. | uint64 | false | -| labelLimit | Per-scrape limit on number of labels that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. | uint64 | false | -| labelNameLengthLimit | Per-scrape limit on length of labels name that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. | uint64 | false | -| labelValueLengthLimit | Per-scrape limit on length of labels value that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. | uint64 | false | -| attachMetadata | Attaches node metadata to discovered targets. Only valid for role: pod. Only valid in Prometheus versions 2.35.0 and newer. | *[AttachMetadata](#attachmetadata) | false | - -[Back to TOC](#table-of-contents) - -## Probe - -Probe defines monitoring for a set of static targets or ingresses. - - -<em>appears in: [ProbeList](#probelist)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | | [metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#objectmeta-v1-meta) | false | -| spec | Specification of desired Ingress selection for target discovery by Prometheus. | [ProbeSpec](#probespec) | true | - -[Back to TOC](#table-of-contents) - -## ProbeList - -ProbeList is a list of Probes. - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata | [metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#listmeta-v1-meta) | false | -| items | List of Probes | []*[Probe](#probe) | true | - -[Back to TOC](#table-of-contents) - -## ProbeSpec - -ProbeSpec contains specification parameters for a Probe. - - -<em>appears in: [Probe](#probe)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| jobName | The job name assigned to scraped metrics by default. | string | false | -| prober | Specification for the prober to use for probing targets. The prober.URL parameter is required. Targets cannot be probed if left empty. | [ProberSpec](#proberspec) | false | -| module | The module to use for probing specifying how to probe the target. Example module configuring in the blackbox exporter: https://github.com/prometheus/blackbox_exporter/blob/master/example.yml | string | false | -| targets | Targets defines a set of static or dynamically discovered targets to probe. | [ProbeTargets](#probetargets) | false | -| interval | Interval at which targets are probed using the configured prober. If not specified Prometheus' global scrape interval is used. | Duration | false | -| scrapeTimeout | Timeout for scraping metrics from the Prometheus exporter. If not specified, the Prometheus global scrape interval is used. | Duration | false | -| tlsConfig | TLS configuration to use when scraping the endpoint. | *[ProbeTLSConfig](#probetlsconfig) | false | -| bearerTokenSecret | Secret to mount to read bearer token for scraping targets. The secret needs to be in the same namespace as the probe and accessible by the Prometheus Operator. | [v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| basicAuth | BasicAuth allow an endpoint to authenticate over basic authentication. More info: https://prometheus.io/docs/operating/configuration/#endpoint | *[BasicAuth](#basicauth) | false | -| oauth2 | OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer. | *[OAuth2](#oauth2) | false | -| metricRelabelings | MetricRelabelConfigs to apply to samples before ingestion. | []*[RelabelConfig](#relabelconfig) | false | -| authorization | Authorization section for this endpoint | *[SafeAuthorization](#safeauthorization) | false | -| sampleLimit | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | uint64 | false | -| targetLimit | TargetLimit defines a limit on the number of scraped targets that will be accepted. | uint64 | false | -| labelLimit | Per-scrape limit on number of labels that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. | uint64 | false | -| labelNameLengthLimit | Per-scrape limit on length of labels name that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. | uint64 | false | -| labelValueLengthLimit | Per-scrape limit on length of labels value that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. | uint64 | false | - -[Back to TOC](#table-of-contents) - -## ProbeTLSConfig - -ProbeTLSConfig specifies TLS configuration parameters. - - -<em>appears in: [ProbeSpec](#probespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| ca | Struct containing the CA cert to use for the targets. | [SecretOrConfigMap](#secretorconfigmap) | false | -| cert | Struct containing the client cert file for the targets. | [SecretOrConfigMap](#secretorconfigmap) | false | -| keySecret | Secret containing the client key file for the targets. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| serverName | Used to verify the hostname for the targets. | string | false | -| insecureSkipVerify | Disable target certificate validation. | bool | false | - -[Back to TOC](#table-of-contents) - -## ProbeTargetIngress - -ProbeTargetIngress defines the set of Ingress objects considered for probing. The operator configures a target for each host/path combination of each ingress object. - - -<em>appears in: [ProbeTargets](#probetargets)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| selector | Selector to select the Ingress objects. | [metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| namespaceSelector | From which namespaces to select Ingress objects. | [NamespaceSelector](#namespaceselector) | false | -| relabelingConfigs | RelabelConfigs to apply to the label set of the target before it gets scraped. The original ingress address is available via the `__tmp_prometheus_ingress_address` label. It can be used to customize the probed URL. The original scrape job's name is available via the `__tmp_prometheus_job_name` label. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config | []*[RelabelConfig](#relabelconfig) | false | - -[Back to TOC](#table-of-contents) - -## ProbeTargetStaticConfig - -ProbeTargetStaticConfig defines the set of static targets considered for probing. - - -<em>appears in: [ProbeTargets](#probetargets)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| static | The list of hosts to probe. | []string | false | -| labels | Labels assigned to all metrics scraped from the targets. | map[string]string | false | -| relabelingConfigs | RelabelConfigs to apply to the label set of the targets before it gets scraped. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config | []*[RelabelConfig](#relabelconfig) | false | - -[Back to TOC](#table-of-contents) - -## ProbeTargets - -ProbeTargets defines how to discover the probed targets. One of the `staticConfig` or `ingress` must be defined. If both are defined, `staticConfig` takes precedence. - - -<em>appears in: [ProbeSpec](#probespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| staticConfig | staticConfig defines the static list of targets to probe and the relabeling configuration. If `ingress` is also defined, `staticConfig` takes precedence. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#static_config. | *[ProbeTargetStaticConfig](#probetargetstaticconfig) | false | -| ingress | ingress defines the Ingress objects to probe and the relabeling configuration. If `staticConfig` is also defined, `staticConfig` takes precedence. | *[ProbeTargetIngress](#probetargetingress) | false | - -[Back to TOC](#table-of-contents) - -## ProberSpec - -ProberSpec contains specification parameters for the Prober used for probing. - - -<em>appears in: [ProbeSpec](#probespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| url | Mandatory URL of the prober. | string | true | -| scheme | HTTP scheme to use for scraping. Defaults to `http`. | string | false | -| path | Path to collect metrics from. Defaults to `/probe`. | string | false | -| proxyUrl | Optional ProxyURL. | string | false | - -[Back to TOC](#table-of-contents) - -## Prometheus - -Prometheus defines a Prometheus deployment. - - -<em>appears in: [PrometheusList](#prometheuslist)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | | [metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#objectmeta-v1-meta) | false | -| 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 | [PrometheusSpec](#prometheusspec) | true | -| status | Most recent observed status of the Prometheus cluster. Read-only. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status | [PrometheusStatus](#prometheusstatus) | false | - -[Back to TOC](#table-of-contents) - -## PrometheusCondition - -PrometheusCondition represents the state of the resources associated with the Prometheus resource. - - -<em>appears in: [PrometheusStatus](#prometheusstatus)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| type | Type of the condition being reported. | PrometheusConditionType | true | -| status | status of the condition. | PrometheusConditionStatus | true | -| lastTransitionTime | lastTransitionTime is the time of the last update to the current status property. | metav1.Time | true | -| reason | Reason for the condition's last transition. | string | false | -| message | Human-readable message indicating details for the condition's last transition. | string | false | - -[Back to TOC](#table-of-contents) - -## PrometheusList - -PrometheusList is a list of Prometheuses. - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata | [metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#listmeta-v1-meta) | false | -| items | List of Prometheuses | []*[Prometheus](#prometheus) | true | - -[Back to TOC](#table-of-contents) - -## PrometheusRule - -PrometheusRule defines recording and alerting rules for a Prometheus instance - - -<em>appears in: [PrometheusRuleList](#prometheusrulelist)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | | [metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#objectmeta-v1-meta) | false | -| spec | Specification of desired alerting rule definitions for Prometheus. | [PrometheusRuleSpec](#prometheusrulespec) | true | - -[Back to TOC](#table-of-contents) - -## PrometheusRuleExcludeConfig - -PrometheusRuleExcludeConfig enables users to configure excluded PrometheusRule names and their namespaces to be ignored while enforcing namespace label for alerts and metrics. - - -<em>appears in: [PrometheusSpec](#prometheusspec), [ThanosRulerSpec](#thanosrulerspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| ruleNamespace | RuleNamespace - namespace of excluded rule | string | true | -| ruleName | RuleNamespace - name of excluded rule | string | true | - -[Back to TOC](#table-of-contents) - -## PrometheusRuleList - -PrometheusRuleList is a list of PrometheusRules. - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata | [metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#listmeta-v1-meta) | false | -| items | List of Rules | []*[PrometheusRule](#prometheusrule) | true | - -[Back to TOC](#table-of-contents) - -## PrometheusRuleSpec - -PrometheusRuleSpec contains specification parameters for a Rule. - - -<em>appears in: [PrometheusRule](#prometheusrule)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| groups | Content of Prometheus rule file | [][RuleGroup](#rulegroup) | false | - -[Back to TOC](#table-of-contents) - -## PrometheusSpec - -PrometheusSpec is a 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 - - -<em>appears in: [Prometheus](#prometheus)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| podMetadata | PodMetadata configures Labels and Annotations which are propagated to the prometheus pods. | *[EmbeddedObjectMetadata](#embeddedobjectmetadata) | false | -| serviceMonitorSelector | ServiceMonitors to be selected for target discovery. *Deprecated:* if neither this nor podMonitorSelector are specified, configuration is unmanaged. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| serviceMonitorNamespaceSelector | Namespace's labels to match for ServiceMonitor discovery. If nil, only check own namespace. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| podMonitorSelector | *Experimental* PodMonitors to be selected for target discovery. *Deprecated:* if neither this nor serviceMonitorSelector are specified, configuration is unmanaged. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| podMonitorNamespaceSelector | Namespace's labels to match for PodMonitor discovery. If nil, only check own namespace. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| probeSelector | *Experimental* Probes to be selected for target discovery. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| probeNamespaceSelector | *Experimental* Namespaces to be selected for Probe discovery. If nil, only check own namespace. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| version | Version of Prometheus to be deployed. | string | false | -| 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. | string | false | -| 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. | string | false | -| paused | When a Prometheus deployment is paused, no actions except for deletion will be performed on the underlying objects. | bool | false | -| 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. | *string | false | -| baseImage | Base image to use for a Prometheus deployment. Deprecated: use 'image' instead | string | false | -| 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 | [][v1.LocalObjectReference](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#localobjectreference-v1-core) | false | -| 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. | *int32 | false | -| 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. | *int32 | false | -| 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 (`\"\"`). | *string | false | -| 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 (`\"\"`). | *string | false | -| logLevel | Log level for Prometheus to be configured with. | string | false | -| logFormat | Log format for Prometheus to be configured with. | string | false | -| scrapeInterval | Interval between consecutive scrapes. Default: `30s` | Duration | false | -| scrapeTimeout | Number of seconds to wait for target to respond before erroring. | Duration | false | -| evaluationInterval | Interval between consecutive evaluations. Default: `30s` | Duration | false | -| externalLabels | The labels to add to any time series or alerts when communicating with external systems (federation, remote storage, Alertmanager). | map[string]string | false | -| 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 | bool | false | -| enableRemoteWriteReceiver | Enable Prometheus to be used as a receiver for the Prometheus remote write protocol. Defaults to the value of `false`. WARNING: This is not considered an efficient way of ingesting samples. Use it with caution for specific low-volume use cases. It is not suitable for replacing the ingestion via scraping and turning Prometheus into a push-based metrics collection system. For more information see https://prometheus.io/docs/prometheus/latest/querying/api/#remote-write-receiver Only valid in Prometheus versions 2.33.0 and newer. | bool | false | -| 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/ | []string | false | -| 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. | string | false | -| 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`. | string | false | -| storage | Storage spec to specify how storage shall be used. | *[StorageSpec](#storagespec) | false | -| 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. | []v1.Volume | false | -| 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. | []v1.VolumeMount | false | -| web | Defines the web command line flags when starting Prometheus. | *[PrometheusWebSpec](#prometheuswebspec) | false | -| resources | Define resources requests and limits for single Pods. | [v1.ResourceRequirements](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core) | false | -| nodeSelector | Define which Nodes the Pods are scheduled on. | map[string]string | false | -| serviceAccountName | ServiceAccountName is the name of the ServiceAccount to use to run the Prometheus Pods. | string | false | -| 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/<secret-name>. | []string | false | -| 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/<configmap-name>. | []string | false | -| affinity | If specified, the pod's scheduling constraints. | *v1.Affinity | false | -| tolerations | If specified, the pod's tolerations. | []v1.Toleration | false | -| topologySpreadConstraints | If specified, the pod's topology spread constraints. | []v1.TopologySpreadConstraint | false | -| remoteWrite | remoteWrite is the list of remote write configurations. | [][RemoteWriteSpec](#remotewritespec) | false | -| securityContext | SecurityContext holds pod-level security attributes and common container settings. This defaults to the default PodSecurityContext. | *v1.PodSecurityContext | false | -| listenLocal | ListenLocal makes the Prometheus server listen on loopback, so that it does not bind against the Pod IP. | bool | false | -| 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. | []v1.Container | false | -| 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. | []v1.Container | false | -| 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. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| 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/. | *[APIServerConfig](#apiserverconfig) | false | -| priorityClassName | Priority class assigned to the Pods | string | false | -| portName | Port name used for the pods and governing service. This defaults to web | string | false | -| 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. | [ArbitraryFSAccessThroughSMsConfig](#arbitraryfsaccessthroughsmsconfig) | false | -| overrideHonorLabels | When true, Prometheus resolves label conflicts by renaming the labels in the scraped data to \"exported_<label value>\" for all targets created from service and pod monitors. Otherwise the HonorLabels field of the service or pod monitor applies. | bool | false | -| overrideHonorTimestamps | When true, Prometheus ignores the timestamps for all the targets created from service and pod monitors. Otherwise the HonorTimestamps field of the service or pod monitor applies. | bool | false | -| ignoreNamespaceSelectors | IgnoreNamespaceSelectors if set to true will ignore NamespaceSelector settings from all PodMonitor, ServiceMonitor and Probe objects. They will only discover endpoints within their current namespace. Defaults to false. | bool | false | -| enforcedNamespaceLabel | EnforcedNamespaceLabel If set, a label will be added to\n\n1. all user-metrics (created by `ServiceMonitor`, `PodMonitor` and `Probe` objects) and 2. in all `PrometheusRule` objects (except the ones excluded in `prometheusRulesExcludedFromEnforce`) to\n * alerting & recording rules and\n * the metrics used in their expressions (`expr`).\n\nLabel name is this field's value. Label value is the namespace of the created object (mentioned above). | string | false | -| 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. | *uint64 | false | -| 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. | *uint64 | false | -| 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. | *uint64 | false | -| 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. | *uint64 | false | -| 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. | *uint64 | false | -| 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. | ByteSize | false | -| 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. | *uint32 | false | -| hostAliases | Pods' hostAliases configuration | [][HostAlias](#hostalias) | false | -| retention | Time duration Prometheus shall retain data for. Default is '24h' if retentionSize is not set, and must match the regular expression `[0-9]+(ms\|s\|m\|h\|d\|w\|y)` (milliseconds seconds minutes hours days weeks years). | Duration | false | -| retentionSize | Maximum amount of disk space used by blocks. | ByteSize | false | -| disableCompaction | Disable prometheus compaction. | bool | false | -| walCompression | Enable compression of the write-ahead log using Snappy. This flag is only available in versions of Prometheus >= 2.11.0. | *bool | false | -| rules | /--rules.*/ command-line arguments. | [Rules](#rules) | false | -| excludedFromEnforcement | List of references to PodMonitor, ServiceMonitor, Probe and PrometheusRule objects to be excluded from enforcing a namespace label of origin. Applies only if enforcedNamespaceLabel set to true. | [][ObjectReference](#objectreference) | false | -| 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. Deprecated: use excludedFromEnforcement instead. | [][PrometheusRuleExcludeConfig](#prometheusruleexcludeconfig) | false | -| query | QuerySpec defines the query command line flags when starting Prometheus. | *[QuerySpec](#queryspec) | false | -| 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. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| ruleNamespaceSelector | Namespaces to be selected for PrometheusRules discovery. If unspecified, only the same namespace as the Prometheus object is in is used. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| alerting | Define details regarding alerting. | *[AlertingSpec](#alertingspec) | false | -| remoteRead | remoteRead is the list of remote read configurations. | [][RemoteReadSpec](#remotereadspec) | false | -| 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. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| 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. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| thanos | Thanos configuration allows configuring various aspects of a Prometheus server in a Thanos environment.\n\nThis section is experimental, it may change significantly without deprecation notice in any release.\n\nThis is experimental and may change significantly without backward compatibility in any release. | *[ThanosSpec](#thanosspec) | false | -| queryLogFile | QueryLogFile specifies the file to which PromQL queries are logged. If the filename has an empty path, e.g. 'query.log', prometheus-operator will mount the file into an emptyDir volume at `/var/log/prometheus`. If a full path is provided, e.g. /var/log/prometheus/query.log, you must mount a volume in the specified directory and it must be writable. This is because the prometheus container runs with a read-only root filesystem for security reasons. Alternatively, the location can be set to a stdout location such as `/dev/stdout` to log query 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/) | string | false | -| 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. | bool | false | -| exemplars | Exemplars related settings that are runtime reloadable. It requires to enable the exemplar storage feature to be effective. | *[Exemplars](#exemplars) | false | - -[Back to TOC](#table-of-contents) - -## PrometheusStatus - -PrometheusStatus is the most recent observed status of the Prometheus cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status - - -<em>appears in: [Prometheus](#prometheus)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| paused | Represents whether any actions on the underlying managed objects are being performed. Only delete actions will be performed. | bool | true | -| replicas | Total number of non-terminated pods targeted by this Prometheus deployment (their labels match the selector). | int32 | true | -| updatedReplicas | Total number of non-terminated pods targeted by this Prometheus deployment that have the desired version spec. | int32 | true | -| availableReplicas | Total number of available pods (ready for at least minReadySeconds) targeted by this Prometheus deployment. | int32 | true | -| unavailableReplicas | Total number of unavailable pods targeted by this Prometheus deployment. | int32 | true | -| conditions | The current state of the Prometheus deployment. | [][PrometheusCondition](#prometheuscondition) | false | -| shardStatuses | The list has one entry per shard. Each entry provides a summary of the shard status. | [][ShardStatus](#shardstatus) | false | - -[Back to TOC](#table-of-contents) - -## PrometheusWebSpec - -PrometheusWebSpec defines the query command line flags when starting Prometheus. - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| pageTitle | The prometheus web page title | *string | false | -| tlsConfig | | *[WebTLSConfig](#webtlsconfig) | false | - -[Back to TOC](#table-of-contents) - -## QuerySpec - -QuerySpec defines the query command line flags when starting Prometheus. - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| lookbackDelta | The delta difference allowed for retrieving metrics during expression evaluations. | *string | false | -| maxConcurrency | Number of concurrent queries that can be run at once. | *int32 | false | -| 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. | *int32 | false | -| timeout | Maximum time a query may take before being aborted. | *Duration | false | - -[Back to TOC](#table-of-contents) - -## QueueConfig - -QueueConfig allows the tuning of remote write's queue_config parameters. This object is referenced in the RemoteWriteSpec object. - - -<em>appears in: [RemoteWriteSpec](#remotewritespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| capacity | Capacity is the number of samples to buffer per shard before we start dropping them. | int | false | -| minShards | MinShards is the minimum number of shards, i.e. amount of concurrency. | int | false | -| maxShards | MaxShards is the maximum number of shards, i.e. amount of concurrency. | int | false | -| maxSamplesPerSend | MaxSamplesPerSend is the maximum number of samples per send. | int | false | -| batchSendDeadline | BatchSendDeadline is the maximum time a sample will wait in buffer. | string | false | -| maxRetries | MaxRetries is the maximum number of times to retry a batch on recoverable errors. | int | false | -| minBackoff | MinBackoff is the initial retry delay. Gets doubled for every retry. | string | false | -| maxBackoff | MaxBackoff is the maximum retry delay. | string | false | -| retryOnRateLimit | Retry upon receiving a 429 status code from the remote-write storage. This is experimental feature and might change in the future. | bool | false | - -[Back to TOC](#table-of-contents) - -## RelabelConfig - -RelabelConfig allows dynamic rewriting of the label set, being applied to samples before ingestion. It defines `<metric_relabel_configs>`-section of Prometheus configuration. More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs - - -<em>appears in: [Endpoint](#endpoint), [PodMetricsEndpoint](#podmetricsendpoint), [ProbeSpec](#probespec), [ProbeTargetIngress](#probetargetingress), [ProbeTargetStaticConfig](#probetargetstaticconfig), [RemoteWriteSpec](#remotewritespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sourceLabels | The source labels select values from existing labels. Their content is concatenated using the configured separator and matched against the configured regular expression for the replace, keep, and drop actions. | []LabelName | false | -| separator | Separator placed between concatenated source label values. default is ';'. | string | false | -| targetLabel | Label to which the resulting value is written in a replace action. It is mandatory for replace actions. Regex capture groups are available. | string | false | -| regex | Regular expression against which the extracted value is matched. Default is '(.*)' | string | false | -| modulus | Modulus to take of the hash of the source label values. | uint64 | false | -| replacement | Replacement value against which a regex replace is performed if the regular expression matches. Regex capture groups are available. Default is '$1' | string | false | -| action | Action to perform based on regex matching. Default is 'replace'. uppercase and lowercase actions require Prometheus >= 2.36. | string | false | - -[Back to TOC](#table-of-contents) - -## RemoteReadSpec - -RemoteReadSpec defines the configuration for Prometheus to read back samples from a remote endpoint. - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| url | The URL of the endpoint to query from. | string | true | -| name | The name of the remote read queue, it must be unique if specified. The name is used in metrics and logging in order to differentiate read configurations. Only valid in Prometheus versions 2.15.0 and newer. | string | false | -| requiredMatchers | An optional list of equality matchers which have to be present in a selector to query the remote read endpoint. | map[string]string | false | -| remoteTimeout | Timeout for requests to the remote read endpoint. | Duration | false | -| headers | Custom HTTP headers to be sent along with each remote read request. Be aware that headers that are set by Prometheus itself can't be overwritten. Only valid in Prometheus versions 2.26.0 and newer. | map[string]string | false | -| readRecent | Whether reads should be made for queries for time ranges that the local storage should have complete data for. | bool | false | -| basicAuth | BasicAuth for the URL. | *[BasicAuth](#basicauth) | false | -| oauth2 | OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer. | *[OAuth2](#oauth2) | false | -| bearerToken | Bearer token for remote read. | string | false | -| bearerTokenFile | File to read bearer token for remote read. | string | false | -| authorization | Authorization section for remote read | *[Authorization](#authorization) | false | -| tlsConfig | TLS Config to use for remote read. | *[TLSConfig](#tlsconfig) | false | -| proxyUrl | Optional ProxyURL. | string | false | - -[Back to TOC](#table-of-contents) - -## RemoteWriteSpec - -RemoteWriteSpec defines the configuration to write samples from Prometheus to a remote endpoint. - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| url | The URL of the endpoint to send samples to. | string | true | -| name | The name of the remote write queue, it must be unique if specified. The name is used in metrics and logging in order to differentiate queues. Only valid in Prometheus versions 2.15.0 and newer. | string | false | -| sendExemplars | Enables sending of exemplars over remote write. Note that exemplar-storage itself must be enabled using the enableFeature option for exemplars to be scraped in the first place. Only valid in Prometheus versions 2.27.0 and newer. | *bool | false | -| remoteTimeout | Timeout for requests to the remote write endpoint. | Duration | false | -| headers | Custom HTTP headers to be sent along with each remote write request. Be aware that headers that are set by Prometheus itself can't be overwritten. Only valid in Prometheus versions 2.25.0 and newer. | map[string]string | false | -| writeRelabelConfigs | The list of remote write relabel configurations. | [][RelabelConfig](#relabelconfig) | false | -| oauth2 | OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer. | *[OAuth2](#oauth2) | false | -| basicAuth | BasicAuth for the URL. | *[BasicAuth](#basicauth) | false | -| bearerToken | Bearer token for remote write. | string | false | -| bearerTokenFile | File to read bearer token for remote write. | string | false | -| authorization | Authorization section for remote write | *[Authorization](#authorization) | false | -| sigv4 | Sigv4 allows to configures AWS's Signature Verification 4 | *[Sigv4](#sigv4) | false | -| tlsConfig | TLS Config to use for remote write. | *[TLSConfig](#tlsconfig) | false | -| proxyUrl | Optional ProxyURL. | string | false | -| queueConfig | QueueConfig allows tuning of the remote write queue parameters. | *[QueueConfig](#queueconfig) | false | -| metadataConfig | MetadataConfig configures the sending of series metadata to the remote storage. | *[MetadataConfig](#metadataconfig) | false | - -[Back to TOC](#table-of-contents) - -## Rule - -Rule describes an alerting or recording rule See Prometheus documentation: [alerting](https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules/) or [recording](https://www.prometheus.io/docs/prometheus/latest/configuration/recording_rules/#recording-rules) rule - - -<em>appears in: [RuleGroup](#rulegroup)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| record | | string | false | -| alert | | string | false | -| expr | | intstr.IntOrString | true | -| for | | string | false | -| labels | | map[string]string | false | -| annotations | | map[string]string | false | - -[Back to TOC](#table-of-contents) - -## RuleGroup - -RuleGroup is a list of sequentially evaluated recording and alerting rules. Note: PartialResponseStrategy is only used by ThanosRuler and will be ignored by Prometheus instances. Valid values for this field are 'warn' or 'abort'. More info: https://github.com/thanos-io/thanos/blob/main/docs/components/rule.md#partial-response - - -<em>appears in: [PrometheusRuleSpec](#prometheusrulespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| name | | string | true | -| interval | | string | false | -| rules | | [][Rule](#rule) | true | -| partial_response_strategy | | string | false | - -[Back to TOC](#table-of-contents) - -## Rules - -/--rules.*/ command-line arguments - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| alert | | [RulesAlert](#rulesalert) | false | - -[Back to TOC](#table-of-contents) - -## RulesAlert - -/--rules.alert.*/ command-line arguments - - -<em>appears in: [Rules](#rules)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| forOutageTolerance | Max time to tolerate prometheus outage for restoring 'for' state of alert. | string | false | -| forGracePeriod | Minimum duration between alert and restored 'for' state. This is maintained only for alerts with configured 'for' time greater than grace period. | string | false | -| resendDelay | Minimum amount of time to wait before resending an alert to Alertmanager. | string | false | - -[Back to TOC](#table-of-contents) - -## SafeAuthorization - -SafeAuthorization specifies a subset of the Authorization struct, that is safe for use in Endpoints (no CredentialsFile field) - - -<em>appears in: [AlertmanagerEndpoints](#alertmanagerendpoints), [Endpoint](#endpoint), [PodMetricsEndpoint](#podmetricsendpoint), [ProbeSpec](#probespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| type | Set the authentication type. Defaults to Bearer, Basic will cause an error | string | false | -| credentials | The secret's key that contains the credentials of the request | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | - -[Back to TOC](#table-of-contents) - -## SecretOrConfigMap - -SecretOrConfigMap allows to specify data as a Secret or ConfigMap. Fields are mutually exclusive. - - -<em>appears in: [OAuth2](#oauth2), [PodMetricsEndpointTLSConfig](#podmetricsendpointtlsconfig), [ProbeTLSConfig](#probetlsconfig), [TLSConfig](#tlsconfig), [WebTLSConfig](#webtlsconfig)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| secret | Secret containing data to use for the targets. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| configMap | ConfigMap containing data to use for the targets. | *v1.ConfigMapKeySelector | false | - -[Back to TOC](#table-of-contents) - -## ServiceMonitor - -ServiceMonitor defines monitoring for a set of services. - - -<em>appears in: [ServiceMonitorList](#servicemonitorlist)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | | [metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#objectmeta-v1-meta) | false | -| spec | Specification of desired Service selection for target discovery by Prometheus. | [ServiceMonitorSpec](#servicemonitorspec) | true | - -[Back to TOC](#table-of-contents) - -## ServiceMonitorList - -ServiceMonitorList is a list of ServiceMonitors. - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata | [metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#listmeta-v1-meta) | false | -| items | List of ServiceMonitors | []*[ServiceMonitor](#servicemonitor) | true | - -[Back to TOC](#table-of-contents) - -## ServiceMonitorSpec - -ServiceMonitorSpec contains specification parameters for a ServiceMonitor. - - -<em>appears in: [ServiceMonitor](#servicemonitor)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| jobLabel | JobLabel selects the label from the associated Kubernetes service which will be used as the `job` label for all metrics.\n\nFor example: If in `ServiceMonitor.spec.jobLabel: foo` and in `Service.metadata.labels.foo: bar`, then the `job=\"bar\"` label is added to all metrics.\n\nIf the value of this field is empty or if the label doesn't exist for the given Service, the `job` label of the metrics defaults to the name of the Kubernetes Service. | string | false | -| targetLabels | TargetLabels transfers labels from the Kubernetes `Service` onto the created metrics. | []string | false | -| podTargetLabels | PodTargetLabels transfers labels on the Kubernetes `Pod` onto the created metrics. | []string | false | -| endpoints | A list of endpoints allowed as part of this ServiceMonitor. | [][Endpoint](#endpoint) | true | -| selector | Selector to select Endpoints objects. | [metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | true | -| namespaceSelector | Selector to select which namespaces the Kubernetes Endpoints objects are discovered from. | [NamespaceSelector](#namespaceselector) | false | -| sampleLimit | SampleLimit defines per-scrape limit on number of scraped samples that will be accepted. | uint64 | false | -| targetLimit | TargetLimit defines a limit on the number of scraped targets that will be accepted. | uint64 | false | -| labelLimit | Per-scrape limit on number of labels that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. | uint64 | false | -| labelNameLengthLimit | Per-scrape limit on length of labels name that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. | uint64 | false | -| labelValueLengthLimit | Per-scrape limit on length of labels value that will be accepted for a sample. Only valid in Prometheus versions 2.27.0 and newer. | uint64 | false | - -[Back to TOC](#table-of-contents) - -## ShardStatus - - - - -<em>appears in: [PrometheusStatus](#prometheusstatus)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| shardID | Identifier of the shard. | string | true | -| replicas | Total number of pods targeted by this shard. | int32 | true | -| updatedReplicas | Total number of non-terminated pods targeted by this shard that have the desired spec. | int32 | true | -| availableReplicas | Total number of available pods (ready for at least minReadySeconds) targeted by this shard. | int32 | true | -| unavailableReplicas | Total number of unavailable pods targeted by this shard. | int32 | true | - -[Back to TOC](#table-of-contents) - -## Sigv4 - -Sigv4 optionally configures AWS's Signature Verification 4 signing process to sign requests. Cannot be set at the same time as basic_auth or authorization. - - -<em>appears in: [RemoteWriteSpec](#remotewritespec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| region | Region is the AWS region. If blank, the region from the default credentials chain used. | string | false | -| accessKey | AccessKey is the AWS API key. If blank, the environment variable `AWS_ACCESS_KEY_ID` is used. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| secretKey | SecretKey is the AWS API secret. If blank, the environment variable `AWS_SECRET_ACCESS_KEY` is used. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| profile | Profile is the named AWS profile used to authenticate. | string | false | -| roleArn | RoleArn is the named AWS profile used to authenticate. | string | false | - -[Back to TOC](#table-of-contents) - -## StorageSpec - -StorageSpec defines the configured storage for a group Prometheus servers. If no storage option is specified, then by default an [EmptyDir](https://kubernetes.io/docs/concepts/storage/volumes/#emptydir) will be used. If multiple storage options are specified, priority will be given as follows: EmptyDir, Ephemeral, and lastly VolumeClaimTemplate. - - -<em>appears in: [AlertmanagerSpec](#alertmanagerspec), [PrometheusSpec](#prometheusspec), [ThanosRulerSpec](#thanosrulerspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| 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. | bool | false | -| 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 | *[v1.EmptyDirVolumeSource](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#emptydirvolumesource-v1-core) | false | -| 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 | *v1.EphemeralVolumeSource | false | -| volumeClaimTemplate | A PVC spec to be used by the Prometheus StatefulSets. | [EmbeddedPersistentVolumeClaim](#embeddedpersistentvolumeclaim) | false | - -[Back to TOC](#table-of-contents) - -## TLSConfig - -TLSConfig extends the safe TLS configuration with file parameters. - - -<em>appears in: [APIServerConfig](#apiserverconfig), [AlertmanagerEndpoints](#alertmanagerendpoints), [Endpoint](#endpoint), [RemoteReadSpec](#remotereadspec), [RemoteWriteSpec](#remotewritespec), [ThanosRulerSpec](#thanosrulerspec), [ThanosSpec](#thanosspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| ca | Struct containing the CA cert to use for the targets. | [SecretOrConfigMap](#secretorconfigmap) | false | -| cert | Struct containing the client cert file for the targets. | [SecretOrConfigMap](#secretorconfigmap) | false | -| keySecret | Secret containing the client key file for the targets. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| serverName | Used to verify the hostname for the targets. | string | false | -| insecureSkipVerify | Disable target certificate validation. | bool | false | -| caFile | Path to the CA cert in the Prometheus container to use for the targets. | string | false | -| certFile | Path to the client cert file in the Prometheus container for the targets. | string | false | -| keyFile | Path to the client key file in the Prometheus container for the targets. | string | false | - -[Back to TOC](#table-of-contents) - -## ThanosSpec - -ThanosSpec defines parameters for a Prometheus server within a Thanos deployment. - - -<em>appears in: [PrometheusSpec](#prometheusspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| 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. | *string | false | -| version | Version describes the version of Thanos to use. | *string | false | -| 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. | *string | false | -| 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. | *string | false | -| baseImage | Thanos base image if other than default. Deprecated: use 'image' instead | *string | false | -| resources | Resources defines the resource requirements for the Thanos sidecar. If not provided, no requests/limits will be set | [v1.ResourceRequirements](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core) | false | -| objectStorageConfig | ObjectStorageConfig configures object storage in Thanos. Alternative to ObjectStorageConfigFile, and lower order priority. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| objectStorageConfigFile | ObjectStorageConfigFile specifies the path of the object storage configuration file. When used alongside with ObjectStorageConfig, ObjectStorageConfigFile takes precedence. | *string | false | -| listenLocal | ListenLocal makes the Thanos sidecar listen on loopback, so that it does not bind against the Pod IP. | bool | false | -| tracingConfig | TracingConfig configures tracing in Thanos. This is an experimental feature, it may change in any upcoming release in a breaking way. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| tracingConfigFile | TracingConfig specifies the path of the tracing configuration file. When used alongside with TracingConfig, TracingConfigFile takes precedence. | string | false | -| 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. | *[TLSConfig](#tlsconfig) | false | -| logLevel | LogLevel for Thanos sidecar to be configured with. | string | false | -| logFormat | LogFormat for Thanos sidecar to be configured with. | string | false | -| 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. | string | false | -| readyTimeout | ReadyTimeout is the maximum time Thanos sidecar will wait for Prometheus to start. Eg 10m | Duration | false | -| 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. | []v1.VolumeMount | false | - -[Back to TOC](#table-of-contents) - -## WebTLSConfig - -WebTLSConfig defines the TLS parameters for HTTPS. - - -<em>appears in: [AlertmanagerWebSpec](#alertmanagerwebspec), [PrometheusWebSpec](#prometheuswebspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| keySecret | Secret containing the TLS key for the server. | [v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | true | -| cert | Contains the TLS certificate for the server. | [SecretOrConfigMap](#secretorconfigmap) | true | -| clientAuthType | Server policy for client authentication. Maps to ClientAuth Policies. For more detail on clientAuth options: https://golang.org/pkg/crypto/tls/#ClientAuthType | string | false | -| client_ca | Contains the CA certificate for client certificate authentication to the server. | [SecretOrConfigMap](#secretorconfigmap) | false | -| minVersion | Minimum TLS version that is acceptable. Defaults to TLS12. | string | false | -| maxVersion | Maximum TLS version that is acceptable. Defaults to TLS13. | string | false | -| 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 | []string | false | -| 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. | *bool | false | -| 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 | []string | false | - -[Back to TOC](#table-of-contents) - -## ThanosRuler - -ThanosRuler defines a ThanosRuler deployment. - - -<em>appears in: [ThanosRulerList](#thanosrulerlist)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | | [metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#objectmeta-v1-meta) | false | -| spec | Specification of the desired behavior of the ThanosRuler cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status | [ThanosRulerSpec](#thanosrulerspec) | true | -| status | Most recent observed status of the ThanosRuler cluster. Read-only. Not included when requesting from the apiserver, only from the ThanosRuler Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status | *[ThanosRulerStatus](#thanosrulerstatus) | false | - -[Back to TOC](#table-of-contents) - -## ThanosRulerList - -ThanosRulerList is a list of ThanosRulers. - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata | [metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#listmeta-v1-meta) | false | -| items | List of Prometheuses | []*[ThanosRuler](#thanosruler) | true | - -[Back to TOC](#table-of-contents) - -## ThanosRulerSpec - -ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status - - -<em>appears in: [ThanosRuler](#thanosruler)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| podMetadata | PodMetadata contains Labels and Annotations gets propagated to the thanos ruler pods. | *[EmbeddedObjectMetadata](#embeddedobjectmetadata) | false | -| image | Thanos container image URL. | string | false | -| imagePullSecrets | An optional list of references to secrets in the same namespace to use for pulling thanos images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod | [][v1.LocalObjectReference](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#localobjectreference-v1-core) | false | -| paused | When a ThanosRuler deployment is paused, no actions except for deletion will be performed on the underlying objects. | bool | false | -| replicas | Number of thanos ruler instances to deploy. | *int32 | false | -| nodeSelector | Define which Nodes the Pods are scheduled on. | map[string]string | false | -| resources | Resources defines the resource requirements for single Pods. If not provided, no requests/limits will be set | [v1.ResourceRequirements](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#resourcerequirements-v1-core) | false | -| affinity | If specified, the pod's scheduling constraints. | *v1.Affinity | false | -| tolerations | If specified, the pod's tolerations. | []v1.Toleration | false | -| topologySpreadConstraints | If specified, the pod's topology spread constraints. | []v1.TopologySpreadConstraint | false | -| securityContext | SecurityContext holds pod-level security attributes and common container settings. This defaults to the default PodSecurityContext. | *v1.PodSecurityContext | false | -| priorityClassName | Priority class assigned to the Pods | string | false | -| serviceAccountName | ServiceAccountName is the name of the ServiceAccount to use to run the Thanos Ruler Pods. | string | false | -| storage | Storage spec to specify how storage shall be used. | *[StorageSpec](#storagespec) | false | -| 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. | []v1.Volume | false | -| objectStorageConfig | ObjectStorageConfig configures object storage in Thanos. Alternative to ObjectStorageConfigFile, and lower order priority. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| objectStorageConfigFile | ObjectStorageConfigFile specifies the path of the object storage configuration file. When used alongside with ObjectStorageConfig, ObjectStorageConfigFile takes precedence. | *string | false | -| listenLocal | ListenLocal makes the Thanos ruler listen on loopback, so that it does not bind against the Pod IP. | bool | false | -| queryEndpoints | QueryEndpoints defines Thanos querier endpoints from which to query metrics. Maps to the --query flag of thanos ruler. | []string | false | -| queryConfig | Define configuration for connecting to thanos query instances. If this is defined, the QueryEndpoints field will be ignored. Maps to the `query.config` CLI argument. Only available with thanos v0.11.0 and higher. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| alertmanagersUrl | Define URLs to send alerts to Alertmanager. For Thanos v0.10.0 and higher, AlertManagersConfig should be used instead. Note: this field will be ignored if AlertManagersConfig is specified. Maps to the `alertmanagers.url` arg. | []string | false | -| alertmanagersConfig | Define configuration for connecting to alertmanager. Only available with thanos v0.10.0 and higher. Maps to the `alertmanagers.config` arg. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| ruleSelector | A label selector to select which PrometheusRules to mount for alerting and recording. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| ruleNamespaceSelector | Namespaces to be selected for Rules discovery. If unspecified, only the same namespace as the ThanosRuler object is in is used. | *[metav1.LabelSelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#labelselector-v1-meta) | false | -| enforcedNamespaceLabel | EnforcedNamespaceLabel enforces adding a namespace label of origin for each alert and metric that is user created. The label value will always be the namespace of the object that is being created. | string | false | -| excludedFromEnforcement | List of references to PrometheusRule objects to be excluded from enforcing a namespace label of origin. Applies only if enforcedNamespaceLabel set to true. | [][ObjectReference](#objectreference) | false | -| 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 Deprecated: use excludedFromEnforcement instead. | [][PrometheusRuleExcludeConfig](#prometheusruleexcludeconfig) | false | -| logLevel | Log level for ThanosRuler to be configured with. | string | false | -| logFormat | Log format for ThanosRuler to be configured with. | string | false | -| portName | Port name used for the pods and governing service. This defaults to web | string | false | -| evaluationInterval | Interval between consecutive evaluations. | Duration | false | -| retention | Time duration ThanosRuler 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). | Duration | false | -| containers | Containers allows injecting additional containers or modifying operator generated containers. This can be used to allow adding an authentication proxy to a ThanosRuler 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: `thanos-ruler` and `config-reloader`. 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. | []v1.Container | false | -| initContainers | InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. fetch secrets for injection into the ThanosRuler 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/ Using initContainers for any use case other then secret fetching 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. | []v1.Container | false | -| tracingConfig | TracingConfig configures tracing in Thanos. This is an experimental feature, it may change in any upcoming release in a breaking way. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| labels | Labels configure the external label pairs to ThanosRuler. A default replica label `thanos_ruler_replica` will be always added as a label with the value of the pod's name and it will be dropped in the alerts. | map[string]string | false | -| alertDropLabels | AlertDropLabels configure the label names which should be dropped in ThanosRuler alerts. The replica label `thanos_ruler_replica` will always be dropped in alerts. | []string | false | -| externalPrefix | The external URL the Thanos Ruler instances will be available under. This is necessary to generate correct URLs. This is necessary if Thanos Ruler is not served from root of a DNS name. | string | false | -| routePrefix | The route prefix ThanosRuler registers HTTP handlers for. This allows thanos UI to be served on a sub-path. | string | false | -| 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. | *[TLSConfig](#tlsconfig) | false | -| alertQueryUrl | The external Query URL the Thanos Ruler will set in the 'Source' field of all alerts. Maps to the '--alert.query-url' CLI arg. | string | false | -| 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. | *uint32 | false | -| alertRelabelConfigs | AlertRelabelConfigs configures alert relabeling in ThanosRuler. Alert relabel configurations must have the form as specified in the official Prometheus documentation: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs Alternative to AlertRelabelConfigFile, and lower order priority. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| alertRelabelConfigFile | AlertRelabelConfigFile specifies the path of the alert relabeling configuration file. When used alongside with AlertRelabelConfigs, alertRelabelConfigFile takes precedence. | *string | false | -| hostAliases | Pods' hostAliases configuration | [][HostAlias](#hostalias) | false | - -[Back to TOC](#table-of-contents) - -## ThanosRulerStatus - -ThanosRulerStatus is the most recent observed status of the ThanosRuler. Read-only. Not included when requesting from the apiserver, only from the Prometheus Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status - - -<em>appears in: [ThanosRuler](#thanosruler)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| paused | Represents whether any actions on the underlying managed objects are being performed. Only delete actions will be performed. | bool | true | -| replicas | Total number of non-terminated pods targeted by this ThanosRuler deployment (their labels match the selector). | int32 | true | -| updatedReplicas | Total number of non-terminated pods targeted by this ThanosRuler deployment that have the desired version spec. | int32 | true | -| availableReplicas | Total number of available pods (ready for at least minReadySeconds) targeted by this ThanosRuler deployment. | int32 | true | -| unavailableReplicas | Total number of unavailable pods targeted by this ThanosRuler deployment. | int32 | true | - -[Back to TOC](#table-of-contents) - -## AlertmanagerConfig - -AlertmanagerConfig defines a namespaced AlertmanagerConfig to be aggregated across multiple namespaces configuring one Alertmanager cluster. - - -<em>appears in: [AlertmanagerConfigList](#alertmanagerconfiglist)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | | [metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#objectmeta-v1-meta) | false | -| spec | | [AlertmanagerConfigSpec](#alertmanagerconfigspec) | true | - -[Back to TOC](#table-of-contents) - -## AlertmanagerConfigList - -AlertmanagerConfigList is a list of AlertmanagerConfig. - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| metadata | Standard list metadata More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#metadata | [metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#listmeta-v1-meta) | false | -| items | List of AlertmanagerConfig | []*[AlertmanagerConfig](#alertmanagerconfig) | true | - -[Back to TOC](#table-of-contents) - -## AlertmanagerConfigSpec - -AlertmanagerConfigSpec is a specification of the desired behavior of the Alertmanager configuration. By definition, the Alertmanager configuration only applies to alerts for which the `namespace` label is equal to the namespace of the AlertmanagerConfig resource. - - -<em>appears in: [AlertmanagerConfig](#alertmanagerconfig)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| route | The Alertmanager route definition for alerts matching the resource’s namespace. If present, it will be added to the generated Alertmanager configuration as a first-level route. | *[Route](#route) | true | -| receivers | List of receivers. | [][Receiver](#receiver) | true | -| inhibitRules | List of inhibition rules. The rules will only apply to alerts matching the resource’s namespace. | [][InhibitRule](#inhibitrule) | false | -| muteTimeIntervals | List of MuteTimeInterval specifying when the routes should be muted. | [][MuteTimeInterval](#mutetimeinterval) | false | - -[Back to TOC](#table-of-contents) - -## DayOfMonthRange - -DayOfMonthRange is an inclusive range of days of the month beginning at 1 - - -<em>appears in: [TimeInterval](#timeinterval)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| start | Start of the inclusive range | int | false | -| end | End of the inclusive range | int | false | - -[Back to TOC](#table-of-contents) - -## EmailConfig - -EmailConfig configures notifications via Email. - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether or not to notify about resolved alerts. | *bool | false | -| to | The email address to send notifications to. | string | false | -| from | The sender address. | string | false | -| hello | The hostname to identify to the SMTP server. | string | false | -| smarthost | The SMTP host and port through which emails are sent. E.g. example.com:25 | string | false | -| authUsername | The username to use for authentication. | string | false | -| authPassword | The secret's key that contains the password to use for authentication. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| authSecret | The secret's key that contains the CRAM-MD5 secret. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| authIdentity | The identity to use for authentication. | string | false | -| headers | Further headers email header key/value pairs. Overrides any headers previously set by the notification implementation. | [][KeyValue](#keyvalue) | false | -| html | The HTML body of the email notification. | string | false | -| text | The text body of the email notification. | string | false | -| requireTLS | The SMTP TLS requirement. Note that Go does not support unencrypted connections to remote SMTP endpoints. | *bool | false | -| tlsConfig | TLS configuration | *monitoringv1.SafeTLSConfig | false | - -[Back to TOC](#table-of-contents) - -## HTTPConfig - -HTTPConfig defines a client HTTP configuration. See https://prometheus.io/docs/alerting/latest/configuration/#http_config - - -<em>appears in: [OpsGenieConfig](#opsgenieconfig), [PagerDutyConfig](#pagerdutyconfig), [PushoverConfig](#pushoverconfig), [SNSConfig](#snsconfig), [SlackConfig](#slackconfig), [TelegramConfig](#telegramconfig), [VictorOpsConfig](#victoropsconfig), [WeChatConfig](#wechatconfig), [WebhookConfig](#webhookconfig)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| authorization | Authorization header configuration for the client. This is mutually exclusive with BasicAuth and is only available starting from Alertmanager v0.22+. | *monitoringv1.SafeAuthorization | false | -| basicAuth | BasicAuth for the client. This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence. | *monitoringv1.BasicAuth | false | -| oauth2 | OAuth2 client credentials used to fetch a token for the targets. | *monitoringv1.OAuth2 | false | -| bearerTokenSecret | The secret's key that contains the bearer token to be used by the client for authentication. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| tlsConfig | TLS configuration for the client. | *monitoringv1.SafeTLSConfig | false | -| proxyURL | Optional proxy URL. | string | false | -| followRedirects | FollowRedirects specifies whether the client should follow HTTP 3xx redirects. | *bool | false | - -[Back to TOC](#table-of-contents) - -## InhibitRule - -InhibitRule defines an inhibition rule that allows to mute alerts when other alerts are already firing. See https://prometheus.io/docs/alerting/latest/configuration/#inhibit_rule - - -<em>appears in: [AlertmanagerConfigSpec](#alertmanagerconfigspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| targetMatch | Matchers that have to be fulfilled in the alerts to be muted. The operator enforces that the alert matches the resource’s namespace. | [][Matcher](#matcher) | false | -| sourceMatch | Matchers for which one or more alerts have to exist for the inhibition to take effect. The operator enforces that the alert matches the resource’s namespace. | [][Matcher](#matcher) | false | -| equal | Labels that must have an equal value in the source and target alert for the inhibition to take effect. | []string | false | - -[Back to TOC](#table-of-contents) - -## KeyValue - -KeyValue defines a (key, value) tuple. - - -<em>appears in: [EmailConfig](#emailconfig), [OpsGenieConfig](#opsgenieconfig), [PagerDutyConfig](#pagerdutyconfig), [VictorOpsConfig](#victoropsconfig)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| key | Key of the tuple. | string | true | -| value | Value of the tuple. | string | true | - -[Back to TOC](#table-of-contents) - -## Matcher - -Matcher defines how to match on alert's labels. - - -<em>appears in: [InhibitRule](#inhibitrule), [Route](#route)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| name | Label to match. | string | true | -| value | Label value to match. | string | true | -| matchType | Match operation available with AlertManager >= v0.22.0 and takes precedence over Regex (deprecated) if non-empty. | MatchType | false | -| regex | Whether to match on equality (false) or regular-expression (true). Deprecated as of AlertManager >= v0.22.0 where a user should use MatchType instead. | bool | false | - -[Back to TOC](#table-of-contents) - -## MuteTimeInterval - -MuteTimeInterval specifies the periods in time when notifications will be muted - - -<em>appears in: [AlertmanagerConfigSpec](#alertmanagerconfigspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| name | Name of the time interval | string | false | -| timeIntervals | TimeIntervals is a list of TimeInterval | [][TimeInterval](#timeinterval) | false | - -[Back to TOC](#table-of-contents) - -## OpsGenieConfig - -OpsGenieConfig configures notifications via OpsGenie. See https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether or not to notify about resolved alerts. | *bool | false | -| apiKey | The secret's key that contains the OpsGenie API key. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| apiURL | The URL to send OpsGenie API requests to. | string | false | -| message | Alert text limited to 130 characters. | string | false | -| description | Description of the incident. | string | false | -| source | Backlink to the sender of the notification. | string | false | -| tags | Comma separated list of tags attached to the notifications. | string | false | -| note | Additional alert note. | string | false | -| priority | Priority level of alert. Possible values are P1, P2, P3, P4, and P5. | string | false | -| updateAlerts | Whether to update message and description of the alert in OpsGenie if it already exists By default, the alert is never updated in OpsGenie, the new message only appears in activity log. | *bool | false | -| details | A set of arbitrary key/value pairs that provide further detail about the incident. | [][KeyValue](#keyvalue) | false | -| responders | List of responders responsible for notifications. | [][OpsGenieConfigResponder](#opsgenieconfigresponder) | false | -| httpConfig | HTTP client configuration. | *[HTTPConfig](#httpconfig) | false | -| entity | Optional field that can be used to specify which domain alert is related to. | string | false | -| actions | Comma separated list of actions that will be available for the alert. | string | false | - -[Back to TOC](#table-of-contents) - -## OpsGenieConfigResponder - -OpsGenieConfigResponder defines a responder to an incident. One of `id`, `name` or `username` has to be defined. - - -<em>appears in: [OpsGenieConfig](#opsgenieconfig)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| id | ID of the responder. | string | false | -| name | Name of the responder. | string | false | -| username | Username of the responder. | string | false | -| type | Type of responder. | string | true | - -[Back to TOC](#table-of-contents) - -## PagerDutyConfig - -PagerDutyConfig configures notifications via PagerDuty. See https://prometheus.io/docs/alerting/latest/configuration/#pagerduty_config - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether or not to notify about resolved alerts. | *bool | false | -| routingKey | The secret's key that contains the PagerDuty integration key (when using Events API v2). Either this field or `serviceKey` needs to be defined. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| serviceKey | The secret's key that contains the PagerDuty service key (when using integration type \"Prometheus\"). Either this field or `routingKey` needs to be defined. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| url | The URL to send requests to. | string | false | -| client | Client identification. | string | false | -| clientURL | Backlink to the sender of notification. | string | false | -| description | Description of the incident. | string | false | -| severity | Severity of the incident. | string | false | -| class | The class/type of the event. | string | false | -| group | A cluster or grouping of sources. | string | false | -| component | The part or component of the affected system that is broken. | string | false | -| details | Arbitrary key/value pairs that provide further detail about the incident. | [][KeyValue](#keyvalue) | false | -| pagerDutyImageConfigs | A list of image details to attach that provide further detail about an incident. | [][PagerDutyImageConfig](#pagerdutyimageconfig) | false | -| pagerDutyLinkConfigs | A list of link details to attach that provide further detail about an incident. | [][PagerDutyLinkConfig](#pagerdutylinkconfig) | false | -| httpConfig | HTTP client configuration. | *[HTTPConfig](#httpconfig) | false | - -[Back to TOC](#table-of-contents) - -## PagerDutyImageConfig - -PagerDutyImageConfig attaches images to an incident - - -<em>appears in: [PagerDutyConfig](#pagerdutyconfig)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| src | Src of the image being attached to the incident | string | false | -| href | Optional URL; makes the image a clickable link. | string | false | -| alt | Alt is the optional alternative text for the image. | string | false | - -[Back to TOC](#table-of-contents) - -## PagerDutyLinkConfig - -PagerDutyLinkConfig attaches text links to an incident - - -<em>appears in: [PagerDutyConfig](#pagerdutyconfig)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| href | Href is the URL of the link to be attached | string | false | -| alt | Text that describes the purpose of the link, and can be used as the link's text. | string | false | - -[Back to TOC](#table-of-contents) - -## PushoverConfig - -PushoverConfig configures notifications via Pushover. See https://prometheus.io/docs/alerting/latest/configuration/#pushover_config - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether or not to notify about resolved alerts. | *bool | false | -| userKey | The secret's key that contains the recipient user’s user key. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| token | The secret's key that contains the registered application’s API token, see https://pushover.net/apps. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| title | Notification title. | string | false | -| message | Notification message. | string | false | -| url | A supplementary URL shown alongside the message. | string | false | -| urlTitle | A title for supplementary URL, otherwise just the URL is shown | string | false | -| sound | The name of one of the sounds supported by device clients to override the user's default sound choice | string | false | -| priority | Priority, see https://pushover.net/api#priority | string | false | -| retry | How often the Pushover servers will send the same notification to the user. Must be at least 30 seconds. | string | false | -| expire | How long your notification will continue to be retried for, unless the user acknowledges the notification. | string | false | -| html | Whether notification message is HTML or plain text. | bool | false | -| httpConfig | HTTP client configuration. | *[HTTPConfig](#httpconfig) | false | - -[Back to TOC](#table-of-contents) - -## Receiver - -Receiver defines one or more notification integrations. - - -<em>appears in: [AlertmanagerConfigSpec](#alertmanagerconfigspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| name | Name of the receiver. Must be unique across all items from the list. | string | true | -| opsgenieConfigs | List of OpsGenie configurations. | [][OpsGenieConfig](#opsgenieconfig) | false | -| pagerdutyConfigs | List of PagerDuty configurations. | [][PagerDutyConfig](#pagerdutyconfig) | false | -| slackConfigs | List of Slack configurations. | [][SlackConfig](#slackconfig) | false | -| webhookConfigs | List of webhook configurations. | [][WebhookConfig](#webhookconfig) | false | -| wechatConfigs | List of WeChat configurations. | [][WeChatConfig](#wechatconfig) | false | -| emailConfigs | List of Email configurations. | [][EmailConfig](#emailconfig) | false | -| victoropsConfigs | List of VictorOps configurations. | [][VictorOpsConfig](#victoropsconfig) | false | -| pushoverConfigs | List of Pushover configurations. | [][PushoverConfig](#pushoverconfig) | false | -| snsConfigs | List of SNS configurations | [][SNSConfig](#snsconfig) | false | -| telegramConfigs | List of Telegram configurations. | [][TelegramConfig](#telegramconfig) | false | - -[Back to TOC](#table-of-contents) - -## Route - -Route defines a node in the routing tree. - - -<em>appears in: [AlertmanagerConfigSpec](#alertmanagerconfigspec)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| receiver | Name of the receiver for this route. If not empty, it should be listed in the `receivers` field. | string | true | -| groupBy | List of labels to group by. Labels must not be repeated (unique list). Special label \"...\" (aggregate by all possible labels), if provided, must be the only element in the list. | []string | false | -| groupWait | How long to wait before sending the initial notification. Must match the regular expression`^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$` Example: \"30s\" | string | false | -| groupInterval | How long to wait before sending an updated notification. Must match the regular expression`^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$` Example: \"5m\" | string | false | -| repeatInterval | How long to wait before repeating the last notification. Must match the regular expression`^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$` Example: \"4h\" | string | false | -| matchers | List of matchers that the alert’s labels should match. For the first level route, the operator removes any existing equality and regexp matcher on the `namespace` label and adds a `namespace: <object namespace>` matcher. | [][Matcher](#matcher) | false | -| continue | Boolean indicating whether an alert should continue matching subsequent sibling nodes. It will always be overridden to true for the first-level route by the Prometheus operator. | bool | false | -| routes | Child routes. | [][apiextensionsv1.JSON](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#json-v1-apiextensions-k8s-io) | false | -| muteTimeIntervals | Note: this comment applies to the field definition above but appears below otherwise it gets included in the generated manifest. CRD schema doesn't support self-referential types for now (see https://github.com/kubernetes/kubernetes/issues/62872). We have to use an alternative type to circumvent the limitation. The downside is that the Kube API can't validate the data beyond the fact that it is a valid JSON representation. MuteTimeIntervals is a list of MuteTimeInterval names that will mute this route when matched, | []string | false | - -[Back to TOC](#table-of-contents) - -## SNSConfig - -SNSConfig configures notifications via AWS SNS. See https://prometheus.io/docs/alerting/latest/configuration/#sns_configs - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether or not to notify about resolved alerts. | *bool | false | -| apiURL | The SNS API URL i.e. https://sns.us-east-2.amazonaws.com. If not specified, the SNS API URL from the SNS SDK will be used. | string | false | -| sigv4 | Configures AWS's Signature Verification 4 signing process to sign requests. | *monitoringv1.Sigv4 | false | -| topicARN | SNS topic ARN, i.e. arn:aws:sns:us-east-2:698519295917:My-Topic If you don't specify this value, you must specify a value for the PhoneNumber or TargetARN. | string | false | -| subject | Subject line when the message is delivered to email endpoints. | string | false | -| phoneNumber | Phone number if message is delivered via SMS in E.164 format. If you don't specify this value, you must specify a value for the TopicARN or TargetARN. | string | false | -| targetARN | The mobile platform endpoint ARN if message is delivered via mobile notifications. If you don't specify this value, you must specify a value for the topic_arn or PhoneNumber. | string | false | -| message | The message content of the SNS notification. | string | false | -| attributes | SNS message attributes. | map[string]string | false | -| httpConfig | HTTP client configuration. | *[HTTPConfig](#httpconfig) | false | - -[Back to TOC](#table-of-contents) - -## SlackAction - -SlackAction configures a single Slack action that is sent with each notification. See https://api.slack.com/docs/message-attachments#action_fields and https://api.slack.com/docs/message-buttons for more information. - - -<em>appears in: [SlackConfig](#slackconfig)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| type | | string | true | -| text | | string | true | -| url | | string | false | -| style | | string | false | -| name | | string | false | -| value | | string | false | -| confirm | | *[SlackConfirmationField](#slackconfirmationfield) | false | - -[Back to TOC](#table-of-contents) - -## SlackConfig - -SlackConfig configures notifications via Slack. See https://prometheus.io/docs/alerting/latest/configuration/#slack_config - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether or not to notify about resolved alerts. | *bool | false | -| apiURL | The secret's key that contains the Slack webhook URL. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| channel | The channel or user to send notifications to. | string | false | -| username | | string | false | -| color | | string | false | -| title | | string | false | -| titleLink | | string | false | -| pretext | | string | false | -| text | | string | false | -| fields | A list of Slack fields that are sent with each notification. | [][SlackField](#slackfield) | false | -| shortFields | | bool | false | -| footer | | string | false | -| fallback | | string | false | -| callbackId | | string | false | -| iconEmoji | | string | false | -| iconURL | | string | false | -| imageURL | | string | false | -| thumbURL | | string | false | -| linkNames | | bool | false | -| mrkdwnIn | | []string | false | -| actions | A list of Slack actions that are sent with each notification. | [][SlackAction](#slackaction) | false | -| httpConfig | HTTP client configuration. | *[HTTPConfig](#httpconfig) | false | - -[Back to TOC](#table-of-contents) - -## SlackConfirmationField - -SlackConfirmationField protect users from destructive actions or particularly distinguished decisions by asking them to confirm their button click one more time. See https://api.slack.com/docs/interactive-message-field-guide#confirmation_fields for more information. - - -<em>appears in: [SlackAction](#slackaction)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| text | | string | true | -| title | | string | false | -| okText | | string | false | -| dismissText | | string | false | - -[Back to TOC](#table-of-contents) - -## SlackField - -SlackField configures a single Slack field that is sent with each notification. Each field must contain a title, value, and optionally, a boolean value to indicate if the field is short enough to be displayed next to other fields designated as short. See https://api.slack.com/docs/message-attachments#fields for more information. - - -<em>appears in: [SlackConfig](#slackconfig)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| title | | string | true | -| value | | string | true | -| short | | *bool | false | - -[Back to TOC](#table-of-contents) - -## TelegramConfig - -TelegramConfig configures notifications via Telegram. See https://prometheus.io/docs/alerting/latest/configuration/#telegram_config - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether to notify about resolved alerts. | *bool | false | -| apiURL | The Telegram API URL i.e. https://api.telegram.org. If not specified, default API URL will be used. | string | false | -| botToken | Telegram bot token The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| chatID | The Telegram chat ID. | int64 | false | -| message | Message template | string | false | -| disableNotifications | Disable telegram notifications | *bool | false | -| parseMode | Parse mode for telegram message | string | false | -| httpConfig | HTTP client configuration. | *[HTTPConfig](#httpconfig) | false | - -[Back to TOC](#table-of-contents) - -## TimeInterval - -TimeInterval describes intervals of time - - -<em>appears in: [MuteTimeInterval](#mutetimeinterval)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| times | Times is a list of TimeRange | [][TimeRange](#timerange) | false | -| weekdays | Weekdays is a list of WeekdayRange | []WeekdayRange | false | -| daysOfMonth | DaysOfMonth is a list of DayOfMonthRange | [][DayOfMonthRange](#dayofmonthrange) | false | -| months | Months is a list of MonthRange | []MonthRange | false | -| years | Years is a list of YearRange | []YearRange | false | - -[Back to TOC](#table-of-contents) - -## TimeRange - -TimeRange defines a start and end time in 24hr format - - -<em>appears in: [TimeInterval](#timeinterval)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| startTime | StartTime is the start time in 24hr format. | Time | false | -| endTime | EndTime is the end time in 24hr format. | Time | false | - -[Back to TOC](#table-of-contents) - -## VictorOpsConfig - -VictorOpsConfig configures notifications via VictorOps. See https://prometheus.io/docs/alerting/latest/configuration/#victorops_config - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether or not to notify about resolved alerts. | *bool | false | -| apiKey | The secret's key that contains the API key to use when talking to the VictorOps API. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| apiUrl | The VictorOps API URL. | string | false | -| routingKey | A key used to map the alert to a team. | string | true | -| messageType | Describes the behavior of the alert (CRITICAL, WARNING, INFO). | string | false | -| entityDisplayName | Contains summary of the alerted problem. | string | false | -| stateMessage | Contains long explanation of the alerted problem. | string | false | -| monitoringTool | The monitoring tool the state message is from. | string | false | -| customFields | Additional custom fields for notification. | [][KeyValue](#keyvalue) | false | -| httpConfig | The HTTP client's configuration. | *[HTTPConfig](#httpconfig) | false | - -[Back to TOC](#table-of-contents) - -## WeChatConfig - -WeChatConfig configures notifications via WeChat. See https://prometheus.io/docs/alerting/latest/configuration/#wechat_config - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether or not to notify about resolved alerts. | *bool | false | -| apiSecret | The secret's key that contains the WeChat API key. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| apiURL | The WeChat API URL. | string | false | -| corpID | The corp id for authentication. | string | false | -| agentID | | string | false | -| toUser | | string | false | -| toParty | | string | false | -| toTag | | string | false | -| message | API request data as defined by the WeChat API. | string | false | -| messageType | | string | false | -| httpConfig | HTTP client configuration. | *[HTTPConfig](#httpconfig) | false | - -[Back to TOC](#table-of-contents) - -## WebhookConfig - -WebhookConfig configures notifications via a generic receiver supporting the webhook payload. See https://prometheus.io/docs/alerting/latest/configuration/#webhook_config - - -<em>appears in: [Receiver](#receiver)</em> - -| Field | Description | Scheme | Required | -| ----- | ----------- | ------ | -------- | -| sendResolved | Whether or not to notify about resolved alerts. | *bool | false | -| url | The URL to send HTTP POST requests to. `urlSecret` takes precedence over `url`. One of `urlSecret` and `url` should be defined. | *string | false | -| urlSecret | The secret's key that contains the webhook URL to send HTTP requests to. `urlSecret` takes precedence over `url`. One of `urlSecret` and `url` should be defined. The secret needs to be in the same namespace as the AlertmanagerConfig object and accessible by the Prometheus Operator. | *[v1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.23/#secretkeyselector-v1-core) | false | -| httpConfig | HTTP client configuration. | *[HTTPConfig](#httpconfig) | false | -| maxAlerts | Maximum number of alerts to be sent per webhook message. When 0, all alerts are included. | int32 | false | - -[Back to TOC](#table-of-contents) +> This page is automatically generated with `gen-crd-api-reference-docs`. +<p>Packages:</p> +<ul> +<li> +<a href="#monitoring.coreos.com%2fv1">monitoring.coreos.com/v1</a> +</li> +<li> +<a href="#monitoring.coreos.com%2fv1alpha1">monitoring.coreos.com/v1alpha1</a> +</li> +<li> +<a href="#monitoring.coreos.com%2fv1beta1">monitoring.coreos.com/v1beta1</a> +</li> +</ul> +<h2 id="monitoring.coreos.com/v1">monitoring.coreos.com/v1</h2> +Resource Types: +<ul><li> +<a href="#monitoring.coreos.com/v1.Alertmanager">Alertmanager</a> +</li><li> +<a href="#monitoring.coreos.com/v1.PodMonitor">PodMonitor</a> +</li><li> +<a href="#monitoring.coreos.com/v1.Probe">Probe</a> +</li><li> +<a href="#monitoring.coreos.com/v1.Prometheus">Prometheus</a> +</li><li> +<a href="#monitoring.coreos.com/v1.PrometheusRule">PrometheusRule</a> +</li><li> +<a href="#monitoring.coreos.com/v1.ServiceMonitor">ServiceMonitor</a> +</li></ul> +<h3 id="monitoring.coreos.com/v1.Alertmanager">Alertmanager +</h3> +<div> +<p>Alertmanager describes an Alertmanager cluster.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>apiVersion</code><br/> +string</td> +<td> +<code> +monitoring.coreos.com/v1 +</code> +</td> +</tr> +<tr> +<td> +<code>kind</code><br/> +string +</td> +<td><code>Alertmanager</code></td> +</tr> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#objectmeta-v1-meta"> +Kubernetes meta/v1.ObjectMeta +</a> +</em> +</td> +<td> +Refer to the Kubernetes API documentation for the fields of the +<code>metadata</code> field. +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AlertmanagerSpec"> +AlertmanagerSpec +</a> +</em> +</td> +<td> +<p>Specification of the desired behavior of the Alertmanager cluster. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +<br/> +<br/> +<table> +<tr> +<td> +<code>podMetadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.EmbeddedObjectMetadata"> +EmbeddedObjectMetadata +</a> +</em> +</td> +<td> +<p>PodMetadata configures Labels and Annotations which are propagated to the alertmanager pods.</p> +</td> +</tr> +<tr> +<td> +<code>image</code><br/> +<em> +string +</em> +</td> +<td> +<p>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 Alertmanager is being +configured.</p> +</td> +</tr> +<tr> +<td> +<code>version</code><br/> +<em> +string +</em> +</td> +<td> +<p>Version the cluster should be on.</p> +</td> +</tr> +<tr> +<td> +<code>tag</code><br/> +<em> +string +</em> +</td> +<td> +<p>Tag of Alertmanager container image to be deployed. Defaults to the value of <code>version</code>. +Version is ignored if Tag is set. +Deprecated: use ‘image’ instead. The image tag can be specified +as part of the image URL.</p> +</td> +</tr> +<tr> +<td> +<code>sha</code><br/> +<em> +string +</em> +</td> +<td> +<p>SHA of Alertmanager container image to be deployed. Defaults to the value of <code>version</code>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>baseImage</code><br/> +<em> +string +</em> +</td> +<td> +<p>Base image that is used to deploy pods, without tag. +Deprecated: use ‘image’ instead</p> +</td> +</tr> +<tr> +<td> +<code>imagePullSecrets</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#localobjectreference-v1-core"> +[]Kubernetes core/v1.LocalObjectReference +</a> +</em> +</td> +<td> +<p>An optional list of references to secrets in the same namespace +to use for pulling prometheus and alertmanager images from registries +see <a href="http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod">http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod</a></p> +</td> +</tr> +<tr> +<td> +<code>secrets</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>Secrets is a list of Secrets in the same namespace as the Alertmanager +object, which shall be mounted into the Alertmanager Pods. +The Secrets are mounted into /etc/alertmanager/secrets/<secret-name>.</p> +</td> +</tr> +<tr> +<td> +<code>configMaps</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>ConfigMaps is a list of ConfigMaps in the same namespace as the Alertmanager +object, which shall be mounted into the Alertmanager Pods. +The ConfigMaps are mounted into /etc/alertmanager/configmaps/<configmap-name>.</p> +</td> +</tr> +<tr> +<td> +<code>configSecret</code><br/> +<em> +string +</em> +</td> +<td> +<p>ConfigSecret is the name of a Kubernetes Secret in the same namespace as the +Alertmanager object, which contains the configuration for this Alertmanager +instance. If empty, it defaults to ‘alertmanager-<alertmanager-name>’.</p> +<p>The Alertmanager configuration should be available under the +<code>alertmanager.yaml</code> key. Additional keys from the original secret are +copied to the generated secret.</p> +<p>If either the secret or the <code>alertmanager.yaml</code> key is missing, the +operator provisions an Alertmanager configuration with one empty +receiver (effectively dropping alert notifications).</p> +</td> +</tr> +<tr> +<td> +<code>logLevel</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log level for Alertmanager to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>logFormat</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log format for Alertmanager to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Size is the expected size of the alertmanager cluster. The controller will +eventually make the size of the running cluster equal to the expected +size.</p> +</td> +</tr> +<tr> +<td> +<code>retention</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.GoDuration"> +GoDuration +</a> +</em> +</td> +<td> +<p>Time duration Alertmanager shall retain data for. Default is ‘120h’, +and must match the regular expression <code>[0-9]+(ms|s|m|h)</code> (milliseconds seconds minutes hours).</p> +</td> +</tr> +<tr> +<td> +<code>storage</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.StorageSpec"> +StorageSpec +</a> +</em> +</td> +<td> +<p>Storage is the definition of how storage will be used by the Alertmanager +instances.</p> +</td> +</tr> +<tr> +<td> +<code>volumes</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volume-v1-core"> +[]Kubernetes core/v1.Volume +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>volumeMounts</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volumemount-v1-core"> +[]Kubernetes core/v1.VolumeMount +</a> +</em> +</td> +<td> +<p>VolumeMounts allows configuration of additional VolumeMounts on the output StatefulSet definition. +VolumeMounts specified will be appended to other VolumeMounts in the alertmanager container, +that are generated as a result of StorageSpec objects.</p> +</td> +</tr> +<tr> +<td> +<code>externalUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>The external URL the Alertmanager instances will be available under. This is +necessary to generate correct URLs. This is necessary if Alertmanager is not +served from root of a DNS name.</p> +</td> +</tr> +<tr> +<td> +<code>routePrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>The route prefix Alertmanager 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 <code>kubectl proxy</code>.</p> +</td> +</tr> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>If set to true all actions on the underlying managed objects are not +goint to be performed, except for delete actions.</p> +</td> +</tr> +<tr> +<td> +<code>nodeSelector</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Define which Nodes the Pods are scheduled on.</p> +</td> +</tr> +<tr> +<td> +<code>resources</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#resourcerequirements-v1-core"> +Kubernetes core/v1.ResourceRequirements +</a> +</em> +</td> +<td> +<p>Define resources requests and limits for single Pods.</p> +</td> +</tr> +<tr> +<td> +<code>affinity</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#affinity-v1-core"> +Kubernetes core/v1.Affinity +</a> +</em> +</td> +<td> +<p>If specified, the pod’s scheduling constraints.</p> +</td> +</tr> +<tr> +<td> +<code>tolerations</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#toleration-v1-core"> +[]Kubernetes core/v1.Toleration +</a> +</em> +</td> +<td> +<p>If specified, the pod’s tolerations.</p> +</td> +</tr> +<tr> +<td> +<code>topologySpreadConstraints</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#topologyspreadconstraint-v1-core"> +[]Kubernetes core/v1.TopologySpreadConstraint +</a> +</em> +</td> +<td> +<p>If specified, the pod’s topology spread constraints.</p> +</td> +</tr> +<tr> +<td> +<code>securityContext</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#podsecuritycontext-v1-core"> +Kubernetes core/v1.PodSecurityContext +</a> +</em> +</td> +<td> +<p>SecurityContext holds pod-level security attributes and common container settings. +This defaults to the default PodSecurityContext.</p> +</td> +</tr> +<tr> +<td> +<code>serviceAccountName</code><br/> +<em> +string +</em> +</td> +<td> +<p>ServiceAccountName is the name of the ServiceAccount to use to run the +Prometheus Pods.</p> +</td> +</tr> +<tr> +<td> +<code>listenLocal</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ListenLocal makes the Alertmanager server listen on loopback, so that it +does not bind against the Pod IP. Note this is only for the Alertmanager +UI, not the gossip communication.</p> +</td> +</tr> +<tr> +<td> +<code>containers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>Containers allows injecting additional containers. This is meant to +allow adding an authentication proxy to an Alertmanager pod. +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: <code>alertmanager</code> and +<code>config-reloader</code>. 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.</p> +</td> +</tr> +<tr> +<td> +<code>initContainers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. +fetch secrets for injection into the Alertmanager configuration from external sources. Any +errors during the execution of an initContainer will lead to a restart of the Pod. More info: <a href="https://kubernetes.io/docs/concepts/workloads/pods/init-containers/">https://kubernetes.io/docs/concepts/workloads/pods/init-containers/</a> +Using initContainers for any use case other then secret fetching 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.</p> +</td> +</tr> +<tr> +<td> +<code>priorityClassName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Priority class assigned to the Pods</p> +</td> +</tr> +<tr> +<td> +<code>additionalPeers</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>AdditionalPeers allows injecting a set of additional Alertmanagers to peer with to form a highly available cluster.</p> +</td> +</tr> +<tr> +<td> +<code>clusterAdvertiseAddress</code><br/> +<em> +string +</em> +</td> +<td> +<p>ClusterAdvertiseAddress is the explicit address to advertise in cluster. +Needs to be provided for non RFC1918 <a href="public">1</a> addresses. +[1] RFC1918: <a href="https://tools.ietf.org/html/rfc1918">https://tools.ietf.org/html/rfc1918</a></p> +</td> +</tr> +<tr> +<td> +<code>clusterGossipInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.GoDuration"> +GoDuration +</a> +</em> +</td> +<td> +<p>Interval between gossip attempts.</p> +</td> +</tr> +<tr> +<td> +<code>clusterPushpullInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.GoDuration"> +GoDuration +</a> +</em> +</td> +<td> +<p>Interval between pushpull attempts.</p> +</td> +</tr> +<tr> +<td> +<code>clusterPeerTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.GoDuration"> +GoDuration +</a> +</em> +</td> +<td> +<p>Timeout for cluster peering.</p> +</td> +</tr> +<tr> +<td> +<code>portName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Port name used for the pods and governing service. +This defaults to web</p> +</td> +</tr> +<tr> +<td> +<code>forceEnableClusterMode</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ForceEnableClusterMode ensures Alertmanager does not deactivate the cluster mode when running with a single replica. +Use case is e.g. spanning an Alertmanager cluster across Kubernetes clusters with a single replica in each.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagerConfigSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>AlertmanagerConfigs to be selected for to merge and configure Alertmanager with.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagerConfigNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespaces to be selected for AlertmanagerConfig discovery. If nil, only +check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>minReadySeconds</code><br/> +<em> +uint32 +</em> +</td> +<td> +<em>(Optional)</em> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>hostAliases</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.HostAlias"> +[]HostAlias +</a> +</em> +</td> +<td> +<p>Pods’ hostAliases configuration</p> +</td> +</tr> +<tr> +<td> +<code>web</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AlertmanagerWebSpec"> +AlertmanagerWebSpec +</a> +</em> +</td> +<td> +<p>Defines the web command line flags when starting Alertmanager.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagerConfiguration</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AlertmanagerConfiguration"> +AlertmanagerConfiguration +</a> +</em> +</td> +<td> +<p>EXPERIMENTAL: alertmanagerConfiguration specifies the global Alertmanager configuration. +If defined, it takes precedence over the <code>configSecret</code> field. +This field may change in future releases.</p> +</td> +</tr> +</table> +</td> +</tr> +<tr> +<td> +<code>status</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AlertmanagerStatus"> +AlertmanagerStatus +</a> +</em> +</td> +<td> +<p>Most recent observed status of the Alertmanager cluster. Read-only. Not +included when requesting from the apiserver, only from the Prometheus +Operator API itself. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PodMonitor">PodMonitor +</h3> +<div> +<p>PodMonitor defines monitoring for a set of pods.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>apiVersion</code><br/> +string</td> +<td> +<code> +monitoring.coreos.com/v1 +</code> +</td> +</tr> +<tr> +<td> +<code>kind</code><br/> +string +</td> +<td><code>PodMonitor</code></td> +</tr> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#objectmeta-v1-meta"> +Kubernetes meta/v1.ObjectMeta +</a> +</em> +</td> +<td> +Refer to the Kubernetes API documentation for the fields of the +<code>metadata</code> field. +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PodMonitorSpec"> +PodMonitorSpec +</a> +</em> +</td> +<td> +<p>Specification of desired Pod selection for target discovery by Prometheus.</p> +<br/> +<br/> +<table> +<tr> +<td> +<code>jobLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>The label to use to retrieve the job name from.</p> +</td> +</tr> +<tr> +<td> +<code>podTargetLabels</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>PodTargetLabels transfers labels on the Kubernetes Pod onto the target.</p> +</td> +</tr> +<tr> +<td> +<code>podMetricsEndpoints</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PodMetricsEndpoint"> +[]PodMetricsEndpoint +</a> +</em> +</td> +<td> +<p>A list of endpoints allowed as part of this PodMonitor.</p> +</td> +</tr> +<tr> +<td> +<code>selector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Selector to select Pod objects.</p> +</td> +</tr> +<tr> +<td> +<code>namespaceSelector</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.NamespaceSelector"> +NamespaceSelector +</a> +</em> +</td> +<td> +<p>Selector to select which namespaces the Endpoints objects are discovered from.</p> +</td> +</tr> +<tr> +<td> +<code>sampleLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>targetLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>TargetLimit defines a limit on the number of scraped targets that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>labelLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on number of labels that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelNameLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels name that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelValueLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels value that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>attachMetadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AttachMetadata"> +AttachMetadata +</a> +</em> +</td> +<td> +<p>Attaches node metadata to discovered targets. Only valid for role: pod. +Only valid in Prometheus versions 2.35.0 and newer.</p> +</td> +</tr> +</table> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.Probe">Probe +</h3> +<div> +<p>Probe defines monitoring for a set of static targets or ingresses.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>apiVersion</code><br/> +string</td> +<td> +<code> +monitoring.coreos.com/v1 +</code> +</td> +</tr> +<tr> +<td> +<code>kind</code><br/> +string +</td> +<td><code>Probe</code></td> +</tr> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#objectmeta-v1-meta"> +Kubernetes meta/v1.ObjectMeta +</a> +</em> +</td> +<td> +Refer to the Kubernetes API documentation for the fields of the +<code>metadata</code> field. +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ProbeSpec"> +ProbeSpec +</a> +</em> +</td> +<td> +<p>Specification of desired Ingress selection for target discovery by Prometheus.</p> +<br/> +<br/> +<table> +<tr> +<td> +<code>jobName</code><br/> +<em> +string +</em> +</td> +<td> +<p>The job name assigned to scraped metrics by default.</p> +</td> +</tr> +<tr> +<td> +<code>prober</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ProberSpec"> +ProberSpec +</a> +</em> +</td> +<td> +<p>Specification for the prober to use for probing targets. +The prober.URL parameter is required. Targets cannot be probed if left empty.</p> +</td> +</tr> +<tr> +<td> +<code>module</code><br/> +<em> +string +</em> +</td> +<td> +<p>The module to use for probing specifying how to probe the target. +Example module configuring in the blackbox exporter: +<a href="https://github.com/prometheus/blackbox_exporter/blob/master/example.yml">https://github.com/prometheus/blackbox_exporter/blob/master/example.yml</a></p> +</td> +</tr> +<tr> +<td> +<code>targets</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ProbeTargets"> +ProbeTargets +</a> +</em> +</td> +<td> +<p>Targets defines a set of static or dynamically discovered targets to probe.</p> +</td> +</tr> +<tr> +<td> +<code>interval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval at which targets are probed using the configured prober. +If not specified Prometheus’ global scrape interval is used.</p> +</td> +</tr> +<tr> +<td> +<code>scrapeTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Timeout for scraping metrics from the Prometheus exporter. +If not specified, the Prometheus global scrape interval is used.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ProbeTLSConfig"> +ProbeTLSConfig +</a> +</em> +</td> +<td> +<p>TLS configuration to use when scraping the endpoint.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenSecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret to mount to read bearer token for scraping targets. The secret +needs to be in the same namespace as the probe and accessible by +the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>basicAuth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.BasicAuth"> +BasicAuth +</a> +</em> +</td> +<td> +<p>BasicAuth allow an endpoint to authenticate over basic authentication. +More info: <a href="https://prometheus.io/docs/operating/configuration/#endpoint">https://prometheus.io/docs/operating/configuration/#endpoint</a></p> +</td> +</tr> +<tr> +<td> +<code>oauth2</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.OAuth2"> +OAuth2 +</a> +</em> +</td> +<td> +<p>OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>metricRelabelings</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RelabelConfig"> +[]RelabelConfig +</a> +</em> +</td> +<td> +<p>MetricRelabelConfigs to apply to samples before ingestion.</p> +</td> +</tr> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeAuthorization"> +SafeAuthorization +</a> +</em> +</td> +<td> +<p>Authorization section for this endpoint</p> +</td> +</tr> +<tr> +<td> +<code>sampleLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>targetLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>TargetLimit defines a limit on the number of scraped targets that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>labelLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on number of labels that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelNameLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels name that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelValueLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels value that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +</table> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.Prometheus">Prometheus +</h3> +<div> +<p>Prometheus defines a Prometheus deployment.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>apiVersion</code><br/> +string</td> +<td> +<code> +monitoring.coreos.com/v1 +</code> +</td> +</tr> +<tr> +<td> +<code>kind</code><br/> +string +</td> +<td><code>Prometheus</code></td> +</tr> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#objectmeta-v1-meta"> +Kubernetes meta/v1.ObjectMeta +</a> +</em> +</td> +<td> +Refer to the Kubernetes API documentation for the fields of the +<code>metadata</code> field. +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusSpec"> +PrometheusSpec +</a> +</em> +</td> +<td> +<p>Specification of the desired behavior of the Prometheus cluster. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +<br/> +<br/> +<table> +<tr> +<td> +<code>podMetadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.EmbeddedObjectMetadata"> +EmbeddedObjectMetadata +</a> +</em> +</td> +<td> +<p>PodMetadata configures Labels and Annotations which are propagated to the prometheus pods.</p> +</td> +</tr> +<tr> +<td> +<code>serviceMonitorSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>ServiceMonitors to be selected for target discovery. <em>Deprecated:</em> if +neither this nor podMonitorSelector are specified, configuration is +unmanaged.</p> +</td> +</tr> +<tr> +<td> +<code>serviceMonitorNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespace’s labels to match for ServiceMonitor discovery. If nil, only +check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>podMonitorSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p><em>Experimental</em> PodMonitors to be selected for target discovery. +<em>Deprecated:</em> if neither this nor serviceMonitorSelector are specified, +configuration is unmanaged.</p> +</td> +</tr> +<tr> +<td> +<code>podMonitorNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespace’s labels to match for PodMonitor discovery. If nil, only +check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>probeSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p><em>Experimental</em> Probes to be selected for target discovery.</p> +</td> +</tr> +<tr> +<td> +<code>probeNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p><em>Experimental</em> Namespaces to be selected for Probe discovery. If nil, only check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>version</code><br/> +<em> +string +</em> +</td> +<td> +<p>Version of Prometheus to be deployed.</p> +</td> +</tr> +<tr> +<td> +<code>tag</code><br/> +<em> +string +</em> +</td> +<td> +<p>Tag of Prometheus container image to be deployed. Defaults to the value of <code>version</code>. +Version is ignored if Tag is set. +Deprecated: use ‘image’ instead. The image tag can be specified +as part of the image URL.</p> +</td> +</tr> +<tr> +<td> +<code>sha</code><br/> +<em> +string +</em> +</td> +<td> +<p>SHA of Prometheus container image to be deployed. Defaults to the value of <code>version</code>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When a Prometheus deployment is paused, no actions except for deletion +will be performed on the underlying objects.</p> +</td> +</tr> +<tr> +<td> +<code>image</code><br/> +<em> +string +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>baseImage</code><br/> +<em> +string +</em> +</td> +<td> +<p>Base image to use for a Prometheus deployment. +Deprecated: use ‘image’ instead</p> +</td> +</tr> +<tr> +<td> +<code>imagePullSecrets</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#localobjectreference-v1-core"> +[]Kubernetes core/v1.LocalObjectReference +</a> +</em> +</td> +<td> +<p>An optional list of references to secrets in the same namespace +to use for pulling prometheus and alertmanager images from registries +see <a href="http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod">http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod</a></p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>shards</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>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 +<code>__address__</code> target meta-label.</p> +</td> +</tr> +<tr> +<td> +<code>replicaExternalLabelName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of Prometheus external label used to denote replica name. +Defaults to the value of <code>prometheus_replica</code>. External label will +<em>not</em> be added when value is set to empty string (<code>""</code>).</p> +</td> +</tr> +<tr> +<td> +<code>prometheusExternalLabelName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of Prometheus external label used to denote Prometheus instance +name. Defaults to the value of <code>prometheus</code>. External label will +<em>not</em> be added when value is set to empty string (<code>""</code>).</p> +</td> +</tr> +<tr> +<td> +<code>logLevel</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log level for Prometheus to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>logFormat</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log format for Prometheus to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>scrapeInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval between consecutive scrapes. Default: <code>30s</code></p> +</td> +</tr> +<tr> +<td> +<code>scrapeTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Number of seconds to wait for target to respond before erroring.</p> +</td> +</tr> +<tr> +<td> +<code>evaluationInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval between consecutive evaluations. Default: <code>30s</code></p> +</td> +</tr> +<tr> +<td> +<code>externalLabels</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>The labels to add to any time series or alerts when communicating with +external systems (federation, remote storage, Alertmanager).</p> +</td> +</tr> +<tr> +<td> +<code>enableAdminAPI</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Enable access to prometheus web admin API. Defaults to the value of <code>false</code>. +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 <a href="https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis">https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis</a></p> +</td> +</tr> +<tr> +<td> +<code>enableRemoteWriteReceiver</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Enable Prometheus to be used as a receiver for the Prometheus remote write protocol. Defaults to the value of <code>false</code>. +WARNING: This is not considered an efficient way of ingesting samples. +Use it with caution for specific low-volume use cases. +It is not suitable for replacing the ingestion via scraping and turning +Prometheus into a push-based metrics collection system. +For more information see <a href="https://prometheus.io/docs/prometheus/latest/querying/api/#remote-write-receiver">https://prometheus.io/docs/prometheus/latest/querying/api/#remote-write-receiver</a> +Only valid in Prometheus versions 2.33.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>enableFeatures</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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 <a href="https://prometheus.io/docs/prometheus/latest/disabled_features/">https://prometheus.io/docs/prometheus/latest/disabled_features/</a></p> +</td> +</tr> +<tr> +<td> +<code>externalUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>routePrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>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 <code>kubectl proxy</code>.</p> +</td> +</tr> +<tr> +<td> +<code>storage</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.StorageSpec"> +StorageSpec +</a> +</em> +</td> +<td> +<p>Storage spec to specify how storage shall be used.</p> +</td> +</tr> +<tr> +<td> +<code>volumes</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volume-v1-core"> +[]Kubernetes core/v1.Volume +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>volumeMounts</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volumemount-v1-core"> +[]Kubernetes core/v1.VolumeMount +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>web</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusWebSpec"> +PrometheusWebSpec +</a> +</em> +</td> +<td> +<p>Defines the web command line flags when starting Prometheus.</p> +</td> +</tr> +<tr> +<td> +<code>resources</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#resourcerequirements-v1-core"> +Kubernetes core/v1.ResourceRequirements +</a> +</em> +</td> +<td> +<p>Define resources requests and limits for single Pods.</p> +</td> +</tr> +<tr> +<td> +<code>nodeSelector</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Define which Nodes the Pods are scheduled on.</p> +</td> +</tr> +<tr> +<td> +<code>serviceAccountName</code><br/> +<em> +string +</em> +</td> +<td> +<p>ServiceAccountName is the name of the ServiceAccount to use to run the +Prometheus Pods.</p> +</td> +</tr> +<tr> +<td> +<code>secrets</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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/<secret-name>.</p> +</td> +</tr> +<tr> +<td> +<code>configMaps</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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/<configmap-name>.</p> +</td> +</tr> +<tr> +<td> +<code>affinity</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#affinity-v1-core"> +Kubernetes core/v1.Affinity +</a> +</em> +</td> +<td> +<p>If specified, the pod’s scheduling constraints.</p> +</td> +</tr> +<tr> +<td> +<code>tolerations</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#toleration-v1-core"> +[]Kubernetes core/v1.Toleration +</a> +</em> +</td> +<td> +<p>If specified, the pod’s tolerations.</p> +</td> +</tr> +<tr> +<td> +<code>topologySpreadConstraints</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#topologyspreadconstraint-v1-core"> +[]Kubernetes core/v1.TopologySpreadConstraint +</a> +</em> +</td> +<td> +<p>If specified, the pod’s topology spread constraints.</p> +</td> +</tr> +<tr> +<td> +<code>remoteWrite</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RemoteWriteSpec"> +[]RemoteWriteSpec +</a> +</em> +</td> +<td> +<p>remoteWrite is the list of remote write configurations.</p> +</td> +</tr> +<tr> +<td> +<code>securityContext</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#podsecuritycontext-v1-core"> +Kubernetes core/v1.PodSecurityContext +</a> +</em> +</td> +<td> +<p>SecurityContext holds pod-level security attributes and common container settings. +This defaults to the default PodSecurityContext.</p> +</td> +</tr> +<tr> +<td> +<code>listenLocal</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ListenLocal makes the Prometheus server listen on loopback, so that it +does not bind against the Pod IP.</p> +</td> +</tr> +<tr> +<td> +<code>containers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>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: +<code>prometheus</code>, <code>config-reloader</code>, and <code>thanos-sidecar</code>. 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.</p> +</td> +</tr> +<tr> +<td> +<code>initContainers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>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: <a href="https://kubernetes.io/docs/concepts/workloads/pods/init-containers/">https://kubernetes.io/docs/concepts/workloads/pods/init-containers/</a> +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: +<code>init-config-reloader</code>. 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.</p> +</td> +</tr> +<tr> +<td> +<code>additionalScrapeConfigs</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>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: +<a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config</a>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>apiserverConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.APIServerConfig"> +APIServerConfig +</a> +</em> +</td> +<td> +<p>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/.</p> +</td> +</tr> +<tr> +<td> +<code>priorityClassName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Priority class assigned to the Pods</p> +</td> +</tr> +<tr> +<td> +<code>portName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Port name used for the pods and governing service. +This defaults to web</p> +</td> +</tr> +<tr> +<td> +<code>arbitraryFSAccessThroughSMs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ArbitraryFSAccessThroughSMsConfig"> +ArbitraryFSAccessThroughSMsConfig +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>overrideHonorLabels</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When true, Prometheus resolves label conflicts by renaming the labels in +the scraped data to “exported_<label value>” for all targets created +from service and pod monitors. +Otherwise the HonorLabels field of the service or pod monitor applies.</p> +</td> +</tr> +<tr> +<td> +<code>overrideHonorTimestamps</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When true, Prometheus ignores the timestamps for all the targets created +from service and pod monitors. +Otherwise the HonorTimestamps field of the service or pod monitor applies.</p> +</td> +</tr> +<tr> +<td> +<code>ignoreNamespaceSelectors</code><br/> +<em> +bool +</em> +</td> +<td> +<p>IgnoreNamespaceSelectors if set to true will ignore NamespaceSelector +settings from all PodMonitor, ServiceMonitor and Probe objects. They +will only discover endpoints within their current namespace. +Defaults to false.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedNamespaceLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>EnforcedNamespaceLabel If set, a label will be added to</p> +<ol> +<li>all user-metrics (created by <code>ServiceMonitor</code>, <code>PodMonitor</code> and <code>Probe</code> objects) and</li> +<li>in all <code>PrometheusRule</code> objects (except the ones excluded in <code>prometheusRulesExcludedFromEnforce</code>) to +<ul> +<li>alerting & recording rules and</li> +<li>the metrics used in their expressions (<code>expr</code>).</li> +</ul></li> +</ol> +<p>Label name is this field’s value. +Label value is the namespace of the created object (mentioned above).</p> +</td> +</tr> +<tr> +<td> +<code>enforcedSampleLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedTargetLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedLabelLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedLabelNameLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedLabelValueLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedBodySizeLimit</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ByteSize"> +ByteSize +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>minReadySeconds</code><br/> +<em> +uint32 +</em> +</td> +<td> +<em>(Optional)</em> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>hostAliases</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.HostAlias"> +[]HostAlias +</a> +</em> +</td> +<td> +<p>Pods’ hostAliases configuration</p> +</td> +</tr> +<tr> +<td> +<code>retention</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Time duration Prometheus shall retain data for. Default is ‘24h’ if +retentionSize is not set, and must match the regular expression <code>[0-9]+(ms|s|m|h|d|w|y)</code> +(milliseconds seconds minutes hours days weeks years).</p> +</td> +</tr> +<tr> +<td> +<code>retentionSize</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ByteSize"> +ByteSize +</a> +</em> +</td> +<td> +<p>Maximum amount of disk space used by blocks.</p> +</td> +</tr> +<tr> +<td> +<code>disableCompaction</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Disable prometheus compaction.</p> +</td> +</tr> +<tr> +<td> +<code>walCompression</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Enable compression of the write-ahead log using Snappy. This flag is +only available in versions of Prometheus >= 2.11.0.</p> +</td> +</tr> +<tr> +<td> +<code>rules</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Rules"> +Rules +</a> +</em> +</td> +<td> +<p>/–rules.*/ command-line arguments.</p> +</td> +</tr> +<tr> +<td> +<code>excludedFromEnforcement</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ObjectReference"> +[]ObjectReference +</a> +</em> +</td> +<td> +<p>List of references to PodMonitor, ServiceMonitor, Probe and PrometheusRule objects +to be excluded from enforcing a namespace label of origin. +Applies only if enforcedNamespaceLabel set to true.</p> +</td> +</tr> +<tr> +<td> +<code>prometheusRulesExcludedFromEnforce</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusRuleExcludeConfig"> +[]PrometheusRuleExcludeConfig +</a> +</em> +</td> +<td> +<p>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. +Deprecated: use excludedFromEnforcement instead.</p> +</td> +</tr> +<tr> +<td> +<code>query</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.QuerySpec"> +QuerySpec +</a> +</em> +</td> +<td> +<p>QuerySpec defines the query command line flags when starting Prometheus.</p> +</td> +</tr> +<tr> +<td> +<code>ruleSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>ruleNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespaces to be selected for PrometheusRules discovery. If unspecified, only +the same namespace as the Prometheus object is in is used.</p> +</td> +</tr> +<tr> +<td> +<code>alerting</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AlertingSpec"> +AlertingSpec +</a> +</em> +</td> +<td> +<p>Define details regarding alerting.</p> +</td> +</tr> +<tr> +<td> +<code>remoteRead</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RemoteReadSpec"> +[]RemoteReadSpec +</a> +</em> +</td> +<td> +<p>remoteRead is the list of remote read configurations.</p> +</td> +</tr> +<tr> +<td> +<code>additionalAlertRelabelConfigs</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>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: +<a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs</a>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>additionalAlertManagerConfigs</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>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: +<a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config</a>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>thanos</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ThanosSpec"> +ThanosSpec +</a> +</em> +</td> +<td> +<p>Thanos configuration allows configuring various aspects of a Prometheus +server in a Thanos environment.</p> +<p>This section is experimental, it may change significantly without +deprecation notice in any release.</p> +<p>This is experimental and may change significantly without backward +compatibility in any release.</p> +</td> +</tr> +<tr> +<td> +<code>queryLogFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>QueryLogFile specifies the file to which PromQL queries are logged. +If the filename has an empty path, e.g. ‘query.log’, prometheus-operator will mount the file into an +emptyDir volume at <code>/var/log/prometheus</code>. If a full path is provided, e.g. /var/log/prometheus/query.log, you must mount a volume +in the specified directory and it must be writable. This is because the prometheus container runs with a read-only root filesystem for security reasons. +Alternatively, the location can be set to a stdout location such as <code>/dev/stdout</code> to log +query 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 (<a href="https://prometheus.io/docs/guides/query-log/">https://prometheus.io/docs/guides/query-log/</a>)</p> +</td> +</tr> +<tr> +<td> +<code>allowOverlappingBlocks</code><br/> +<em> +bool +</em> +</td> +<td> +<p>AllowOverlappingBlocks enables vertical compaction and vertical query merge in Prometheus. +This is still experimental in Prometheus so it may change in any upcoming release.</p> +</td> +</tr> +<tr> +<td> +<code>exemplars</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Exemplars"> +Exemplars +</a> +</em> +</td> +<td> +<p>Exemplars related settings that are runtime reloadable. +It requires to enable the exemplar storage feature to be effective.</p> +</td> +</tr> +</table> +</td> +</tr> +<tr> +<td> +<code>status</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusStatus"> +PrometheusStatus +</a> +</em> +</td> +<td> +<p>Most recent observed status of the Prometheus cluster. Read-only. +More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PrometheusRule">PrometheusRule +</h3> +<div> +<p>PrometheusRule defines recording and alerting rules for a Prometheus instance</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>apiVersion</code><br/> +string</td> +<td> +<code> +monitoring.coreos.com/v1 +</code> +</td> +</tr> +<tr> +<td> +<code>kind</code><br/> +string +</td> +<td><code>PrometheusRule</code></td> +</tr> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#objectmeta-v1-meta"> +Kubernetes meta/v1.ObjectMeta +</a> +</em> +</td> +<td> +Refer to the Kubernetes API documentation for the fields of the +<code>metadata</code> field. +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusRuleSpec"> +PrometheusRuleSpec +</a> +</em> +</td> +<td> +<p>Specification of desired alerting rule definitions for Prometheus.</p> +<br/> +<br/> +<table> +<tr> +<td> +<code>groups</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RuleGroup"> +[]RuleGroup +</a> +</em> +</td> +<td> +<p>Content of Prometheus rule file</p> +</td> +</tr> +</table> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ServiceMonitor">ServiceMonitor +</h3> +<div> +<p>ServiceMonitor defines monitoring for a set of services.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>apiVersion</code><br/> +string</td> +<td> +<code> +monitoring.coreos.com/v1 +</code> +</td> +</tr> +<tr> +<td> +<code>kind</code><br/> +string +</td> +<td><code>ServiceMonitor</code></td> +</tr> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#objectmeta-v1-meta"> +Kubernetes meta/v1.ObjectMeta +</a> +</em> +</td> +<td> +Refer to the Kubernetes API documentation for the fields of the +<code>metadata</code> field. +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ServiceMonitorSpec"> +ServiceMonitorSpec +</a> +</em> +</td> +<td> +<p>Specification of desired Service selection for target discovery by +Prometheus.</p> +<br/> +<br/> +<table> +<tr> +<td> +<code>jobLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>JobLabel selects the label from the associated Kubernetes service which will be used as the <code>job</code> label for all metrics.</p> +<p>For example: +If in <code>ServiceMonitor.spec.jobLabel: foo</code> and in <code>Service.metadata.labels.foo: bar</code>, +then the <code>job="bar"</code> label is added to all metrics.</p> +<p>If the value of this field is empty or if the label doesn’t exist for the given Service, the <code>job</code> label of the metrics defaults to the name of the Kubernetes Service.</p> +</td> +</tr> +<tr> +<td> +<code>targetLabels</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>TargetLabels transfers labels from the Kubernetes <code>Service</code> onto the created metrics.</p> +</td> +</tr> +<tr> +<td> +<code>podTargetLabels</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>PodTargetLabels transfers labels on the Kubernetes <code>Pod</code> onto the created metrics.</p> +</td> +</tr> +<tr> +<td> +<code>endpoints</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Endpoint"> +[]Endpoint +</a> +</em> +</td> +<td> +<p>A list of endpoints allowed as part of this ServiceMonitor.</p> +</td> +</tr> +<tr> +<td> +<code>selector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Selector to select Endpoints objects.</p> +</td> +</tr> +<tr> +<td> +<code>namespaceSelector</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.NamespaceSelector"> +NamespaceSelector +</a> +</em> +</td> +<td> +<p>Selector to select which namespaces the Kubernetes Endpoints objects are discovered from.</p> +</td> +</tr> +<tr> +<td> +<code>sampleLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>targetLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>TargetLimit defines a limit on the number of scraped targets that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>labelLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on number of labels that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelNameLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels name that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelValueLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels value that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +</table> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.APIServerConfig">APIServerConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields</a>) +</p> +<div> +<p>APIServerConfig defines a host and auth methods to access apiserver. +More info: <a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>host</code><br/> +<em> +string +</em> +</td> +<td> +<p>Host of apiserver. +A valid string consisting of a hostname or IP followed by an optional port number</p> +</td> +</tr> +<tr> +<td> +<code>basicAuth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.BasicAuth"> +BasicAuth +</a> +</em> +</td> +<td> +<p>BasicAuth allow an endpoint to authenticate over basic authentication</p> +</td> +</tr> +<tr> +<td> +<code>bearerToken</code><br/> +<em> +string +</em> +</td> +<td> +<p>Bearer token for accessing apiserver.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>File to read bearer token for accessing apiserver.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.TLSConfig"> +TLSConfig +</a> +</em> +</td> +<td> +<p>TLS Config to use for accessing apiserver.</p> +</td> +</tr> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Authorization"> +Authorization +</a> +</em> +</td> +<td> +<p>Authorization section for accessing apiserver</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.AlertingSpec">AlertingSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>) +</p> +<div> +<p>AlertingSpec defines parameters for alerting configuration of Prometheus servers.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>alertmanagers</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AlertmanagerEndpoints"> +[]AlertmanagerEndpoints +</a> +</em> +</td> +<td> +<p>AlertmanagerEndpoints Prometheus should fire alerts against.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.AlertmanagerConfiguration">AlertmanagerConfiguration +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertmanagerSpec">AlertmanagerSpec</a>) +</p> +<div> +<p>AlertmanagerConfiguration defines the global Alertmanager configuration.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>The name of the AlertmanagerConfig resource which is used to generate the global configuration. +It must be defined in the same namespace as the Alertmanager object. +The operator will not enforce a <code>namespace</code> label for routes and inhibition rules.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.AlertmanagerEndpoints">AlertmanagerEndpoints +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertingSpec">AlertingSpec</a>) +</p> +<div> +<p>AlertmanagerEndpoints defines a selection of a single Endpoints object +containing alertmanager IPs to fire alerts against.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>namespace</code><br/> +<em> +string +</em> +</td> +<td> +<p>Namespace of Endpoints object.</p> +</td> +</tr> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of Endpoints object in Namespace.</p> +</td> +</tr> +<tr> +<td> +<code>port</code><br/> +<em> +<a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/util/intstr#IntOrString"> +k8s.io/apimachinery/pkg/util/intstr.IntOrString +</a> +</em> +</td> +<td> +<p>Port the Alertmanager API is exposed on.</p> +</td> +</tr> +<tr> +<td> +<code>scheme</code><br/> +<em> +string +</em> +</td> +<td> +<p>Scheme to use when firing alerts.</p> +</td> +</tr> +<tr> +<td> +<code>pathPrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>Prefix for the HTTP path alerts are pushed to.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.TLSConfig"> +TLSConfig +</a> +</em> +</td> +<td> +<p>TLS Config to use for alertmanager connection.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>BearerTokenFile to read from filesystem to use when authenticating to +Alertmanager.</p> +</td> +</tr> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeAuthorization"> +SafeAuthorization +</a> +</em> +</td> +<td> +<p>Authorization section for this alertmanager endpoint</p> +</td> +</tr> +<tr> +<td> +<code>apiVersion</code><br/> +<em> +string +</em> +</td> +<td> +<p>Version of the Alertmanager API that Prometheus uses to send alerts. It +can be “v1” or “v2”.</p> +</td> +</tr> +<tr> +<td> +<code>timeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Timeout is a per-target Alertmanager timeout when pushing alerts.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.AlertmanagerSpec">AlertmanagerSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.Alertmanager">Alertmanager</a>) +</p> +<div> +<p>AlertmanagerSpec is a specification of the desired behavior of the Alertmanager cluster. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>podMetadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.EmbeddedObjectMetadata"> +EmbeddedObjectMetadata +</a> +</em> +</td> +<td> +<p>PodMetadata configures Labels and Annotations which are propagated to the alertmanager pods.</p> +</td> +</tr> +<tr> +<td> +<code>image</code><br/> +<em> +string +</em> +</td> +<td> +<p>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 Alertmanager is being +configured.</p> +</td> +</tr> +<tr> +<td> +<code>version</code><br/> +<em> +string +</em> +</td> +<td> +<p>Version the cluster should be on.</p> +</td> +</tr> +<tr> +<td> +<code>tag</code><br/> +<em> +string +</em> +</td> +<td> +<p>Tag of Alertmanager container image to be deployed. Defaults to the value of <code>version</code>. +Version is ignored if Tag is set. +Deprecated: use ‘image’ instead. The image tag can be specified +as part of the image URL.</p> +</td> +</tr> +<tr> +<td> +<code>sha</code><br/> +<em> +string +</em> +</td> +<td> +<p>SHA of Alertmanager container image to be deployed. Defaults to the value of <code>version</code>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>baseImage</code><br/> +<em> +string +</em> +</td> +<td> +<p>Base image that is used to deploy pods, without tag. +Deprecated: use ‘image’ instead</p> +</td> +</tr> +<tr> +<td> +<code>imagePullSecrets</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#localobjectreference-v1-core"> +[]Kubernetes core/v1.LocalObjectReference +</a> +</em> +</td> +<td> +<p>An optional list of references to secrets in the same namespace +to use for pulling prometheus and alertmanager images from registries +see <a href="http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod">http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod</a></p> +</td> +</tr> +<tr> +<td> +<code>secrets</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>Secrets is a list of Secrets in the same namespace as the Alertmanager +object, which shall be mounted into the Alertmanager Pods. +The Secrets are mounted into /etc/alertmanager/secrets/<secret-name>.</p> +</td> +</tr> +<tr> +<td> +<code>configMaps</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>ConfigMaps is a list of ConfigMaps in the same namespace as the Alertmanager +object, which shall be mounted into the Alertmanager Pods. +The ConfigMaps are mounted into /etc/alertmanager/configmaps/<configmap-name>.</p> +</td> +</tr> +<tr> +<td> +<code>configSecret</code><br/> +<em> +string +</em> +</td> +<td> +<p>ConfigSecret is the name of a Kubernetes Secret in the same namespace as the +Alertmanager object, which contains the configuration for this Alertmanager +instance. If empty, it defaults to ‘alertmanager-<alertmanager-name>’.</p> +<p>The Alertmanager configuration should be available under the +<code>alertmanager.yaml</code> key. Additional keys from the original secret are +copied to the generated secret.</p> +<p>If either the secret or the <code>alertmanager.yaml</code> key is missing, the +operator provisions an Alertmanager configuration with one empty +receiver (effectively dropping alert notifications).</p> +</td> +</tr> +<tr> +<td> +<code>logLevel</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log level for Alertmanager to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>logFormat</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log format for Alertmanager to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Size is the expected size of the alertmanager cluster. The controller will +eventually make the size of the running cluster equal to the expected +size.</p> +</td> +</tr> +<tr> +<td> +<code>retention</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.GoDuration"> +GoDuration +</a> +</em> +</td> +<td> +<p>Time duration Alertmanager shall retain data for. Default is ‘120h’, +and must match the regular expression <code>[0-9]+(ms|s|m|h)</code> (milliseconds seconds minutes hours).</p> +</td> +</tr> +<tr> +<td> +<code>storage</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.StorageSpec"> +StorageSpec +</a> +</em> +</td> +<td> +<p>Storage is the definition of how storage will be used by the Alertmanager +instances.</p> +</td> +</tr> +<tr> +<td> +<code>volumes</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volume-v1-core"> +[]Kubernetes core/v1.Volume +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>volumeMounts</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volumemount-v1-core"> +[]Kubernetes core/v1.VolumeMount +</a> +</em> +</td> +<td> +<p>VolumeMounts allows configuration of additional VolumeMounts on the output StatefulSet definition. +VolumeMounts specified will be appended to other VolumeMounts in the alertmanager container, +that are generated as a result of StorageSpec objects.</p> +</td> +</tr> +<tr> +<td> +<code>externalUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>The external URL the Alertmanager instances will be available under. This is +necessary to generate correct URLs. This is necessary if Alertmanager is not +served from root of a DNS name.</p> +</td> +</tr> +<tr> +<td> +<code>routePrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>The route prefix Alertmanager 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 <code>kubectl proxy</code>.</p> +</td> +</tr> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>If set to true all actions on the underlying managed objects are not +goint to be performed, except for delete actions.</p> +</td> +</tr> +<tr> +<td> +<code>nodeSelector</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Define which Nodes the Pods are scheduled on.</p> +</td> +</tr> +<tr> +<td> +<code>resources</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#resourcerequirements-v1-core"> +Kubernetes core/v1.ResourceRequirements +</a> +</em> +</td> +<td> +<p>Define resources requests and limits for single Pods.</p> +</td> +</tr> +<tr> +<td> +<code>affinity</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#affinity-v1-core"> +Kubernetes core/v1.Affinity +</a> +</em> +</td> +<td> +<p>If specified, the pod’s scheduling constraints.</p> +</td> +</tr> +<tr> +<td> +<code>tolerations</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#toleration-v1-core"> +[]Kubernetes core/v1.Toleration +</a> +</em> +</td> +<td> +<p>If specified, the pod’s tolerations.</p> +</td> +</tr> +<tr> +<td> +<code>topologySpreadConstraints</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#topologyspreadconstraint-v1-core"> +[]Kubernetes core/v1.TopologySpreadConstraint +</a> +</em> +</td> +<td> +<p>If specified, the pod’s topology spread constraints.</p> +</td> +</tr> +<tr> +<td> +<code>securityContext</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#podsecuritycontext-v1-core"> +Kubernetes core/v1.PodSecurityContext +</a> +</em> +</td> +<td> +<p>SecurityContext holds pod-level security attributes and common container settings. +This defaults to the default PodSecurityContext.</p> +</td> +</tr> +<tr> +<td> +<code>serviceAccountName</code><br/> +<em> +string +</em> +</td> +<td> +<p>ServiceAccountName is the name of the ServiceAccount to use to run the +Prometheus Pods.</p> +</td> +</tr> +<tr> +<td> +<code>listenLocal</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ListenLocal makes the Alertmanager server listen on loopback, so that it +does not bind against the Pod IP. Note this is only for the Alertmanager +UI, not the gossip communication.</p> +</td> +</tr> +<tr> +<td> +<code>containers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>Containers allows injecting additional containers. This is meant to +allow adding an authentication proxy to an Alertmanager pod. +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: <code>alertmanager</code> and +<code>config-reloader</code>. 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.</p> +</td> +</tr> +<tr> +<td> +<code>initContainers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. +fetch secrets for injection into the Alertmanager configuration from external sources. Any +errors during the execution of an initContainer will lead to a restart of the Pod. More info: <a href="https://kubernetes.io/docs/concepts/workloads/pods/init-containers/">https://kubernetes.io/docs/concepts/workloads/pods/init-containers/</a> +Using initContainers for any use case other then secret fetching 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.</p> +</td> +</tr> +<tr> +<td> +<code>priorityClassName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Priority class assigned to the Pods</p> +</td> +</tr> +<tr> +<td> +<code>additionalPeers</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>AdditionalPeers allows injecting a set of additional Alertmanagers to peer with to form a highly available cluster.</p> +</td> +</tr> +<tr> +<td> +<code>clusterAdvertiseAddress</code><br/> +<em> +string +</em> +</td> +<td> +<p>ClusterAdvertiseAddress is the explicit address to advertise in cluster. +Needs to be provided for non RFC1918 <a href="public">1</a> addresses. +[1] RFC1918: <a href="https://tools.ietf.org/html/rfc1918">https://tools.ietf.org/html/rfc1918</a></p> +</td> +</tr> +<tr> +<td> +<code>clusterGossipInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.GoDuration"> +GoDuration +</a> +</em> +</td> +<td> +<p>Interval between gossip attempts.</p> +</td> +</tr> +<tr> +<td> +<code>clusterPushpullInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.GoDuration"> +GoDuration +</a> +</em> +</td> +<td> +<p>Interval between pushpull attempts.</p> +</td> +</tr> +<tr> +<td> +<code>clusterPeerTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.GoDuration"> +GoDuration +</a> +</em> +</td> +<td> +<p>Timeout for cluster peering.</p> +</td> +</tr> +<tr> +<td> +<code>portName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Port name used for the pods and governing service. +This defaults to web</p> +</td> +</tr> +<tr> +<td> +<code>forceEnableClusterMode</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ForceEnableClusterMode ensures Alertmanager does not deactivate the cluster mode when running with a single replica. +Use case is e.g. spanning an Alertmanager cluster across Kubernetes clusters with a single replica in each.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagerConfigSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>AlertmanagerConfigs to be selected for to merge and configure Alertmanager with.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagerConfigNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespaces to be selected for AlertmanagerConfig discovery. If nil, only +check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>minReadySeconds</code><br/> +<em> +uint32 +</em> +</td> +<td> +<em>(Optional)</em> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>hostAliases</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.HostAlias"> +[]HostAlias +</a> +</em> +</td> +<td> +<p>Pods’ hostAliases configuration</p> +</td> +</tr> +<tr> +<td> +<code>web</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AlertmanagerWebSpec"> +AlertmanagerWebSpec +</a> +</em> +</td> +<td> +<p>Defines the web command line flags when starting Alertmanager.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagerConfiguration</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AlertmanagerConfiguration"> +AlertmanagerConfiguration +</a> +</em> +</td> +<td> +<p>EXPERIMENTAL: alertmanagerConfiguration specifies the global Alertmanager configuration. +If defined, it takes precedence over the <code>configSecret</code> field. +This field may change in future releases.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.AlertmanagerStatus">AlertmanagerStatus +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.Alertmanager">Alertmanager</a>) +</p> +<div> +<p>AlertmanagerStatus is the most recent observed status of the Alertmanager cluster. Read-only. Not +included when requesting from the apiserver, only from the Prometheus +Operator API itself. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Represents whether any actions on the underlying managed objects are +being performed. Only delete actions will be performed.</p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of non-terminated pods targeted by this Alertmanager +cluster (their labels match the selector).</p> +</td> +</tr> +<tr> +<td> +<code>updatedReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of non-terminated pods targeted by this Alertmanager +cluster that have the desired version spec.</p> +</td> +</tr> +<tr> +<td> +<code>availableReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of available pods (ready for at least minReadySeconds) +targeted by this Alertmanager cluster.</p> +</td> +</tr> +<tr> +<td> +<code>unavailableReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of unavailable pods targeted by this Alertmanager cluster.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.AlertmanagerWebSpec">AlertmanagerWebSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertmanagerSpec">AlertmanagerSpec</a>) +</p> +<div> +<p>AlertmanagerWebSpec defines the query command line flags when starting Alertmanager.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.WebTLSConfig"> +WebTLSConfig +</a> +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ArbitraryFSAccessThroughSMsConfig">ArbitraryFSAccessThroughSMsConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields</a>) +</p> +<div> +<p>ArbitraryFSAccessThroughSMsConfig enables users to configure, whether +a service monitor selected by the Prometheus instance is allowed to use +arbitrary files on the file system of the Prometheus container. This is the case +when e.g. a service monitor specifies a BearerTokenFile in an endpoint. A +malicious user could create a service monitor selecting arbitrary secret files +in the Prometheus container. Those secrets would then be sent with a scrape +request by Prometheus to a malicious target. Denying the above would prevent the +attack, users can instead use the BearerTokenSecret field.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>deny</code><br/> +<em> +bool +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.AttachMetadata">AttachMetadata +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PodMonitorSpec">PodMonitorSpec</a>) +</p> +<div> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>node</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When set to true, Prometheus must have permissions to get Nodes.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.Authorization">Authorization +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.APIServerConfig">APIServerConfig</a>, <a href="#monitoring.coreos.com/v1.RemoteReadSpec">RemoteReadSpec</a>, <a href="#monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec</a>) +</p> +<div> +<p>Authorization contains optional <code>Authorization</code> header configuration. +This section is only understood by versions of Prometheus >= 2.26.0.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>type</code><br/> +<em> +string +</em> +</td> +<td> +<p>Set the authentication type. Defaults to Bearer, Basic will cause an +error</p> +</td> +</tr> +<tr> +<td> +<code>credentials</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the credentials of the request</p> +</td> +</tr> +<tr> +<td> +<code>credentialsFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>File to read a secret from, mutually exclusive with Credentials (from SafeAuthorization)</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.AuthorizationValidationError">AuthorizationValidationError +</h3> +<div> +<p>AuthorizationValidationError is returned by Authorization.Validate() +on semantically invalid configurations.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>err</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.BasicAuth">BasicAuth +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.APIServerConfig">APIServerConfig</a>, <a href="#monitoring.coreos.com/v1.Endpoint">Endpoint</a>, <a href="#monitoring.coreos.com/v1.PodMetricsEndpoint">PodMetricsEndpoint</a>, <a href="#monitoring.coreos.com/v1.ProbeSpec">ProbeSpec</a>, <a href="#monitoring.coreos.com/v1.RemoteReadSpec">RemoteReadSpec</a>, <a href="#monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec</a>, <a href="#monitoring.coreos.com/v1alpha1.HTTPConfig">HTTPConfig</a>, <a href="#monitoring.coreos.com/v1beta1.HTTPConfig">HTTPConfig</a>) +</p> +<div> +<p>BasicAuth allow an endpoint to authenticate over basic authentication +More info: <a href="https://prometheus.io/docs/operating/configuration/#endpoints">https://prometheus.io/docs/operating/configuration/#endpoints</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>username</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret in the service monitor namespace that contains the username +for authentication.</p> +</td> +</tr> +<tr> +<td> +<code>password</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret in the service monitor namespace that contains the password +for authentication.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ByteSize">ByteSize +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields</a>, <a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>) +</p> +<div> +<p>ByteSize is a valid memory size type based on powers-of-2, so 1KB is 1024B. +Supported units: B, KB, KiB, MB, MiB, GB, GiB, TB, TiB, PB, PiB, EB, EiB Ex: <code>512MB</code>.</p> +</div> +<h3 id="monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>) +</p> +<div> +<p>CommonPrometheusFields are the options available to both the Prometheus server and agent.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>podMetadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.EmbeddedObjectMetadata"> +EmbeddedObjectMetadata +</a> +</em> +</td> +<td> +<p>PodMetadata configures Labels and Annotations which are propagated to the prometheus pods.</p> +</td> +</tr> +<tr> +<td> +<code>serviceMonitorSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>ServiceMonitors to be selected for target discovery. <em>Deprecated:</em> if +neither this nor podMonitorSelector are specified, configuration is +unmanaged.</p> +</td> +</tr> +<tr> +<td> +<code>serviceMonitorNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespace’s labels to match for ServiceMonitor discovery. If nil, only +check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>podMonitorSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p><em>Experimental</em> PodMonitors to be selected for target discovery. +<em>Deprecated:</em> if neither this nor serviceMonitorSelector are specified, +configuration is unmanaged.</p> +</td> +</tr> +<tr> +<td> +<code>podMonitorNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespace’s labels to match for PodMonitor discovery. If nil, only +check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>probeSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p><em>Experimental</em> Probes to be selected for target discovery.</p> +</td> +</tr> +<tr> +<td> +<code>probeNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p><em>Experimental</em> Namespaces to be selected for Probe discovery. If nil, only check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>version</code><br/> +<em> +string +</em> +</td> +<td> +<p>Version of Prometheus to be deployed.</p> +</td> +</tr> +<tr> +<td> +<code>tag</code><br/> +<em> +string +</em> +</td> +<td> +<p>Tag of Prometheus container image to be deployed. Defaults to the value of <code>version</code>. +Version is ignored if Tag is set. +Deprecated: use ‘image’ instead. The image tag can be specified +as part of the image URL.</p> +</td> +</tr> +<tr> +<td> +<code>sha</code><br/> +<em> +string +</em> +</td> +<td> +<p>SHA of Prometheus container image to be deployed. Defaults to the value of <code>version</code>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When a Prometheus deployment is paused, no actions except for deletion +will be performed on the underlying objects.</p> +</td> +</tr> +<tr> +<td> +<code>image</code><br/> +<em> +string +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>baseImage</code><br/> +<em> +string +</em> +</td> +<td> +<p>Base image to use for a Prometheus deployment. +Deprecated: use ‘image’ instead</p> +</td> +</tr> +<tr> +<td> +<code>imagePullSecrets</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#localobjectreference-v1-core"> +[]Kubernetes core/v1.LocalObjectReference +</a> +</em> +</td> +<td> +<p>An optional list of references to secrets in the same namespace +to use for pulling prometheus and alertmanager images from registries +see <a href="http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod">http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod</a></p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>shards</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>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 +<code>__address__</code> target meta-label.</p> +</td> +</tr> +<tr> +<td> +<code>replicaExternalLabelName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of Prometheus external label used to denote replica name. +Defaults to the value of <code>prometheus_replica</code>. External label will +<em>not</em> be added when value is set to empty string (<code>""</code>).</p> +</td> +</tr> +<tr> +<td> +<code>prometheusExternalLabelName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of Prometheus external label used to denote Prometheus instance +name. Defaults to the value of <code>prometheus</code>. External label will +<em>not</em> be added when value is set to empty string (<code>""</code>).</p> +</td> +</tr> +<tr> +<td> +<code>logLevel</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log level for Prometheus to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>logFormat</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log format for Prometheus to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>scrapeInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval between consecutive scrapes. Default: <code>30s</code></p> +</td> +</tr> +<tr> +<td> +<code>scrapeTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Number of seconds to wait for target to respond before erroring.</p> +</td> +</tr> +<tr> +<td> +<code>evaluationInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval between consecutive evaluations. Default: <code>30s</code></p> +</td> +</tr> +<tr> +<td> +<code>externalLabels</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>The labels to add to any time series or alerts when communicating with +external systems (federation, remote storage, Alertmanager).</p> +</td> +</tr> +<tr> +<td> +<code>enableAdminAPI</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Enable access to prometheus web admin API. Defaults to the value of <code>false</code>. +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 <a href="https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis">https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis</a></p> +</td> +</tr> +<tr> +<td> +<code>enableRemoteWriteReceiver</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Enable Prometheus to be used as a receiver for the Prometheus remote write protocol. Defaults to the value of <code>false</code>. +WARNING: This is not considered an efficient way of ingesting samples. +Use it with caution for specific low-volume use cases. +It is not suitable for replacing the ingestion via scraping and turning +Prometheus into a push-based metrics collection system. +For more information see <a href="https://prometheus.io/docs/prometheus/latest/querying/api/#remote-write-receiver">https://prometheus.io/docs/prometheus/latest/querying/api/#remote-write-receiver</a> +Only valid in Prometheus versions 2.33.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>enableFeatures</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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 <a href="https://prometheus.io/docs/prometheus/latest/disabled_features/">https://prometheus.io/docs/prometheus/latest/disabled_features/</a></p> +</td> +</tr> +<tr> +<td> +<code>externalUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>routePrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>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 <code>kubectl proxy</code>.</p> +</td> +</tr> +<tr> +<td> +<code>storage</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.StorageSpec"> +StorageSpec +</a> +</em> +</td> +<td> +<p>Storage spec to specify how storage shall be used.</p> +</td> +</tr> +<tr> +<td> +<code>volumes</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volume-v1-core"> +[]Kubernetes core/v1.Volume +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>volumeMounts</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volumemount-v1-core"> +[]Kubernetes core/v1.VolumeMount +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>web</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusWebSpec"> +PrometheusWebSpec +</a> +</em> +</td> +<td> +<p>Defines the web command line flags when starting Prometheus.</p> +</td> +</tr> +<tr> +<td> +<code>resources</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#resourcerequirements-v1-core"> +Kubernetes core/v1.ResourceRequirements +</a> +</em> +</td> +<td> +<p>Define resources requests and limits for single Pods.</p> +</td> +</tr> +<tr> +<td> +<code>nodeSelector</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Define which Nodes the Pods are scheduled on.</p> +</td> +</tr> +<tr> +<td> +<code>serviceAccountName</code><br/> +<em> +string +</em> +</td> +<td> +<p>ServiceAccountName is the name of the ServiceAccount to use to run the +Prometheus Pods.</p> +</td> +</tr> +<tr> +<td> +<code>secrets</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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/<secret-name>.</p> +</td> +</tr> +<tr> +<td> +<code>configMaps</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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/<configmap-name>.</p> +</td> +</tr> +<tr> +<td> +<code>affinity</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#affinity-v1-core"> +Kubernetes core/v1.Affinity +</a> +</em> +</td> +<td> +<p>If specified, the pod’s scheduling constraints.</p> +</td> +</tr> +<tr> +<td> +<code>tolerations</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#toleration-v1-core"> +[]Kubernetes core/v1.Toleration +</a> +</em> +</td> +<td> +<p>If specified, the pod’s tolerations.</p> +</td> +</tr> +<tr> +<td> +<code>topologySpreadConstraints</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#topologyspreadconstraint-v1-core"> +[]Kubernetes core/v1.TopologySpreadConstraint +</a> +</em> +</td> +<td> +<p>If specified, the pod’s topology spread constraints.</p> +</td> +</tr> +<tr> +<td> +<code>remoteWrite</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RemoteWriteSpec"> +[]RemoteWriteSpec +</a> +</em> +</td> +<td> +<p>remoteWrite is the list of remote write configurations.</p> +</td> +</tr> +<tr> +<td> +<code>securityContext</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#podsecuritycontext-v1-core"> +Kubernetes core/v1.PodSecurityContext +</a> +</em> +</td> +<td> +<p>SecurityContext holds pod-level security attributes and common container settings. +This defaults to the default PodSecurityContext.</p> +</td> +</tr> +<tr> +<td> +<code>listenLocal</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ListenLocal makes the Prometheus server listen on loopback, so that it +does not bind against the Pod IP.</p> +</td> +</tr> +<tr> +<td> +<code>containers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>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: +<code>prometheus</code>, <code>config-reloader</code>, and <code>thanos-sidecar</code>. 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.</p> +</td> +</tr> +<tr> +<td> +<code>initContainers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>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: <a href="https://kubernetes.io/docs/concepts/workloads/pods/init-containers/">https://kubernetes.io/docs/concepts/workloads/pods/init-containers/</a> +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: +<code>init-config-reloader</code>. 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.</p> +</td> +</tr> +<tr> +<td> +<code>additionalScrapeConfigs</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>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: +<a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config</a>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>apiserverConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.APIServerConfig"> +APIServerConfig +</a> +</em> +</td> +<td> +<p>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/.</p> +</td> +</tr> +<tr> +<td> +<code>priorityClassName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Priority class assigned to the Pods</p> +</td> +</tr> +<tr> +<td> +<code>portName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Port name used for the pods and governing service. +This defaults to web</p> +</td> +</tr> +<tr> +<td> +<code>arbitraryFSAccessThroughSMs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ArbitraryFSAccessThroughSMsConfig"> +ArbitraryFSAccessThroughSMsConfig +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>overrideHonorLabels</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When true, Prometheus resolves label conflicts by renaming the labels in +the scraped data to “exported_<label value>” for all targets created +from service and pod monitors. +Otherwise the HonorLabels field of the service or pod monitor applies.</p> +</td> +</tr> +<tr> +<td> +<code>overrideHonorTimestamps</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When true, Prometheus ignores the timestamps for all the targets created +from service and pod monitors. +Otherwise the HonorTimestamps field of the service or pod monitor applies.</p> +</td> +</tr> +<tr> +<td> +<code>ignoreNamespaceSelectors</code><br/> +<em> +bool +</em> +</td> +<td> +<p>IgnoreNamespaceSelectors if set to true will ignore NamespaceSelector +settings from all PodMonitor, ServiceMonitor and Probe objects. They +will only discover endpoints within their current namespace. +Defaults to false.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedNamespaceLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>EnforcedNamespaceLabel If set, a label will be added to</p> +<ol> +<li>all user-metrics (created by <code>ServiceMonitor</code>, <code>PodMonitor</code> and <code>Probe</code> objects) and</li> +<li>in all <code>PrometheusRule</code> objects (except the ones excluded in <code>prometheusRulesExcludedFromEnforce</code>) to +<ul> +<li>alerting & recording rules and</li> +<li>the metrics used in their expressions (<code>expr</code>).</li> +</ul></li> +</ol> +<p>Label name is this field’s value. +Label value is the namespace of the created object (mentioned above).</p> +</td> +</tr> +<tr> +<td> +<code>enforcedSampleLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedTargetLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedLabelLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedLabelNameLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedLabelValueLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedBodySizeLimit</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ByteSize"> +ByteSize +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>minReadySeconds</code><br/> +<em> +uint32 +</em> +</td> +<td> +<em>(Optional)</em> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>hostAliases</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.HostAlias"> +[]HostAlias +</a> +</em> +</td> +<td> +<p>Pods’ hostAliases configuration</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.Duration">Duration +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertmanagerEndpoints">AlertmanagerEndpoints</a>, <a href="#monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields</a>, <a href="#monitoring.coreos.com/v1.Endpoint">Endpoint</a>, <a href="#monitoring.coreos.com/v1.MetadataConfig">MetadataConfig</a>, <a href="#monitoring.coreos.com/v1.PodMetricsEndpoint">PodMetricsEndpoint</a>, <a href="#monitoring.coreos.com/v1.ProbeSpec">ProbeSpec</a>, <a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>, <a href="#monitoring.coreos.com/v1.QuerySpec">QuerySpec</a>, <a href="#monitoring.coreos.com/v1.RemoteReadSpec">RemoteReadSpec</a>, <a href="#monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec</a>, <a href="#monitoring.coreos.com/v1.ThanosRulerSpec">ThanosRulerSpec</a>, <a href="#monitoring.coreos.com/v1.ThanosSpec">ThanosSpec</a>) +</p> +<div> +<p>Duration is a valid time duration that can be parsed by Prometheus model.ParseDuration() function. +Supported units: y, w, d, h, m, s, ms +Examples: <code>30s</code>, <code>1m</code>, <code>1h20m15s</code>, <code>15d</code></p> +</div> +<h3 id="monitoring.coreos.com/v1.EmbeddedObjectMetadata">EmbeddedObjectMetadata +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertmanagerSpec">AlertmanagerSpec</a>, <a href="#monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields</a>, <a href="#monitoring.coreos.com/v1.EmbeddedPersistentVolumeClaim">EmbeddedPersistentVolumeClaim</a>, <a href="#monitoring.coreos.com/v1.ThanosRulerSpec">ThanosRulerSpec</a>) +</p> +<div> +<p>EmbeddedObjectMetadata contains a subset of the fields included in k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta +Only fields which are relevant to embedded resources are included.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>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: <a href="http://kubernetes.io/docs/user-guide/identifiers#names">http://kubernetes.io/docs/user-guide/identifiers#names</a></p> +</td> +</tr> +<tr> +<td> +<code>labels</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<em>(Optional)</em> +<p>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: <a href="http://kubernetes.io/docs/user-guide/labels">http://kubernetes.io/docs/user-guide/labels</a></p> +</td> +</tr> +<tr> +<td> +<code>annotations</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<em>(Optional)</em> +<p>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: <a href="http://kubernetes.io/docs/user-guide/annotations">http://kubernetes.io/docs/user-guide/annotations</a></p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.EmbeddedPersistentVolumeClaim">EmbeddedPersistentVolumeClaim +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.StorageSpec">StorageSpec</a>) +</p> +<div> +<p>EmbeddedPersistentVolumeClaim is an embedded version of k8s.io/api/core/v1.PersistentVolumeClaim. +It contains TypeMeta and a reduced ObjectMeta.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.EmbeddedObjectMetadata"> +EmbeddedObjectMetadata +</a> +</em> +</td> +<td> +<p>EmbeddedMetadata contains metadata relevant to an EmbeddedResource.</p> +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#persistentvolumeclaimspec-v1-core"> +Kubernetes core/v1.PersistentVolumeClaimSpec +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Spec defines the desired characteristics of a volume requested by a pod author. +More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims">https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims</a></p> +<br/> +<br/> +<table> +<tr> +<td> +<code>accessModes</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#persistentvolumeaccessmode-v1-core"> +[]Kubernetes core/v1.PersistentVolumeAccessMode +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>accessModes contains the desired access modes the volume should have. +More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1">https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1</a></p> +</td> +</tr> +<tr> +<td> +<code>selector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>selector is a label query over volumes to consider for binding.</p> +</td> +</tr> +<tr> +<td> +<code>resources</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#resourcerequirements-v1-core"> +Kubernetes core/v1.ResourceRequirements +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>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: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources">https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources</a></p> +</td> +</tr> +<tr> +<td> +<code>volumeName</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>volumeName is the binding reference to the PersistentVolume backing this claim.</p> +</td> +</tr> +<tr> +<td> +<code>storageClassName</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>storageClassName is the name of the StorageClass required by the claim. +More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1">https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1</a></p> +</td> +</tr> +<tr> +<td> +<code>volumeMode</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#persistentvolumemode-v1-core"> +Kubernetes core/v1.PersistentVolumeMode +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>volumeMode defines what type of volume is required by the claim. +Value of Filesystem is implied when not included in claim spec.</p> +</td> +</tr> +<tr> +<td> +<code>dataSource</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#typedlocalobjectreference-v1-core"> +Kubernetes core/v1.TypedLocalObjectReference +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>dataSource 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.</p> +</td> +</tr> +<tr> +<td> +<code>dataSourceRef</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#typedlocalobjectreference-v1-core"> +Kubernetes core/v1.TypedLocalObjectReference +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>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. +(Beta) Using this field requires the AnyVolumeDataSource feature gate to be enabled.</p> +</td> +</tr> +</table> +</td> +</tr> +<tr> +<td> +<code>status</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#persistentvolumeclaimstatus-v1-core"> +Kubernetes core/v1.PersistentVolumeClaimStatus +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Status represents the current information/status of a persistent volume claim. +Read-only. +More info: <a href="https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims">https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims</a></p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.Endpoint">Endpoint +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.ServiceMonitorSpec">ServiceMonitorSpec</a>) +</p> +<div> +<p>Endpoint defines a scrapeable endpoint serving Prometheus metrics.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>port</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of the service port this endpoint refers to. Mutually exclusive with targetPort.</p> +</td> +</tr> +<tr> +<td> +<code>targetPort</code><br/> +<em> +<a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/util/intstr#IntOrString"> +k8s.io/apimachinery/pkg/util/intstr.IntOrString +</a> +</em> +</td> +<td> +<p>Name or number of the target port of the Pod behind the Service, the port must be specified with container port property. Mutually exclusive with port.</p> +</td> +</tr> +<tr> +<td> +<code>path</code><br/> +<em> +string +</em> +</td> +<td> +<p>HTTP path to scrape for metrics. +If empty, Prometheus uses the default value (e.g. <code>/metrics</code>).</p> +</td> +</tr> +<tr> +<td> +<code>scheme</code><br/> +<em> +string +</em> +</td> +<td> +<p>HTTP scheme to use for scraping.</p> +</td> +</tr> +<tr> +<td> +<code>params</code><br/> +<em> +map[string][]string +</em> +</td> +<td> +<p>Optional HTTP URL parameters</p> +</td> +</tr> +<tr> +<td> +<code>interval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval at which metrics should be scraped +If not specified Prometheus’ global scrape interval is used.</p> +</td> +</tr> +<tr> +<td> +<code>scrapeTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Timeout after which the scrape is ended +If not specified, the Prometheus global scrape timeout is used unless it is less than <code>Interval</code> in which the latter is used.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.TLSConfig"> +TLSConfig +</a> +</em> +</td> +<td> +<p>TLS configuration to use when scraping the endpoint</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>File to read bearer token for scraping targets.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenSecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret to mount to read bearer token for scraping targets. The secret +needs to be in the same namespace as the service monitor and accessible by +the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeAuthorization"> +SafeAuthorization +</a> +</em> +</td> +<td> +<p>Authorization section for this endpoint</p> +</td> +</tr> +<tr> +<td> +<code>honorLabels</code><br/> +<em> +bool +</em> +</td> +<td> +<p>HonorLabels chooses the metric’s labels on collisions with target labels.</p> +</td> +</tr> +<tr> +<td> +<code>honorTimestamps</code><br/> +<em> +bool +</em> +</td> +<td> +<p>HonorTimestamps controls whether Prometheus respects the timestamps present in scraped data.</p> +</td> +</tr> +<tr> +<td> +<code>basicAuth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.BasicAuth"> +BasicAuth +</a> +</em> +</td> +<td> +<p>BasicAuth allow an endpoint to authenticate over basic authentication +More info: <a href="https://prometheus.io/docs/operating/configuration/#endpoints">https://prometheus.io/docs/operating/configuration/#endpoints</a></p> +</td> +</tr> +<tr> +<td> +<code>oauth2</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.OAuth2"> +OAuth2 +</a> +</em> +</td> +<td> +<p>OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>metricRelabelings</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RelabelConfig"> +[]RelabelConfig +</a> +</em> +</td> +<td> +<p>MetricRelabelConfigs to apply to samples before ingestion.</p> +</td> +</tr> +<tr> +<td> +<code>relabelings</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RelabelConfig"> +[]RelabelConfig +</a> +</em> +</td> +<td> +<p>RelabelConfigs to apply to samples before scraping. +Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields. +The original scrape job’s name is available via the <code>__tmp_prometheus_job_name</code> label. +More info: <a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config</a></p> +</td> +</tr> +<tr> +<td> +<code>proxyUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>ProxyURL eg <a href="http://proxyserver:2195">http://proxyserver:2195</a> Directs scrapes to proxy through this endpoint.</p> +</td> +</tr> +<tr> +<td> +<code>followRedirects</code><br/> +<em> +bool +</em> +</td> +<td> +<p>FollowRedirects configures whether scrape requests follow HTTP 3xx redirects.</p> +</td> +</tr> +<tr> +<td> +<code>enableHttp2</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Whether to enable HTTP2.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.Exemplars">Exemplars +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>) +</p> +<div> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>maxSize</code><br/> +<em> +int64 +</em> +</td> +<td> +<p>Maximum number of exemplars stored in memory for all series. +If not set, Prometheus uses its default value. +A value of zero or less than zero disables the storage.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.GoDuration">GoDuration +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertmanagerSpec">AlertmanagerSpec</a>) +</p> +<div> +<p>GoDuration is a valid time duration that can be parsed by Go’s time.ParseDuration() function. +Supported units: h, m, s, ms +Examples: <code>45ms</code>, <code>30s</code>, <code>1m</code>, <code>1h20m15s</code></p> +</div> +<h3 id="monitoring.coreos.com/v1.HostAlias">HostAlias +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertmanagerSpec">AlertmanagerSpec</a>, <a href="#monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields</a>, <a href="#monitoring.coreos.com/v1.ThanosRulerSpec">ThanosRulerSpec</a>) +</p> +<div> +<p>HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the +pod’s hosts file.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>ip</code><br/> +<em> +string +</em> +</td> +<td> +<p>IP address of the host file entry.</p> +</td> +</tr> +<tr> +<td> +<code>hostnames</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>Hostnames for the above IP address.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.LabelName">LabelName +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.RelabelConfig">RelabelConfig</a>) +</p> +<div> +<p>LabelName is a valid Prometheus label name which may only contain ASCII letters, numbers, as well as underscores.</p> +</div> +<h3 id="monitoring.coreos.com/v1.MetadataConfig">MetadataConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec</a>) +</p> +<div> +<p>MetadataConfig configures the sending of series metadata to the remote storage.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>send</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Whether metric metadata is sent to the remote storage or not.</p> +</td> +</tr> +<tr> +<td> +<code>sendInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>How frequently metric metadata is sent to the remote storage.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.NamespaceSelector">NamespaceSelector +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PodMonitorSpec">PodMonitorSpec</a>, <a href="#monitoring.coreos.com/v1.ProbeTargetIngress">ProbeTargetIngress</a>, <a href="#monitoring.coreos.com/v1.ServiceMonitorSpec">ServiceMonitorSpec</a>) +</p> +<div> +<p>NamespaceSelector is a selector for selecting either all namespaces or a +list of namespaces. +If <code>any</code> is true, it takes precedence over <code>matchNames</code>. +If <code>matchNames</code> is empty and <code>any</code> is false, it means that the objects are +selected from the current namespace.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>any</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Boolean describing whether all namespaces are selected in contrast to a +list restricting them.</p> +</td> +</tr> +<tr> +<td> +<code>matchNames</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>List of namespace names to select from.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.OAuth2">OAuth2 +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.Endpoint">Endpoint</a>, <a href="#monitoring.coreos.com/v1.PodMetricsEndpoint">PodMetricsEndpoint</a>, <a href="#monitoring.coreos.com/v1.ProbeSpec">ProbeSpec</a>, <a href="#monitoring.coreos.com/v1.RemoteReadSpec">RemoteReadSpec</a>, <a href="#monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec</a>, <a href="#monitoring.coreos.com/v1alpha1.HTTPConfig">HTTPConfig</a>, <a href="#monitoring.coreos.com/v1beta1.HTTPConfig">HTTPConfig</a>) +</p> +<div> +<p>OAuth2 allows an endpoint to authenticate with OAuth2. +More info: <a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#oauth2">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#oauth2</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>clientId</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>The secret or configmap containing the OAuth2 client id</p> +</td> +</tr> +<tr> +<td> +<code>clientSecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret containing the OAuth2 client secret</p> +</td> +</tr> +<tr> +<td> +<code>tokenUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>The URL to fetch the token from</p> +</td> +</tr> +<tr> +<td> +<code>scopes</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>OAuth2 scopes used for the token request</p> +</td> +</tr> +<tr> +<td> +<code>endpointParams</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Parameters to append to the token URL</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.OAuth2ValidationError">OAuth2ValidationError +</h3> +<div> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>err</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ObjectReference">ObjectReference +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>, <a href="#monitoring.coreos.com/v1.ThanosRulerSpec">ThanosRulerSpec</a>) +</p> +<div> +<p>ObjectReference references a PodMonitor, ServiceMonitor, Probe or PrometheusRule object.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>group</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Group of the referent. When not specified, it defaults to <code>monitoring.coreos.com</code></p> +</td> +</tr> +<tr> +<td> +<code>resource</code><br/> +<em> +string +</em> +</td> +<td> +<p>Resource of the referent.</p> +</td> +</tr> +<tr> +<td> +<code>namespace</code><br/> +<em> +string +</em> +</td> +<td> +<p>Namespace of the referent. +More info: <a href="https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/">https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/</a></p> +</td> +</tr> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Name of the referent. When not set, all resources are matched.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PodMetricsEndpoint">PodMetricsEndpoint +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PodMonitorSpec">PodMonitorSpec</a>) +</p> +<div> +<p>PodMetricsEndpoint defines a scrapeable endpoint of a Kubernetes Pod serving Prometheus metrics.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>port</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of the pod port this endpoint refers to. Mutually exclusive with targetPort.</p> +</td> +</tr> +<tr> +<td> +<code>targetPort</code><br/> +<em> +<a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/util/intstr#IntOrString"> +k8s.io/apimachinery/pkg/util/intstr.IntOrString +</a> +</em> +</td> +<td> +<p>Deprecated: Use ‘port’ instead.</p> +</td> +</tr> +<tr> +<td> +<code>path</code><br/> +<em> +string +</em> +</td> +<td> +<p>HTTP path to scrape for metrics. +If empty, Prometheus uses the default value (e.g. <code>/metrics</code>).</p> +</td> +</tr> +<tr> +<td> +<code>scheme</code><br/> +<em> +string +</em> +</td> +<td> +<p>HTTP scheme to use for scraping.</p> +</td> +</tr> +<tr> +<td> +<code>params</code><br/> +<em> +map[string][]string +</em> +</td> +<td> +<p>Optional HTTP URL parameters</p> +</td> +</tr> +<tr> +<td> +<code>interval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval at which metrics should be scraped +If not specified Prometheus’ global scrape interval is used.</p> +</td> +</tr> +<tr> +<td> +<code>scrapeTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Timeout after which the scrape is ended +If not specified, the Prometheus global scrape interval is used.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PodMetricsEndpointTLSConfig"> +PodMetricsEndpointTLSConfig +</a> +</em> +</td> +<td> +<p>TLS configuration to use when scraping the endpoint.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenSecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret to mount to read bearer token for scraping targets. The secret +needs to be in the same namespace as the pod monitor and accessible by +the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>honorLabels</code><br/> +<em> +bool +</em> +</td> +<td> +<p>HonorLabels chooses the metric’s labels on collisions with target labels.</p> +</td> +</tr> +<tr> +<td> +<code>honorTimestamps</code><br/> +<em> +bool +</em> +</td> +<td> +<p>HonorTimestamps controls whether Prometheus respects the timestamps present in scraped data.</p> +</td> +</tr> +<tr> +<td> +<code>basicAuth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.BasicAuth"> +BasicAuth +</a> +</em> +</td> +<td> +<p>BasicAuth allow an endpoint to authenticate over basic authentication. +More info: <a href="https://prometheus.io/docs/operating/configuration/#endpoint">https://prometheus.io/docs/operating/configuration/#endpoint</a></p> +</td> +</tr> +<tr> +<td> +<code>oauth2</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.OAuth2"> +OAuth2 +</a> +</em> +</td> +<td> +<p>OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeAuthorization"> +SafeAuthorization +</a> +</em> +</td> +<td> +<p>Authorization section for this endpoint</p> +</td> +</tr> +<tr> +<td> +<code>metricRelabelings</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RelabelConfig"> +[]RelabelConfig +</a> +</em> +</td> +<td> +<p>MetricRelabelConfigs to apply to samples before ingestion.</p> +</td> +</tr> +<tr> +<td> +<code>relabelings</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RelabelConfig"> +[]RelabelConfig +</a> +</em> +</td> +<td> +<p>RelabelConfigs to apply to samples before scraping. +Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields. +The original scrape job’s name is available via the <code>__tmp_prometheus_job_name</code> label. +More info: <a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config</a></p> +</td> +</tr> +<tr> +<td> +<code>proxyUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>ProxyURL eg <a href="http://proxyserver:2195">http://proxyserver:2195</a> Directs scrapes to proxy through this endpoint.</p> +</td> +</tr> +<tr> +<td> +<code>followRedirects</code><br/> +<em> +bool +</em> +</td> +<td> +<p>FollowRedirects configures whether scrape requests follow HTTP 3xx redirects.</p> +</td> +</tr> +<tr> +<td> +<code>enableHttp2</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Whether to enable HTTP2.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PodMetricsEndpointTLSConfig">PodMetricsEndpointTLSConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PodMetricsEndpoint">PodMetricsEndpoint</a>) +</p> +<div> +<p>PodMetricsEndpointTLSConfig specifies TLS configuration parameters.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>ca</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Struct containing the CA cert to use for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>cert</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Struct containing the client cert file for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>keySecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret containing the client key file for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>serverName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Used to verify the hostname for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>insecureSkipVerify</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Disable target certificate validation.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PodMonitorSpec">PodMonitorSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PodMonitor">PodMonitor</a>) +</p> +<div> +<p>PodMonitorSpec contains specification parameters for a PodMonitor.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>jobLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>The label to use to retrieve the job name from.</p> +</td> +</tr> +<tr> +<td> +<code>podTargetLabels</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>PodTargetLabels transfers labels on the Kubernetes Pod onto the target.</p> +</td> +</tr> +<tr> +<td> +<code>podMetricsEndpoints</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PodMetricsEndpoint"> +[]PodMetricsEndpoint +</a> +</em> +</td> +<td> +<p>A list of endpoints allowed as part of this PodMonitor.</p> +</td> +</tr> +<tr> +<td> +<code>selector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Selector to select Pod objects.</p> +</td> +</tr> +<tr> +<td> +<code>namespaceSelector</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.NamespaceSelector"> +NamespaceSelector +</a> +</em> +</td> +<td> +<p>Selector to select which namespaces the Endpoints objects are discovered from.</p> +</td> +</tr> +<tr> +<td> +<code>sampleLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>targetLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>TargetLimit defines a limit on the number of scraped targets that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>labelLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on number of labels that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelNameLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels name that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelValueLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels value that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>attachMetadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AttachMetadata"> +AttachMetadata +</a> +</em> +</td> +<td> +<p>Attaches node metadata to discovered targets. Only valid for role: pod. +Only valid in Prometheus versions 2.35.0 and newer.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ProbeSpec">ProbeSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.Probe">Probe</a>) +</p> +<div> +<p>ProbeSpec contains specification parameters for a Probe.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>jobName</code><br/> +<em> +string +</em> +</td> +<td> +<p>The job name assigned to scraped metrics by default.</p> +</td> +</tr> +<tr> +<td> +<code>prober</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ProberSpec"> +ProberSpec +</a> +</em> +</td> +<td> +<p>Specification for the prober to use for probing targets. +The prober.URL parameter is required. Targets cannot be probed if left empty.</p> +</td> +</tr> +<tr> +<td> +<code>module</code><br/> +<em> +string +</em> +</td> +<td> +<p>The module to use for probing specifying how to probe the target. +Example module configuring in the blackbox exporter: +<a href="https://github.com/prometheus/blackbox_exporter/blob/master/example.yml">https://github.com/prometheus/blackbox_exporter/blob/master/example.yml</a></p> +</td> +</tr> +<tr> +<td> +<code>targets</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ProbeTargets"> +ProbeTargets +</a> +</em> +</td> +<td> +<p>Targets defines a set of static or dynamically discovered targets to probe.</p> +</td> +</tr> +<tr> +<td> +<code>interval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval at which targets are probed using the configured prober. +If not specified Prometheus’ global scrape interval is used.</p> +</td> +</tr> +<tr> +<td> +<code>scrapeTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Timeout for scraping metrics from the Prometheus exporter. +If not specified, the Prometheus global scrape interval is used.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ProbeTLSConfig"> +ProbeTLSConfig +</a> +</em> +</td> +<td> +<p>TLS configuration to use when scraping the endpoint.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenSecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret to mount to read bearer token for scraping targets. The secret +needs to be in the same namespace as the probe and accessible by +the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>basicAuth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.BasicAuth"> +BasicAuth +</a> +</em> +</td> +<td> +<p>BasicAuth allow an endpoint to authenticate over basic authentication. +More info: <a href="https://prometheus.io/docs/operating/configuration/#endpoint">https://prometheus.io/docs/operating/configuration/#endpoint</a></p> +</td> +</tr> +<tr> +<td> +<code>oauth2</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.OAuth2"> +OAuth2 +</a> +</em> +</td> +<td> +<p>OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>metricRelabelings</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RelabelConfig"> +[]RelabelConfig +</a> +</em> +</td> +<td> +<p>MetricRelabelConfigs to apply to samples before ingestion.</p> +</td> +</tr> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeAuthorization"> +SafeAuthorization +</a> +</em> +</td> +<td> +<p>Authorization section for this endpoint</p> +</td> +</tr> +<tr> +<td> +<code>sampleLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>targetLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>TargetLimit defines a limit on the number of scraped targets that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>labelLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on number of labels that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelNameLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels name that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelValueLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels value that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ProbeTLSConfig">ProbeTLSConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.ProbeSpec">ProbeSpec</a>) +</p> +<div> +<p>ProbeTLSConfig specifies TLS configuration parameters.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>ca</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Struct containing the CA cert to use for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>cert</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Struct containing the client cert file for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>keySecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret containing the client key file for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>serverName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Used to verify the hostname for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>insecureSkipVerify</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Disable target certificate validation.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ProbeTargetIngress">ProbeTargetIngress +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.ProbeTargets">ProbeTargets</a>) +</p> +<div> +<p>ProbeTargetIngress defines the set of Ingress objects considered for probing. +The operator configures a target for each host/path combination of each ingress object.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>selector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Selector to select the Ingress objects.</p> +</td> +</tr> +<tr> +<td> +<code>namespaceSelector</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.NamespaceSelector"> +NamespaceSelector +</a> +</em> +</td> +<td> +<p>From which namespaces to select Ingress objects.</p> +</td> +</tr> +<tr> +<td> +<code>relabelingConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RelabelConfig"> +[]RelabelConfig +</a> +</em> +</td> +<td> +<p>RelabelConfigs to apply to the label set of the target before it gets +scraped. +The original ingress address is available via the +<code>__tmp_prometheus_ingress_address</code> label. It can be used to customize the +probed URL. +The original scrape job’s name is available via the <code>__tmp_prometheus_job_name</code> label. +More info: <a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config</a></p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ProbeTargetStaticConfig">ProbeTargetStaticConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.ProbeTargets">ProbeTargets</a>) +</p> +<div> +<p>ProbeTargetStaticConfig defines the set of static targets considered for probing.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>static</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>The list of hosts to probe.</p> +</td> +</tr> +<tr> +<td> +<code>labels</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Labels assigned to all metrics scraped from the targets.</p> +</td> +</tr> +<tr> +<td> +<code>relabelingConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RelabelConfig"> +[]RelabelConfig +</a> +</em> +</td> +<td> +<p>RelabelConfigs to apply to the label set of the targets before it gets +scraped. +More info: <a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config</a></p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ProbeTargets">ProbeTargets +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.ProbeSpec">ProbeSpec</a>) +</p> +<div> +<p>ProbeTargets defines how to discover the probed targets. +One of the <code>staticConfig</code> or <code>ingress</code> must be defined. +If both are defined, <code>staticConfig</code> takes precedence.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>staticConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ProbeTargetStaticConfig"> +ProbeTargetStaticConfig +</a> +</em> +</td> +<td> +<p>staticConfig defines the static list of targets to probe and the +relabeling configuration. +If <code>ingress</code> is also defined, <code>staticConfig</code> takes precedence. +More info: <a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#static_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#static_config</a>.</p> +</td> +</tr> +<tr> +<td> +<code>ingress</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ProbeTargetIngress"> +ProbeTargetIngress +</a> +</em> +</td> +<td> +<p>ingress defines the Ingress objects to probe and the relabeling +configuration. +If <code>staticConfig</code> is also defined, <code>staticConfig</code> takes precedence.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ProbeTargetsValidationError">ProbeTargetsValidationError +</h3> +<div> +<p>ProbeTargetsValidationError is returned by ProbeTargets.Validate() +on semantically invalid configurations.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>err</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ProberSpec">ProberSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.ProbeSpec">ProbeSpec</a>) +</p> +<div> +<p>ProberSpec contains specification parameters for the Prober used for probing.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<p>Mandatory URL of the prober.</p> +</td> +</tr> +<tr> +<td> +<code>scheme</code><br/> +<em> +string +</em> +</td> +<td> +<p>HTTP scheme to use for scraping. +Defaults to <code>http</code>.</p> +</td> +</tr> +<tr> +<td> +<code>path</code><br/> +<em> +string +</em> +</td> +<td> +<p>Path to collect metrics from. +Defaults to <code>/probe</code>.</p> +</td> +</tr> +<tr> +<td> +<code>proxyUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>Optional ProxyURL.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PrometheusCondition">PrometheusCondition +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusStatus">PrometheusStatus</a>) +</p> +<div> +<p>PrometheusCondition represents the state of the resources associated with the Prometheus resource.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>type</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusConditionType"> +PrometheusConditionType +</a> +</em> +</td> +<td> +<p>Type of the condition being reported.</p> +</td> +</tr> +<tr> +<td> +<code>status</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusConditionStatus"> +PrometheusConditionStatus +</a> +</em> +</td> +<td> +<p>status of the condition.</p> +</td> +</tr> +<tr> +<td> +<code>lastTransitionTime</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#time-v1-meta"> +Kubernetes meta/v1.Time +</a> +</em> +</td> +<td> +<p>lastTransitionTime is the time of the last update to the current status property.</p> +</td> +</tr> +<tr> +<td> +<code>reason</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Reason for the condition’s last transition.</p> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Human-readable message indicating details for the condition’s last transition.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PrometheusConditionStatus">PrometheusConditionStatus +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusCondition">PrometheusCondition</a>) +</p> +<div> +</div> +<table> +<thead> +<tr> +<th>Value</th> +<th>Description</th> +</tr> +</thead> +<tbody><tr><td><p>"Degraded"</p></td> +<td></td> +</tr><tr><td><p>"False"</p></td> +<td></td> +</tr><tr><td><p>"True"</p></td> +<td></td> +</tr><tr><td><p>"Unknown"</p></td> +<td></td> +</tr></tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PrometheusConditionType">PrometheusConditionType +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusCondition">PrometheusCondition</a>) +</p> +<div> +</div> +<table> +<thead> +<tr> +<th>Value</th> +<th>Description</th> +</tr> +</thead> +<tbody><tr><td><p>"Available"</p></td> +<td><p>Available indicates whether enough Prometheus pods are ready to provide the service.</p> +</td> +</tr><tr><td><p>"Reconciled"</p></td> +<td><p>Reconciled indicates that the operator has reconciled the state of the underlying resources with the Prometheus object spec.</p> +</td> +</tr></tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PrometheusRuleExcludeConfig">PrometheusRuleExcludeConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>, <a href="#monitoring.coreos.com/v1.ThanosRulerSpec">ThanosRulerSpec</a>) +</p> +<div> +<p>PrometheusRuleExcludeConfig enables users to configure excluded PrometheusRule names and their namespaces +to be ignored while enforcing namespace label for alerts and metrics.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>ruleNamespace</code><br/> +<em> +string +</em> +</td> +<td> +<p>RuleNamespace - namespace of excluded rule</p> +</td> +</tr> +<tr> +<td> +<code>ruleName</code><br/> +<em> +string +</em> +</td> +<td> +<p>RuleNamespace - name of excluded rule</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PrometheusRuleSpec">PrometheusRuleSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusRule">PrometheusRule</a>) +</p> +<div> +<p>PrometheusRuleSpec contains specification parameters for a Rule.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>groups</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RuleGroup"> +[]RuleGroup +</a> +</em> +</td> +<td> +<p>Content of Prometheus rule file</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.Prometheus">Prometheus</a>) +</p> +<div> +<p>PrometheusSpec is a specification of the desired behavior of the Prometheus cluster. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>podMetadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.EmbeddedObjectMetadata"> +EmbeddedObjectMetadata +</a> +</em> +</td> +<td> +<p>PodMetadata configures Labels and Annotations which are propagated to the prometheus pods.</p> +</td> +</tr> +<tr> +<td> +<code>serviceMonitorSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>ServiceMonitors to be selected for target discovery. <em>Deprecated:</em> if +neither this nor podMonitorSelector are specified, configuration is +unmanaged.</p> +</td> +</tr> +<tr> +<td> +<code>serviceMonitorNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespace’s labels to match for ServiceMonitor discovery. If nil, only +check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>podMonitorSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p><em>Experimental</em> PodMonitors to be selected for target discovery. +<em>Deprecated:</em> if neither this nor serviceMonitorSelector are specified, +configuration is unmanaged.</p> +</td> +</tr> +<tr> +<td> +<code>podMonitorNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespace’s labels to match for PodMonitor discovery. If nil, only +check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>probeSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p><em>Experimental</em> Probes to be selected for target discovery.</p> +</td> +</tr> +<tr> +<td> +<code>probeNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p><em>Experimental</em> Namespaces to be selected for Probe discovery. If nil, only check own namespace.</p> +</td> +</tr> +<tr> +<td> +<code>version</code><br/> +<em> +string +</em> +</td> +<td> +<p>Version of Prometheus to be deployed.</p> +</td> +</tr> +<tr> +<td> +<code>tag</code><br/> +<em> +string +</em> +</td> +<td> +<p>Tag of Prometheus container image to be deployed. Defaults to the value of <code>version</code>. +Version is ignored if Tag is set. +Deprecated: use ‘image’ instead. The image tag can be specified +as part of the image URL.</p> +</td> +</tr> +<tr> +<td> +<code>sha</code><br/> +<em> +string +</em> +</td> +<td> +<p>SHA of Prometheus container image to be deployed. Defaults to the value of <code>version</code>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When a Prometheus deployment is paused, no actions except for deletion +will be performed on the underlying objects.</p> +</td> +</tr> +<tr> +<td> +<code>image</code><br/> +<em> +string +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>baseImage</code><br/> +<em> +string +</em> +</td> +<td> +<p>Base image to use for a Prometheus deployment. +Deprecated: use ‘image’ instead</p> +</td> +</tr> +<tr> +<td> +<code>imagePullSecrets</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#localobjectreference-v1-core"> +[]Kubernetes core/v1.LocalObjectReference +</a> +</em> +</td> +<td> +<p>An optional list of references to secrets in the same namespace +to use for pulling prometheus and alertmanager images from registries +see <a href="http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod">http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod</a></p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>shards</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>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 +<code>__address__</code> target meta-label.</p> +</td> +</tr> +<tr> +<td> +<code>replicaExternalLabelName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of Prometheus external label used to denote replica name. +Defaults to the value of <code>prometheus_replica</code>. External label will +<em>not</em> be added when value is set to empty string (<code>""</code>).</p> +</td> +</tr> +<tr> +<td> +<code>prometheusExternalLabelName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of Prometheus external label used to denote Prometheus instance +name. Defaults to the value of <code>prometheus</code>. External label will +<em>not</em> be added when value is set to empty string (<code>""</code>).</p> +</td> +</tr> +<tr> +<td> +<code>logLevel</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log level for Prometheus to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>logFormat</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log format for Prometheus to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>scrapeInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval between consecutive scrapes. Default: <code>30s</code></p> +</td> +</tr> +<tr> +<td> +<code>scrapeTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Number of seconds to wait for target to respond before erroring.</p> +</td> +</tr> +<tr> +<td> +<code>evaluationInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval between consecutive evaluations. Default: <code>30s</code></p> +</td> +</tr> +<tr> +<td> +<code>externalLabels</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>The labels to add to any time series or alerts when communicating with +external systems (federation, remote storage, Alertmanager).</p> +</td> +</tr> +<tr> +<td> +<code>enableAdminAPI</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Enable access to prometheus web admin API. Defaults to the value of <code>false</code>. +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 <a href="https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis">https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis</a></p> +</td> +</tr> +<tr> +<td> +<code>enableRemoteWriteReceiver</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Enable Prometheus to be used as a receiver for the Prometheus remote write protocol. Defaults to the value of <code>false</code>. +WARNING: This is not considered an efficient way of ingesting samples. +Use it with caution for specific low-volume use cases. +It is not suitable for replacing the ingestion via scraping and turning +Prometheus into a push-based metrics collection system. +For more information see <a href="https://prometheus.io/docs/prometheus/latest/querying/api/#remote-write-receiver">https://prometheus.io/docs/prometheus/latest/querying/api/#remote-write-receiver</a> +Only valid in Prometheus versions 2.33.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>enableFeatures</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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 <a href="https://prometheus.io/docs/prometheus/latest/disabled_features/">https://prometheus.io/docs/prometheus/latest/disabled_features/</a></p> +</td> +</tr> +<tr> +<td> +<code>externalUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>routePrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>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 <code>kubectl proxy</code>.</p> +</td> +</tr> +<tr> +<td> +<code>storage</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.StorageSpec"> +StorageSpec +</a> +</em> +</td> +<td> +<p>Storage spec to specify how storage shall be used.</p> +</td> +</tr> +<tr> +<td> +<code>volumes</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volume-v1-core"> +[]Kubernetes core/v1.Volume +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>volumeMounts</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volumemount-v1-core"> +[]Kubernetes core/v1.VolumeMount +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>web</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusWebSpec"> +PrometheusWebSpec +</a> +</em> +</td> +<td> +<p>Defines the web command line flags when starting Prometheus.</p> +</td> +</tr> +<tr> +<td> +<code>resources</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#resourcerequirements-v1-core"> +Kubernetes core/v1.ResourceRequirements +</a> +</em> +</td> +<td> +<p>Define resources requests and limits for single Pods.</p> +</td> +</tr> +<tr> +<td> +<code>nodeSelector</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Define which Nodes the Pods are scheduled on.</p> +</td> +</tr> +<tr> +<td> +<code>serviceAccountName</code><br/> +<em> +string +</em> +</td> +<td> +<p>ServiceAccountName is the name of the ServiceAccount to use to run the +Prometheus Pods.</p> +</td> +</tr> +<tr> +<td> +<code>secrets</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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/<secret-name>.</p> +</td> +</tr> +<tr> +<td> +<code>configMaps</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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/<configmap-name>.</p> +</td> +</tr> +<tr> +<td> +<code>affinity</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#affinity-v1-core"> +Kubernetes core/v1.Affinity +</a> +</em> +</td> +<td> +<p>If specified, the pod’s scheduling constraints.</p> +</td> +</tr> +<tr> +<td> +<code>tolerations</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#toleration-v1-core"> +[]Kubernetes core/v1.Toleration +</a> +</em> +</td> +<td> +<p>If specified, the pod’s tolerations.</p> +</td> +</tr> +<tr> +<td> +<code>topologySpreadConstraints</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#topologyspreadconstraint-v1-core"> +[]Kubernetes core/v1.TopologySpreadConstraint +</a> +</em> +</td> +<td> +<p>If specified, the pod’s topology spread constraints.</p> +</td> +</tr> +<tr> +<td> +<code>remoteWrite</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RemoteWriteSpec"> +[]RemoteWriteSpec +</a> +</em> +</td> +<td> +<p>remoteWrite is the list of remote write configurations.</p> +</td> +</tr> +<tr> +<td> +<code>securityContext</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#podsecuritycontext-v1-core"> +Kubernetes core/v1.PodSecurityContext +</a> +</em> +</td> +<td> +<p>SecurityContext holds pod-level security attributes and common container settings. +This defaults to the default PodSecurityContext.</p> +</td> +</tr> +<tr> +<td> +<code>listenLocal</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ListenLocal makes the Prometheus server listen on loopback, so that it +does not bind against the Pod IP.</p> +</td> +</tr> +<tr> +<td> +<code>containers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>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: +<code>prometheus</code>, <code>config-reloader</code>, and <code>thanos-sidecar</code>. 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.</p> +</td> +</tr> +<tr> +<td> +<code>initContainers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>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: <a href="https://kubernetes.io/docs/concepts/workloads/pods/init-containers/">https://kubernetes.io/docs/concepts/workloads/pods/init-containers/</a> +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: +<code>init-config-reloader</code>. 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.</p> +</td> +</tr> +<tr> +<td> +<code>additionalScrapeConfigs</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>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: +<a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config</a>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>apiserverConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.APIServerConfig"> +APIServerConfig +</a> +</em> +</td> +<td> +<p>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/.</p> +</td> +</tr> +<tr> +<td> +<code>priorityClassName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Priority class assigned to the Pods</p> +</td> +</tr> +<tr> +<td> +<code>portName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Port name used for the pods and governing service. +This defaults to web</p> +</td> +</tr> +<tr> +<td> +<code>arbitraryFSAccessThroughSMs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ArbitraryFSAccessThroughSMsConfig"> +ArbitraryFSAccessThroughSMsConfig +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>overrideHonorLabels</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When true, Prometheus resolves label conflicts by renaming the labels in +the scraped data to “exported_<label value>” for all targets created +from service and pod monitors. +Otherwise the HonorLabels field of the service or pod monitor applies.</p> +</td> +</tr> +<tr> +<td> +<code>overrideHonorTimestamps</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When true, Prometheus ignores the timestamps for all the targets created +from service and pod monitors. +Otherwise the HonorTimestamps field of the service or pod monitor applies.</p> +</td> +</tr> +<tr> +<td> +<code>ignoreNamespaceSelectors</code><br/> +<em> +bool +</em> +</td> +<td> +<p>IgnoreNamespaceSelectors if set to true will ignore NamespaceSelector +settings from all PodMonitor, ServiceMonitor and Probe objects. They +will only discover endpoints within their current namespace. +Defaults to false.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedNamespaceLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>EnforcedNamespaceLabel If set, a label will be added to</p> +<ol> +<li>all user-metrics (created by <code>ServiceMonitor</code>, <code>PodMonitor</code> and <code>Probe</code> objects) and</li> +<li>in all <code>PrometheusRule</code> objects (except the ones excluded in <code>prometheusRulesExcludedFromEnforce</code>) to +<ul> +<li>alerting & recording rules and</li> +<li>the metrics used in their expressions (<code>expr</code>).</li> +</ul></li> +</ol> +<p>Label name is this field’s value. +Label value is the namespace of the created object (mentioned above).</p> +</td> +</tr> +<tr> +<td> +<code>enforcedSampleLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedTargetLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedLabelLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedLabelNameLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedLabelValueLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedBodySizeLimit</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ByteSize"> +ByteSize +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>minReadySeconds</code><br/> +<em> +uint32 +</em> +</td> +<td> +<em>(Optional)</em> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>hostAliases</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.HostAlias"> +[]HostAlias +</a> +</em> +</td> +<td> +<p>Pods’ hostAliases configuration</p> +</td> +</tr> +<tr> +<td> +<code>retention</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Time duration Prometheus shall retain data for. Default is ‘24h’ if +retentionSize is not set, and must match the regular expression <code>[0-9]+(ms|s|m|h|d|w|y)</code> +(milliseconds seconds minutes hours days weeks years).</p> +</td> +</tr> +<tr> +<td> +<code>retentionSize</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ByteSize"> +ByteSize +</a> +</em> +</td> +<td> +<p>Maximum amount of disk space used by blocks.</p> +</td> +</tr> +<tr> +<td> +<code>disableCompaction</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Disable prometheus compaction.</p> +</td> +</tr> +<tr> +<td> +<code>walCompression</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Enable compression of the write-ahead log using Snappy. This flag is +only available in versions of Prometheus >= 2.11.0.</p> +</td> +</tr> +<tr> +<td> +<code>rules</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Rules"> +Rules +</a> +</em> +</td> +<td> +<p>/–rules.*/ command-line arguments.</p> +</td> +</tr> +<tr> +<td> +<code>excludedFromEnforcement</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ObjectReference"> +[]ObjectReference +</a> +</em> +</td> +<td> +<p>List of references to PodMonitor, ServiceMonitor, Probe and PrometheusRule objects +to be excluded from enforcing a namespace label of origin. +Applies only if enforcedNamespaceLabel set to true.</p> +</td> +</tr> +<tr> +<td> +<code>prometheusRulesExcludedFromEnforce</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusRuleExcludeConfig"> +[]PrometheusRuleExcludeConfig +</a> +</em> +</td> +<td> +<p>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. +Deprecated: use excludedFromEnforcement instead.</p> +</td> +</tr> +<tr> +<td> +<code>query</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.QuerySpec"> +QuerySpec +</a> +</em> +</td> +<td> +<p>QuerySpec defines the query command line flags when starting Prometheus.</p> +</td> +</tr> +<tr> +<td> +<code>ruleSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>ruleNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespaces to be selected for PrometheusRules discovery. If unspecified, only +the same namespace as the Prometheus object is in is used.</p> +</td> +</tr> +<tr> +<td> +<code>alerting</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.AlertingSpec"> +AlertingSpec +</a> +</em> +</td> +<td> +<p>Define details regarding alerting.</p> +</td> +</tr> +<tr> +<td> +<code>remoteRead</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RemoteReadSpec"> +[]RemoteReadSpec +</a> +</em> +</td> +<td> +<p>remoteRead is the list of remote read configurations.</p> +</td> +</tr> +<tr> +<td> +<code>additionalAlertRelabelConfigs</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>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: +<a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs</a>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>additionalAlertManagerConfigs</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>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: +<a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config</a>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>thanos</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ThanosSpec"> +ThanosSpec +</a> +</em> +</td> +<td> +<p>Thanos configuration allows configuring various aspects of a Prometheus +server in a Thanos environment.</p> +<p>This section is experimental, it may change significantly without +deprecation notice in any release.</p> +<p>This is experimental and may change significantly without backward +compatibility in any release.</p> +</td> +</tr> +<tr> +<td> +<code>queryLogFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>QueryLogFile specifies the file to which PromQL queries are logged. +If the filename has an empty path, e.g. ‘query.log’, prometheus-operator will mount the file into an +emptyDir volume at <code>/var/log/prometheus</code>. If a full path is provided, e.g. /var/log/prometheus/query.log, you must mount a volume +in the specified directory and it must be writable. This is because the prometheus container runs with a read-only root filesystem for security reasons. +Alternatively, the location can be set to a stdout location such as <code>/dev/stdout</code> to log +query 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 (<a href="https://prometheus.io/docs/guides/query-log/">https://prometheus.io/docs/guides/query-log/</a>)</p> +</td> +</tr> +<tr> +<td> +<code>allowOverlappingBlocks</code><br/> +<em> +bool +</em> +</td> +<td> +<p>AllowOverlappingBlocks enables vertical compaction and vertical query merge in Prometheus. +This is still experimental in Prometheus so it may change in any upcoming release.</p> +</td> +</tr> +<tr> +<td> +<code>exemplars</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Exemplars"> +Exemplars +</a> +</em> +</td> +<td> +<p>Exemplars related settings that are runtime reloadable. +It requires to enable the exemplar storage feature to be effective.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PrometheusStatus">PrometheusStatus +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.Prometheus">Prometheus</a>) +</p> +<div> +<p>PrometheusStatus is the most recent observed status of the Prometheus cluster. +More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Represents whether any actions on the underlying managed objects are +being performed. Only delete actions will be performed.</p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of non-terminated pods targeted by this Prometheus deployment +(their labels match the selector).</p> +</td> +</tr> +<tr> +<td> +<code>updatedReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of non-terminated pods targeted by this Prometheus deployment +that have the desired version spec.</p> +</td> +</tr> +<tr> +<td> +<code>availableReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of available pods (ready for at least minReadySeconds) +targeted by this Prometheus deployment.</p> +</td> +</tr> +<tr> +<td> +<code>unavailableReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of unavailable pods targeted by this Prometheus deployment.</p> +</td> +</tr> +<tr> +<td> +<code>conditions</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusCondition"> +[]PrometheusCondition +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The current state of the Prometheus deployment.</p> +</td> +</tr> +<tr> +<td> +<code>shardStatuses</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ShardStatus"> +[]ShardStatus +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The list has one entry per shard. Each entry provides a summary of the shard status.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.PrometheusWebSpec">PrometheusWebSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields</a>) +</p> +<div> +<p>PrometheusWebSpec defines the query command line flags when starting Prometheus.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>pageTitle</code><br/> +<em> +string +</em> +</td> +<td> +<p>The prometheus web page title</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.WebTLSConfig"> +WebTLSConfig +</a> +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.QuerySpec">QuerySpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>) +</p> +<div> +<p>QuerySpec defines the query command line flags when starting Prometheus.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>lookbackDelta</code><br/> +<em> +string +</em> +</td> +<td> +<p>The delta difference allowed for retrieving metrics during expression evaluations.</p> +</td> +</tr> +<tr> +<td> +<code>maxConcurrency</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Number of concurrent queries that can be run at once.</p> +</td> +</tr> +<tr> +<td> +<code>maxSamples</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>timeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Maximum time a query may take before being aborted.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.QueueConfig">QueueConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec</a>) +</p> +<div> +<p>QueueConfig allows the tuning of remote write’s queue_config parameters. +This object is referenced in the RemoteWriteSpec object.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>capacity</code><br/> +<em> +int +</em> +</td> +<td> +<p>Capacity is the number of samples to buffer per shard before we start dropping them.</p> +</td> +</tr> +<tr> +<td> +<code>minShards</code><br/> +<em> +int +</em> +</td> +<td> +<p>MinShards is the minimum number of shards, i.e. amount of concurrency.</p> +</td> +</tr> +<tr> +<td> +<code>maxShards</code><br/> +<em> +int +</em> +</td> +<td> +<p>MaxShards is the maximum number of shards, i.e. amount of concurrency.</p> +</td> +</tr> +<tr> +<td> +<code>maxSamplesPerSend</code><br/> +<em> +int +</em> +</td> +<td> +<p>MaxSamplesPerSend is the maximum number of samples per send.</p> +</td> +</tr> +<tr> +<td> +<code>batchSendDeadline</code><br/> +<em> +string +</em> +</td> +<td> +<p>BatchSendDeadline is the maximum time a sample will wait in buffer.</p> +</td> +</tr> +<tr> +<td> +<code>maxRetries</code><br/> +<em> +int +</em> +</td> +<td> +<p>MaxRetries is the maximum number of times to retry a batch on recoverable errors.</p> +</td> +</tr> +<tr> +<td> +<code>minBackoff</code><br/> +<em> +string +</em> +</td> +<td> +<p>MinBackoff is the initial retry delay. Gets doubled for every retry.</p> +</td> +</tr> +<tr> +<td> +<code>maxBackoff</code><br/> +<em> +string +</em> +</td> +<td> +<p>MaxBackoff is the maximum retry delay.</p> +</td> +</tr> +<tr> +<td> +<code>retryOnRateLimit</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Retry upon receiving a 429 status code from the remote-write storage. +This is experimental feature and might change in the future.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.RelabelConfig">RelabelConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.Endpoint">Endpoint</a>, <a href="#monitoring.coreos.com/v1.PodMetricsEndpoint">PodMetricsEndpoint</a>, <a href="#monitoring.coreos.com/v1.ProbeSpec">ProbeSpec</a>, <a href="#monitoring.coreos.com/v1.ProbeTargetIngress">ProbeTargetIngress</a>, <a href="#monitoring.coreos.com/v1.ProbeTargetStaticConfig">ProbeTargetStaticConfig</a>, <a href="#monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec</a>) +</p> +<div> +<p>RelabelConfig allows dynamic rewriting of the label set, being applied to samples before ingestion. +It defines <code><metric_relabel_configs></code>-section of Prometheus configuration. +More info: <a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sourceLabels</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.LabelName"> +[]LabelName +</a> +</em> +</td> +<td> +<p>The source labels select values from existing labels. Their content is concatenated +using the configured separator and matched against the configured regular expression +for the replace, keep, and drop actions.</p> +</td> +</tr> +<tr> +<td> +<code>separator</code><br/> +<em> +string +</em> +</td> +<td> +<p>Separator placed between concatenated source label values. default is ‘;’.</p> +</td> +</tr> +<tr> +<td> +<code>targetLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>Label to which the resulting value is written in a replace action. +It is mandatory for replace actions. Regex capture groups are available.</p> +</td> +</tr> +<tr> +<td> +<code>regex</code><br/> +<em> +string +</em> +</td> +<td> +<p>Regular expression against which the extracted value is matched. Default is ‘(.*)’</p> +</td> +</tr> +<tr> +<td> +<code>modulus</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Modulus to take of the hash of the source label values.</p> +</td> +</tr> +<tr> +<td> +<code>replacement</code><br/> +<em> +string +</em> +</td> +<td> +<p>Replacement value against which a regex replace is performed if the +regular expression matches. Regex capture groups are available. Default is ‘$1’</p> +</td> +</tr> +<tr> +<td> +<code>action</code><br/> +<em> +string +</em> +</td> +<td> +<p>Action to perform based on regex matching. Default is ‘replace’. +uppercase and lowercase actions require Prometheus >= 2.36.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.RemoteReadSpec">RemoteReadSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>) +</p> +<div> +<p>RemoteReadSpec defines the configuration for Prometheus to read back samples +from a remote endpoint.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<p>The URL of the endpoint to query from.</p> +</td> +</tr> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>The name of the remote read queue, it must be unique if specified. The name +is used in metrics and logging in order to differentiate read +configurations. Only valid in Prometheus versions 2.15.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>requiredMatchers</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>An optional list of equality matchers which have to be present +in a selector to query the remote read endpoint.</p> +</td> +</tr> +<tr> +<td> +<code>remoteTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Timeout for requests to the remote read endpoint.</p> +</td> +</tr> +<tr> +<td> +<code>headers</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Custom HTTP headers to be sent along with each remote read request. +Be aware that headers that are set by Prometheus itself can’t be overwritten. +Only valid in Prometheus versions 2.26.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>readRecent</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Whether reads should be made for queries for time ranges that +the local storage should have complete data for.</p> +</td> +</tr> +<tr> +<td> +<code>basicAuth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.BasicAuth"> +BasicAuth +</a> +</em> +</td> +<td> +<p>BasicAuth for the URL.</p> +</td> +</tr> +<tr> +<td> +<code>oauth2</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.OAuth2"> +OAuth2 +</a> +</em> +</td> +<td> +<p>OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>bearerToken</code><br/> +<em> +string +</em> +</td> +<td> +<p>Bearer token for remote read.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>File to read bearer token for remote read.</p> +</td> +</tr> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Authorization"> +Authorization +</a> +</em> +</td> +<td> +<p>Authorization section for remote read</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.TLSConfig"> +TLSConfig +</a> +</em> +</td> +<td> +<p>TLS Config to use for remote read.</p> +</td> +</tr> +<tr> +<td> +<code>proxyUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>Optional ProxyURL.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields</a>) +</p> +<div> +<p>RemoteWriteSpec defines the configuration to write samples from Prometheus +to a remote endpoint.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<p>The URL of the endpoint to send samples to.</p> +</td> +</tr> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>The name of the remote write queue, it must be unique if specified. The +name is used in metrics and logging in order to differentiate queues. +Only valid in Prometheus versions 2.15.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>sendExemplars</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Enables sending of exemplars over remote write. Note that +exemplar-storage itself must be enabled using the enableFeature option +for exemplars to be scraped in the first place. Only valid in +Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>remoteTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Timeout for requests to the remote write endpoint.</p> +</td> +</tr> +<tr> +<td> +<code>headers</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Custom HTTP headers to be sent along with each remote write request. +Be aware that headers that are set by Prometheus itself can’t be overwritten. +Only valid in Prometheus versions 2.25.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>writeRelabelConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RelabelConfig"> +[]RelabelConfig +</a> +</em> +</td> +<td> +<p>The list of remote write relabel configurations.</p> +</td> +</tr> +<tr> +<td> +<code>oauth2</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.OAuth2"> +OAuth2 +</a> +</em> +</td> +<td> +<p>OAuth2 for the URL. Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>basicAuth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.BasicAuth"> +BasicAuth +</a> +</em> +</td> +<td> +<p>BasicAuth for the URL.</p> +</td> +</tr> +<tr> +<td> +<code>bearerToken</code><br/> +<em> +string +</em> +</td> +<td> +<p>Bearer token for remote write.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>File to read bearer token for remote write.</p> +</td> +</tr> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Authorization"> +Authorization +</a> +</em> +</td> +<td> +<p>Authorization section for remote write</p> +</td> +</tr> +<tr> +<td> +<code>sigv4</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Sigv4"> +Sigv4 +</a> +</em> +</td> +<td> +<p>Sigv4 allows to configures AWS’s Signature Verification 4</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.TLSConfig"> +TLSConfig +</a> +</em> +</td> +<td> +<p>TLS Config to use for remote write.</p> +</td> +</tr> +<tr> +<td> +<code>proxyUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>Optional ProxyURL.</p> +</td> +</tr> +<tr> +<td> +<code>queueConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.QueueConfig"> +QueueConfig +</a> +</em> +</td> +<td> +<p>QueueConfig allows tuning of the remote write queue parameters.</p> +</td> +</tr> +<tr> +<td> +<code>metadataConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.MetadataConfig"> +MetadataConfig +</a> +</em> +</td> +<td> +<p>MetadataConfig configures the sending of series metadata to the remote storage.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.Rule">Rule +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.RuleGroup">RuleGroup</a>) +</p> +<div> +<p>Rule describes an alerting or recording rule +See Prometheus documentation: <a href="https://www.prometheus.io/docs/prometheus/latest/configuration/alerting_rules/">alerting</a> or <a href="https://www.prometheus.io/docs/prometheus/latest/configuration/recording_rules/#recording-rules">recording</a> rule</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>record</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>alert</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>expr</code><br/> +<em> +<a href="https://pkg.go.dev/k8s.io/apimachinery/pkg/util/intstr#IntOrString"> +k8s.io/apimachinery/pkg/util/intstr.IntOrString +</a> +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>for</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>labels</code><br/> +<em> +map[string]string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>annotations</code><br/> +<em> +map[string]string +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.RuleGroup">RuleGroup +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusRuleSpec">PrometheusRuleSpec</a>) +</p> +<div> +<p>RuleGroup is a list of sequentially evaluated recording and alerting rules. +Note: PartialResponseStrategy is only used by ThanosRuler and will +be ignored by Prometheus instances. Valid values for this field are ‘warn’ +or ‘abort’. More info: <a href="https://github.com/thanos-io/thanos/blob/main/docs/components/rule.md#partial-response">https://github.com/thanos-io/thanos/blob/main/docs/components/rule.md#partial-response</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>interval</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>rules</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Rule"> +[]Rule +</a> +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>partial_response_strategy</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.Rules">Rules +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>) +</p> +<div> +<p>/–rules.*/ command-line arguments</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>alert</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.RulesAlert"> +RulesAlert +</a> +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.RulesAlert">RulesAlert +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.Rules">Rules</a>) +</p> +<div> +<p>/–rules.alert.*/ command-line arguments</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>forOutageTolerance</code><br/> +<em> +string +</em> +</td> +<td> +<p>Max time to tolerate prometheus outage for restoring ‘for’ state of alert.</p> +</td> +</tr> +<tr> +<td> +<code>forGracePeriod</code><br/> +<em> +string +</em> +</td> +<td> +<p>Minimum duration between alert and restored ‘for’ state. +This is maintained only for alerts with configured ‘for’ time greater than grace period.</p> +</td> +</tr> +<tr> +<td> +<code>resendDelay</code><br/> +<em> +string +</em> +</td> +<td> +<p>Minimum amount of time to wait before resending an alert to Alertmanager.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.SafeAuthorization">SafeAuthorization +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertmanagerEndpoints">AlertmanagerEndpoints</a>, <a href="#monitoring.coreos.com/v1.Authorization">Authorization</a>, <a href="#monitoring.coreos.com/v1.Endpoint">Endpoint</a>, <a href="#monitoring.coreos.com/v1.PodMetricsEndpoint">PodMetricsEndpoint</a>, <a href="#monitoring.coreos.com/v1.ProbeSpec">ProbeSpec</a>, <a href="#monitoring.coreos.com/v1alpha1.HTTPConfig">HTTPConfig</a>, <a href="#monitoring.coreos.com/v1beta1.HTTPConfig">HTTPConfig</a>) +</p> +<div> +<p>SafeAuthorization specifies a subset of the Authorization struct, that is +safe for use in Endpoints (no CredentialsFile field)</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>type</code><br/> +<em> +string +</em> +</td> +<td> +<p>Set the authentication type. Defaults to Bearer, Basic will cause an +error</p> +</td> +</tr> +<tr> +<td> +<code>credentials</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the credentials of the request</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.SafeTLSConfig">SafeTLSConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PodMetricsEndpointTLSConfig">PodMetricsEndpointTLSConfig</a>, <a href="#monitoring.coreos.com/v1.ProbeTLSConfig">ProbeTLSConfig</a>, <a href="#monitoring.coreos.com/v1.TLSConfig">TLSConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.EmailConfig">EmailConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.HTTPConfig">HTTPConfig</a>, <a href="#monitoring.coreos.com/v1beta1.EmailConfig">EmailConfig</a>, <a href="#monitoring.coreos.com/v1beta1.HTTPConfig">HTTPConfig</a>) +</p> +<div> +<p>SafeTLSConfig specifies safe TLS configuration parameters.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>ca</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Struct containing the CA cert to use for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>cert</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Struct containing the client cert file for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>keySecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret containing the client key file for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>serverName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Used to verify the hostname for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>insecureSkipVerify</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Disable target certificate validation.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.SecretOrConfigMap">SecretOrConfigMap +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.OAuth2">OAuth2</a>, <a href="#monitoring.coreos.com/v1.SafeTLSConfig">SafeTLSConfig</a>, <a href="#monitoring.coreos.com/v1.WebTLSConfig">WebTLSConfig</a>) +</p> +<div> +<p>SecretOrConfigMap allows to specify data as a Secret or ConfigMap. Fields are mutually exclusive.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>secret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret containing data to use for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>configMap</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#configmapkeyselector-v1-core"> +Kubernetes core/v1.ConfigMapKeySelector +</a> +</em> +</td> +<td> +<p>ConfigMap containing data to use for the targets.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.SecretOrConfigMapValidationError">SecretOrConfigMapValidationError +</h3> +<div> +<p>SecretOrConfigMapValidationError is returned by SecretOrConfigMap.Validate() +on semantically invalid configurations.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>err</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ServiceMonitorSpec">ServiceMonitorSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.ServiceMonitor">ServiceMonitor</a>) +</p> +<div> +<p>ServiceMonitorSpec contains specification parameters for a ServiceMonitor.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>jobLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>JobLabel selects the label from the associated Kubernetes service which will be used as the <code>job</code> label for all metrics.</p> +<p>For example: +If in <code>ServiceMonitor.spec.jobLabel: foo</code> and in <code>Service.metadata.labels.foo: bar</code>, +then the <code>job="bar"</code> label is added to all metrics.</p> +<p>If the value of this field is empty or if the label doesn’t exist for the given Service, the <code>job</code> label of the metrics defaults to the name of the Kubernetes Service.</p> +</td> +</tr> +<tr> +<td> +<code>targetLabels</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>TargetLabels transfers labels from the Kubernetes <code>Service</code> onto the created metrics.</p> +</td> +</tr> +<tr> +<td> +<code>podTargetLabels</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>PodTargetLabels transfers labels on the Kubernetes <code>Pod</code> onto the created metrics.</p> +</td> +</tr> +<tr> +<td> +<code>endpoints</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Endpoint"> +[]Endpoint +</a> +</em> +</td> +<td> +<p>A list of endpoints allowed as part of this ServiceMonitor.</p> +</td> +</tr> +<tr> +<td> +<code>selector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Selector to select Endpoints objects.</p> +</td> +</tr> +<tr> +<td> +<code>namespaceSelector</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.NamespaceSelector"> +NamespaceSelector +</a> +</em> +</td> +<td> +<p>Selector to select which namespaces the Kubernetes Endpoints objects are discovered from.</p> +</td> +</tr> +<tr> +<td> +<code>sampleLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>SampleLimit defines per-scrape limit on number of scraped samples that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>targetLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>TargetLimit defines a limit on the number of scraped targets that will be accepted.</p> +</td> +</tr> +<tr> +<td> +<code>labelLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on number of labels that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelNameLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels name that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +<tr> +<td> +<code>labelValueLengthLimit</code><br/> +<em> +uint64 +</em> +</td> +<td> +<p>Per-scrape limit on length of labels value that will be accepted for a sample. +Only valid in Prometheus versions 2.27.0 and newer.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ShardStatus">ShardStatus +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusStatus">PrometheusStatus</a>) +</p> +<div> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>shardID</code><br/> +<em> +string +</em> +</td> +<td> +<p>Identifier of the shard.</p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of pods targeted by this shard.</p> +</td> +</tr> +<tr> +<td> +<code>updatedReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of non-terminated pods targeted by this shard +that have the desired spec.</p> +</td> +</tr> +<tr> +<td> +<code>availableReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of available pods (ready for at least minReadySeconds) +targeted by this shard.</p> +</td> +</tr> +<tr> +<td> +<code>unavailableReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of unavailable pods targeted by this shard.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.Sigv4">Sigv4 +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec</a>, <a href="#monitoring.coreos.com/v1alpha1.SNSConfig">SNSConfig</a>, <a href="#monitoring.coreos.com/v1beta1.SNSConfig">SNSConfig</a>) +</p> +<div> +<p>Sigv4 optionally configures AWS’s Signature Verification 4 signing process to +sign requests. Cannot be set at the same time as basic_auth or authorization.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>region</code><br/> +<em> +string +</em> +</td> +<td> +<p>Region is the AWS region. If blank, the region from the default credentials chain used.</p> +</td> +</tr> +<tr> +<td> +<code>accessKey</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>AccessKey is the AWS API key. If blank, the environment variable <code>AWS_ACCESS_KEY_ID</code> is used.</p> +</td> +</tr> +<tr> +<td> +<code>secretKey</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>SecretKey is the AWS API secret. If blank, the environment variable <code>AWS_SECRET_ACCESS_KEY</code> is used.</p> +</td> +</tr> +<tr> +<td> +<code>profile</code><br/> +<em> +string +</em> +</td> +<td> +<p>Profile is the named AWS profile used to authenticate.</p> +</td> +</tr> +<tr> +<td> +<code>roleArn</code><br/> +<em> +string +</em> +</td> +<td> +<p>RoleArn is the named AWS profile used to authenticate.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.StorageSpec">StorageSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertmanagerSpec">AlertmanagerSpec</a>, <a href="#monitoring.coreos.com/v1.CommonPrometheusFields">CommonPrometheusFields</a>, <a href="#monitoring.coreos.com/v1.ThanosRulerSpec">ThanosRulerSpec</a>) +</p> +<div> +<p>StorageSpec defines the configured storage for a group Prometheus servers. +If no storage option is specified, then by default an <a href="https://kubernetes.io/docs/concepts/storage/volumes/#emptydir">EmptyDir</a> will be used. +If multiple storage options are specified, priority will be given as follows: EmptyDir, Ephemeral, and lastly VolumeClaimTemplate.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>disableMountSubPath</code><br/> +<em> +bool +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>emptyDir</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#emptydirvolumesource-v1-core"> +Kubernetes core/v1.EmptyDirVolumeSource +</a> +</em> +</td> +<td> +<p>EmptyDirVolumeSource to be used by the Prometheus StatefulSets. If specified, used in place of any volumeClaimTemplate. More +info: <a href="https://kubernetes.io/docs/concepts/storage/volumes/#emptydir">https://kubernetes.io/docs/concepts/storage/volumes/#emptydir</a></p> +</td> +</tr> +<tr> +<td> +<code>ephemeral</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#ephemeralvolumesource-v1-core"> +Kubernetes core/v1.EphemeralVolumeSource +</a> +</em> +</td> +<td> +<p>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: <a href="https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes">https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes</a></p> +</td> +</tr> +<tr> +<td> +<code>volumeClaimTemplate</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.EmbeddedPersistentVolumeClaim"> +EmbeddedPersistentVolumeClaim +</a> +</em> +</td> +<td> +<p>A PVC spec to be used by the Prometheus StatefulSets.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.TLSConfig">TLSConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.APIServerConfig">APIServerConfig</a>, <a href="#monitoring.coreos.com/v1.AlertmanagerEndpoints">AlertmanagerEndpoints</a>, <a href="#monitoring.coreos.com/v1.Endpoint">Endpoint</a>, <a href="#monitoring.coreos.com/v1.RemoteReadSpec">RemoteReadSpec</a>, <a href="#monitoring.coreos.com/v1.RemoteWriteSpec">RemoteWriteSpec</a>, <a href="#monitoring.coreos.com/v1.ThanosRulerSpec">ThanosRulerSpec</a>, <a href="#monitoring.coreos.com/v1.ThanosSpec">ThanosSpec</a>) +</p> +<div> +<p>TLSConfig extends the safe TLS configuration with file parameters.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>ca</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Struct containing the CA cert to use for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>cert</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Struct containing the client cert file for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>keySecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret containing the client key file for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>serverName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Used to verify the hostname for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>insecureSkipVerify</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Disable target certificate validation.</p> +</td> +</tr> +<tr> +<td> +<code>caFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>Path to the CA cert in the Prometheus container to use for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>certFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>Path to the client cert file in the Prometheus container for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>keyFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>Path to the client key file in the Prometheus container for the targets.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.TLSConfigValidationError">TLSConfigValidationError +</h3> +<div> +<p>TLSConfigValidationError is returned by TLSConfig.Validate() on semantically +invalid tls configurations.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>err</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ThanosRuler">ThanosRuler +</h3> +<div> +<p>ThanosRuler defines a ThanosRuler deployment.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#objectmeta-v1-meta"> +Kubernetes meta/v1.ObjectMeta +</a> +</em> +</td> +<td> +Refer to the Kubernetes API documentation for the fields of the +<code>metadata</code> field. +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ThanosRulerSpec"> +ThanosRulerSpec +</a> +</em> +</td> +<td> +<p>Specification of the desired behavior of the ThanosRuler cluster. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +<br/> +<br/> +<table> +<tr> +<td> +<code>podMetadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.EmbeddedObjectMetadata"> +EmbeddedObjectMetadata +</a> +</em> +</td> +<td> +<p>PodMetadata contains Labels and Annotations gets propagated to the thanos ruler pods.</p> +</td> +</tr> +<tr> +<td> +<code>image</code><br/> +<em> +string +</em> +</td> +<td> +<p>Thanos container image URL.</p> +</td> +</tr> +<tr> +<td> +<code>imagePullSecrets</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#localobjectreference-v1-core"> +[]Kubernetes core/v1.LocalObjectReference +</a> +</em> +</td> +<td> +<p>An optional list of references to secrets in the same namespace +to use for pulling thanos images from registries +see <a href="http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod">http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod</a></p> +</td> +</tr> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When a ThanosRuler deployment is paused, no actions except for deletion +will be performed on the underlying objects.</p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Number of thanos ruler instances to deploy.</p> +</td> +</tr> +<tr> +<td> +<code>nodeSelector</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Define which Nodes the Pods are scheduled on.</p> +</td> +</tr> +<tr> +<td> +<code>resources</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#resourcerequirements-v1-core"> +Kubernetes core/v1.ResourceRequirements +</a> +</em> +</td> +<td> +<p>Resources defines the resource requirements for single Pods. +If not provided, no requests/limits will be set</p> +</td> +</tr> +<tr> +<td> +<code>affinity</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#affinity-v1-core"> +Kubernetes core/v1.Affinity +</a> +</em> +</td> +<td> +<p>If specified, the pod’s scheduling constraints.</p> +</td> +</tr> +<tr> +<td> +<code>tolerations</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#toleration-v1-core"> +[]Kubernetes core/v1.Toleration +</a> +</em> +</td> +<td> +<p>If specified, the pod’s tolerations.</p> +</td> +</tr> +<tr> +<td> +<code>topologySpreadConstraints</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#topologyspreadconstraint-v1-core"> +[]Kubernetes core/v1.TopologySpreadConstraint +</a> +</em> +</td> +<td> +<p>If specified, the pod’s topology spread constraints.</p> +</td> +</tr> +<tr> +<td> +<code>securityContext</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#podsecuritycontext-v1-core"> +Kubernetes core/v1.PodSecurityContext +</a> +</em> +</td> +<td> +<p>SecurityContext holds pod-level security attributes and common container settings. +This defaults to the default PodSecurityContext.</p> +</td> +</tr> +<tr> +<td> +<code>priorityClassName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Priority class assigned to the Pods</p> +</td> +</tr> +<tr> +<td> +<code>serviceAccountName</code><br/> +<em> +string +</em> +</td> +<td> +<p>ServiceAccountName is the name of the ServiceAccount to use to run the +Thanos Ruler Pods.</p> +</td> +</tr> +<tr> +<td> +<code>storage</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.StorageSpec"> +StorageSpec +</a> +</em> +</td> +<td> +<p>Storage spec to specify how storage shall be used.</p> +</td> +</tr> +<tr> +<td> +<code>volumes</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volume-v1-core"> +[]Kubernetes core/v1.Volume +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>objectStorageConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>ObjectStorageConfig configures object storage in Thanos. +Alternative to ObjectStorageConfigFile, and lower order priority.</p> +</td> +</tr> +<tr> +<td> +<code>objectStorageConfigFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>ObjectStorageConfigFile specifies the path of the object storage configuration file. +When used alongside with ObjectStorageConfig, ObjectStorageConfigFile takes precedence.</p> +</td> +</tr> +<tr> +<td> +<code>listenLocal</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ListenLocal makes the Thanos ruler listen on loopback, so that it +does not bind against the Pod IP.</p> +</td> +</tr> +<tr> +<td> +<code>queryEndpoints</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>QueryEndpoints defines Thanos querier endpoints from which to query metrics. +Maps to the –query flag of thanos ruler.</p> +</td> +</tr> +<tr> +<td> +<code>queryConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Define configuration for connecting to thanos query instances. +If this is defined, the QueryEndpoints field will be ignored. +Maps to the <code>query.config</code> CLI argument. +Only available with thanos v0.11.0 and higher.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagersUrl</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>Define URLs to send alerts to Alertmanager. For Thanos v0.10.0 and higher, +AlertManagersConfig should be used instead. Note: this field will be ignored +if AlertManagersConfig is specified. +Maps to the <code>alertmanagers.url</code> arg.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagersConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Define configuration for connecting to alertmanager. Only available with thanos v0.10.0 +and higher. Maps to the <code>alertmanagers.config</code> arg.</p> +</td> +</tr> +<tr> +<td> +<code>ruleSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>A label selector to select which PrometheusRules to mount for alerting and +recording.</p> +</td> +</tr> +<tr> +<td> +<code>ruleNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespaces to be selected for Rules discovery. If unspecified, only +the same namespace as the ThanosRuler object is in is used.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedNamespaceLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>EnforcedNamespaceLabel enforces adding a namespace label of origin for each alert +and metric that is user created. The label value will always be the namespace of the object that is +being created.</p> +</td> +</tr> +<tr> +<td> +<code>excludedFromEnforcement</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ObjectReference"> +[]ObjectReference +</a> +</em> +</td> +<td> +<p>List of references to PrometheusRule objects +to be excluded from enforcing a namespace label of origin. +Applies only if enforcedNamespaceLabel set to true.</p> +</td> +</tr> +<tr> +<td> +<code>prometheusRulesExcludedFromEnforce</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusRuleExcludeConfig"> +[]PrometheusRuleExcludeConfig +</a> +</em> +</td> +<td> +<p>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 +Deprecated: use excludedFromEnforcement instead.</p> +</td> +</tr> +<tr> +<td> +<code>logLevel</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log level for ThanosRuler to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>logFormat</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log format for ThanosRuler to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>portName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Port name used for the pods and governing service. +This defaults to web</p> +</td> +</tr> +<tr> +<td> +<code>evaluationInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval between consecutive evaluations.</p> +</td> +</tr> +<tr> +<td> +<code>retention</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Time duration ThanosRuler shall retain data for. Default is ‘24h’, +and must match the regular expression <code>[0-9]+(ms|s|m|h|d|w|y)</code> (milliseconds seconds minutes hours days weeks years).</p> +</td> +</tr> +<tr> +<td> +<code>containers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>Containers allows injecting additional containers or modifying operator generated +containers. This can be used to allow adding an authentication proxy to a ThanosRuler 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: <code>thanos-ruler</code> and <code>config-reloader</code>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>initContainers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. +fetch secrets for injection into the ThanosRuler configuration from external sources. Any +errors during the execution of an initContainer will lead to a restart of the Pod. +More info: <a href="https://kubernetes.io/docs/concepts/workloads/pods/init-containers/">https://kubernetes.io/docs/concepts/workloads/pods/init-containers/</a> +Using initContainers for any use case other then secret fetching 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.</p> +</td> +</tr> +<tr> +<td> +<code>tracingConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>TracingConfig configures tracing in Thanos. This is an experimental feature, it may change in any upcoming release in a breaking way.</p> +</td> +</tr> +<tr> +<td> +<code>labels</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Labels configure the external label pairs to ThanosRuler. A default replica label +<code>thanos_ruler_replica</code> will be always added as a label with the value of the pod’s name and it will be dropped in the alerts.</p> +</td> +</tr> +<tr> +<td> +<code>alertDropLabels</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>AlertDropLabels configure the label names which should be dropped in ThanosRuler alerts. +The replica label <code>thanos_ruler_replica</code> will always be dropped in alerts.</p> +</td> +</tr> +<tr> +<td> +<code>externalPrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>The external URL the Thanos Ruler instances will be available under. This is +necessary to generate correct URLs. This is necessary if Thanos Ruler is not +served from root of a DNS name.</p> +</td> +</tr> +<tr> +<td> +<code>routePrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>The route prefix ThanosRuler registers HTTP handlers for. This allows thanos UI to be served on a sub-path.</p> +</td> +</tr> +<tr> +<td> +<code>grpcServerTlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.TLSConfig"> +TLSConfig +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>alertQueryUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>The external Query URL the Thanos Ruler will set in the ‘Source’ field +of all alerts. +Maps to the ‘–alert.query-url’ CLI arg.</p> +</td> +</tr> +<tr> +<td> +<code>minReadySeconds</code><br/> +<em> +uint32 +</em> +</td> +<td> +<em>(Optional)</em> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>alertRelabelConfigs</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>AlertRelabelConfigs configures alert relabeling in ThanosRuler. +Alert relabel configurations must have the form as specified in the official Prometheus documentation: +<a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs</a> +Alternative to AlertRelabelConfigFile, and lower order priority.</p> +</td> +</tr> +<tr> +<td> +<code>alertRelabelConfigFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>AlertRelabelConfigFile specifies the path of the alert relabeling configuration file. +When used alongside with AlertRelabelConfigs, alertRelabelConfigFile takes precedence.</p> +</td> +</tr> +<tr> +<td> +<code>hostAliases</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.HostAlias"> +[]HostAlias +</a> +</em> +</td> +<td> +<p>Pods’ hostAliases configuration</p> +</td> +</tr> +</table> +</td> +</tr> +<tr> +<td> +<code>status</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ThanosRulerStatus"> +ThanosRulerStatus +</a> +</em> +</td> +<td> +<p>Most recent observed status of the ThanosRuler cluster. Read-only. Not +included when requesting from the apiserver, only from the ThanosRuler +Operator API itself. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ThanosRulerSpec">ThanosRulerSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.ThanosRuler">ThanosRuler</a>) +</p> +<div> +<p>ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>podMetadata</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.EmbeddedObjectMetadata"> +EmbeddedObjectMetadata +</a> +</em> +</td> +<td> +<p>PodMetadata contains Labels and Annotations gets propagated to the thanos ruler pods.</p> +</td> +</tr> +<tr> +<td> +<code>image</code><br/> +<em> +string +</em> +</td> +<td> +<p>Thanos container image URL.</p> +</td> +</tr> +<tr> +<td> +<code>imagePullSecrets</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#localobjectreference-v1-core"> +[]Kubernetes core/v1.LocalObjectReference +</a> +</em> +</td> +<td> +<p>An optional list of references to secrets in the same namespace +to use for pulling thanos images from registries +see <a href="http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod">http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod</a></p> +</td> +</tr> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>When a ThanosRuler deployment is paused, no actions except for deletion +will be performed on the underlying objects.</p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Number of thanos ruler instances to deploy.</p> +</td> +</tr> +<tr> +<td> +<code>nodeSelector</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Define which Nodes the Pods are scheduled on.</p> +</td> +</tr> +<tr> +<td> +<code>resources</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#resourcerequirements-v1-core"> +Kubernetes core/v1.ResourceRequirements +</a> +</em> +</td> +<td> +<p>Resources defines the resource requirements for single Pods. +If not provided, no requests/limits will be set</p> +</td> +</tr> +<tr> +<td> +<code>affinity</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#affinity-v1-core"> +Kubernetes core/v1.Affinity +</a> +</em> +</td> +<td> +<p>If specified, the pod’s scheduling constraints.</p> +</td> +</tr> +<tr> +<td> +<code>tolerations</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#toleration-v1-core"> +[]Kubernetes core/v1.Toleration +</a> +</em> +</td> +<td> +<p>If specified, the pod’s tolerations.</p> +</td> +</tr> +<tr> +<td> +<code>topologySpreadConstraints</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#topologyspreadconstraint-v1-core"> +[]Kubernetes core/v1.TopologySpreadConstraint +</a> +</em> +</td> +<td> +<p>If specified, the pod’s topology spread constraints.</p> +</td> +</tr> +<tr> +<td> +<code>securityContext</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#podsecuritycontext-v1-core"> +Kubernetes core/v1.PodSecurityContext +</a> +</em> +</td> +<td> +<p>SecurityContext holds pod-level security attributes and common container settings. +This defaults to the default PodSecurityContext.</p> +</td> +</tr> +<tr> +<td> +<code>priorityClassName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Priority class assigned to the Pods</p> +</td> +</tr> +<tr> +<td> +<code>serviceAccountName</code><br/> +<em> +string +</em> +</td> +<td> +<p>ServiceAccountName is the name of the ServiceAccount to use to run the +Thanos Ruler Pods.</p> +</td> +</tr> +<tr> +<td> +<code>storage</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.StorageSpec"> +StorageSpec +</a> +</em> +</td> +<td> +<p>Storage spec to specify how storage shall be used.</p> +</td> +</tr> +<tr> +<td> +<code>volumes</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volume-v1-core"> +[]Kubernetes core/v1.Volume +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>objectStorageConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>ObjectStorageConfig configures object storage in Thanos. +Alternative to ObjectStorageConfigFile, and lower order priority.</p> +</td> +</tr> +<tr> +<td> +<code>objectStorageConfigFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>ObjectStorageConfigFile specifies the path of the object storage configuration file. +When used alongside with ObjectStorageConfig, ObjectStorageConfigFile takes precedence.</p> +</td> +</tr> +<tr> +<td> +<code>listenLocal</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ListenLocal makes the Thanos ruler listen on loopback, so that it +does not bind against the Pod IP.</p> +</td> +</tr> +<tr> +<td> +<code>queryEndpoints</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>QueryEndpoints defines Thanos querier endpoints from which to query metrics. +Maps to the –query flag of thanos ruler.</p> +</td> +</tr> +<tr> +<td> +<code>queryConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Define configuration for connecting to thanos query instances. +If this is defined, the QueryEndpoints field will be ignored. +Maps to the <code>query.config</code> CLI argument. +Only available with thanos v0.11.0 and higher.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagersUrl</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>Define URLs to send alerts to Alertmanager. For Thanos v0.10.0 and higher, +AlertManagersConfig should be used instead. Note: this field will be ignored +if AlertManagersConfig is specified. +Maps to the <code>alertmanagers.url</code> arg.</p> +</td> +</tr> +<tr> +<td> +<code>alertmanagersConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Define configuration for connecting to alertmanager. Only available with thanos v0.10.0 +and higher. Maps to the <code>alertmanagers.config</code> arg.</p> +</td> +</tr> +<tr> +<td> +<code>ruleSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>A label selector to select which PrometheusRules to mount for alerting and +recording.</p> +</td> +</tr> +<tr> +<td> +<code>ruleNamespaceSelector</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#labelselector-v1-meta"> +Kubernetes meta/v1.LabelSelector +</a> +</em> +</td> +<td> +<p>Namespaces to be selected for Rules discovery. If unspecified, only +the same namespace as the ThanosRuler object is in is used.</p> +</td> +</tr> +<tr> +<td> +<code>enforcedNamespaceLabel</code><br/> +<em> +string +</em> +</td> +<td> +<p>EnforcedNamespaceLabel enforces adding a namespace label of origin for each alert +and metric that is user created. The label value will always be the namespace of the object that is +being created.</p> +</td> +</tr> +<tr> +<td> +<code>excludedFromEnforcement</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.ObjectReference"> +[]ObjectReference +</a> +</em> +</td> +<td> +<p>List of references to PrometheusRule objects +to be excluded from enforcing a namespace label of origin. +Applies only if enforcedNamespaceLabel set to true.</p> +</td> +</tr> +<tr> +<td> +<code>prometheusRulesExcludedFromEnforce</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.PrometheusRuleExcludeConfig"> +[]PrometheusRuleExcludeConfig +</a> +</em> +</td> +<td> +<p>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 +Deprecated: use excludedFromEnforcement instead.</p> +</td> +</tr> +<tr> +<td> +<code>logLevel</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log level for ThanosRuler to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>logFormat</code><br/> +<em> +string +</em> +</td> +<td> +<p>Log format for ThanosRuler to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>portName</code><br/> +<em> +string +</em> +</td> +<td> +<p>Port name used for the pods and governing service. +This defaults to web</p> +</td> +</tr> +<tr> +<td> +<code>evaluationInterval</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Interval between consecutive evaluations.</p> +</td> +</tr> +<tr> +<td> +<code>retention</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>Time duration ThanosRuler shall retain data for. Default is ‘24h’, +and must match the regular expression <code>[0-9]+(ms|s|m|h|d|w|y)</code> (milliseconds seconds minutes hours days weeks years).</p> +</td> +</tr> +<tr> +<td> +<code>containers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>Containers allows injecting additional containers or modifying operator generated +containers. This can be used to allow adding an authentication proxy to a ThanosRuler 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: <code>thanos-ruler</code> and <code>config-reloader</code>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>initContainers</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#container-v1-core"> +[]Kubernetes core/v1.Container +</a> +</em> +</td> +<td> +<p>InitContainers allows adding initContainers to the pod definition. Those can be used to e.g. +fetch secrets for injection into the ThanosRuler configuration from external sources. Any +errors during the execution of an initContainer will lead to a restart of the Pod. +More info: <a href="https://kubernetes.io/docs/concepts/workloads/pods/init-containers/">https://kubernetes.io/docs/concepts/workloads/pods/init-containers/</a> +Using initContainers for any use case other then secret fetching 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.</p> +</td> +</tr> +<tr> +<td> +<code>tracingConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>TracingConfig configures tracing in Thanos. This is an experimental feature, it may change in any upcoming release in a breaking way.</p> +</td> +</tr> +<tr> +<td> +<code>labels</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<p>Labels configure the external label pairs to ThanosRuler. A default replica label +<code>thanos_ruler_replica</code> will be always added as a label with the value of the pod’s name and it will be dropped in the alerts.</p> +</td> +</tr> +<tr> +<td> +<code>alertDropLabels</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>AlertDropLabels configure the label names which should be dropped in ThanosRuler alerts. +The replica label <code>thanos_ruler_replica</code> will always be dropped in alerts.</p> +</td> +</tr> +<tr> +<td> +<code>externalPrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>The external URL the Thanos Ruler instances will be available under. This is +necessary to generate correct URLs. This is necessary if Thanos Ruler is not +served from root of a DNS name.</p> +</td> +</tr> +<tr> +<td> +<code>routePrefix</code><br/> +<em> +string +</em> +</td> +<td> +<p>The route prefix ThanosRuler registers HTTP handlers for. This allows thanos UI to be served on a sub-path.</p> +</td> +</tr> +<tr> +<td> +<code>grpcServerTlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.TLSConfig"> +TLSConfig +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>alertQueryUrl</code><br/> +<em> +string +</em> +</td> +<td> +<p>The external Query URL the Thanos Ruler will set in the ‘Source’ field +of all alerts. +Maps to the ‘–alert.query-url’ CLI arg.</p> +</td> +</tr> +<tr> +<td> +<code>minReadySeconds</code><br/> +<em> +uint32 +</em> +</td> +<td> +<em>(Optional)</em> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>alertRelabelConfigs</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>AlertRelabelConfigs configures alert relabeling in ThanosRuler. +Alert relabel configurations must have the form as specified in the official Prometheus documentation: +<a href="https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs">https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs</a> +Alternative to AlertRelabelConfigFile, and lower order priority.</p> +</td> +</tr> +<tr> +<td> +<code>alertRelabelConfigFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>AlertRelabelConfigFile specifies the path of the alert relabeling configuration file. +When used alongside with AlertRelabelConfigs, alertRelabelConfigFile takes precedence.</p> +</td> +</tr> +<tr> +<td> +<code>hostAliases</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.HostAlias"> +[]HostAlias +</a> +</em> +</td> +<td> +<p>Pods’ hostAliases configuration</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ThanosRulerStatus">ThanosRulerStatus +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.ThanosRuler">ThanosRuler</a>) +</p> +<div> +<p>ThanosRulerStatus is the most recent observed status of the ThanosRuler. Read-only. Not +included when requesting from the apiserver, only from the Prometheus +Operator API itself. More info: +<a href="https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>paused</code><br/> +<em> +bool +</em> +</td> +<td> +<p>Represents whether any actions on the underlying managed objects are +being performed. Only delete actions will be performed.</p> +</td> +</tr> +<tr> +<td> +<code>replicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of non-terminated pods targeted by this ThanosRuler deployment +(their labels match the selector).</p> +</td> +</tr> +<tr> +<td> +<code>updatedReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of non-terminated pods targeted by this ThanosRuler deployment +that have the desired version spec.</p> +</td> +</tr> +<tr> +<td> +<code>availableReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of available pods (ready for at least minReadySeconds) +targeted by this ThanosRuler deployment.</p> +</td> +</tr> +<tr> +<td> +<code>unavailableReplicas</code><br/> +<em> +int32 +</em> +</td> +<td> +<p>Total number of unavailable pods targeted by this ThanosRuler deployment.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.ThanosSpec">ThanosSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.PrometheusSpec">PrometheusSpec</a>) +</p> +<div> +<p>ThanosSpec defines parameters for a Prometheus server within a Thanos deployment.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>image</code><br/> +<em> +string +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>version</code><br/> +<em> +string +</em> +</td> +<td> +<p>Version describes the version of Thanos to use.</p> +</td> +</tr> +<tr> +<td> +<code>tag</code><br/> +<em> +string +</em> +</td> +<td> +<p>Tag of Thanos sidecar container image to be deployed. Defaults to the value of <code>version</code>. +Version is ignored if Tag is set. +Deprecated: use ‘image’ instead. The image tag can be specified +as part of the image URL.</p> +</td> +</tr> +<tr> +<td> +<code>sha</code><br/> +<em> +string +</em> +</td> +<td> +<p>SHA of Thanos container image to be deployed. Defaults to the value of <code>version</code>. +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.</p> +</td> +</tr> +<tr> +<td> +<code>baseImage</code><br/> +<em> +string +</em> +</td> +<td> +<p>Thanos base image if other than default. +Deprecated: use ‘image’ instead</p> +</td> +</tr> +<tr> +<td> +<code>resources</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#resourcerequirements-v1-core"> +Kubernetes core/v1.ResourceRequirements +</a> +</em> +</td> +<td> +<p>Resources defines the resource requirements for the Thanos sidecar. +If not provided, no requests/limits will be set</p> +</td> +</tr> +<tr> +<td> +<code>objectStorageConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>ObjectStorageConfig configures object storage in Thanos. +Alternative to ObjectStorageConfigFile, and lower order priority.</p> +</td> +</tr> +<tr> +<td> +<code>objectStorageConfigFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>ObjectStorageConfigFile specifies the path of the object storage configuration file. +When used alongside with ObjectStorageConfig, ObjectStorageConfigFile takes precedence.</p> +</td> +</tr> +<tr> +<td> +<code>listenLocal</code><br/> +<em> +bool +</em> +</td> +<td> +<p>ListenLocal makes the Thanos sidecar listen on loopback, so that it +does not bind against the Pod IP.</p> +</td> +</tr> +<tr> +<td> +<code>tracingConfig</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>TracingConfig configures tracing in Thanos. This is an experimental feature, it may change in any upcoming release in a breaking way.</p> +</td> +</tr> +<tr> +<td> +<code>tracingConfigFile</code><br/> +<em> +string +</em> +</td> +<td> +<p>TracingConfig specifies the path of the tracing configuration file. +When used alongside with TracingConfig, TracingConfigFile takes precedence.</p> +</td> +</tr> +<tr> +<td> +<code>grpcServerTlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.TLSConfig"> +TLSConfig +</a> +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>logLevel</code><br/> +<em> +string +</em> +</td> +<td> +<p>LogLevel for Thanos sidecar to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>logFormat</code><br/> +<em> +string +</em> +</td> +<td> +<p>LogFormat for Thanos sidecar to be configured with.</p> +</td> +</tr> +<tr> +<td> +<code>minTime</code><br/> +<em> +string +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>readyTimeout</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Duration"> +Duration +</a> +</em> +</td> +<td> +<p>ReadyTimeout is the maximum time Thanos sidecar will wait for Prometheus to start. Eg 10m</p> +</td> +</tr> +<tr> +<td> +<code>volumeMounts</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#volumemount-v1-core"> +[]Kubernetes core/v1.VolumeMount +</a> +</em> +</td> +<td> +<p>VolumeMounts allows configuration of additional VolumeMounts on the output StatefulSet definition. +VolumeMounts specified will be appended to other VolumeMounts in the thanos-sidecar container.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.WebTLSConfig">WebTLSConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1.AlertmanagerWebSpec">AlertmanagerWebSpec</a>, <a href="#monitoring.coreos.com/v1.PrometheusWebSpec">PrometheusWebSpec</a>) +</p> +<div> +<p>WebTLSConfig defines the TLS parameters for HTTPS.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>keySecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Secret containing the TLS key for the server.</p> +</td> +</tr> +<tr> +<td> +<code>cert</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Contains the TLS certificate for the server.</p> +</td> +</tr> +<tr> +<td> +<code>clientAuthType</code><br/> +<em> +string +</em> +</td> +<td> +<p>Server policy for client authentication. Maps to ClientAuth Policies. +For more detail on clientAuth options: +<a href="https://golang.org/pkg/crypto/tls/#ClientAuthType">https://golang.org/pkg/crypto/tls/#ClientAuthType</a></p> +</td> +</tr> +<tr> +<td> +<code>client_ca</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SecretOrConfigMap"> +SecretOrConfigMap +</a> +</em> +</td> +<td> +<p>Contains the CA certificate for client certificate authentication to the server.</p> +</td> +</tr> +<tr> +<td> +<code>minVersion</code><br/> +<em> +string +</em> +</td> +<td> +<p>Minimum TLS version that is acceptable. Defaults to TLS12.</p> +</td> +</tr> +<tr> +<td> +<code>maxVersion</code><br/> +<em> +string +</em> +</td> +<td> +<p>Maximum TLS version that is acceptable. Defaults to TLS13.</p> +</td> +</tr> +<tr> +<td> +<code>cipherSuites</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>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: <a href="https://golang.org/pkg/crypto/tls/#pkg-constants">https://golang.org/pkg/crypto/tls/#pkg-constants</a></p> +</td> +</tr> +<tr> +<td> +<code>preferServerCipherSuites</code><br/> +<em> +bool +</em> +</td> +<td> +<p>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.</p> +</td> +</tr> +<tr> +<td> +<code>curvePreferences</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>Elliptic curves that will be used in an ECDHE handshake, in preference +order. Available curves are documented in the go documentation: +<a href="https://golang.org/pkg/crypto/tls/#CurveID">https://golang.org/pkg/crypto/tls/#CurveID</a></p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1.WebTLSConfigError">WebTLSConfigError +</h3> +<div> +<p>WebTLSConfigError is returned by WebTLSConfig.Validate() on +semantically invalid configurations.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>err</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +</tbody> +</table> +<hr/> +<h2 id="monitoring.coreos.com/v1alpha1">monitoring.coreos.com/v1alpha1</h2> +Resource Types: +<ul><li> +<a href="#monitoring.coreos.com/v1alpha1.AlertmanagerConfig">AlertmanagerConfig</a> +</li></ul> +<h3 id="monitoring.coreos.com/v1alpha1.AlertmanagerConfig">AlertmanagerConfig +</h3> +<div> +<p>AlertmanagerConfig defines a namespaced AlertmanagerConfig to be aggregated +across multiple namespaces configuring one Alertmanager cluster.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>apiVersion</code><br/> +string</td> +<td> +<code> +monitoring.coreos.com/v1alpha1 +</code> +</td> +</tr> +<tr> +<td> +<code>kind</code><br/> +string +</td> +<td><code>AlertmanagerConfig</code></td> +</tr> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#objectmeta-v1-meta"> +Kubernetes meta/v1.ObjectMeta +</a> +</em> +</td> +<td> +Refer to the Kubernetes API documentation for the fields of the +<code>metadata</code> field. +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.AlertmanagerConfigSpec"> +AlertmanagerConfigSpec +</a> +</em> +</td> +<td> +<br/> +<br/> +<table> +<tr> +<td> +<code>route</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.Route"> +Route +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The Alertmanager route definition for alerts matching the resource’s +namespace. If present, it will be added to the generated Alertmanager +configuration as a first-level route.</p> +</td> +</tr> +<tr> +<td> +<code>receivers</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.Receiver"> +[]Receiver +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of receivers.</p> +</td> +</tr> +<tr> +<td> +<code>inhibitRules</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.InhibitRule"> +[]InhibitRule +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of inhibition rules. The rules will only apply to alerts matching +the resource’s namespace.</p> +</td> +</tr> +<tr> +<td> +<code>muteTimeIntervals</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.MuteTimeInterval"> +[]MuteTimeInterval +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of MuteTimeInterval specifying when the routes should be muted.</p> +</td> +</tr> +</table> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.AlertmanagerConfigSpec">AlertmanagerConfigSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.AlertmanagerConfig">AlertmanagerConfig</a>) +</p> +<div> +<p>AlertmanagerConfigSpec is a specification of the desired behavior of the Alertmanager configuration. +By definition, the Alertmanager configuration only applies to alerts for which +the <code>namespace</code> label is equal to the namespace of the AlertmanagerConfig resource.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>route</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.Route"> +Route +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The Alertmanager route definition for alerts matching the resource’s +namespace. If present, it will be added to the generated Alertmanager +configuration as a first-level route.</p> +</td> +</tr> +<tr> +<td> +<code>receivers</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.Receiver"> +[]Receiver +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of receivers.</p> +</td> +</tr> +<tr> +<td> +<code>inhibitRules</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.InhibitRule"> +[]InhibitRule +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of inhibition rules. The rules will only apply to alerts matching +the resource’s namespace.</p> +</td> +</tr> +<tr> +<td> +<code>muteTimeIntervals</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.MuteTimeInterval"> +[]MuteTimeInterval +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of MuteTimeInterval specifying when the routes should be muted.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.DayOfMonthRange">DayOfMonthRange +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.TimeInterval">TimeInterval</a>) +</p> +<div> +<p>DayOfMonthRange is an inclusive range of days of the month beginning at 1</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>start</code><br/> +<em> +int +</em> +</td> +<td> +<p>Start of the inclusive range</p> +</td> +</tr> +<tr> +<td> +<code>end</code><br/> +<em> +int +</em> +</td> +<td> +<p>End of the inclusive range</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.EmailConfig">EmailConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>EmailConfig configures notifications via Email.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>to</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The email address to send notifications to.</p> +</td> +</tr> +<tr> +<td> +<code>from</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The sender address.</p> +</td> +</tr> +<tr> +<td> +<code>hello</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The hostname to identify to the SMTP server.</p> +</td> +</tr> +<tr> +<td> +<code>smarthost</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The SMTP host and port through which emails are sent. E.g. example.com:25</p> +</td> +</tr> +<tr> +<td> +<code>authUsername</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The username to use for authentication.</p> +</td> +</tr> +<tr> +<td> +<code>authPassword</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the password to use for authentication. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>authSecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the CRAM-MD5 secret. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>authIdentity</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The identity to use for authentication.</p> +</td> +</tr> +<tr> +<td> +<code>headers</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.KeyValue"> +[]KeyValue +</a> +</em> +</td> +<td> +<p>Further headers email header key/value pairs. Overrides any headers +previously set by the notification implementation.</p> +</td> +</tr> +<tr> +<td> +<code>html</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The HTML body of the email notification.</p> +</td> +</tr> +<tr> +<td> +<code>text</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The text body of the email notification.</p> +</td> +</tr> +<tr> +<td> +<code>requireTLS</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>The SMTP TLS requirement. +Note that Go does not support unencrypted connections to remote SMTP endpoints.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeTLSConfig"> +SafeTLSConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>TLS configuration</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.HTTPConfig">HTTPConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.OpsGenieConfig">OpsGenieConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.PagerDutyConfig">PagerDutyConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.PushoverConfig">PushoverConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.SNSConfig">SNSConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.SlackConfig">SlackConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.TelegramConfig">TelegramConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.VictorOpsConfig">VictorOpsConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.WeChatConfig">WeChatConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.WebhookConfig">WebhookConfig</a>) +</p> +<div> +<p>HTTPConfig defines a client HTTP configuration. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#http_config">https://prometheus.io/docs/alerting/latest/configuration/#http_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeAuthorization"> +SafeAuthorization +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Authorization header configuration for the client. +This is mutually exclusive with BasicAuth and is only available starting from Alertmanager v0.22+.</p> +</td> +</tr> +<tr> +<td> +<code>basicAuth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.BasicAuth"> +BasicAuth +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>BasicAuth for the client. +This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence.</p> +</td> +</tr> +<tr> +<td> +<code>oauth2</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.OAuth2"> +OAuth2 +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>OAuth2 client credentials used to fetch a token for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenSecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the bearer token to be used by the client +for authentication. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeTLSConfig"> +SafeTLSConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>TLS configuration for the client.</p> +</td> +</tr> +<tr> +<td> +<code>proxyURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Optional proxy URL.</p> +</td> +</tr> +<tr> +<td> +<code>followRedirects</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>FollowRedirects specifies whether the client should follow HTTP 3xx redirects.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.InhibitRule">InhibitRule +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.AlertmanagerConfigSpec">AlertmanagerConfigSpec</a>) +</p> +<div> +<p>InhibitRule defines an inhibition rule that allows to mute alerts when other +alerts are already firing. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#inhibit_rule">https://prometheus.io/docs/alerting/latest/configuration/#inhibit_rule</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>targetMatch</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.Matcher"> +[]Matcher +</a> +</em> +</td> +<td> +<p>Matchers that have to be fulfilled in the alerts to be muted. The +operator enforces that the alert matches the resource’s namespace.</p> +</td> +</tr> +<tr> +<td> +<code>sourceMatch</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.Matcher"> +[]Matcher +</a> +</em> +</td> +<td> +<p>Matchers for which one or more alerts have to exist for the inhibition +to take effect. The operator enforces that the alert matches the +resource’s namespace.</p> +</td> +</tr> +<tr> +<td> +<code>equal</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>Labels that must have an equal value in the source and target alert for +the inhibition to take effect.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.KeyValue">KeyValue +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.EmailConfig">EmailConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.OpsGenieConfig">OpsGenieConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.PagerDutyConfig">PagerDutyConfig</a>, <a href="#monitoring.coreos.com/v1alpha1.VictorOpsConfig">VictorOpsConfig</a>) +</p> +<div> +<p>KeyValue defines a (key, value) tuple.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>key</code><br/> +<em> +string +</em> +</td> +<td> +<p>Key of the tuple.</p> +</td> +</tr> +<tr> +<td> +<code>value</code><br/> +<em> +string +</em> +</td> +<td> +<p>Value of the tuple.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.MatchType">MatchType +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Matcher">Matcher</a>) +</p> +<div> +<p>MatchType is a comparison operator on a Matcher</p> +</div> +<table> +<thead> +<tr> +<th>Value</th> +<th>Description</th> +</tr> +</thead> +<tbody><tr><td><p>"="</p></td> +<td></td> +</tr><tr><td><p>"!="</p></td> +<td></td> +</tr><tr><td><p>"!~"</p></td> +<td></td> +</tr><tr><td><p>"=~"</p></td> +<td></td> +</tr></tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.Matcher">Matcher +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.InhibitRule">InhibitRule</a>, <a href="#monitoring.coreos.com/v1alpha1.Route">Route</a>) +</p> +<div> +<p>Matcher defines how to match on alert’s labels.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>Label to match.</p> +</td> +</tr> +<tr> +<td> +<code>value</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Label value to match.</p> +</td> +</tr> +<tr> +<td> +<code>matchType</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.MatchType"> +MatchType +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Match operation available with AlertManager >= v0.22.0 and +takes precedence over Regex (deprecated) if non-empty.</p> +</td> +</tr> +<tr> +<td> +<code>regex</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether to match on equality (false) or regular-expression (true). +Deprecated as of AlertManager >= v0.22.0 where a user should use MatchType instead.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.Month">Month +(<code>string</code> alias)</h3> +<div> +<p>Month of the year</p> +</div> +<table> +<thead> +<tr> +<th>Value</th> +<th>Description</th> +</tr> +</thead> +<tbody><tr><td><p>"april"</p></td> +<td></td> +</tr><tr><td><p>"august"</p></td> +<td></td> +</tr><tr><td><p>"december"</p></td> +<td></td> +</tr><tr><td><p>"february"</p></td> +<td></td> +</tr><tr><td><p>"january"</p></td> +<td></td> +</tr><tr><td><p>"july"</p></td> +<td></td> +</tr><tr><td><p>"june"</p></td> +<td></td> +</tr><tr><td><p>"march"</p></td> +<td></td> +</tr><tr><td><p>"may"</p></td> +<td></td> +</tr><tr><td><p>"november"</p></td> +<td></td> +</tr><tr><td><p>"october"</p></td> +<td></td> +</tr><tr><td><p>"september"</p></td> +<td></td> +</tr></tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.MonthRange">MonthRange +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.TimeInterval">TimeInterval</a>) +</p> +<div> +<p>MonthRange is an inclusive range of months of the year beginning in January +Months can be specified by name (e.g ‘January’) by numerical month (e.g ‘1’) or as an inclusive range (e.g ‘January:March’, ‘1:3’, ‘1:March’)</p> +</div> +<h3 id="monitoring.coreos.com/v1alpha1.MuteTimeInterval">MuteTimeInterval +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.AlertmanagerConfigSpec">AlertmanagerConfigSpec</a>) +</p> +<div> +<p>MuteTimeInterval specifies the periods in time when notifications will be muted</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of the time interval</p> +</td> +</tr> +<tr> +<td> +<code>timeIntervals</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.TimeInterval"> +[]TimeInterval +</a> +</em> +</td> +<td> +<p>TimeIntervals is a list of TimeInterval</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.OpsGenieConfig">OpsGenieConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>OpsGenieConfig configures notifications via OpsGenie. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config">https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiKey</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the OpsGenie API key. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The URL to send OpsGenie API requests to.</p> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Alert text limited to 130 characters.</p> +</td> +</tr> +<tr> +<td> +<code>description</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Description of the incident.</p> +</td> +</tr> +<tr> +<td> +<code>source</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Backlink to the sender of the notification.</p> +</td> +</tr> +<tr> +<td> +<code>tags</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Comma separated list of tags attached to the notifications.</p> +</td> +</tr> +<tr> +<td> +<code>note</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Additional alert note.</p> +</td> +</tr> +<tr> +<td> +<code>priority</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Priority level of alert. Possible values are P1, P2, P3, P4, and P5.</p> +</td> +</tr> +<tr> +<td> +<code>updateAlerts</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether to update message and description of the alert in OpsGenie if it already exists +By default, the alert is never updated in OpsGenie, the new message only appears in activity log.</p> +</td> +</tr> +<tr> +<td> +<code>details</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.KeyValue"> +[]KeyValue +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A set of arbitrary key/value pairs that provide further detail about the incident.</p> +</td> +</tr> +<tr> +<td> +<code>responders</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.OpsGenieConfigResponder"> +[]OpsGenieConfigResponder +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of responders responsible for notifications.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +<tr> +<td> +<code>entity</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Optional field that can be used to specify which domain alert is related to.</p> +</td> +</tr> +<tr> +<td> +<code>actions</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Comma separated list of actions that will be available for the alert.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.OpsGenieConfigResponder">OpsGenieConfigResponder +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.OpsGenieConfig">OpsGenieConfig</a>) +</p> +<div> +<p>OpsGenieConfigResponder defines a responder to an incident. +One of <code>id</code>, <code>name</code> or <code>username</code> has to be defined.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>id</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>ID of the responder.</p> +</td> +</tr> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Name of the responder.</p> +</td> +</tr> +<tr> +<td> +<code>username</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Username of the responder.</p> +</td> +</tr> +<tr> +<td> +<code>type</code><br/> +<em> +string +</em> +</td> +<td> +<p>Type of responder.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.PagerDutyConfig">PagerDutyConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>PagerDutyConfig configures notifications via PagerDuty. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#pagerduty_config">https://prometheus.io/docs/alerting/latest/configuration/#pagerduty_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>routingKey</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the PagerDuty integration key (when using +Events API v2). Either this field or <code>serviceKey</code> needs to be defined. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>serviceKey</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the PagerDuty service key (when using +integration type “Prometheus”). Either this field or <code>routingKey</code> needs to +be defined. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The URL to send requests to.</p> +</td> +</tr> +<tr> +<td> +<code>client</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Client identification.</p> +</td> +</tr> +<tr> +<td> +<code>clientURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Backlink to the sender of notification.</p> +</td> +</tr> +<tr> +<td> +<code>description</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Description of the incident.</p> +</td> +</tr> +<tr> +<td> +<code>severity</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Severity of the incident.</p> +</td> +</tr> +<tr> +<td> +<code>class</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The class/type of the event.</p> +</td> +</tr> +<tr> +<td> +<code>group</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>A cluster or grouping of sources.</p> +</td> +</tr> +<tr> +<td> +<code>component</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The part or component of the affected system that is broken.</p> +</td> +</tr> +<tr> +<td> +<code>details</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.KeyValue"> +[]KeyValue +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Arbitrary key/value pairs that provide further detail about the incident.</p> +</td> +</tr> +<tr> +<td> +<code>pagerDutyImageConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.PagerDutyImageConfig"> +[]PagerDutyImageConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A list of image details to attach that provide further detail about an incident.</p> +</td> +</tr> +<tr> +<td> +<code>pagerDutyLinkConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.PagerDutyLinkConfig"> +[]PagerDutyLinkConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A list of link details to attach that provide further detail about an incident.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.PagerDutyImageConfig">PagerDutyImageConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.PagerDutyConfig">PagerDutyConfig</a>) +</p> +<div> +<p>PagerDutyImageConfig attaches images to an incident</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>src</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Src of the image being attached to the incident</p> +</td> +</tr> +<tr> +<td> +<code>href</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Optional URL; makes the image a clickable link.</p> +</td> +</tr> +<tr> +<td> +<code>alt</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Alt is the optional alternative text for the image.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.PagerDutyLinkConfig">PagerDutyLinkConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.PagerDutyConfig">PagerDutyConfig</a>) +</p> +<div> +<p>PagerDutyLinkConfig attaches text links to an incident</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>href</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Href is the URL of the link to be attached</p> +</td> +</tr> +<tr> +<td> +<code>alt</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Text that describes the purpose of the link, and can be used as the link’s text.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.ParsedRange">ParsedRange +</h3> +<div> +<p>ParsedRange is an integer representation of a range</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>start</code><br/> +<em> +int +</em> +</td> +<td> +<p>Start is the beginning of the range</p> +</td> +</tr> +<tr> +<td> +<code>end</code><br/> +<em> +int +</em> +</td> +<td> +<p>End of the range</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.PushoverConfig">PushoverConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>PushoverConfig configures notifications via Pushover. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#pushover_config">https://prometheus.io/docs/alerting/latest/configuration/#pushover_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>userKey</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the recipient user’s user key. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>token</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the registered application’s API token, see <a href="https://pushover.net/apps">https://pushover.net/apps</a>. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>title</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Notification title.</p> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Notification message.</p> +</td> +</tr> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>A supplementary URL shown alongside the message.</p> +</td> +</tr> +<tr> +<td> +<code>urlTitle</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>A title for supplementary URL, otherwise just the URL is shown</p> +</td> +</tr> +<tr> +<td> +<code>sound</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The name of one of the sounds supported by device clients to override the user’s default sound choice</p> +</td> +</tr> +<tr> +<td> +<code>priority</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Priority, see <a href="https://pushover.net/api#priority">https://pushover.net/api#priority</a></p> +</td> +</tr> +<tr> +<td> +<code>retry</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How often the Pushover servers will send the same notification to the user. +Must be at least 30 seconds.</p> +</td> +</tr> +<tr> +<td> +<code>expire</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How long your notification will continue to be retried for, unless the user +acknowledges the notification.</p> +</td> +</tr> +<tr> +<td> +<code>html</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether notification message is HTML or plain text.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.Receiver">Receiver +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.AlertmanagerConfigSpec">AlertmanagerConfigSpec</a>) +</p> +<div> +<p>Receiver defines one or more notification integrations.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of the receiver. Must be unique across all items from the list.</p> +</td> +</tr> +<tr> +<td> +<code>opsgenieConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.OpsGenieConfig"> +[]OpsGenieConfig +</a> +</em> +</td> +<td> +<p>List of OpsGenie configurations.</p> +</td> +</tr> +<tr> +<td> +<code>pagerdutyConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.PagerDutyConfig"> +[]PagerDutyConfig +</a> +</em> +</td> +<td> +<p>List of PagerDuty configurations.</p> +</td> +</tr> +<tr> +<td> +<code>slackConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.SlackConfig"> +[]SlackConfig +</a> +</em> +</td> +<td> +<p>List of Slack configurations.</p> +</td> +</tr> +<tr> +<td> +<code>webhookConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.WebhookConfig"> +[]WebhookConfig +</a> +</em> +</td> +<td> +<p>List of webhook configurations.</p> +</td> +</tr> +<tr> +<td> +<code>wechatConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.WeChatConfig"> +[]WeChatConfig +</a> +</em> +</td> +<td> +<p>List of WeChat configurations.</p> +</td> +</tr> +<tr> +<td> +<code>emailConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.EmailConfig"> +[]EmailConfig +</a> +</em> +</td> +<td> +<p>List of Email configurations.</p> +</td> +</tr> +<tr> +<td> +<code>victoropsConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.VictorOpsConfig"> +[]VictorOpsConfig +</a> +</em> +</td> +<td> +<p>List of VictorOps configurations.</p> +</td> +</tr> +<tr> +<td> +<code>pushoverConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.PushoverConfig"> +[]PushoverConfig +</a> +</em> +</td> +<td> +<p>List of Pushover configurations.</p> +</td> +</tr> +<tr> +<td> +<code>snsConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.SNSConfig"> +[]SNSConfig +</a> +</em> +</td> +<td> +<p>List of SNS configurations</p> +</td> +</tr> +<tr> +<td> +<code>telegramConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.TelegramConfig"> +[]TelegramConfig +</a> +</em> +</td> +<td> +<p>List of Telegram configurations.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.Route">Route +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.AlertmanagerConfigSpec">AlertmanagerConfigSpec</a>) +</p> +<div> +<p>Route defines a node in the routing tree.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>receiver</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Name of the receiver for this route. If not empty, it should be listed in +the <code>receivers</code> field.</p> +</td> +</tr> +<tr> +<td> +<code>groupBy</code><br/> +<em> +[]string +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of labels to group by. +Labels must not be repeated (unique list). +Special label “…” (aggregate by all possible labels), if provided, must be the only element in the list.</p> +</td> +</tr> +<tr> +<td> +<code>groupWait</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How long to wait before sending the initial notification. +Must match the regular expression<code>^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$</code> +Example: “30s”</p> +</td> +</tr> +<tr> +<td> +<code>groupInterval</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How long to wait before sending an updated notification. +Must match the regular expression<code>^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$</code> +Example: “5m”</p> +</td> +</tr> +<tr> +<td> +<code>repeatInterval</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How long to wait before repeating the last notification. +Must match the regular expression<code>^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$</code> +Example: “4h”</p> +</td> +</tr> +<tr> +<td> +<code>matchers</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.Matcher"> +[]Matcher +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of matchers that the alert’s labels should match. For the first +level route, the operator removes any existing equality and regexp +matcher on the <code>namespace</code> label and adds a <code>namespace: <object +namespace></code> matcher.</p> +</td> +</tr> +<tr> +<td> +<code>continue</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Boolean indicating whether an alert should continue matching subsequent +sibling nodes. It will always be overridden to true for the first-level +route by the Prometheus operator.</p> +</td> +</tr> +<tr> +<td> +<code>routes</code><br/> +<em> +<a href="https://pkg.go.dev/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1#JSON"> +[]k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON +</a> +</em> +</td> +<td> +<p>Child routes.</p> +</td> +</tr> +<tr> +<td> +<code>muteTimeIntervals</code><br/> +<em> +[]string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Note: this comment applies to the field definition above but appears +below otherwise it gets included in the generated manifest. +CRD schema doesn’t support self-referential types for now (see +<a href="https://github.com/kubernetes/kubernetes/issues/62872)">https://github.com/kubernetes/kubernetes/issues/62872)</a>. We have to use +an alternative type to circumvent the limitation. The downside is that +the Kube API can’t validate the data beyond the fact that it is a valid +JSON representation. +MuteTimeIntervals is a list of MuteTimeInterval names that will mute this route when matched,</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.SNSConfig">SNSConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>SNSConfig configures notifications via AWS SNS. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#sns_configs">https://prometheus.io/docs/alerting/latest/configuration/#sns_configs</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The SNS API URL i.e. <a href="https://sns.us-east-2.amazonaws.com">https://sns.us-east-2.amazonaws.com</a>. +If not specified, the SNS API URL from the SNS SDK will be used.</p> +</td> +</tr> +<tr> +<td> +<code>sigv4</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Sigv4"> +Sigv4 +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Configures AWS’s Signature Verification 4 signing process to sign requests.</p> +</td> +</tr> +<tr> +<td> +<code>topicARN</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>SNS topic ARN, i.e. arn:aws:sns:us-east-2:698519295917:My-Topic +If you don’t specify this value, you must specify a value for the PhoneNumber or TargetARN.</p> +</td> +</tr> +<tr> +<td> +<code>subject</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Subject line when the message is delivered to email endpoints.</p> +</td> +</tr> +<tr> +<td> +<code>phoneNumber</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Phone number if message is delivered via SMS in E.164 format. +If you don’t specify this value, you must specify a value for the TopicARN or TargetARN.</p> +</td> +</tr> +<tr> +<td> +<code>targetARN</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The mobile platform endpoint ARN if message is delivered via mobile notifications. +If you don’t specify this value, you must specify a value for the topic_arn or PhoneNumber.</p> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The message content of the SNS notification.</p> +</td> +</tr> +<tr> +<td> +<code>attributes</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<em>(Optional)</em> +<p>SNS message attributes.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.SlackAction">SlackAction +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.SlackConfig">SlackConfig</a>) +</p> +<div> +<p>SlackAction configures a single Slack action that is sent with each +notification. +See <a href="https://api.slack.com/docs/message-attachments#action_fields">https://api.slack.com/docs/message-attachments#action_fields</a> and +<a href="https://api.slack.com/docs/message-buttons">https://api.slack.com/docs/message-buttons</a> for more information.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>type</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>text</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>style</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>value</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>confirm</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.SlackConfirmationField"> +SlackConfirmationField +</a> +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.SlackConfig">SlackConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>SlackConfig configures notifications via Slack. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#slack_config">https://prometheus.io/docs/alerting/latest/configuration/#slack_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the Slack webhook URL. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>channel</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The channel or user to send notifications to.</p> +</td> +</tr> +<tr> +<td> +<code>username</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>color</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>title</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>titleLink</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>pretext</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>text</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>fields</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.SlackField"> +[]SlackField +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A list of Slack fields that are sent with each notification.</p> +</td> +</tr> +<tr> +<td> +<code>shortFields</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>footer</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>fallback</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>callbackId</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>iconEmoji</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>iconURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>imageURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>thumbURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>linkNames</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>mrkdwnIn</code><br/> +<em> +[]string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>actions</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.SlackAction"> +[]SlackAction +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A list of Slack actions that are sent with each notification.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.SlackConfirmationField">SlackConfirmationField +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.SlackAction">SlackAction</a>) +</p> +<div> +<p>SlackConfirmationField protect users from destructive actions or +particularly distinguished decisions by asking them to confirm their button +click one more time. +See <a href="https://api.slack.com/docs/interactive-message-field-guide#confirmation_fields">https://api.slack.com/docs/interactive-message-field-guide#confirmation_fields</a> +for more information.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>text</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>title</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>okText</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>dismissText</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.SlackField">SlackField +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.SlackConfig">SlackConfig</a>) +</p> +<div> +<p>SlackField configures a single Slack field that is sent with each notification. +Each field must contain a title, value, and optionally, a boolean value to indicate if the field +is short enough to be displayed next to other fields designated as short. +See <a href="https://api.slack.com/docs/message-attachments#fields">https://api.slack.com/docs/message-attachments#fields</a> for more information.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>title</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>value</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>short</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.TelegramConfig">TelegramConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>TelegramConfig configures notifications via Telegram. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#telegram_config">https://prometheus.io/docs/alerting/latest/configuration/#telegram_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The Telegram API URL i.e. <a href="https://api.telegram.org">https://api.telegram.org</a>. +If not specified, default API URL will be used.</p> +</td> +</tr> +<tr> +<td> +<code>botToken</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<p>Telegram bot token +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>chatID</code><br/> +<em> +int64 +</em> +</td> +<td> +<p>The Telegram chat ID.</p> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Message template</p> +</td> +</tr> +<tr> +<td> +<code>disableNotifications</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Disable telegram notifications</p> +</td> +</tr> +<tr> +<td> +<code>parseMode</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Parse mode for telegram message</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.Time">Time +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.TimeRange">TimeRange</a>) +</p> +<div> +<p>Time defines a time in 24hr format</p> +</div> +<h3 id="monitoring.coreos.com/v1alpha1.TimeInterval">TimeInterval +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.MuteTimeInterval">MuteTimeInterval</a>) +</p> +<div> +<p>TimeInterval describes intervals of time</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>times</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.TimeRange"> +[]TimeRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Times is a list of TimeRange</p> +</td> +</tr> +<tr> +<td> +<code>weekdays</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.WeekdayRange"> +[]WeekdayRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Weekdays is a list of WeekdayRange</p> +</td> +</tr> +<tr> +<td> +<code>daysOfMonth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.DayOfMonthRange"> +[]DayOfMonthRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>DaysOfMonth is a list of DayOfMonthRange</p> +</td> +</tr> +<tr> +<td> +<code>months</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.MonthRange"> +[]MonthRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Months is a list of MonthRange</p> +</td> +</tr> +<tr> +<td> +<code>years</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.YearRange"> +[]YearRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Years is a list of YearRange</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.TimeRange">TimeRange +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.TimeInterval">TimeInterval</a>) +</p> +<div> +<p>TimeRange defines a start and end time in 24hr format</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>startTime</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.Time"> +Time +</a> +</em> +</td> +<td> +<p>StartTime is the start time in 24hr format.</p> +</td> +</tr> +<tr> +<td> +<code>endTime</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.Time"> +Time +</a> +</em> +</td> +<td> +<p>EndTime is the end time in 24hr format.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.VictorOpsConfig">VictorOpsConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>VictorOpsConfig configures notifications via VictorOps. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#victorops_config">https://prometheus.io/docs/alerting/latest/configuration/#victorops_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiKey</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the API key to use when talking to the VictorOps API. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>apiUrl</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The VictorOps API URL.</p> +</td> +</tr> +<tr> +<td> +<code>routingKey</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>A key used to map the alert to a team.</p> +</td> +</tr> +<tr> +<td> +<code>messageType</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Describes the behavior of the alert (CRITICAL, WARNING, INFO).</p> +</td> +</tr> +<tr> +<td> +<code>entityDisplayName</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Contains summary of the alerted problem.</p> +</td> +</tr> +<tr> +<td> +<code>stateMessage</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Contains long explanation of the alerted problem.</p> +</td> +</tr> +<tr> +<td> +<code>monitoringTool</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The monitoring tool the state message is from.</p> +</td> +</tr> +<tr> +<td> +<code>customFields</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.KeyValue"> +[]KeyValue +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Additional custom fields for notification.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The HTTP client’s configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.WeChatConfig">WeChatConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>WeChatConfig configures notifications via WeChat. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#wechat_config">https://prometheus.io/docs/alerting/latest/configuration/#wechat_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiSecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the WeChat API key. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The WeChat API URL.</p> +</td> +</tr> +<tr> +<td> +<code>corpID</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The corp id for authentication.</p> +</td> +</tr> +<tr> +<td> +<code>agentID</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>toUser</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>toParty</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>toTag</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<p>API request data as defined by the WeChat API.</p> +</td> +</tr> +<tr> +<td> +<code>messageType</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.WebhookConfig">WebhookConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.Receiver">Receiver</a>) +</p> +<div> +<p>WebhookConfig configures notifications via a generic receiver supporting the webhook payload. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#webhook_config">https://prometheus.io/docs/alerting/latest/configuration/#webhook_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The URL to send HTTP POST requests to. <code>urlSecret</code> takes precedence over +<code>url</code>. One of <code>urlSecret</code> and <code>url</code> should be defined.</p> +</td> +</tr> +<tr> +<td> +<code>urlSecret</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#secretkeyselector-v1-core"> +Kubernetes core/v1.SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the webhook URL to send HTTP requests to. +<code>urlSecret</code> takes precedence over <code>url</code>. One of <code>urlSecret</code> and <code>url</code> +should be defined. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1alpha1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +<tr> +<td> +<code>maxAlerts</code><br/> +<em> +int32 +</em> +</td> +<td> +<em>(Optional)</em> +<p>Maximum number of alerts to be sent per webhook message. When 0, all alerts are included.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.Weekday">Weekday +(<code>string</code> alias)</h3> +<div> +<p>Weekday is day of the week</p> +</div> +<table> +<thead> +<tr> +<th>Value</th> +<th>Description</th> +</tr> +</thead> +<tbody><tr><td><p>"friday"</p></td> +<td></td> +</tr><tr><td><p>"monday"</p></td> +<td></td> +</tr><tr><td><p>"saturday"</p></td> +<td></td> +</tr><tr><td><p>"sunday"</p></td> +<td></td> +</tr><tr><td><p>"thursday"</p></td> +<td></td> +</tr><tr><td><p>"tuesday"</p></td> +<td></td> +</tr><tr><td><p>"wednesday"</p></td> +<td></td> +</tr></tbody> +</table> +<h3 id="monitoring.coreos.com/v1alpha1.WeekdayRange">WeekdayRange +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.TimeInterval">TimeInterval</a>) +</p> +<div> +<p>WeekdayRange is an inclusive range of days of the week beginning on Sunday +Days can be specified by name (e.g ‘Sunday’) or as an inclusive range (e.g ‘Monday:Friday’)</p> +</div> +<h3 id="monitoring.coreos.com/v1alpha1.YearRange">YearRange +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1alpha1.TimeInterval">TimeInterval</a>) +</p> +<div> +<p>YearRange is an inclusive range of years</p> +</div> +<hr/> +<h2 id="monitoring.coreos.com/v1beta1">monitoring.coreos.com/v1beta1</h2> +Resource Types: +<ul><li> +<a href="#monitoring.coreos.com/v1beta1.AlertmanagerConfig">AlertmanagerConfig</a> +</li></ul> +<h3 id="monitoring.coreos.com/v1beta1.AlertmanagerConfig">AlertmanagerConfig +</h3> +<div> +<p>AlertmanagerConfig defines a namespaced AlertmanagerConfig to be aggregated +across multiple namespaces configuring one Alertmanager cluster.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>apiVersion</code><br/> +string</td> +<td> +<code> +monitoring.coreos.com/v1beta1 +</code> +</td> +</tr> +<tr> +<td> +<code>kind</code><br/> +string +</td> +<td><code>AlertmanagerConfig</code></td> +</tr> +<tr> +<td> +<code>metadata</code><br/> +<em> +<a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#objectmeta-v1-meta"> +Kubernetes meta/v1.ObjectMeta +</a> +</em> +</td> +<td> +Refer to the Kubernetes API documentation for the fields of the +<code>metadata</code> field. +</td> +</tr> +<tr> +<td> +<code>spec</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.AlertmanagerConfigSpec"> +AlertmanagerConfigSpec +</a> +</em> +</td> +<td> +<br/> +<br/> +<table> +<tr> +<td> +<code>route</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.Route"> +Route +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The Alertmanager route definition for alerts matching the resource’s +namespace. If present, it will be added to the generated Alertmanager +configuration as a first-level route.</p> +</td> +</tr> +<tr> +<td> +<code>receivers</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.Receiver"> +[]Receiver +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of receivers.</p> +</td> +</tr> +<tr> +<td> +<code>inhibitRules</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.InhibitRule"> +[]InhibitRule +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of inhibition rules. The rules will only apply to alerts matching +the resource’s namespace.</p> +</td> +</tr> +<tr> +<td> +<code>timeIntervals</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.TimeInterval"> +[]TimeInterval +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of TimeInterval specifying when the routes should be muted or active.</p> +</td> +</tr> +</table> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.AlertmanagerConfigSpec">AlertmanagerConfigSpec +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.AlertmanagerConfig">AlertmanagerConfig</a>) +</p> +<div> +<p>AlertmanagerConfigSpec is a specification of the desired behavior of the Alertmanager configuration. +By definition, the Alertmanager configuration only applies to alerts for which +the <code>namespace</code> label is equal to the namespace of the AlertmanagerConfig resource.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>route</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.Route"> +Route +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The Alertmanager route definition for alerts matching the resource’s +namespace. If present, it will be added to the generated Alertmanager +configuration as a first-level route.</p> +</td> +</tr> +<tr> +<td> +<code>receivers</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.Receiver"> +[]Receiver +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of receivers.</p> +</td> +</tr> +<tr> +<td> +<code>inhibitRules</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.InhibitRule"> +[]InhibitRule +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of inhibition rules. The rules will only apply to alerts matching +the resource’s namespace.</p> +</td> +</tr> +<tr> +<td> +<code>timeIntervals</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.TimeInterval"> +[]TimeInterval +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of TimeInterval specifying when the routes should be muted or active.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.DayOfMonthRange">DayOfMonthRange +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.TimePeriod">TimePeriod</a>) +</p> +<div> +<p>DayOfMonthRange is an inclusive range of days of the month beginning at 1</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>start</code><br/> +<em> +int +</em> +</td> +<td> +<p>Start of the inclusive range</p> +</td> +</tr> +<tr> +<td> +<code>end</code><br/> +<em> +int +</em> +</td> +<td> +<p>End of the inclusive range</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.EmailConfig">EmailConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>EmailConfig configures notifications via Email.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>to</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The email address to send notifications to.</p> +</td> +</tr> +<tr> +<td> +<code>from</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The sender address.</p> +</td> +</tr> +<tr> +<td> +<code>hello</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The hostname to identify to the SMTP server.</p> +</td> +</tr> +<tr> +<td> +<code>smarthost</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The SMTP host and port through which emails are sent. E.g. example.com:25</p> +</td> +</tr> +<tr> +<td> +<code>authUsername</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The username to use for authentication.</p> +</td> +</tr> +<tr> +<td> +<code>authPassword</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the password to use for authentication. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>authSecret</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the CRAM-MD5 secret. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>authIdentity</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The identity to use for authentication.</p> +</td> +</tr> +<tr> +<td> +<code>headers</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.KeyValue"> +[]KeyValue +</a> +</em> +</td> +<td> +<p>Further headers email header key/value pairs. Overrides any headers +previously set by the notification implementation.</p> +</td> +</tr> +<tr> +<td> +<code>html</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The HTML body of the email notification.</p> +</td> +</tr> +<tr> +<td> +<code>text</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The text body of the email notification.</p> +</td> +</tr> +<tr> +<td> +<code>requireTLS</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>The SMTP TLS requirement. +Note that Go does not support unencrypted connections to remote SMTP endpoints.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeTLSConfig"> +SafeTLSConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>TLS configuration</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.HTTPConfig">HTTPConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.OpsGenieConfig">OpsGenieConfig</a>, <a href="#monitoring.coreos.com/v1beta1.PagerDutyConfig">PagerDutyConfig</a>, <a href="#monitoring.coreos.com/v1beta1.PushoverConfig">PushoverConfig</a>, <a href="#monitoring.coreos.com/v1beta1.SNSConfig">SNSConfig</a>, <a href="#monitoring.coreos.com/v1beta1.SlackConfig">SlackConfig</a>, <a href="#monitoring.coreos.com/v1beta1.TelegramConfig">TelegramConfig</a>, <a href="#monitoring.coreos.com/v1beta1.VictorOpsConfig">VictorOpsConfig</a>, <a href="#monitoring.coreos.com/v1beta1.WeChatConfig">WeChatConfig</a>, <a href="#monitoring.coreos.com/v1beta1.WebhookConfig">WebhookConfig</a>) +</p> +<div> +<p>HTTPConfig defines a client HTTP configuration. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#http_config">https://prometheus.io/docs/alerting/latest/configuration/#http_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>authorization</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeAuthorization"> +SafeAuthorization +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Authorization header configuration for the client. +This is mutually exclusive with BasicAuth and is only available starting from Alertmanager v0.22+.</p> +</td> +</tr> +<tr> +<td> +<code>basicAuth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.BasicAuth"> +BasicAuth +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>BasicAuth for the client. +This is mutually exclusive with Authorization. If both are defined, BasicAuth takes precedence.</p> +</td> +</tr> +<tr> +<td> +<code>oauth2</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.OAuth2"> +OAuth2 +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>OAuth2 client credentials used to fetch a token for the targets.</p> +</td> +</tr> +<tr> +<td> +<code>bearerTokenSecret</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the bearer token to be used by the client +for authentication. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>tlsConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.SafeTLSConfig"> +SafeTLSConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>TLS configuration for the client.</p> +</td> +</tr> +<tr> +<td> +<code>proxyURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Optional proxy URL.</p> +</td> +</tr> +<tr> +<td> +<code>followRedirects</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>FollowRedirects specifies whether the client should follow HTTP 3xx redirects.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.InhibitRule">InhibitRule +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.AlertmanagerConfigSpec">AlertmanagerConfigSpec</a>) +</p> +<div> +<p>InhibitRule defines an inhibition rule that allows to mute alerts when other +alerts are already firing. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#inhibit_rule">https://prometheus.io/docs/alerting/latest/configuration/#inhibit_rule</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>targetMatch</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.Matcher"> +[]Matcher +</a> +</em> +</td> +<td> +<p>Matchers that have to be fulfilled in the alerts to be muted. The +operator enforces that the alert matches the resource’s namespace.</p> +</td> +</tr> +<tr> +<td> +<code>sourceMatch</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.Matcher"> +[]Matcher +</a> +</em> +</td> +<td> +<p>Matchers for which one or more alerts have to exist for the inhibition +to take effect. The operator enforces that the alert matches the +resource’s namespace.</p> +</td> +</tr> +<tr> +<td> +<code>equal</code><br/> +<em> +[]string +</em> +</td> +<td> +<p>Labels that must have an equal value in the source and target alert for +the inhibition to take effect.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.KeyValue">KeyValue +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.EmailConfig">EmailConfig</a>, <a href="#monitoring.coreos.com/v1beta1.OpsGenieConfig">OpsGenieConfig</a>, <a href="#monitoring.coreos.com/v1beta1.PagerDutyConfig">PagerDutyConfig</a>, <a href="#monitoring.coreos.com/v1beta1.VictorOpsConfig">VictorOpsConfig</a>) +</p> +<div> +<p>KeyValue defines a (key, value) tuple.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>key</code><br/> +<em> +string +</em> +</td> +<td> +<p>Key of the tuple.</p> +</td> +</tr> +<tr> +<td> +<code>value</code><br/> +<em> +string +</em> +</td> +<td> +<p>Value of the tuple.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.MatchType">MatchType +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Matcher">Matcher</a>) +</p> +<div> +<p>MatchType is a comparison operator on a Matcher</p> +</div> +<table> +<thead> +<tr> +<th>Value</th> +<th>Description</th> +</tr> +</thead> +<tbody><tr><td><p>"="</p></td> +<td></td> +</tr><tr><td><p>"!="</p></td> +<td></td> +</tr><tr><td><p>"!~"</p></td> +<td></td> +</tr><tr><td><p>"=~"</p></td> +<td></td> +</tr></tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.Matcher">Matcher +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.InhibitRule">InhibitRule</a>, <a href="#monitoring.coreos.com/v1beta1.Route">Route</a>) +</p> +<div> +<p>Matcher defines how to match on alert’s labels.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>Label to match.</p> +</td> +</tr> +<tr> +<td> +<code>value</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Label value to match.</p> +</td> +</tr> +<tr> +<td> +<code>matchType</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.MatchType"> +MatchType +</a> +</em> +</td> +<td> +<p>Match operator, one of <code>=</code> (equal to), <code>!=</code> (not equal to), <code>=~</code> (regex +match) or <code>!~</code> (not regex match). +Negative operators (<code>!=</code> and <code>!~</code>) require Alertmanager >= v0.22.0.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.Month">Month +(<code>string</code> alias)</h3> +<div> +<p>Month of the year</p> +</div> +<table> +<thead> +<tr> +<th>Value</th> +<th>Description</th> +</tr> +</thead> +<tbody><tr><td><p>"april"</p></td> +<td></td> +</tr><tr><td><p>"august"</p></td> +<td></td> +</tr><tr><td><p>"december"</p></td> +<td></td> +</tr><tr><td><p>"february"</p></td> +<td></td> +</tr><tr><td><p>"january"</p></td> +<td></td> +</tr><tr><td><p>"july"</p></td> +<td></td> +</tr><tr><td><p>"june"</p></td> +<td></td> +</tr><tr><td><p>"march"</p></td> +<td></td> +</tr><tr><td><p>"may"</p></td> +<td></td> +</tr><tr><td><p>"november"</p></td> +<td></td> +</tr><tr><td><p>"october"</p></td> +<td></td> +</tr><tr><td><p>"september"</p></td> +<td></td> +</tr></tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.MonthRange">MonthRange +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.TimePeriod">TimePeriod</a>) +</p> +<div> +<p>MonthRange is an inclusive range of months of the year beginning in January +Months can be specified by name (e.g ‘January’) by numerical month (e.g ‘1’) or as an inclusive range (e.g ‘January:March’, ‘1:3’, ‘1:March’)</p> +</div> +<h3 id="monitoring.coreos.com/v1beta1.OpsGenieConfig">OpsGenieConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>OpsGenieConfig configures notifications via OpsGenie. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config">https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiKey</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the OpsGenie API key. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The URL to send OpsGenie API requests to.</p> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Alert text limited to 130 characters.</p> +</td> +</tr> +<tr> +<td> +<code>description</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Description of the incident.</p> +</td> +</tr> +<tr> +<td> +<code>source</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Backlink to the sender of the notification.</p> +</td> +</tr> +<tr> +<td> +<code>tags</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Comma separated list of tags attached to the notifications.</p> +</td> +</tr> +<tr> +<td> +<code>note</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Additional alert note.</p> +</td> +</tr> +<tr> +<td> +<code>priority</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Priority level of alert. Possible values are P1, P2, P3, P4, and P5.</p> +</td> +</tr> +<tr> +<td> +<code>details</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.KeyValue"> +[]KeyValue +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A set of arbitrary key/value pairs that provide further detail about the incident.</p> +</td> +</tr> +<tr> +<td> +<code>responders</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.OpsGenieConfigResponder"> +[]OpsGenieConfigResponder +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of responders responsible for notifications.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +<tr> +<td> +<code>entity</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Optional field that can be used to specify which domain alert is related to.</p> +</td> +</tr> +<tr> +<td> +<code>actions</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Comma separated list of actions that will be available for the alert.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.OpsGenieConfigResponder">OpsGenieConfigResponder +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.OpsGenieConfig">OpsGenieConfig</a>) +</p> +<div> +<p>OpsGenieConfigResponder defines a responder to an incident. +One of <code>id</code>, <code>name</code> or <code>username</code> has to be defined.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>id</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>ID of the responder.</p> +</td> +</tr> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Name of the responder.</p> +</td> +</tr> +<tr> +<td> +<code>username</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Username of the responder.</p> +</td> +</tr> +<tr> +<td> +<code>type</code><br/> +<em> +string +</em> +</td> +<td> +<p>Type of responder.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.PagerDutyConfig">PagerDutyConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>PagerDutyConfig configures notifications via PagerDuty. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#pagerduty_config">https://prometheus.io/docs/alerting/latest/configuration/#pagerduty_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>routingKey</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the PagerDuty integration key (when using +Events API v2). Either this field or <code>serviceKey</code> needs to be defined. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>serviceKey</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the PagerDuty service key (when using +integration type “Prometheus”). Either this field or <code>routingKey</code> needs to +be defined. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The URL to send requests to.</p> +</td> +</tr> +<tr> +<td> +<code>client</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Client identification.</p> +</td> +</tr> +<tr> +<td> +<code>clientURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Backlink to the sender of notification.</p> +</td> +</tr> +<tr> +<td> +<code>description</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Description of the incident.</p> +</td> +</tr> +<tr> +<td> +<code>severity</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Severity of the incident.</p> +</td> +</tr> +<tr> +<td> +<code>class</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The class/type of the event.</p> +</td> +</tr> +<tr> +<td> +<code>group</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>A cluster or grouping of sources.</p> +</td> +</tr> +<tr> +<td> +<code>component</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The part or component of the affected system that is broken.</p> +</td> +</tr> +<tr> +<td> +<code>details</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.KeyValue"> +[]KeyValue +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Arbitrary key/value pairs that provide further detail about the incident.</p> +</td> +</tr> +<tr> +<td> +<code>pagerDutyImageConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.PagerDutyImageConfig"> +[]PagerDutyImageConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A list of image details to attach that provide further detail about an incident.</p> +</td> +</tr> +<tr> +<td> +<code>pagerDutyLinkConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.PagerDutyLinkConfig"> +[]PagerDutyLinkConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A list of link details to attach that provide further detail about an incident.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.PagerDutyImageConfig">PagerDutyImageConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.PagerDutyConfig">PagerDutyConfig</a>) +</p> +<div> +<p>PagerDutyImageConfig attaches images to an incident</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>src</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Src of the image being attached to the incident</p> +</td> +</tr> +<tr> +<td> +<code>href</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Optional URL; makes the image a clickable link.</p> +</td> +</tr> +<tr> +<td> +<code>alt</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Alt is the optional alternative text for the image.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.PagerDutyLinkConfig">PagerDutyLinkConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.PagerDutyConfig">PagerDutyConfig</a>) +</p> +<div> +<p>PagerDutyLinkConfig attaches text links to an incident</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>href</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Href is the URL of the link to be attached</p> +</td> +</tr> +<tr> +<td> +<code>alt</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Text that describes the purpose of the link, and can be used as the link’s text.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.ParsedRange">ParsedRange +</h3> +<div> +<p>ParsedRange is an integer representation of a range</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>start</code><br/> +<em> +int +</em> +</td> +<td> +<p>Start is the beginning of the range</p> +</td> +</tr> +<tr> +<td> +<code>end</code><br/> +<em> +int +</em> +</td> +<td> +<p>End of the range</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.PushoverConfig">PushoverConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>PushoverConfig configures notifications via Pushover. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#pushover_config">https://prometheus.io/docs/alerting/latest/configuration/#pushover_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>userKey</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the recipient user’s user key. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>token</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<p>The secret’s key that contains the registered application’s API token, see <a href="https://pushover.net/apps">https://pushover.net/apps</a>. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>title</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Notification title.</p> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Notification message.</p> +</td> +</tr> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>A supplementary URL shown alongside the message.</p> +</td> +</tr> +<tr> +<td> +<code>urlTitle</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>A title for supplementary URL, otherwise just the URL is shown</p> +</td> +</tr> +<tr> +<td> +<code>sound</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The name of one of the sounds supported by device clients to override the user’s default sound choice</p> +</td> +</tr> +<tr> +<td> +<code>priority</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Priority, see <a href="https://pushover.net/api#priority">https://pushover.net/api#priority</a></p> +</td> +</tr> +<tr> +<td> +<code>retry</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How often the Pushover servers will send the same notification to the user. +Must be at least 30 seconds.</p> +</td> +</tr> +<tr> +<td> +<code>expire</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How long your notification will continue to be retried for, unless the user +acknowledges the notification.</p> +</td> +</tr> +<tr> +<td> +<code>html</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether notification message is HTML or plain text.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.Receiver">Receiver +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.AlertmanagerConfigSpec">AlertmanagerConfigSpec</a>) +</p> +<div> +<p>Receiver defines one or more notification integrations.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of the receiver. Must be unique across all items from the list.</p> +</td> +</tr> +<tr> +<td> +<code>opsgenieConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.OpsGenieConfig"> +[]OpsGenieConfig +</a> +</em> +</td> +<td> +<p>List of OpsGenie configurations.</p> +</td> +</tr> +<tr> +<td> +<code>pagerdutyConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.PagerDutyConfig"> +[]PagerDutyConfig +</a> +</em> +</td> +<td> +<p>List of PagerDuty configurations.</p> +</td> +</tr> +<tr> +<td> +<code>slackConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SlackConfig"> +[]SlackConfig +</a> +</em> +</td> +<td> +<p>List of Slack configurations.</p> +</td> +</tr> +<tr> +<td> +<code>webhookConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.WebhookConfig"> +[]WebhookConfig +</a> +</em> +</td> +<td> +<p>List of webhook configurations.</p> +</td> +</tr> +<tr> +<td> +<code>wechatConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.WeChatConfig"> +[]WeChatConfig +</a> +</em> +</td> +<td> +<p>List of WeChat configurations.</p> +</td> +</tr> +<tr> +<td> +<code>emailConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.EmailConfig"> +[]EmailConfig +</a> +</em> +</td> +<td> +<p>List of Email configurations.</p> +</td> +</tr> +<tr> +<td> +<code>victoropsConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.VictorOpsConfig"> +[]VictorOpsConfig +</a> +</em> +</td> +<td> +<p>List of VictorOps configurations.</p> +</td> +</tr> +<tr> +<td> +<code>pushoverConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.PushoverConfig"> +[]PushoverConfig +</a> +</em> +</td> +<td> +<p>List of Pushover configurations.</p> +</td> +</tr> +<tr> +<td> +<code>snsConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SNSConfig"> +[]SNSConfig +</a> +</em> +</td> +<td> +<p>List of SNS configurations</p> +</td> +</tr> +<tr> +<td> +<code>telegramConfigs</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.TelegramConfig"> +[]TelegramConfig +</a> +</em> +</td> +<td> +<p>List of Telegram configurations.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.Route">Route +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.AlertmanagerConfigSpec">AlertmanagerConfigSpec</a>) +</p> +<div> +<p>Route defines a node in the routing tree.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>receiver</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Name of the receiver for this route. If not empty, it should be listed in +the <code>receivers</code> field.</p> +</td> +</tr> +<tr> +<td> +<code>groupBy</code><br/> +<em> +[]string +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of labels to group by. +Labels must not be repeated (unique list). +Special label “…” (aggregate by all possible labels), if provided, must be the only element in the list.</p> +</td> +</tr> +<tr> +<td> +<code>groupWait</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How long to wait before sending the initial notification. +Must match the regular expression<code>^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$</code> +Example: “30s”</p> +</td> +</tr> +<tr> +<td> +<code>groupInterval</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How long to wait before sending an updated notification. +Must match the regular expression<code>^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$</code> +Example: “5m”</p> +</td> +</tr> +<tr> +<td> +<code>repeatInterval</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>How long to wait before repeating the last notification. +Must match the regular expression<code>^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$</code> +Example: “4h”</p> +</td> +</tr> +<tr> +<td> +<code>matchers</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.Matcher"> +[]Matcher +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>List of matchers that the alert’s labels should match. For the first +level route, the operator removes any existing equality and regexp +matcher on the <code>namespace</code> label and adds a <code>namespace: <object +namespace></code> matcher.</p> +</td> +</tr> +<tr> +<td> +<code>continue</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Boolean indicating whether an alert should continue matching subsequent +sibling nodes. It will always be overridden to true for the first-level +route by the Prometheus operator.</p> +</td> +</tr> +<tr> +<td> +<code>routes</code><br/> +<em> +<a href="https://pkg.go.dev/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1#JSON"> +[]k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1.JSON +</a> +</em> +</td> +<td> +<p>Child routes.</p> +</td> +</tr> +<tr> +<td> +<code>muteTimeIntervals</code><br/> +<em> +[]string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Note: this comment applies to the field definition above but appears +below otherwise it gets included in the generated manifest. +CRD schema doesn’t support self-referential types for now (see +<a href="https://github.com/kubernetes/kubernetes/issues/62872)">https://github.com/kubernetes/kubernetes/issues/62872)</a>. We have to use +an alternative type to circumvent the limitation. The downside is that +the Kube API can’t validate the data beyond the fact that it is a valid +JSON representation. +MuteTimeIntervals is a list of MuteTimeInterval names that will mute this route when matched,</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.SNSConfig">SNSConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>SNSConfig configures notifications via AWS SNS. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#sns_configs">https://prometheus.io/docs/alerting/latest/configuration/#sns_configs</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The SNS API URL i.e. <a href="https://sns.us-east-2.amazonaws.com">https://sns.us-east-2.amazonaws.com</a>. +If not specified, the SNS API URL from the SNS SDK will be used.</p> +</td> +</tr> +<tr> +<td> +<code>sigv4</code><br/> +<em> +<a href="#monitoring.coreos.com/v1.Sigv4"> +Sigv4 +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Configures AWS’s Signature Verification 4 signing process to sign requests.</p> +</td> +</tr> +<tr> +<td> +<code>topicARN</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>SNS topic ARN, i.e. arn:aws:sns:us-east-2:698519295917:My-Topic +If you don’t specify this value, you must specify a value for the PhoneNumber or TargetARN.</p> +</td> +</tr> +<tr> +<td> +<code>subject</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Subject line when the message is delivered to email endpoints.</p> +</td> +</tr> +<tr> +<td> +<code>phoneNumber</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Phone number if message is delivered via SMS in E.164 format. +If you don’t specify this value, you must specify a value for the TopicARN or TargetARN.</p> +</td> +</tr> +<tr> +<td> +<code>targetARN</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The mobile platform endpoint ARN if message is delivered via mobile notifications. +If you don’t specify this value, you must specify a value for the topic_arn or PhoneNumber.</p> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The message content of the SNS notification.</p> +</td> +</tr> +<tr> +<td> +<code>attributes</code><br/> +<em> +map[string]string +</em> +</td> +<td> +<em>(Optional)</em> +<p>SNS message attributes.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.SecretKeySelector">SecretKeySelector +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.EmailConfig">EmailConfig</a>, <a href="#monitoring.coreos.com/v1beta1.HTTPConfig">HTTPConfig</a>, <a href="#monitoring.coreos.com/v1beta1.OpsGenieConfig">OpsGenieConfig</a>, <a href="#monitoring.coreos.com/v1beta1.PagerDutyConfig">PagerDutyConfig</a>, <a href="#monitoring.coreos.com/v1beta1.PushoverConfig">PushoverConfig</a>, <a href="#monitoring.coreos.com/v1beta1.SlackConfig">SlackConfig</a>, <a href="#monitoring.coreos.com/v1beta1.TelegramConfig">TelegramConfig</a>, <a href="#monitoring.coreos.com/v1beta1.VictorOpsConfig">VictorOpsConfig</a>, <a href="#monitoring.coreos.com/v1beta1.WeChatConfig">WeChatConfig</a>, <a href="#monitoring.coreos.com/v1beta1.WebhookConfig">WebhookConfig</a>) +</p> +<div> +<p>SecretKeySelector selects a key of a Secret.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>The name of the secret in the object’s namespace to select from.</p> +</td> +</tr> +<tr> +<td> +<code>key</code><br/> +<em> +string +</em> +</td> +<td> +<p>The key of the secret to select from. Must be a valid secret key.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.SlackAction">SlackAction +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.SlackConfig">SlackConfig</a>) +</p> +<div> +<p>SlackAction configures a single Slack action that is sent with each +notification. +See <a href="https://api.slack.com/docs/message-attachments#action_fields">https://api.slack.com/docs/message-attachments#action_fields</a> and +<a href="https://api.slack.com/docs/message-buttons">https://api.slack.com/docs/message-buttons</a> for more information.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>type</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>text</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>style</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>value</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>confirm</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SlackConfirmationField"> +SlackConfirmationField +</a> +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.SlackConfig">SlackConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>SlackConfig configures notifications via Slack. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#slack_config">https://prometheus.io/docs/alerting/latest/configuration/#slack_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the Slack webhook URL. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>channel</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The channel or user to send notifications to.</p> +</td> +</tr> +<tr> +<td> +<code>username</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>color</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>title</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>titleLink</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>pretext</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>text</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>fields</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SlackField"> +[]SlackField +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A list of Slack fields that are sent with each notification.</p> +</td> +</tr> +<tr> +<td> +<code>shortFields</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>footer</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>fallback</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>callbackId</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>iconEmoji</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>iconURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>imageURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>thumbURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>linkNames</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>mrkdwnIn</code><br/> +<em> +[]string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>actions</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SlackAction"> +[]SlackAction +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>A list of Slack actions that are sent with each notification.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.SlackConfirmationField">SlackConfirmationField +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.SlackAction">SlackAction</a>) +</p> +<div> +<p>SlackConfirmationField protect users from destructive actions or +particularly distinguished decisions by asking them to confirm their button +click one more time. +See <a href="https://api.slack.com/docs/interactive-message-field-guide#confirmation_fields">https://api.slack.com/docs/interactive-message-field-guide#confirmation_fields</a> +for more information.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>text</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>title</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>okText</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>dismissText</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.SlackField">SlackField +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.SlackConfig">SlackConfig</a>) +</p> +<div> +<p>SlackField configures a single Slack field that is sent with each notification. +Each field must contain a title, value, and optionally, a boolean value to indicate if the field +is short enough to be displayed next to other fields designated as short. +See <a href="https://api.slack.com/docs/message-attachments#fields">https://api.slack.com/docs/message-attachments#fields</a> for more information.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>title</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>value</code><br/> +<em> +string +</em> +</td> +<td> +</td> +</tr> +<tr> +<td> +<code>short</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.TelegramConfig">TelegramConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>TelegramConfig configures notifications via Telegram. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#telegram_config">https://prometheus.io/docs/alerting/latest/configuration/#telegram_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The Telegram API URL i.e. <a href="https://api.telegram.org">https://api.telegram.org</a>. +If not specified, default API URL will be used.</p> +</td> +</tr> +<tr> +<td> +<code>botToken</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<p>Telegram bot token +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>chatID</code><br/> +<em> +int64 +</em> +</td> +<td> +<p>The Telegram chat ID.</p> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Message template</p> +</td> +</tr> +<tr> +<td> +<code>disableNotifications</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Disable telegram notifications</p> +</td> +</tr> +<tr> +<td> +<code>parseMode</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Parse mode for telegram message</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.Time">Time +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.TimeRange">TimeRange</a>) +</p> +<div> +<p>Time defines a time in 24hr format</p> +</div> +<h3 id="monitoring.coreos.com/v1beta1.TimeInterval">TimeInterval +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.AlertmanagerConfigSpec">AlertmanagerConfigSpec</a>) +</p> +<div> +<p>TimeInterval specifies the periods in time when notifications will be muted or active.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>name</code><br/> +<em> +string +</em> +</td> +<td> +<p>Name of the time interval.</p> +</td> +</tr> +<tr> +<td> +<code>timeIntervals</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.TimePeriod"> +[]TimePeriod +</a> +</em> +</td> +<td> +<p>TimeIntervals is a list of TimePeriod.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.TimePeriod">TimePeriod +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.TimeInterval">TimeInterval</a>) +</p> +<div> +<p>TimePeriod describes periods of time.</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>times</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.TimeRange"> +[]TimeRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Times is a list of TimeRange</p> +</td> +</tr> +<tr> +<td> +<code>weekdays</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.WeekdayRange"> +[]WeekdayRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Weekdays is a list of WeekdayRange</p> +</td> +</tr> +<tr> +<td> +<code>daysOfMonth</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.DayOfMonthRange"> +[]DayOfMonthRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>DaysOfMonth is a list of DayOfMonthRange</p> +</td> +</tr> +<tr> +<td> +<code>months</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.MonthRange"> +[]MonthRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Months is a list of MonthRange</p> +</td> +</tr> +<tr> +<td> +<code>years</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.YearRange"> +[]YearRange +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Years is a list of YearRange</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.TimeRange">TimeRange +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.TimePeriod">TimePeriod</a>) +</p> +<div> +<p>TimeRange defines a start and end time in 24hr format</p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>startTime</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.Time"> +Time +</a> +</em> +</td> +<td> +<p>StartTime is the start time in 24hr format.</p> +</td> +</tr> +<tr> +<td> +<code>endTime</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.Time"> +Time +</a> +</em> +</td> +<td> +<p>EndTime is the end time in 24hr format.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.VictorOpsConfig">VictorOpsConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>VictorOpsConfig configures notifications via VictorOps. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#victorops_config">https://prometheus.io/docs/alerting/latest/configuration/#victorops_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiKey</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the API key to use when talking to the VictorOps API. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>apiUrl</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The VictorOps API URL.</p> +</td> +</tr> +<tr> +<td> +<code>routingKey</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>A key used to map the alert to a team.</p> +</td> +</tr> +<tr> +<td> +<code>messageType</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Describes the behavior of the alert (CRITICAL, WARNING, INFO).</p> +</td> +</tr> +<tr> +<td> +<code>entityDisplayName</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Contains summary of the alerted problem.</p> +</td> +</tr> +<tr> +<td> +<code>stateMessage</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>Contains long explanation of the alerted problem.</p> +</td> +</tr> +<tr> +<td> +<code>monitoringTool</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The monitoring tool the state message is from.</p> +</td> +</tr> +<tr> +<td> +<code>customFields</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.KeyValue"> +[]KeyValue +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>Additional custom fields for notification.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The HTTP client’s configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.WeChatConfig">WeChatConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>WeChatConfig configures notifications via WeChat. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#wechat_config">https://prometheus.io/docs/alerting/latest/configuration/#wechat_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>apiSecret</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the WeChat API key. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>apiURL</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The WeChat API URL.</p> +</td> +</tr> +<tr> +<td> +<code>corpID</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The corp id for authentication.</p> +</td> +</tr> +<tr> +<td> +<code>agentID</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>toUser</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>toParty</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>toTag</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>message</code><br/> +<em> +string +</em> +</td> +<td> +<p>API request data as defined by the WeChat API.</p> +</td> +</tr> +<tr> +<td> +<code>messageType</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.WebhookConfig">WebhookConfig +</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.Receiver">Receiver</a>) +</p> +<div> +<p>WebhookConfig configures notifications via a generic receiver supporting the webhook payload. +See <a href="https://prometheus.io/docs/alerting/latest/configuration/#webhook_config">https://prometheus.io/docs/alerting/latest/configuration/#webhook_config</a></p> +</div> +<table> +<thead> +<tr> +<th>Field</th> +<th>Description</th> +</tr> +</thead> +<tbody> +<tr> +<td> +<code>sendResolved</code><br/> +<em> +bool +</em> +</td> +<td> +<em>(Optional)</em> +<p>Whether or not to notify about resolved alerts.</p> +</td> +</tr> +<tr> +<td> +<code>url</code><br/> +<em> +string +</em> +</td> +<td> +<em>(Optional)</em> +<p>The URL to send HTTP POST requests to. <code>urlSecret</code> takes precedence over +<code>url</code>. One of <code>urlSecret</code> and <code>url</code> should be defined.</p> +</td> +</tr> +<tr> +<td> +<code>urlSecret</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.SecretKeySelector"> +SecretKeySelector +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>The secret’s key that contains the webhook URL to send HTTP requests to. +<code>urlSecret</code> takes precedence over <code>url</code>. One of <code>urlSecret</code> and <code>url</code> +should be defined. +The secret needs to be in the same namespace as the AlertmanagerConfig +object and accessible by the Prometheus Operator.</p> +</td> +</tr> +<tr> +<td> +<code>httpConfig</code><br/> +<em> +<a href="#monitoring.coreos.com/v1beta1.HTTPConfig"> +HTTPConfig +</a> +</em> +</td> +<td> +<em>(Optional)</em> +<p>HTTP client configuration.</p> +</td> +</tr> +<tr> +<td> +<code>maxAlerts</code><br/> +<em> +int32 +</em> +</td> +<td> +<em>(Optional)</em> +<p>Maximum number of alerts to be sent per webhook message. When 0, all alerts are included.</p> +</td> +</tr> +</tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.Weekday">Weekday +(<code>string</code> alias)</h3> +<div> +<p>Weekday is day of the week</p> +</div> +<table> +<thead> +<tr> +<th>Value</th> +<th>Description</th> +</tr> +</thead> +<tbody><tr><td><p>"friday"</p></td> +<td></td> +</tr><tr><td><p>"monday"</p></td> +<td></td> +</tr><tr><td><p>"saturday"</p></td> +<td></td> +</tr><tr><td><p>"sunday"</p></td> +<td></td> +</tr><tr><td><p>"thursday"</p></td> +<td></td> +</tr><tr><td><p>"tuesday"</p></td> +<td></td> +</tr><tr><td><p>"wednesday"</p></td> +<td></td> +</tr></tbody> +</table> +<h3 id="monitoring.coreos.com/v1beta1.WeekdayRange">WeekdayRange +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.TimePeriod">TimePeriod</a>) +</p> +<div> +<p>WeekdayRange is an inclusive range of days of the week beginning on Sunday +Days can be specified by name (e.g ‘Sunday’) or as an inclusive range (e.g ‘Monday:Friday’)</p> +</div> +<h3 id="monitoring.coreos.com/v1beta1.YearRange">YearRange +(<code>string</code> alias)</h3> +<p> +(<em>Appears on:</em><a href="#monitoring.coreos.com/v1beta1.TimePeriod">TimePeriod</a>) +</p> +<div> +<p>YearRange is an inclusive range of years</p> +</div> +<hr/> diff --git a/Documentation/user-guides/basic-auth.md b/Documentation/user-guides/basic-auth.md index 5ba80f180..0470142b4 100644 --- a/Documentation/user-guides/basic-auth.md +++ b/Documentation/user-guides/basic-auth.md @@ -5,7 +5,7 @@ ## Basic auth for targets -To authenticate a `ServiceMonitor`s over a metrics endpoint use [`basicAuth`](../api.md#basicauth) +To authenticate a `ServiceMonitor`s over a metrics endpoint use [`basicAuth`](../api.md#monitoring.coreos.com/v1.BasicAuth) ```yaml apiVersion: monitoring.coreos.com/v1 diff --git a/Documentation/user-guides/storage.md b/Documentation/user-guides/storage.md index 82ce0e12f..2006f6e28 100644 --- a/Documentation/user-guides/storage.md +++ b/Documentation/user-guides/storage.md @@ -46,7 +46,7 @@ spec: storage: 40Gi ``` -> The full documentation of the `storage` field can be found in the [API documentation](../api.md#storagespec). +> The full documentation of the `storage` field can be found in the [API documentation](../api.md#monitoring.coreos.com/v1.StorageSpec). When creating the Prometheus object, a PersistentVolumeClaim is used for each Pod in the StatefulSet, and the storage should automatically be provisioned, mounted and used. diff --git a/Makefile b/Makefile index edbd4a6ce..5f89e9233 100644 --- a/Makefile +++ b/Makefile @@ -34,7 +34,9 @@ SHELLCHECK_BINARY=$(TOOLS_BIN_DIR)/shellcheck PROMLINTER_BINARY=$(TOOLS_BIN_DIR)/promlinter GOLANGCILINTER_BINARY=$(TOOLS_BIN_DIR)/golangci-lint MDOX_BINARY=$(TOOLS_BIN_DIR)/mdox -TOOLING=$(PO_DOCGEN_BINARY) $(CONTROLLER_GEN_BINARY) $(GOBINDATA_BINARY) $(JB_BINARY) $(GOJSONTOYAML_BINARY) $(JSONNET_BINARY) $(JSONNETFMT_BINARY) $(SHELLCHECK_BINARY) $(PROMLINTER_BINARY) $(GOLANGCILINTER_BINARY) $(MDOX_BINARY) +API_DOC_GEN_BINARY=$(TOOLS_BIN_DIR)/gen-crd-api-reference-docs +TOOLING=$(PO_DOCGEN_BINARY) $(CONTROLLER_GEN_BINARY) $(GOBINDATA_BINARY) $(JB_BINARY) $(GOJSONTOYAML_BINARY) $(JSONNET_BINARY) $(JSONNETFMT_BINARY) $(SHELLCHECK_BINARY) $(PROMLINTER_BINARY) $(GOLANGCILINTER_BINARY) $(MDOX_BINARY) $(API_DOC_GEN_BINARY) + K8S_GEN_VERSION:=release-1.14 K8S_GEN_BINARIES:=informer-gen lister-gen client-gen @@ -248,16 +250,12 @@ example/alertmanager-crd-conversion: scripts/generate/vendor scripts/generate/co scripts/generate/build-conversion-webhook-patch-for-alermanagerconfig-crd.sh FULLY_GENERATED_DOCS = Documentation/api.md Documentation/compatibility.md Documentation/operator.md -TO_BE_EXTENDED_DOCS = $(filter-out $(FULLY_GENERATED_DOCS), $(shell find Documentation -type f)) Documentation/operator.md: operator $(MDOX_BINARY) fmt $@ -# For now, the v1beta1 CRDs aren't part of the default bundle because they -# require to deploy/run the conversion webhook. As a consequence, they are not -# yet included in the API documentation. -Documentation/api.md: $(PO_DOCGEN_BINARY) $(TYPES_V1_TARGET) $(TYPES_V1ALPHA1_TARGET) - $(PO_DOCGEN_BINARY) api $(TYPES_V1_TARGET) $(TYPES_V1ALPHA1_TARGET) > $@ +Documentation/api.md: $(TYPES_V1_TARGET) $(TYPES_V1ALPHA1_TARGET) $(TYPES_V1BETA1_TARGET) + $(API_DOC_GEN_BINARY) -api-dir "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/" -config "$(PWD)/scripts/docs/config.json" -template-dir "$(PWD)/scripts/docs/templates" -out-file "$(PWD)/Documentation/api.md" Documentation/compatibility.md: $(PO_DOCGEN_BINARY) pkg/prometheus/statefulset.go $(PO_DOCGEN_BINARY) compatibility > $@ diff --git a/pkg/apis/monitoring/v1/types.go b/pkg/apis/monitoring/v1/types.go index 0a7a28759..16db37309 100644 --- a/pkg/apis/monitoring/v1/types.go +++ b/pkg/apis/monitoring/v1/types.go @@ -343,7 +343,6 @@ type CommonPrometheusFields struct { HostAliases []HostAlias `json:"hostAliases,omitempty"` } -// Prometheus defines a Prometheus deployment. // +genclient // +k8s:openapi-gen=true // +kubebuilder:resource:categories="prometheus-operator",shortName="prom" @@ -351,6 +350,8 @@ type CommonPrometheusFields struct { // +kubebuilder:printcolumn:name="Replicas",type="integer",JSONPath=".spec.replicas",description="The desired replicas number of Prometheuses" // +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" // +kubebuilder:subresource:status + +// Prometheus defines a Prometheus deployment. type Prometheus struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` @@ -1088,10 +1089,11 @@ type AlertmanagerEndpoints struct { Timeout *Duration `json:"timeout,omitempty"` } -// ServiceMonitor defines monitoring for a set of services. // +genclient // +k8s:openapi-gen=true // +kubebuilder:resource:categories="prometheus-operator",shortName="smon" + +// ServiceMonitor defines monitoring for a set of services. type ServiceMonitor struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` @@ -1190,10 +1192,11 @@ type Endpoint struct { EnableHttp2 *bool `json:"enableHttp2,omitempty"` } -// PodMonitor defines monitoring for a set of pods. // +genclient // +k8s:openapi-gen=true // +kubebuilder:resource:categories="prometheus-operator",shortName="pmon" + +// PodMonitor defines monitoring for a set of pods. type PodMonitor struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` @@ -1295,10 +1298,11 @@ type PodMetricsEndpointTLSConfig struct { SafeTLSConfig `json:",inline"` } -// Probe defines monitoring for a set of static targets or ingresses. // +genclient // +k8s:openapi-gen=true // +kubebuilder:resource:categories="prometheus-operator",shortName="prb" + +// Probe defines monitoring for a set of static targets or ingresses. type Probe struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` @@ -1667,10 +1671,11 @@ type PrometheusRuleList struct { Items []*PrometheusRule `json:"items"` } -// PrometheusRule defines recording and alerting rules for a Prometheus instance // +genclient // +k8s:openapi-gen=true // +kubebuilder:resource:categories="prometheus-operator",shortName="promrule" + +// PrometheusRule defines recording and alerting rules for a Prometheus instance type PrometheusRule struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` @@ -1712,13 +1717,14 @@ type Rule struct { Annotations map[string]string `json:"annotations,omitempty"` } -// Alertmanager describes an Alertmanager cluster. // +genclient // +k8s:openapi-gen=true // +kubebuilder:resource:categories="prometheus-operator",shortName="am" // +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version",description="The version of Alertmanager" // +kubebuilder:printcolumn:name="Replicas",type="integer",JSONPath=".spec.replicas",description="The desired replicas number of Alertmanagers" // +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" + +// Alertmanager describes an Alertmanager cluster. type Alertmanager struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` diff --git a/pkg/apis/monitoring/v1alpha1/alertmanager_config_types.go b/pkg/apis/monitoring/v1alpha1/alertmanager_config_types.go index 3c1e0c592..2a8a7aa73 100644 --- a/pkg/apis/monitoring/v1alpha1/alertmanager_config_types.go +++ b/pkg/apis/monitoring/v1alpha1/alertmanager_config_types.go @@ -36,12 +36,13 @@ const ( AlertmanagerConfigKindKey = "alertmanagerconfig" ) -// AlertmanagerConfig defines a namespaced AlertmanagerConfig to be aggregated -// across multiple namespaces configuring one Alertmanager cluster. // +genclient // +k8s:openapi-gen=true // +kubebuilder:resource:categories="prometheus-operator",shortName="amcfg" // +kubebuilder:storageversion + +// AlertmanagerConfig defines a namespaced AlertmanagerConfig to be aggregated +// across multiple namespaces configuring one Alertmanager cluster. type AlertmanagerConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` diff --git a/pkg/apis/monitoring/v1beta1/alertmanager_config_types.go b/pkg/apis/monitoring/v1beta1/alertmanager_config_types.go index 7877837b0..979db238a 100644 --- a/pkg/apis/monitoring/v1beta1/alertmanager_config_types.go +++ b/pkg/apis/monitoring/v1beta1/alertmanager_config_types.go @@ -35,11 +35,12 @@ const ( AlertmanagerConfigKindKey = "alertmanagerconfig" ) -// AlertmanagerConfig defines a namespaced AlertmanagerConfig to be aggregated -// across multiple namespaces configuring one Alertmanager cluster. // +genclient // +k8s:openapi-gen=true // +kubebuilder:resource:categories="prometheus-operator",shortName="amcfg" + +// AlertmanagerConfig defines a namespaced AlertmanagerConfig to be aggregated +// across multiple namespaces configuring one Alertmanager cluster. type AlertmanagerConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` diff --git a/scripts/docs/README.md b/scripts/docs/README.md new file mode 100644 index 000000000..926af5d4c --- /dev/null +++ b/scripts/docs/README.md @@ -0,0 +1,13 @@ +This directory contains the configuration and templates for generating the +HTML/MarkDown documentation of the Prometheus operator's custom resource +definitions. It uses the +[gen-crd-api-reference-docs](https://github.com/ahmetb/gen-crd-api-reference-docs) +project. + +## Building + +From the project's top directory, run: + +```console +make --always-make generate-docs +``` diff --git a/scripts/docs/config.json b/scripts/docs/config.json new file mode 100644 index 000000000..4c4d35747 --- /dev/null +++ b/scripts/docs/config.json @@ -0,0 +1,47 @@ +{ + "hideMemberFields": [ + "TypeMeta" + ], + "hideTypePatterns": [ + "ParseError$", + "List$" + ], + "externalPackages": [ + { + "typeMatchPrefix": "^k8s\\.io/apimachinery/pkg/apis/meta/v1\\.Duration$", + "docsURLTemplate": "https://pkg.go.dev/k8s.io/apimachinery/pkg/apis/meta/v1#Duration" + }, + { + "typeMatchPrefix": "^k8s\\.io/apimachinery/pkg/util/intstr\\.IntOrString$", + "docsURLTemplate": "https://pkg.go.dev/k8s.io/apimachinery/pkg/util/intstr#IntOrString" + }, + { + "typeMatchPrefix": "^k8s\\.io/(api|apimachinery/pkg/apis)/", + "docsURLTemplate": "https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.24/#{{lower .TypeIdentifier}}-{{arrIndex .PackageSegments -1}}-{{arrIndex .PackageSegments -2}}" + }, + { + "typeMatchPrefix": "^k8s\\.io/apiextensions-apiserver/pkg/apis/apiextensions/v1\\.JSON$", + "docsURLTemplate": "https://pkg.go.dev/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1#JSON" + }, + { + "typeMatchPrefix": "^github\\.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1", + "docsURLTemplate": "../v1/api.md#monitoring.coreos.com/v1.{{ .TypeIdentifier}}" + }, + { + "typeMatchPrefix": "^github\\.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1", + "docsURLTemplate": "../v1alpha1/api.md#monitoring.coreos.com/v1alpha1.{{ .TypeIdentifier}}" + }, + { + "typeMatchPrefix": "^github\\.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1", + "docsURLTemplate": "../v1beta1/api.md#monitoring.coreos.com/v1beta1.{{ .TypeIdentifier}}" + } + ], + "typeDisplayNamePrefixOverrides": { + "k8s.io/api/": "Kubernetes ", + "k8s.io/apimachinery/pkg/apis/": "Kubernetes ", + "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1": "Monitoring v1", + "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1": "Monitoring v1alpha1", + "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1": "Monitoring v1beta1" + }, + "markdownDisabled": false +} diff --git a/scripts/docs/templates/members.tpl b/scripts/docs/templates/members.tpl new file mode 100644 index 000000000..786f846a9 --- /dev/null +++ b/scripts/docs/templates/members.tpl @@ -0,0 +1,52 @@ +{{ define "member" }} +{{ if not (hiddenMember .)}} +{{ if fieldEmbedded . }} +{{ range .Type.Members }} +{{ template "member" . }} +{{ end }} +{{ else }} +<tr> + <td> + <code>{{ fieldName . }}</code><br/> + <em> + {{ if linkForType .Type }} + <a href="{{ linkForType .Type}}"> + {{ typeDisplayName .Type }} + </a> + {{ else }} + {{ typeDisplayName .Type }} + {{ end }} + </em> + </td> + <td> + {{ if isOptionalMember .}} + <em>(Optional)</em> + {{ end }} + + {{ safe (renderComments .CommentLines) }} + + {{ if and (eq (.Type.Name.Name) "ObjectMeta") }} + Refer to the Kubernetes API documentation for the fields of the + <code>metadata</code> field. + {{ end }} + + {{ if or (eq (fieldName .) "spec") }} + <br/> + <br/> + <table> + {{ template "members" .Type }} + </table> + {{ end }} + </td> +</tr> +{{ end }} +{{ end }} +{{ end }} + +{{ define "members" }} + +{{ range .Members }} +{{ template "member" . }} +{{ end }} + +{{ end }} diff --git a/scripts/docs/templates/pkg.tpl b/scripts/docs/templates/pkg.tpl new file mode 100644 index 000000000..43987587e --- /dev/null +++ b/scripts/docs/templates/pkg.tpl @@ -0,0 +1,58 @@ +{{ define "packages" }} +--- +title: "API reference" +description: "Prometheus operator generated API reference docs" +draft: false +images: [] +menu: + docs: + parent: "operator" +weight: 1000 +toc: true +--- + +> This page is automatically generated with `gen-crd-api-reference-docs`. + +{{ with .packages}} +<p>Packages:</p> +<ul> + {{ range . }} + <li> + <a href="#{{- packageAnchorID . -}}">{{ packageDisplayName . }}</a> + </li> + {{ end }} +</ul> +{{ end}} + +{{ range .packages }} + <h2 id="{{- packageAnchorID . -}}"> + {{- packageDisplayName . -}} + </h2> + + {{ with (index .GoPackages 0 )}} + {{ with .DocComments }} + <div> + {{ safe (renderComments .) }} + </div> + {{ end }} + {{ end }} + + Resource Types: + <ul> + {{- range (visibleTypes (sortedTypes .Types)) -}} + {{ if isExportedType . -}} + <li> + <a href="{{ linkForType . }}">{{ typeDisplayName . }}</a> + </li> + {{- end }} + {{- end -}} + </ul> + + {{ range (visibleTypes (sortedTypes .Types))}} + {{ template "type" . }} + {{ end }} + <hr/> +{{ end }} + +{{ end }} + diff --git a/scripts/docs/templates/type.tpl b/scripts/docs/templates/type.tpl new file mode 100644 index 000000000..8f0d66b8b --- /dev/null +++ b/scripts/docs/templates/type.tpl @@ -0,0 +1,81 @@ +{{ define "type" }} + +<h3 id="{{ anchorIDForType . }}"> + {{- .Name.Name }} + {{ if eq .Kind "Alias" }}(<code>{{.Underlying}}</code> alias){{ end -}} +</h3> +{{ with (typeReferences .) }} + <p> + (<em>Appears on:</em> + {{- $prev := "" -}} + {{- range . -}} + {{- if $prev -}}, {{ end -}} + {{- $prev = . -}} + <a href="{{ linkForType . }}">{{ typeDisplayName . }}</a> + {{- end -}} + ) + </p> +{{ end }} + +<div> + {{ safe (renderComments .CommentLines) }} +</div> + +{{ with (constantsOfType .) }} +<table> + <thead> + <tr> + <th>Value</th> + <th>Description</th> + </tr> + </thead> + <tbody> + {{- range . -}} + <tr> + {{- /* + renderComments implicitly creates a <p> element, so we + add one to the display name as well to make the contents + of the two cells align evenly. + */ -}} + <td><p>{{ typeDisplayName . }}</p></td> + <td>{{ safe (renderComments .CommentLines) }}</td> + </tr> + {{- end -}} + </tbody> +</table> +{{ end }} + +{{ if .Members }} +<table> + <thead> + <tr> + <th>Field</th> + <th>Description</th> + </tr> + </thead> + <tbody> + {{ if isExportedType . }} + <tr> + <td> + <code>apiVersion</code><br/> + string</td> + <td> + <code> + {{apiGroup .}} + </code> + </td> + </tr> + <tr> + <td> + <code>kind</code><br/> + string + </td> + <td><code>{{.Name.Name}}</code></td> + </tr> + {{ end }} + {{ template "members" .}} + </tbody> +</table> +{{ end }} + +{{ end }} diff --git a/scripts/go.mod b/scripts/go.mod index 7bb5e4f61..ae64cc194 100644 --- a/scripts/go.mod +++ b/scripts/go.mod @@ -3,8 +3,9 @@ module github.com/prometheus-operator/prometheus-operator/tooling go 1.18 require ( + github.com/ahmetb/gen-crd-api-reference-docs v0.3.1-0.20220618162802-424739b250f5 github.com/brancz/gojsontoyaml v0.1.0 - github.com/bwplotka/mdox v0.9.1-0.20220712163347-7dcc385468d7 + github.com/bwplotka/mdox v0.9.1-0.20220713080221-769034ad8cfe github.com/golangci/golangci-lint v1.46.2 github.com/google/go-jsonnet v0.18.0 github.com/jsonnet-bundler/jsonnet-bundler v0.5.1 @@ -24,7 +25,7 @@ require ( github.com/Masterminds/semver v1.5.0 // indirect github.com/OpenPeeDeeP/depguard v1.1.0 // indirect github.com/PuerkitoBio/goquery v1.5.1 // indirect - github.com/alecthomas/chroma v0.8.2 // indirect + github.com/alecthomas/chroma v0.10.0 // indirect github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 // indirect github.com/alexkohler/prealloc v1.0.0 // indirect @@ -36,6 +37,8 @@ require ( github.com/ashanbrown/makezero v1.1.1 // indirect github.com/aymerick/douceur v0.2.0 // indirect github.com/beorn7/perks v1.0.1 // indirect + github.com/bep/godartsass v0.14.0 // indirect + github.com/bep/golibsass v1.1.0 // indirect github.com/bkielbasa/cyclop v1.2.0 // indirect github.com/blizzy78/varnamelen v0.8.0 // indirect github.com/bombsimon/wsl/v3 v3.3.0 // indirect @@ -44,13 +47,14 @@ require ( github.com/butuzov/ireturn v0.1.1 // indirect github.com/cespare/xxhash/v2 v2.1.2 // indirect github.com/charithe/durationcheck v0.0.9 // indirect - github.com/charmbracelet/glamour v0.3.0 // indirect + github.com/charmbracelet/glamour v0.5.0 // indirect github.com/chavacava/garif v0.0.0-20220316182200-5cad0b5181d4 // indirect + github.com/clbanning/mxj/v2 v2.5.6 // indirect + github.com/cli/safeexec v1.0.0 // indirect github.com/daixiang0/gci v0.3.3 // indirect - github.com/danwakefield/fnmatch v0.0.0-20160403171240-cbb64ac3d964 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/denis-tingaikin/go-header v0.4.3 // indirect - github.com/dlclark/regexp2 v1.2.0 // indirect + github.com/dlclark/regexp2 v1.4.0 // indirect github.com/efficientgo/tools/core v0.0.0-20210609125236-d73259166f20 // indirect github.com/efficientgo/tools/extkingpin v0.0.0-20210609125236-d73259166f20 // indirect github.com/esimonov/ifshort v1.0.4 // indirect @@ -79,7 +83,7 @@ require ( github.com/gocolly/colly/v2 v2.1.1-0.20201013153555-8252c346cfb0 // indirect github.com/gofrs/flock v0.8.1 // indirect github.com/gogo/protobuf v1.3.2 // indirect - github.com/gohugoio/hugo v0.74.3 // indirect + github.com/gohugoio/hugo v0.101.0 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.2 // indirect github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2 // indirect @@ -91,7 +95,7 @@ require ( github.com/golangci/misspell v0.3.5 // indirect github.com/golangci/revgrep v0.0.0-20210930125155-c22e5001d4f2 // indirect github.com/golangci/unconvert v0.0.0-20180507085042-28b1c447d1f4 // indirect - github.com/google/go-cmp v0.5.7 // indirect + github.com/google/go-cmp v0.5.8 // indirect github.com/google/gofuzz v1.1.0 // indirect github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1 // indirect github.com/gordonklaus/ineffassign v0.0.0-20210914165742-4cc7213b9bc8 // indirect @@ -132,28 +136,28 @@ require ( github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect github.com/mbilski/exhaustivestruct v1.2.0 // indirect github.com/mgechev/revive v1.2.1 // indirect - github.com/microcosm-cc/bluemonday v1.0.6 // indirect + github.com/microcosm-cc/bluemonday v1.0.17 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/mapstructure v1.5.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect github.com/moricho/tparallel v0.2.1 // indirect - github.com/muesli/reflow v0.2.1-0.20210115123740-9e1d0d53df68 // indirect - github.com/muesli/termenv v0.8.1 // indirect + github.com/muesli/reflow v0.3.0 // indirect + github.com/muesli/termenv v0.9.0 // indirect github.com/nakabonne/nestif v0.3.1 // indirect github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354 // indirect - github.com/niklasfasching/go-org v1.3.0 // indirect + github.com/niklasfasching/go-org v1.6.5 // indirect github.com/nishanths/exhaustive v0.7.11 // indirect github.com/nishanths/predeclared v0.2.2 // indirect github.com/oklog/run v1.1.0 // indirect github.com/olekukonko/tablewriter v0.0.5 // indirect github.com/pelletier/go-toml v1.9.5 // indirect - github.com/pelletier/go-toml/v2 v2.0.0 // indirect + github.com/pelletier/go-toml/v2 v2.0.2 // indirect github.com/phayes/checkstyle v0.0.0-20170904204023-bfd46e6a821d // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect github.com/polyfloyd/go-errorlint v1.0.0 // indirect - github.com/prometheus/client_golang v1.12.1 // indirect + github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect github.com/prometheus/procfs v0.7.3 // indirect @@ -162,6 +166,7 @@ require ( github.com/quasilyte/regex/syntax v0.0.0-20200407221936-30656e2c4a95 // indirect github.com/quasilyte/stdinfo v0.0.0-20220114132959-f7386bf02567 // indirect github.com/rivo/uniseg v0.2.0 // indirect + github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/ryancurrah/gomodguard v1.2.3 // indirect github.com/ryanrolds/sqlclosecheck v0.3.0 // indirect github.com/saintfish/chardet v0.0.0-20120816061221-3af4cd4741ca // indirect @@ -175,7 +180,7 @@ require ( github.com/sonatard/noctx v0.0.1 // indirect github.com/sourcegraph/go-diff v0.6.1 // indirect github.com/spf13/afero v1.8.2 // indirect - github.com/spf13/cast v1.4.1 // indirect + github.com/spf13/cast v1.5.0 // indirect github.com/spf13/cobra v1.4.0 // indirect github.com/spf13/jwalterweatherman v1.1.0 // indirect github.com/spf13/pflag v1.0.5 // indirect @@ -187,6 +192,7 @@ require ( github.com/subosito/gotenv v1.2.0 // indirect github.com/sylvia7788/contextcheck v1.0.4 // indirect github.com/tdakkota/asciicheck v0.1.1 // indirect + github.com/tdewolff/parse/v2 v2.6.0 // indirect github.com/temoto/robotstxt v1.1.1 // indirect github.com/tetafro/godot v1.4.11 // indirect github.com/theckman/yacspin v0.8.0 // indirect @@ -197,17 +203,16 @@ require ( github.com/ultraware/whitespace v0.0.5 // indirect github.com/uudashr/gocognit v1.0.5 // indirect github.com/yagipy/maintidx v1.0.0 // indirect - github.com/yuin/goldmark v1.4.1 // indirect + github.com/yuin/goldmark v1.4.12 // indirect github.com/yuin/goldmark-emoji v1.0.1 // indirect gitlab.com/bosi/decorder v0.2.1 // indirect golang.org/x/exp/typeparams v0.0.0-20220218215828-6cf2b201936e // indirect - golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3 // indirect - golang.org/x/net v0.0.0-20220412020605-290c469a71a5 // indirect + golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect + golang.org/x/net v0.0.0-20220607020251-c690dde0001d // indirect golang.org/x/sync v0.0.0-20210220032951-036812b2e83c // indirect golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c // indirect golang.org/x/text v0.3.7 // indirect - golang.org/x/tools v0.1.11-0.20220316014157-77aa08bb151a // indirect - golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f // indirect + golang.org/x/tools v0.1.11 // indirect google.golang.org/appengine v1.6.7 // indirect google.golang.org/protobuf v1.28.0 // indirect gopkg.in/alecthomas/kingpin.v2 v2.2.6 // indirect @@ -220,6 +225,7 @@ require ( k8s.io/apiextensions-apiserver v0.24.0 // indirect k8s.io/apimachinery v0.24.0 // indirect k8s.io/gengo v0.0.0-20211129171323-c02415ce4185 // indirect + k8s.io/klog v0.2.0 // indirect k8s.io/klog/v2 v2.60.1 // indirect k8s.io/utils v0.0.0-20220210201930-3a6ce19ff2f9 // indirect mvdan.cc/gofumpt v0.3.1 // indirect diff --git a/scripts/go.sum b/scripts/go.sum index 3ae0f77cf..74e99d668 100644 --- a/scripts/go.sum +++ b/scripts/go.sum @@ -1,11 +1,10 @@ 4d63.com/gochecknoglobals v0.1.0 h1:zeZSRqj5yCg28tCkIV/z/lWbwvNm5qnKVS15PI8nhD0= 4d63.com/gochecknoglobals v0.1.0/go.mod h1:wfdC5ZjKSPr7CybKEcgJhUOgeAQW1+7WcyK8OvUilfo= +bazil.org/fuse v0.0.0-20180421153158-65cc252bf669/go.mod h1:Xbm+BRKSBEpa4q4hTSxohYNQpsxXPbPry4JJWOB3LB8= bitbucket.org/creachadair/shell v0.0.6/go.mod h1:8Qqi/cYk7vPnsOePHroKXDJYmb5x7ENhtiFtfZq8K+M= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= -cloud.google.com/go v0.37.4/go.mod h1:NHPJ89PdicEuT9hdPXMROBD91xc5uRDxsMtSB16k7hw= cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= -cloud.google.com/go v0.39.0/go.mod h1:rVLT6fkc8chs9sfPtFc1SBH6em7n+ZoXaG+87tDISts= cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= cloud.google.com/go v0.44.3/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= @@ -26,15 +25,22 @@ cloud.google.com/go v0.75.0/go.mod h1:VGuuCn7PG0dwsd5XPVm2Mm3wlh3EL55/79EKB6hlPT cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECHg= cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= +cloud.google.com/go v0.82.0/go.mod h1:vlKccHJGuFBFufnAnuB08dfEH9Y3H7dzDzRECFdC2TA= cloud.google.com/go v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAVY= cloud.google.com/go v0.84.0/go.mod h1:RazrYuxIK6Kb7YrzzhPoLmCVzl7Sup4NrbKPg8KHSUM= cloud.google.com/go v0.87.0/go.mod h1:TpDYlFy7vuLzZMMZ+B6iRiELaY7z/gJPaqbMx6mlWcY= +cloud.google.com/go v0.88.0/go.mod h1:dnKwfYbP9hQhefiUvpbcAyoGSHUrOxR20JVElLiUvEY= +cloud.google.com/go v0.89.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ= cloud.google.com/go v0.90.0/go.mod h1:kRX0mNRHe0e2rC6oNakvwQqzyDmg57xJ+SZU1eT2aDQ= +cloud.google.com/go v0.92.2/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= +cloud.google.com/go v0.92.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= cloud.google.com/go v0.93.3/go.mod h1:8utlLll2EF5XMAV15woO4lSbWQlk8rer9aLOfLh7+YI= +cloud.google.com/go v0.94.0/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4= cloud.google.com/go v0.94.1/go.mod h1:qAlAugsXlC+JWO+Bke5vCtc9ONxjQT3drlTTnAplMW4= cloud.google.com/go v0.97.0/go.mod h1:GF7l59pYBVlXQIBLx3a761cZ41F9bBH3JUlihCt2Udc= cloud.google.com/go v0.99.0/go.mod h1:w0Xx2nLzqWJPuozYQX+hFfCSI8WioryfRDzkoI/Y2ZA= cloud.google.com/go v0.100.2/go.mod h1:4Xra9TjzAeYHrl5+oeLlzbM2k3mjVhZh4UqTZ//w99A= +cloud.google.com/go v0.101.0/go.mod h1:hEiddgDb77jDQ+I80tURYNJEnuwPzFU8awCFFRLKjW0= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= @@ -44,15 +50,23 @@ cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM7 cloud.google.com/go/compute v0.1.0/go.mod h1:GAesmwr110a34z04OlxYkATPBEfVhkymfTBXtfbBFow= cloud.google.com/go/compute v1.3.0/go.mod h1:cCZiE1NHEtai4wiufUhW8I8S1JKkAnhnQJWM7YD99wM= cloud.google.com/go/compute v1.5.0/go.mod h1:9SMHyhJlzhlkJqrPAc839t2BZFTSk6Jdj6mkzQJeu0M= +cloud.google.com/go/compute v1.6.0/go.mod h1:T29tfhtVbq1wvAPo0E3+7vhgmkOYeXjhFvz/FMzPu0s= +cloud.google.com/go/compute v1.6.1/go.mod h1:g85FgpzFvNULZ+S8AYq87axRKuf2Kh7deLqV/jJ3thU= cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= cloud.google.com/go/firestore v1.1.0/go.mod h1:ulACoGHTpvq5r8rxGJ4ddJZBZqakUQqClKRT5SZwBmk= +cloud.google.com/go/firestore v1.5.0/go.mod h1:c4nNYR1qdq7eaZ+jSc5fonrQN2k3M7sWATcYTiakjEo= cloud.google.com/go/firestore v1.6.1/go.mod h1:asNXNOzBdyVQmEU+ggO8UPodTkEVFW5Qx+rwHnAz+EY= +cloud.google.com/go/iam v0.3.0/go.mod h1:XzJPvDayI+9zsASAFO68Hk07u3z+f+JrT2xXNdp4bnY= +cloud.google.com/go/kms v0.1.0/go.mod h1:8Qp8PCAypHg4FdmlyW1QRAv09BGQ9Uzh7JnmIZxPk+c= +cloud.google.com/go/monitoring v0.1.0/go.mod h1:Hpm3XfzJv+UTiXzCG5Ffp0wijzHTC7Cv4eR7o3x/fEE= cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I= cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU= cloud.google.com/go/pubsub v1.5.0/go.mod h1:ZEwJccE3z93Z2HWvstpri00jOg7oO4UZDtKhwDwqF0w= +cloud.google.com/go/pubsub v1.16.0/go.mod h1:6A8EfoWZ/lUvCWStKGwAWauJZSiuV0Mkmu6WilK/TxQ= +cloud.google.com/go/secretmanager v0.1.0/go.mod h1:3nGKHvnzDUVit7U0S9KAKJ4aOsO1xtwRG+7ey5LK1bM= cloud.google.com/go/spanner v1.7.0/go.mod h1:sd3K2gZ9Fd0vMPLXzeCrF6fq4i63Q7aTLW/lBIfBkIk= cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= @@ -60,36 +74,50 @@ cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohl cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= cloud.google.com/go/storage v1.14.0/go.mod h1:GrKmX003DSIwi9o29oFT7YDnHYwZoctc3fOKtUw0Xmo= -contrib.go.opencensus.io/exporter/aws v0.0.0-20181029163544-2befc13012d0/go.mod h1:uu1P0UCM/6RbsMrgPa98ll8ZcHM858i/AD06a9aLRCA= -contrib.go.opencensus.io/exporter/ocagent v0.4.12/go.mod h1:450APlNTSR6FrvC3CTRqYosuDstRB9un7SOx2k/9ckA= -contrib.go.opencensus.io/exporter/stackdriver v0.11.0/go.mod h1:hA7rlmtavV03FGxzWXAPBUnZeZBhWN/QYQAuMtxc9Bk= +cloud.google.com/go/storage v1.16.1/go.mod h1:LaNorbty3ehnU3rEjXSNV/NRgQA0O8Y+uh6bPe5UOk4= +cloud.google.com/go/storage v1.22.0/go.mod h1:GbaLEoMqbVm6sx3Z0R++gSiBlgMv6yUi2q1DeGFKQgE= +cloud.google.com/go/trace v0.1.0/go.mod h1:wxEwsoeRVPbeSkt7ZC9nWCgmoKQRAoySN7XHW2AmI7g= +contrib.go.opencensus.io/exporter/aws v0.0.0-20200617204711-c478e41e60e9/go.mod h1:uu1P0UCM/6RbsMrgPa98ll8ZcHM858i/AD06a9aLRCA= contrib.go.opencensus.io/exporter/stackdriver v0.13.4/go.mod h1:aXENhDJ1Y4lIg4EUaVTwzvYETVNZk10Pu26tevFKLUc= -contrib.go.opencensus.io/integrations/ocsql v0.1.4/go.mod h1:8DsSdjz3F+APR+0z0WkU1aRorQCFfRxvqjUUPMbF3fE= -contrib.go.opencensus.io/resource v0.0.0-20190131005048-21591786a5e0/go.mod h1:F361eGI91LCmW1I/Saf+rX0+OFcigGlFvXwEGEnkRLA= +contrib.go.opencensus.io/exporter/stackdriver v0.13.8/go.mod h1:huNtlWx75MwO7qMs0KrMxPZXzNNWebav1Sq/pm02JdQ= +contrib.go.opencensus.io/integrations/ocsql v0.1.7/go.mod h1:8DsSdjz3F+APR+0z0WkU1aRorQCFfRxvqjUUPMbF3fE= dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= github.com/Antonboom/errname v0.1.6 h1:LzIJZlyLOCSu51o3/t2n9Ck7PcoP9wdbrdaW6J8fX24= github.com/Antonboom/errname v0.1.6/go.mod h1:7lz79JAnuoMNDAWE9MeeIr1/c/VpSUWatBv2FH9NYpI= github.com/Antonboom/nilnil v0.1.1 h1:PHhrh5ANKFWRBh7TdYmyyq2gyT2lotnvFvvFbylF81Q= github.com/Antonboom/nilnil v0.1.1/go.mod h1:L1jBqoWM7AOeTD+tSquifKSesRHs4ZdaxvZR+xdJEaI= -github.com/Azure/azure-amqp-common-go v1.1.3/go.mod h1:FhZtXirFANw40UXI2ntweO+VOkfaw8s6vZxUiRhLYW8= -github.com/Azure/azure-amqp-common-go v1.1.4/go.mod h1:FhZtXirFANw40UXI2ntweO+VOkfaw8s6vZxUiRhLYW8= -github.com/Azure/azure-pipeline-go v0.1.8/go.mod h1:XA1kFWRVhSK+KNFiOhfv83Fv8L9achrP7OxIzeTn1Yg= -github.com/Azure/azure-pipeline-go v0.1.9/go.mod h1:XA1kFWRVhSK+KNFiOhfv83Fv8L9achrP7OxIzeTn1Yg= -github.com/Azure/azure-sdk-for-go v21.3.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= -github.com/Azure/azure-sdk-for-go v27.3.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= -github.com/Azure/azure-service-bus-go v0.4.1/go.mod h1:d9ho9e/06euiTwGpKxmlbpPhFUsfCsq6a4tZ68r51qI= -github.com/Azure/azure-storage-blob-go v0.6.0/go.mod h1:oGfmITT1V6x//CswqY2gtAHND+xIP64/qL7a5QJix0Y= +github.com/Azure/azure-amqp-common-go/v3 v3.1.0/go.mod h1:PBIGdzcO1teYoufTKMcGibdKaYZv4avS+O6LNIp8bq0= +github.com/Azure/azure-amqp-common-go/v3 v3.1.1/go.mod h1:YsDaPfaO9Ub2XeSKdIy2DfwuiQlHQCauHJwSqtrkECI= +github.com/Azure/azure-pipeline-go v0.2.3/go.mod h1:x841ezTBIMG6O3lAcl8ATHnsOPVl2bqk7S3ta6S6u4k= +github.com/Azure/azure-sdk-for-go v51.1.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-sdk-for-go v57.0.0+incompatible/go.mod h1:9XXNKU+eRnpl9moKnB4QOLf1HestfXbmab5FXxiDBjc= +github.com/Azure/azure-service-bus-go v0.10.16/go.mod h1:MlkLwGGf1ewcx5jZadn0gUEty+tTg0RaElr6bPf+QhI= +github.com/Azure/azure-storage-blob-go v0.14.0/go.mod h1:SMqIBi+SuiQH32bvyjngEewEeXoPfKMgWlBDaYf6fck= +github.com/Azure/go-amqp v0.13.0/go.mod h1:qj+o8xPCz9tMSbQ83Vp8boHahuRDl5mkNHyt1xlxUTs= +github.com/Azure/go-amqp v0.13.11/go.mod h1:D5ZrjQqB1dyp1A+G73xeL/kNn7D5qHJIIsNNps7YNmk= +github.com/Azure/go-amqp v0.13.12/go.mod h1:D5ZrjQqB1dyp1A+G73xeL/kNn7D5qHJIIsNNps7YNmk= github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= -github.com/Azure/go-autorest v11.0.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= -github.com/Azure/go-autorest v11.1.1+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= -github.com/Azure/go-autorest v11.1.2+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= github.com/Azure/go-autorest v14.2.0+incompatible/go.mod h1:r+4oMnoxhatjLLJ6zxSWATqVooLgysK6ZNox3g/xq24= +github.com/Azure/go-autorest/autorest v0.11.3/go.mod h1:JFgpikqFJ/MleTTxwepExTKnFUKKszPS8UavbQYUMuw= +github.com/Azure/go-autorest/autorest v0.11.17/go.mod h1:eipySxLmqSyC5s5k1CLupqet0PSENBEDP93LQ9a8QYw= github.com/Azure/go-autorest/autorest v0.11.18/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= +github.com/Azure/go-autorest/autorest v0.11.20/go.mod h1:o3tqFY+QR40VOlk+pV4d77mORO64jOXSgEnPQgLK6JY= +github.com/Azure/go-autorest/autorest/adal v0.9.0/go.mod h1:/c022QCutn2P7uY+/oQWWNcK9YU+MH96NgK+jErpbcg= +github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= +github.com/Azure/go-autorest/autorest/adal v0.9.11/go.mod h1:nBKAnTomx8gDtl+3ZCJv2v0KACFHWTB2drffI1B68Pk= github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= +github.com/Azure/go-autorest/autorest/adal v0.9.14/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= +github.com/Azure/go-autorest/autorest/adal v0.9.15/go.mod h1:tGMin8I49Yij6AQ+rvV+Xa/zwxYQB5hmsd6DkfAx2+A= +github.com/Azure/go-autorest/autorest/azure/auth v0.5.8/go.mod h1:kxyKZTSfKh8OVFWPAgOgQ/frrJgeYQJPyR5fLFmXko4= +github.com/Azure/go-autorest/autorest/azure/cli v0.4.2/go.mod h1:7qkJkT+j6b+hIpzMOwPChJhTqS8VbsqqgULzMNRugoM= +github.com/Azure/go-autorest/autorest/azure/cli v0.4.3/go.mod h1:yAQ2b6eP/CmLPnmLvxtT1ALIY3OR1oFcCqVBi8vHiTc= github.com/Azure/go-autorest/autorest/date v0.3.0/go.mod h1:BI0uouVdmngYNUzGWeSYnokU+TrmwEsOqdt8Y6sso74= +github.com/Azure/go-autorest/autorest/mocks v0.4.0/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= github.com/Azure/go-autorest/autorest/mocks v0.4.1/go.mod h1:LTp+uSrOhSkaKrUy935gNZuuIPPVsHlr9DSOxSayd+k= +github.com/Azure/go-autorest/autorest/to v0.4.0/go.mod h1:fE8iZBn7LQR7zH/9XU2NcPR4o9jEImooCeWJcYV/zLE= +github.com/Azure/go-autorest/autorest/validation v0.3.1/go.mod h1:yhLgjC0Wda5DYXl6JAsWyUe4KVNffhoDhG0zVzUMo3E= +github.com/Azure/go-autorest/logger v0.2.0/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZmbF5NWuPV8+WeEW8= -github.com/Azure/go-autorest/tracing v0.1.0/go.mod h1:ROEEAFwXycQw7Sn3DXNtEedEvdeRAgDr0izn4z5Ij88= github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU= github.com/BurntSushi/locker v0.0.0-20171006230638-a6e239ea1c69/go.mod h1:L1AbZdiDllfyYH5l5OkAaZtk7VkWe89bPJFmnDBNHxg= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= @@ -101,9 +129,7 @@ github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24 h1:sHglBQTwgx+rW github.com/Djarvur/go-err113 v0.0.0-20210108212216-aea10b59be24/go.mod h1:4UJr5HIiMZrwgkSPdsjy2uOQExX/WEILpIrO9UPGuXs= github.com/GaijinEntertainment/go-exhaustruct/v2 v2.1.0 h1:LAPPhJ4KR5Z8aKVZF5S48csJkxL5RMKmE/98fMs1u5M= github.com/GaijinEntertainment/go-exhaustruct/v2 v2.1.0/go.mod h1:LGOGuvEgCfCQsy3JF2tRmpGDpzA53iZfyGEWSPwQ6/4= -github.com/GeertJohan/go.incremental v1.0.0/go.mod h1:6fAjUhbVuX1KcMD3c8TEgVUqmo4seqhv0i0kdATSkM0= -github.com/GeertJohan/go.rice v1.0.0/go.mod h1:eH6gbSOAUv07dQuZVnBmoDP8mgsM1rtixis4Tib9if0= -github.com/GoogleCloudPlatform/cloudsql-proxy v0.0.0-20190418212003-6ac0b49e7197/go.mod h1:aJ4qN3TfrelA6NZ6AXsXRfmEVaYin3EDbSPJrKS8OXo= +github.com/GoogleCloudPlatform/cloudsql-proxy v1.24.0/go.mod h1:3tx938GhY4FC+E1KT/jNjDw7Z5qxAEtIiERJ2sXjnII= github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible/go.mod h1:r7JcOSlj0wfOMncg0iLm8Leh48TZaKVeNIfJntJ2wa0= github.com/Kunde21/markdownfmt/v2 v2.1.1-0.20210810103848-727f02f4c51c h1:rnouiLtDKeaWKnxRViK454oCI8jkhWv5fItCvZ9nJOU= github.com/Kunde21/markdownfmt/v2 v2.1.1-0.20210810103848-727f02f4c51c/go.mod h1:LFJueuHZej/Z7Xhqh/XgClfkDjZiiEBOLVTt1Duq1r0= @@ -126,22 +152,13 @@ github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWX github.com/Shopify/toxiproxy v2.1.4+incompatible/go.mod h1:OXgGpZ6Cli1/URJOF1DMxUHB2q5Ap20/P/eIdh4G0pI= github.com/VividCortex/gohistogram v1.0.0/go.mod h1:Pf5mBqqDxYaXu3hDrrU+w6nw50o/4+TcAqDqk/vUH7g= github.com/afex/hystrix-go v0.0.0-20180502004556-fa1af6a1f4f5/go.mod h1:SkGFH1ia65gfNATL8TAiHDNxPzPdmEL5uirI2Uyuz6c= -github.com/akavel/rsrc v0.8.0/go.mod h1:uLoCtb9J+EyAqh+26kdrTgmzRBFPGOolLWKpdxkKq+c= -github.com/alecthomas/assert v0.0.0-20170929043011-405dbfeb8e38 h1:smF2tmSOzy2Mm+0dGI2AIUHY+w0BUc+4tn40djz7+6U= -github.com/alecthomas/assert v0.0.0-20170929043011-405dbfeb8e38/go.mod h1:r7bzyVFMNntcxPZXK3/+KdruV1H5KSlyVY0gc+NgInI= -github.com/alecthomas/chroma v0.7.2-0.20200305040604-4f3623dce67a/go.mod h1:fv5SzZPFJbwp2NXJWpFIX7DZS4HgV1K4ew4Pc2OZD9s= -github.com/alecthomas/chroma v0.7.3/go.mod h1:sko8vR34/90zvl5QdcUdvzL3J8NKjAUx9va9jPuFNoM= -github.com/alecthomas/chroma v0.8.2 h1:x3zkuE2lUk/RIekyAJ3XRqSCP4zwWDfcw/YJCuCAACg= -github.com/alecthomas/chroma v0.8.2/go.mod h1:sko8vR34/90zvl5QdcUdvzL3J8NKjAUx9va9jPuFNoM= -github.com/alecthomas/colour v0.0.0-20160524082231-60882d9e2721 h1:JHZL0hZKJ1VENNfmXvHbgYlbUOvpzYzvy2aZU5gXVeo= -github.com/alecthomas/colour v0.0.0-20160524082231-60882d9e2721/go.mod h1:QO9JBoKquHd+jz9nshCh40fOfO+JzsoXy8qTHF68zU0= -github.com/alecthomas/kong v0.1.17-0.20190424132513-439c674f7ae0/go.mod h1:+inYUSluD+p4L8KdviBSgzcqEjUQOfC5fQDRFuc36lI= -github.com/alecthomas/kong v0.2.1-0.20190708041108-0548c6b1afae/go.mod h1:+inYUSluD+p4L8KdviBSgzcqEjUQOfC5fQDRFuc36lI= -github.com/alecthomas/kong v0.2.4/go.mod h1:kQOmtJgV+Lb4aj+I2LEn40cbtawdWJ9Y8QLq+lElKxE= -github.com/alecthomas/kong-hcl v0.1.8-0.20190615233001-b21fea9723c8/go.mod h1:MRgZdU3vrFd05IQ89AxUZ0aYdF39BYoNFa324SodPCA= -github.com/alecthomas/repr v0.0.0-20180818092828-117648cd9897/go.mod h1:xTS7Pm1pD1mvyM075QCDSRqH6qRLXylzS24ZTpRiSzQ= -github.com/alecthomas/repr v0.0.0-20181024024818-d37bc2a10ba1 h1:GDQdwm/gAcJcLAKQQZGOJ4knlw+7rfEQQcmwTbt4p5E= -github.com/alecthomas/repr v0.0.0-20181024024818-d37bc2a10ba1/go.mod h1:xTS7Pm1pD1mvyM075QCDSRqH6qRLXylzS24ZTpRiSzQ= +github.com/ahmetb/gen-crd-api-reference-docs v0.3.1-0.20220618162802-424739b250f5 h1:2tpX5eOsm8DQg65mAFRLUMSkQHAj7Y1VJrR9Ehk8YeM= +github.com/ahmetb/gen-crd-api-reference-docs v0.3.1-0.20220618162802-424739b250f5/go.mod h1:TdjdkYhlOifCQWPs1UdTma97kQQMozf5h26hTuG70u8= +github.com/alecthomas/chroma v0.10.0 h1:7XDcGkCQopCNKjZHfYrNLraA+M7e0fMiJ/Mfikbfjek= +github.com/alecthomas/chroma v0.10.0/go.mod h1:jtJATyUxlIORhUOFNA9NZDWGAQ8wpxQQqNSB4rjA/1s= +github.com/alecthomas/chroma/v2 v2.0.1/go.mod h1:vf4zrexSH54oEjJ7EdB65tGNHmH3pGZmVkgTP5RHvAs= +github.com/alecthomas/chroma/v2 v2.2.0/go.mod h1:vf4zrexSH54oEjJ7EdB65tGNHmH3pGZmVkgTP5RHvAs= +github.com/alecthomas/repr v0.0.0-20220113201626-b1b626ac65ae/go.mod h1:2kn6fqh/zIyPLmm3ugklbEi5hg5wS435eygvNfaDQL8= github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 h1:JYp7IbQjafoB+tBA3gMyHYHrpOtNuDiK/uB5uXxq5wM= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= @@ -186,14 +203,26 @@ github.com/ashanbrown/makezero v1.1.1 h1:iCQ87C0V0vSyO+M9E/FZYbu65auqH0lnsOkf5Fc github.com/ashanbrown/makezero v1.1.1/go.mod h1:i1bJLCRSCHOcOa9Y6MyF2FTfMZMFdHvxKHxgO5Z1axI= github.com/aws/aws-lambda-go v1.13.3/go.mod h1:4UKl9IzQMoD+QF79YdCuzCwp8VbmG4VAQwij/eHl5CU= github.com/aws/aws-sdk-go v1.15.27/go.mod h1:mFuSZ37Z9YOHbQEwBWztmVzqXrEkub65tZoCYDt7FT0= -github.com/aws/aws-sdk-go v1.18.6/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go v1.19.16/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.23.20/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.25.37/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.27.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go v1.27.1/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.36.30/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.37.0/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.40.34/go.mod h1:585smgzpB/KqRA+K3y/NL/oYRqQvpNJYvLm+LY1U59Q= +github.com/aws/aws-sdk-go v1.43.5/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g= +github.com/aws/aws-sdk-go-v2 v1.9.0/go.mod h1:cK/D0BBs0b/oWPIcX/Z/obahJK1TT7IPVjy53i/mX/4= +github.com/aws/aws-sdk-go-v2/config v1.7.0/go.mod h1:w9+nMZ7soXCe5nT46Ri354SNhXDQ6v+V5wqDjnZE+GY= +github.com/aws/aws-sdk-go-v2/credentials v1.4.0/go.mod h1:dgGR+Qq7Wjcd4AOAW5Rf5Tnv3+x7ed6kETXyS9WCuAY= +github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.5.0/go.mod h1:CpNzHK9VEFUCknu50kkB8z58AH2B5DvPP7ea1LHve/Y= +github.com/aws/aws-sdk-go-v2/internal/ini v1.2.2/go.mod h1:BQV0agm+JEhqR+2RT5e1XTFIDcAAV0eW6z2trp+iduw= +github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.3.0/go.mod h1:R1KK+vY8AfalhG1AOu5e35pOD2SdoPKQCFLTvnxiohk= +github.com/aws/aws-sdk-go-v2/service/kms v1.5.0/go.mod h1:w7JuP9Oq1IKMFQPkNe3V6s9rOssXzOVEMNEqK1L1bao= +github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.6.0/go.mod h1:B+7C5UKdVq1ylkI/A6O8wcurFtaux0R1njePNPtKwoA= +github.com/aws/aws-sdk-go-v2/service/ssm v1.10.0/go.mod h1:4dXS5YNqI3SNbetQ7X7vfsMlX6ZnboJA2dulBwJx7+g= +github.com/aws/aws-sdk-go-v2/service/sso v1.4.0/go.mod h1:+1fpWnL96DL23aXPpMGbsmKe8jLTEfbjuQoA4WS1VaA= +github.com/aws/aws-sdk-go-v2/service/sts v1.7.0/go.mod h1:0qcSMCyASQPN2sk/1KQLQ2Fh6yq8wm0HSDAimPhzCoM= +github.com/aws/smithy-go v1.8.0/go.mod h1:SObp3lf9smib00L/v3U2eAKG8FyQ7iLrJnQiAmR5n+E= github.com/aymerick/douceur v0.2.0 h1:Mv+mAeH1Q+n9Fr+oyamOlAkUNPWPlA8PPGR0QAaYuPk= github.com/aymerick/douceur v0.2.0/go.mod h1:wlT5vV2O3h55X9m7iVYN0TBM0NH/MmbLnd30/FjWUq4= github.com/benbjohnson/clock v1.0.3/go.mod h1:bGMdMPoPVvcYyt1gHDf4J2KE153Yf9BuiUKYMaxlTDM= @@ -202,10 +231,18 @@ github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24 github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/bep/clock v0.3.0/go.mod h1:6Gz2lapnJ9vxpvPxQ2u6FcXFRoj4kkiqQ6pm0ERZlwk= github.com/bep/debounce v1.2.0/go.mod h1:H8yggRPQKLUhUoqrJC1bO2xNya7vanpDl7xR3ISbCJ0= github.com/bep/gitmap v1.1.2/go.mod h1:g9VRETxFUXNWzMiuxOwcudo6DfZkW9jOsOW0Ft4kYaY= -github.com/bep/golibsass v0.6.0/go.mod h1:DL87K8Un/+pWUS75ggYv41bliGiolxzDKWJAq3eJ1MA= +github.com/bep/goat v0.5.0/go.mod h1:Md9x7gRxiWKs85yHlVTvHQw9rg86Bm+Y4SuYE8CTH7c= +github.com/bep/godartsass v0.14.0 h1:pPb6XkpyDEppS+wK0veh7OXDQc4xzOJI9Qcjb743UeQ= +github.com/bep/godartsass v0.14.0/go.mod h1:6LvK9RftsXMxGfsA0LDV12AGc4Jylnu6NgHL+Q5/pE8= +github.com/bep/golibsass v1.1.0 h1:pjtXr00IJZZaOdfryNa9wARTB3Q0BmxC3/V1KNcgyTw= +github.com/bep/golibsass v1.1.0/go.mod h1:DL87K8Un/+pWUS75ggYv41bliGiolxzDKWJAq3eJ1MA= +github.com/bep/gowebp v0.1.0/go.mod h1:ZhFodwdiFp8ehGJpF4LdPl6unxZm9lLFjxD3z2h2AgI= +github.com/bep/overlayfs v0.6.0/go.mod h1:NFjSmn3kCqG7KX2Lmz8qT8VhPPCwZap3UNogXawoQHM= github.com/bep/tmc v0.5.1/go.mod h1:tGYHN8fS85aJPhDLgXETVKp+PR382OvFi2+q2GkGsq0= +github.com/bep/workers v1.0.0/go.mod h1:7kIESOB86HfR2379pwoMWNy8B50D7r99fRLUyPSNyCs= github.com/bgentry/speakeasy v0.1.0/go.mod h1:+zsyZBPWlz7T6j88CTgSN5bM796AkVf0kBD4zp0CCIs= github.com/bketelsen/crypt v0.0.3-0.20200106085610-5cbc8cc4026c/go.mod h1:MKsuJmJgSg28kpZDP6UIiPt0e0Oz0kqKNGyRaWEPv84= github.com/bkielbasa/cyclop v1.2.0 h1:7Jmnh0yL2DjKfw28p86YTd/B4lRGcNuu12sKE35sM7A= @@ -223,13 +260,13 @@ github.com/breml/errchkjson v0.3.0 h1:YdDqhfqMT+I1vIxPSas44P+9Z9HzJwCeAzjB8PxP1x github.com/breml/errchkjson v0.3.0/go.mod h1:9Cogkyv9gcT8HREpzi3TiqBxCqDzo8awa92zSDFcofU= github.com/butuzov/ireturn v0.1.1 h1:QvrO2QF2+/Cx1WA/vETCIYBKtRjc30vesdoPUNo1EbY= github.com/butuzov/ireturn v0.1.1/go.mod h1:Wh6Zl3IMtTpaIKbmwzqi6olnM9ptYQxxVacMsOEFPoc= -github.com/bwplotka/mdox v0.9.1-0.20220712163347-7dcc385468d7 h1:HfWBdOFK+Ya2az0ck4DM/mer9TyFpwwnbCw0uMxQ5ow= -github.com/bwplotka/mdox v0.9.1-0.20220712163347-7dcc385468d7/go.mod h1:d9tSrvKyHqgb/IuvvhncvLzbV1SfSfhH56ct1TOYncw= +github.com/bwplotka/mdox v0.9.1-0.20220713080221-769034ad8cfe h1:J0zyydIiJPyXY4xwUZOWFK6Bk/Zk7TlxRwY960dWE0k= +github.com/bwplotka/mdox v0.9.1-0.20220713080221-769034ad8cfe/go.mod h1:Z2Z00nC4zPXMj+v8MzgBve6nPZiizr+NM/yhe6bXuts= github.com/campoy/embedmd v1.0.0/go.mod h1:oxyr9RCiSXg0M3VJ3ks0UGfp98BpSSGr0kpiX3MzVl8= github.com/casbin/casbin/v2 v2.1.2/go.mod h1:YcPU1XXisHhLzuxH9coDNf2FbKpjGlbCg3n9yuLkIJQ= github.com/cenkalti/backoff v2.2.1+incompatible/go.mod h1:90ReRw6GdpyfrHakVjL/QHaoyV4aDUVVkXQJJJ3NXXM= -github.com/census-instrumentation/opencensus-proto v0.2.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/census-instrumentation/opencensus-proto v0.3.0/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= github.com/certifi/gocertifi v0.0.0-20191021191039-0944d244cd40/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= github.com/certifi/gocertifi v0.0.0-20200922220541-2c3bb06c6054/go.mod h1:sGbDF6GwGcLpkNXPUTkMRoywsNa/ol15pxFe6ERfguA= github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= @@ -238,8 +275,9 @@ github.com/cespare/xxhash/v2 v2.1.2 h1:YRXhKfTDauu4ajMg1TPgFO5jnlC2HCbmLXMcTG5cb github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/charithe/durationcheck v0.0.9 h1:mPP4ucLrf/rKZiIG/a9IPXHGlh8p4CzgpyTy6EEutYk= github.com/charithe/durationcheck v0.0.9/go.mod h1:SSbRIBVfMjCi/kEB6K65XEA83D6prSM8ap1UCpNKtgg= -github.com/charmbracelet/glamour v0.3.0 h1:3H+ZrKlSg8s+WU6V7eF2eRVYt8lCueffbi7r2+ffGkc= -github.com/charmbracelet/glamour v0.3.0/go.mod h1:TzF0koPZhqq0YVBNL100cPHznAAjVj7fksX2RInwjGw= +github.com/charmbracelet/glamour v0.5.0 h1:wu15ykPdB7X6chxugG/NNfDUbyyrCLV9XBalj5wdu3g= +github.com/charmbracelet/glamour v0.5.0/go.mod h1:9ZRtG19AUIzcTm7FGLGbq3D5WKQ5UyZBbQsMQN0XIqc= +github.com/chaseadamsio/goorgeous v2.0.0+incompatible/go.mod h1:6QaC0vFoKWYDth94dHFNgRT2YkT5FHdQp/Yx15aAAi0= github.com/chavacava/garif v0.0.0-20220316182200-5cad0b5181d4 h1:tFXjAxje9thrTF4h57Ckik+scJjTWdwAtZqZPtOT48M= github.com/chavacava/garif v0.0.0-20220316182200-5cad0b5181d4/go.mod h1:W8EnPSQ8Nv4fUjc/v1/8tHFqhuOJXnRub0dTfuAQktU= github.com/cheekybits/is v0.0.0-20150225183255-68e9c0620927/go.mod h1:h/aW8ynjgkuj+NQRlZcDbAbM1ORAbXjXX77sX7T289U= @@ -248,7 +286,11 @@ github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5P github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= github.com/circonus-labs/circonus-gometrics v2.3.1+incompatible/go.mod h1:nmEj6Dob7S7YxXgwXpfOuvO54S+tGdZdw9fuRZt25Ag= github.com/circonus-labs/circonusllhist v0.1.3/go.mod h1:kMXHVDlOchFAehlya5ePtbp5jckzBHf4XRpQvBOLI+I= +github.com/clbanning/mxj/v2 v2.5.6 h1:Jm4VaCI/+Ug5Q57IzEoZbwx4iQFA6wkXv72juUSeK+g= +github.com/clbanning/mxj/v2 v2.5.6/go.mod h1:hNiWqW14h+kc+MdF9C6/YoRfjEJoR3ou6tn/Qo+ve2s= github.com/clbanning/x2j v0.0.0-20191024224557-825249438eec/go.mod h1:jMjuTZXRI4dUb/I5gc9Hdhagfvm9+RyrPryS/auMzxE= +github.com/cli/safeexec v1.0.0 h1:0VngyaIyqACHdcMNWfo6+KdUYnqEr2Sg+bSP1pdF+dI= +github.com/cli/safeexec v1.0.0/go.mod h1:Z/D4tTN8Vs5gXYHDCbaM1S/anmEDnJb1iW0+EJ5zx3Q= github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= @@ -257,6 +299,7 @@ github.com/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod h1:6pvJx4me5XP github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cockroachdb/datadriven v0.0.0-20190809214429-80d97fb3cbaa/go.mod h1:zn76sxSg3SzpJ0PPJaLDCu+Bu0Lg3sKTORVIj19EIF8= github.com/cockroachdb/datadriven v0.0.0-20200714090401-bf6692d28da5/go.mod h1:h6jFvWxBdQXxjopDMZyH2UVceIRfR84bdzbkoKrsWNo= @@ -283,24 +326,24 @@ github.com/cpuguy83/go-md2man/v2 v2.0.1/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46t github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= -github.com/daaku/go.zipexe v1.0.0/go.mod h1:z8IiR6TsVLEYKwXAoE/I+8ys/sDkgTzSL0CLnGVd57E= github.com/daixiang0/gci v0.3.3 h1:55xJKH7Gl9Vk6oQ1cMkwrDWjAkT1D+D1G9kNmRcAIY4= github.com/daixiang0/gci v0.3.3/go.mod h1:1Xr2bxnQbDxCqqulUOv8qpGqkgRw9RSCGGjEC2LjF8o= -github.com/danwakefield/fnmatch v0.0.0-20160403171240-cbb64ac3d964 h1:y5HC9v93H5EPKqaS1UYVg1uYah5Xf51mBfIoWehClUQ= -github.com/danwakefield/fnmatch v0.0.0-20160403171240-cbb64ac3d964/go.mod h1:Xd9hchkHSWYkEqJwUGisez3G1QY8Ryz0sdWrLPMGjLk= github.com/davecgh/go-spew v0.0.0-20161028175848-04cdfd42973b/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/denis-tingaikin/go-header v0.4.3 h1:tEaZKAlqql6SKCY++utLmkPLd6K8IBM20Ha7UVm+mtU= github.com/denis-tingaikin/go-header v0.4.3/go.mod h1:0wOCWuN71D5qIgE2nz9KrKmuYBAC2Mra5RassOIQ2/c= +github.com/denisenkom/go-mssqldb v0.9.0/go.mod h1:xbL0rPBG9cCiLr28tMa8zpbdarY27NDyej4t/EjAShU= +github.com/devigned/tab v0.1.1/go.mod h1:XG9mPq0dFghrYvoBF3xdRrJzSTX1b7IQrvaL9mzjeJY= github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/dgryski/go-sip13 v0.0.0-20181026042036-e10d5fee7954/go.mod h1:vAd38F8PWV+bWy6jNmig1y/TA+kYO4g3RSRF0IAv0no= github.com/dimchansky/utfbom v1.1.0/go.mod h1:rO41eb7gLfo8SF1jd9F8HplJm1Fewwi4mQvIirEdv+8= +github.com/dimchansky/utfbom v1.1.1/go.mod h1:SxdoEBH5qIqFocHMyGOXVAybYJdr71b1Q/j0mACtrfE= github.com/disintegration/gift v1.2.1/go.mod h1:Jh2i7f7Q2BM7Ezno3PhfezbR1xpUg9dUg3/RlKGr4HI= -github.com/dlclark/regexp2 v1.1.6/go.mod h1:2pZnwuY/m+8K6iRw6wQdMtk+rH5tNGR1i55kozfMjCc= -github.com/dlclark/regexp2 v1.2.0 h1:8sAhBGEM0dRWogWqWyQeIJnxjWO6oIjl8FKqREDsGfk= -github.com/dlclark/regexp2 v1.2.0/go.mod h1:2pZnwuY/m+8K6iRw6wQdMtk+rH5tNGR1i55kozfMjCc= +github.com/djherbis/atime v1.1.0/go.mod h1:28OF6Y8s3NQWwacXc5eZTsEsiMzp7LF8MbXE+XJPdBE= +github.com/dlclark/regexp2 v1.4.0 h1:F1rxgk7p4uKjwIQxBs9oAXe5CqrXlCduYEJvrF4u93E= +github.com/dlclark/regexp2 v1.4.0/go.mod h1:2pZnwuY/m+8K6iRw6wQdMtk+rH5tNGR1i55kozfMjCc= github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= github.com/dustin/go-humanize v0.0.0-20171111073723-bb3d318650d4/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= @@ -324,6 +367,7 @@ github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.m github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= +github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE= github.com/envoyproxy/protoc-gen-validate v0.0.14/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/esimonov/ifshort v1.0.4 h1:6SID4yGWfRae/M7hkVDVVyppy8q/v9OuxNdmjLQStBA= @@ -331,7 +375,7 @@ github.com/esimonov/ifshort v1.0.4/go.mod h1:Pe8zjlRrJ80+q2CxHLfEOfTwxCZ4O+MuhcH github.com/ettle/strcase v0.1.1 h1:htFueZyVeE1XNnMEfbqp5r67qAN/4r6ya1ysq8Q+Zcw= github.com/ettle/strcase v0.1.1/go.mod h1:hzDLsPC7/lwKyBOywSHEP89nt2pDgdy+No1NBA9o9VY= github.com/evanphx/json-patch v4.12.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= -github.com/evanw/esbuild v0.6.5/go.mod h1:mptxmSXIzBIKKCe4jo9A5SToEd1G+AKZ9JmY85dYRJ0= +github.com/evanw/esbuild v0.14.43/go.mod h1:GG+zjdi59yh3ehDn4ZWfPcATxjPDUH53iU4ZJbp7dkY= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= github.com/fatih/color v1.9.0/go.mod h1:eQcE1qtQxscV5RaZvpXrrb8Drkc3/DdQ+uUYCNjL+zU= github.com/fatih/color v1.10.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM= @@ -346,13 +390,15 @@ github.com/firefart/nonamedreturns v1.0.1 h1:fSvcq6ZpK/uBAgJEGMvzErlzyM4NELLqqdT github.com/firefart/nonamedreturns v1.0.1/go.mod h1:D3dpIBojGGNh5UfElmwPu73SwDCm+VKhHYqwlNOk2uQ= github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= github.com/form3tech-oss/jwt-go v3.2.3+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= -github.com/fortytw2/leaktest v1.2.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g= github.com/fortytw2/leaktest v1.3.0/go.mod h1:jDsjWgpAGjm2CA7WthBh/CdZYEPF31XHquHwclZch5g= github.com/franela/goblin v0.0.0-20200105215937-c9ffbefa60db/go.mod h1:7dvUGVsVBjqR7JHJk0brhHOZYGmfBYOrK0ZhYMEtBr4= github.com/franela/goreq v0.0.0-20171204163338-bcd34c9993f8/go.mod h1:ZhphrRTfi2rbfLwlschooIH4+wKKDR4Pdxhh+TRoA20= github.com/frankban/quicktest v1.4.1/go.mod h1:36zfPVQyHxymz4cH7wlDmVwDrJuljRB60qkgn7rorfQ= github.com/frankban/quicktest v1.7.2/go.mod h1:jaStnuzAqU1AJdCO0l53JDCJrVDKcS03DbaAcR7Ks/o= -github.com/frankban/quicktest v1.14.2 h1:SPb1KFFmM+ybpEjPUhCCkZOM5xlovT5UbrMvWnXyBns= +github.com/frankban/quicktest v1.13.0/go.mod h1:qLE0fzW0VuyUAJgPU19zByoIr0HtCHN/r/VLSOOIySU= +github.com/frankban/quicktest v1.14.2/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps= +github.com/frankban/quicktest v1.14.3 h1:FJKSZTDHjyhriyC81FLQ0LY93eSai0ZyR/ZIkd3ZUKE= +github.com/frankban/quicktest v1.14.3/go.mod h1:mgiwOwqx65TmIk1wJ6Q7wvnVMocbUorkibMOrVTHZps= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ= github.com/fsnotify/fsnotify v1.5.1/go.mod h1:T3375wBYaZdLLcVNkcVbzGHY7f1l/uK5T5Ai1i3InKU= @@ -361,11 +407,13 @@ github.com/fsnotify/fsnotify v1.5.4/go.mod h1:OVB6XrOHzAwXMpEM7uPOzcehqUV2UqJxmV github.com/fullstorydev/grpcurl v1.6.0/go.mod h1:ZQ+ayqbKMJNhzLmbpCiurTVlaK2M/3nqZCxaQ2Ze/sM= github.com/fzipp/gocyclo v0.5.1 h1:L66amyuYogbxl0j2U+vGqJXusPF2IkduvXLnYD5TFgw= github.com/fzipp/gocyclo v0.5.1/go.mod h1:rXPyn8fnlpa0R2csP/31uerbiVBugk5whMdlyaLkLoA= -github.com/getkin/kin-openapi v0.14.0/go.mod h1:WGRs2ZMM1Q8LR1QBEwUxC6RJEfaBcD0s+pcEVXFuAjw= github.com/getkin/kin-openapi v0.76.0/go.mod h1:660oXbgy5JFMKreazJaQTw7o+X00qeSyhcnluiMv+Xg= +github.com/getkin/kin-openapi v0.97.0/go.mod h1:w4lRPHiyOdwGbOkLIyk+P0qCwlu7TXPCHD/64nSXzgE= github.com/getsentry/raven-go v0.2.0/go.mod h1:KungGk8q33+aIAZUIVWZDr2OfAEBsO49PX4NzFV5kcQ= github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk= github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= +github.com/gin-gonic/gin v1.6.3/go.mod h1:75u5sXoLsGZoRN5Sgbi1eraJ4GU3++wFwWzhwvtwp4M= github.com/go-critic/go-critic v0.6.3 h1:abibh5XYBTASawfTQ0rA7dVtQT+6KzpGqb/J+DxRDaw= github.com/go-critic/go-critic v0.6.3/go.mod h1:c6b3ZP1MQ7o6lPR7Rv3lEf7pYQUmAcx8ABHgdZCQt/k= github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= @@ -392,10 +440,14 @@ github.com/go-openapi/jsonreference v0.19.3/go.mod h1:rjx6GuL8TTa9VaixXglHmQmIL9 github.com/go-openapi/jsonreference v0.19.5/go.mod h1:RdybgQwPxbL4UEjuAruzK1x3nE69AqPYEJeo/TWfEeg= github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= github.com/go-openapi/swag v0.19.14/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= +github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8= +github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA= +github.com/go-playground/validator/v10 v10.2.0/go.mod h1:uOYAAleCW8F/7oMFd6aG0GOhaH6EGOAJShg8Id5JGkI= github.com/go-redis/redis v6.15.8+incompatible/go.mod h1:NAIEuMOZ/fxfXJIrKDQDz8wamY7mA7PouImQ2Jvg6kA= github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= -github.com/go-sql-driver/mysql v1.4.1/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w= github.com/go-sql-driver/mysql v1.5.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= +github.com/go-sql-driver/mysql v1.6.0/go.mod h1:DCzpHaOWr8IXmIStZouvnhqoel9Qv2LBy8hT2VhHyBg= github.com/go-stack/stack v1.8.0 h1:5SgMzNM5HxrEjV0ww2lTmX6E2Izsfxas4+YHWRs3Lsk= github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE= @@ -422,6 +474,9 @@ github.com/gobuffalo/flect v0.2.5 h1:H6vvsv2an0lalEaCDRThvtBfmg44W/QHXBCYUXf/6S4 github.com/gobuffalo/flect v0.2.5/go.mod h1:1ZyCLIbg0YD7sDkzvFdPoOydPtD8y9JQnrOROolUcM8= github.com/gobwas/glob v0.2.3 h1:A4xDbljILXROh+kObIiy5kIaPYD8e96x1tgBhUI5J+Y= github.com/gobwas/glob v0.2.3/go.mod h1:d3Ez4x06l9bZtSvzIay5+Yzi0fmZzPgnTbPcKjJAkT8= +github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee/go.mod h1:L0fX3K22YWvt/FAX9NnzrNzcI4wNYi9Yku4O0LKYflo= +github.com/gobwas/pool v0.2.0/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw= +github.com/gobwas/ws v1.0.2/go.mod h1:szmBTxLgaFppYjEmNtny/v3w89xOydFnnZMcgRRu/EM= github.com/gocolly/colly v1.2.0/go.mod h1:Hof5T3ZswNVsOHYmba1u03W65HDWgpV5HifSuueE0EA= github.com/gocolly/colly/v2 v2.1.1-0.20201013153555-8252c346cfb0 h1:f+kHjWsqjft+/nCpQ6TcV3Lgs4lc+6rvBt2sfL4XsbE= github.com/gocolly/colly/v2 v2.1.1-0.20201013153555-8252c346cfb0/go.mod h1:I2MuhsLjQ+Ex+IzK3afNS8/1qP3AedHOusRPcRdC5o0= @@ -436,9 +491,14 @@ github.com/gogo/protobuf v1.3.0/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXP github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= -github.com/gohugoio/hugo v0.74.3 h1:fAMS4JYV+T9YiHj+be4mrYDFzNgx91UY+Gok/FdbSzU= -github.com/gohugoio/hugo v0.74.3/go.mod h1:qTy3SQXdyeRLfUMMdGZeySMGMzvi3D31prjuIbAwImk= +github.com/gohugoio/go-i18n/v2 v2.1.3-0.20210430103248-4c28c89f8013/go.mod h1:3Ltoo9Banwq0gOtcOwxuHG6omk+AwsQPADyw2vQYOJQ= +github.com/gohugoio/hugo v0.101.0 h1:IARZnjaXCak6+x0jG9wLw7ARjB4RAu6i/5G1r0zKjFw= +github.com/gohugoio/hugo v0.101.0/go.mod h1:sqCS5HTRJmPD6ZHqIy8NVfTwWyhaPmN6gsiIP/UUD6M= +github.com/gohugoio/locales v0.14.0/go.mod h1:ip8cCAv/cnmVLzzXtiTpPwgJ4xhKZranqNqtoIu0b/4= +github.com/gohugoio/localescompressed v1.0.1/go.mod h1:jBF6q8D7a0vaEmcWPNcAjUZLJaIVNiwvM3WlmTvooB0= github.com/gohugoio/testmodBuilder/mods v0.0.0-20190520184928-c56af20f2e95/go.mod h1:bOlVlCa1/RajcHpXkrUXPSHB/Re1UnlXxD1Qp8SKOd8= +github.com/golang-jwt/jwt/v4 v4.0.0/go.mod h1:/xlHOz8bRuivTWchD4jCa+NbatV+wEUSzwAxVc6locg= +github.com/golang-sql/civil v0.0.0-20190719163853-cb61b32ac6fe/go.mod h1:8vg3r2VgvsThLBIFL93Qb5yWzgyZWhEmBwUJWevAkK0= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= github.com/golang/glog v1.0.0/go.mod h1:EWib/APOK0SL3dFbYqvxE3UYd8E6s1ouQ7iEp/0LWV4= github.com/golang/groupcache v0.0.0-20160516000752-02826c3e7903/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -477,7 +537,6 @@ github.com/golang/protobuf v1.5.1/go.mod h1:DopwsBzvsk0Fs44TXzsVbJyPhcCPeIwnvohx github.com/golang/protobuf v1.5.2 h1:ROPKBNFfQgOUMifHyP+KYbvpjbdoFNs+aK7DXlji0Tw= github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golang/snappy v0.0.3/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2 h1:23T5iq8rbUYlhpt5DB4XJkc6BU31uODLD1o1gKvZmD0= github.com/golangci/check v0.0.0-20180506172741-cfe4005ccda2/go.mod h1:k9Qvh+8juN+UKMCS/3jFtGICgW8O96FVaZsaxdzDkR4= @@ -510,7 +569,6 @@ github.com/google/gnostic v0.5.7-v3refs/go.mod h1:73MKFl6jIHelAJNaBGFzt3SPtZULs9 github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.3.2-0.20191028172631-481baca67f93/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= @@ -520,10 +578,13 @@ github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.7 h1:81/ik6ipDQS2aGcBfIN5dHDB36BwrStyeAQquSYCV4o= github.com/google/go-cmp v0.5.7/go.mod h1:n+brtR0CgQNWTVd5ZUFpTBC8YFBDLK/h/bpaJ8/DtOE= +github.com/google/go-cmp v0.5.8 h1:e6P7q2lk1O+qJJb4BtCQXlK8vWEO8V1ZeuEdJNOqZyg= +github.com/google/go-cmp v0.5.8/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/go-jsonnet v0.18.0 h1:/6pTy6g+Jh1a1I2UMoAODkqELFiVIdOxbNwv0DDzoOg= github.com/google/go-jsonnet v0.18.0/go.mod h1:C3fTzyVJDslXdiTqw/bTFk7vSGyCtH3MGRbDfvEwGd0= +github.com/google/go-replayers/grpcreplay v1.1.0/go.mod h1:qzAvJ8/wi57zq7gWqaE6AwLM6miiXUQwP1S+I9icmhk= +github.com/google/go-replayers/httpreplay v1.0.0/go.mod h1:LJhKoTwS5Wy5Ld/peq8dFFG5OfJyHEz7ft+DsTUv25M= github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/gofuzz v1.1.0 h1:Hsa8mG0dQ46ij8Sl2AYJDUv1oA9/d6Vk+3LG99Oe02g= github.com/google/gofuzz v1.1.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= @@ -532,6 +593,7 @@ github.com/google/martian v2.1.1-0.20190517191504-25dcb96d9e51+incompatible/go.m github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/martian/v3 v3.2.1/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= +github.com/google/martian/v3 v3.3.2/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= @@ -547,25 +609,29 @@ github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLe github.com/google/pprof v0.0.0-20210122040257-d980be63207e/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210506205249-923b5ab0fc1a/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= +github.com/google/pprof v0.0.0-20210715191844-86eeefc3e471/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1 h1:K6RDEckDVWvDI9JAJYCmNdQXq6neHJOYx3V6jnqNEec= github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/subcommands v1.0.1/go.mod h1:ZjhPrFU+Olkh9WazFPsl27BQ4UPiG37m3yTrtFlrHVk= github.com/google/trillian v1.3.11/go.mod h1:0tPraVHrSDkA3BO6vKX67zgLXs6SsOAbHEivX+9mPgw= github.com/google/uuid v0.0.0-20161128191214-064e2069ce9c/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.2.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/google/wire v0.2.2/go.mod h1:7FHVg6mFpFQrjeUZrm+BaD50N5jnDKm50uVPTpyYOmU= -github.com/googleapis/gax-go v2.0.2+incompatible/go.mod h1:SFVmujtThgffbyetf+mdk2eWhX2bMyUtNHzFKcPA9HY= +github.com/google/wire v0.5.0/go.mod h1:ngWDr9Qvq3yZA10YrxfyGELY/AFWGVpy9c1LTRi1EoU= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/gax-go/v2 v2.1.0/go.mod h1:Q3nei7sK6ybPYH7twZdmQpAd1MKb7pfu6SK+H1/DsU0= github.com/googleapis/gax-go/v2 v2.1.1/go.mod h1:hddJymUZASv3XPyGkUpKj8pPO47Rmb0eJc8R6ouapiM= github.com/googleapis/gax-go/v2 v2.2.0/go.mod h1:as02EH8zWkzwUoLbBaFeQ+arQaj/OthfcblKl4IGNaM= github.com/googleapis/gax-go/v2 v2.3.0/go.mod h1:b8LNqSzNabLiUpXKkY7HAR5jr6bIT99EXz9pXxye9YM= +github.com/googleapis/go-type-adapters v1.0.0/go.mod h1:zHW75FOG2aur7gAO2B+MLby+cLsWGBF62rFAi7WjWO4= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= github.com/gookit/color v1.5.0/go.mod h1:43aQb+Zerm/BWh2GnrgOQm7ffz7tvQXEKV6BFMl7wAo= github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= @@ -574,18 +640,15 @@ github.com/gordonklaus/ineffassign v0.0.0-20210914165742-4cc7213b9bc8 h1:PVRE9d4 github.com/gordonklaus/ineffassign v0.0.0-20210914165742-4cc7213b9bc8/go.mod h1:Qcp2HIAYhR7mNUVSIxZww3Guk4it82ghYcEXIAk+QT0= github.com/gorhill/cronexpr v0.0.0-20180427100037-88b0669f7d75/go.mod h1:g2644b03hfBX9Ov0ZBDgXXens4rxSxmqFBbhvKv2yVA= github.com/gorilla/context v1.1.1/go.mod h1:kBGZzfjB9CEq2AlWe17Uuf7NDRt0dE0s8S51q0aT7Yg= -github.com/gorilla/csrf v1.6.0/go.mod h1:7tSf8kmjNYr7IWDCYhd3U8Ck34iQ/Yw5CJu7bAkHEGI= github.com/gorilla/css v1.0.0 h1:BQqNyPTi50JCFMTw/b67hByjMVXZRwGha6wxVGkeihY= github.com/gorilla/css v1.0.0/go.mod h1:Dn721qIggHpt4+EFCcTLTU/vk5ySda2ReITrtgBl60c= -github.com/gorilla/handlers v1.4.1/go.mod h1:Qkdc/uu4tH4g6mTK6auzZ766c4CA0Ng8+o/OAirnOIQ= github.com/gorilla/mux v1.6.2/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= github.com/gorilla/mux v1.7.3/go.mod h1:1lud6UwP+6orDFRuTfBEV8e9/aOM/c4fVVCaMa2zaAs= github.com/gorilla/mux v1.8.0/go.mod h1:DVbg23sWSpFRCP0SfiEN6jmj59UnW/n46BH5rLB71So= -github.com/gorilla/securecookie v1.1.1/go.mod h1:ra0sb63/xPlUeL+yeDciTfxMRAA+MP+HVt/4epWDjd4= github.com/gorilla/websocket v0.0.0-20170926233335-4201258b820c/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= -github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= github.com/gorilla/websocket v1.4.1/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gorilla/websocket v1.4.2/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= +github.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gostaticanalysis/analysisutil v0.0.0-20190318220348-4088753ea4d3/go.mod h1:eEOZF4jCKGi+aprrirO9e7WKB3beBRtWgqGunKl6pKE= github.com/gostaticanalysis/analysisutil v0.0.3/go.mod h1:eEOZF4jCKGi+aprrirO9e7WKB3beBRtWgqGunKl6pKE= github.com/gostaticanalysis/analysisutil v0.1.0/go.mod h1:dMhHRU9KTiDcuLGdy87/2gTR8WruwYZrKdRq9m1O6uw= @@ -608,11 +671,11 @@ github.com/grpc-ecosystem/go-grpc-middleware v1.0.1-0.20190118093823-f849b5445de github.com/grpc-ecosystem/go-grpc-middleware v1.2.2/go.mod h1:EaizFBKfUKtMIF5iaDEhniwNedqGo9FuLFzppDr3uwI= github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk= -github.com/grpc-ecosystem/grpc-gateway v1.8.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/grpc-ecosystem/grpc-gateway v1.9.0/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/grpc-ecosystem/grpc-gateway v1.9.5/go.mod h1:vNeuVxBJEsws4ogUvrchl83t/GYV9WGTSLVdBhOQFDY= github.com/grpc-ecosystem/grpc-gateway v1.12.1/go.mod h1:8XEsbTttt/W+VvjtQhLACqCisSPWTxCZ7sBRjU6iH9c= github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= +github.com/hairyhenderson/go-codeowners v0.2.3-0.20201026200250-cdc7c0759690/go.mod h1:8Qu9UmnhCRunfRv365Z3w+mT/WfLGKJiK+vugY9qNCU= github.com/hashicorp/consul/api v1.1.0/go.mod h1:VmuI/Lkw1nC05EYQWNKwWGbkg+FbDBtguAZLlVdkD9Q= github.com/hashicorp/consul/api v1.3.0/go.mod h1:MmDNSzIMUjNpY/mQ398R4bk2FnqQLoPndWW5VkKPlCE= github.com/hashicorp/consul/api v1.12.0/go.mod h1:6pVBMo0ebnYdt2S3H87XhekM/HHrUoTD2XXb/VrZVy0= @@ -672,9 +735,9 @@ github.com/imdario/mergo v0.3.8/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJ github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM= github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= github.com/influxdata/influxdb1-client v0.0.0-20191209144304-8bf82d3c094d/go.mod h1:qj24IKcXYK6Iy9ceXlo3Tc+vtHo9lIhSX5JddghvEPo= +github.com/invopop/yaml v0.1.0/go.mod h1:2XuRLgs/ouIrW3XNzuNj7J3Nvu/Dig5MXvbCEdiBN3Q= github.com/jawher/mow.cli v1.1.0/go.mod h1:aNaQlc7ozF3vw6IJ2dHjp2ZFiA4ozMIYY6PyuRJwlUg= -github.com/jdkato/prose v1.1.1/go.mod h1:jkF0lkxaX5PFSlk9l4Gh9Y+T57TqUZziWT7uZbW5ADg= -github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= +github.com/jdkato/prose v1.2.1/go.mod h1:AiRHgVagnEx2JbQRQowVBKjG0bcs/vtkGCH1dYAL1rA= github.com/jgautheron/goconst v1.5.1 h1:HxVbL1MhydKs8R8n/HE5NPvzfaYmQJA3o879lE4+WcM= github.com/jgautheron/goconst v1.5.1/go.mod h1:aAosetZ5zaeC/2EfMeRswtxUFBpe2Hr7HzkgX4fanO4= github.com/jhump/protoreflect v1.6.1/go.mod h1:RZQ/lnuN+zqeRVpQigTwO6o0AJUkxbnSnpuG7toUTG4= @@ -721,6 +784,8 @@ github.com/kisielk/errcheck v1.6.0 h1:YTDO4pNy7AUN/021p+JGHycQyYNIyMoenM1YDVK6Rl github.com/kisielk/errcheck v1.6.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0 h1:AV2c/EiW3KqPNT9ZKl07ehoAGi4C5/01Cfbblndcapg= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/klauspost/compress v1.10.3/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs= +github.com/klauspost/compress v1.13.5/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= @@ -742,18 +807,19 @@ github.com/kunwardeep/paralleltest v1.0.3/go.mod h1:vLydzomDFpk7yu5UX02RmP0H8QfR github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= github.com/kyoh86/exportloopref v0.1.8 h1:5Ry/at+eFdkX9Vsdw3qU4YkvGtzuVfzT4X7S77LoN/M= github.com/kyoh86/exportloopref v0.1.8/go.mod h1:1tUcJeiioIs7VWe5gcOObrux3lb66+sBqGZrRkMwPgg= -github.com/kyokomi/emoji v2.2.1+incompatible/go.mod h1:mZ6aGCD7yk8j6QY6KICwnZ2pxoszVseX1DNoGtU2tBA= +github.com/kyokomi/emoji/v2 v2.2.9/go.mod h1:JUcn42DTdsXJo1SWanHh4HKDEyPaR5CqkmoirZZP9qE= github.com/ldez/gomoddirectives v0.2.3 h1:y7MBaisZVDYmKvt9/l1mjNCiSA1BVn34U0ObUcJwlhA= github.com/ldez/gomoddirectives v0.2.3/go.mod h1:cpgBogWITnCfRq2qGoDkKMEVSaarhdBr6g8G04uz6d0= github.com/ldez/tagliatelle v0.3.1 h1:3BqVVlReVUZwafJUwQ+oxbx2BEX2vUG4Yu/NOfMiKiM= github.com/ldez/tagliatelle v0.3.1/go.mod h1:8s6WJQwEYHbKZDsp/LjArytKOG8qaMrKQQ3mFukHs88= +github.com/leodido/go-urn v1.2.0/go.mod h1:+8+nEpDfqqsY+g338gtMEUOtuK+4dEMhiQEgxpxOKII= github.com/leonklingele/grouper v1.1.0 h1:tC2y/ygPbMFSBOs3DcyaEMKnnwH7eYKzohOtRrf0SAg= github.com/leonklingele/grouper v1.1.0/go.mod h1:uk3I3uDfi9B6PeUjsCKi6ndcf63Uy7snXgR4yDYQVDY= github.com/letsencrypt/pkcs11key/v4 v4.0.0/go.mod h1:EFUvBDay26dErnNb70Nd0/VW3tJiIbETBPTl9ATXQag= github.com/lib/pq v1.0.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= -github.com/lib/pq v1.1.0/go.mod h1:5WUZQaWbwv1U+lTReE5YruASi9Al49XbQIvNi/34Woo= github.com/lib/pq v1.8.0/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/lib/pq v1.9.0/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= +github.com/lib/pq v1.10.2/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/lib/pq v1.10.4/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/lightstep/lightstep-tracer-common/golang/gogo v0.0.0-20190605223551-bc2310a04743/go.mod h1:qklhhLq1aX+mtWk9cPHPzaBjWImj5ULL6C7HFJtXQMM= github.com/lightstep/lightstep-tracer-go v0.18.1/go.mod h1:jlF1pusYV4pidLvZ+XD0UBX0ZE6WURAspgAczcDHrL4= @@ -762,7 +828,7 @@ github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i github.com/lufeee/execinquery v1.2.1 h1:hf0Ems4SHcUGBxpGN7Jz78z1ppVkP/837ZlETPCEtOM= github.com/lufeee/execinquery v1.2.1/go.mod h1:EC7DrEKView09ocscGHC+apXMIaorh4xqSxS/dy8SbM= github.com/lyft/protoc-gen-validate v0.0.13/go.mod h1:XbGvPuh87YZc5TdIa2/I4pLk0QoUACkjt2znoq26NVQ= -github.com/magefile/mage v1.9.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= +github.com/magefile/mage v1.13.0/go.mod h1:z5UZb/iS3GoOSn0JgWuiw7dxlurVYTu+/jHXqQg881A= github.com/magiconair/properties v1.8.0/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/magiconair/properties v1.8.1/go.mod h1:PppfXfuXeibc/6YijjN8zIbojt8czPbwD3XqdrwzmxQ= github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo= @@ -772,7 +838,6 @@ github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/maratori/testpackage v1.0.1 h1:QtJ5ZjqapShm0w5DosRjg0PRlSdAdlx+W6cCKoALdbQ= github.com/maratori/testpackage v1.0.1/go.mod h1:ddKdw+XG0Phzhx8BFDTKgpWP4i7MpApTE5fXSKAqwDU= -github.com/markbates/inflect v1.0.0/go.mod h1:oTeZL2KHA7CUX6X+fovmK9OvIOFuqu0TwdQrZjLTh88= github.com/matoous/godox v0.0.0-20210227103229-6504466cf951 h1:pWxk9e//NbPwfxat7RXkts09K+dEBJWakUWwICVqYbA= github.com/matoous/godox v0.0.0-20210227103229-6504466cf951/go.mod h1:1BELzlh859Sh1c6+90blK8lbYy0kwQf1bYlBhBysy1s= github.com/matryer/is v1.4.0 h1:sosSmIWwkYITGrxZ25ULNDeKiMNzFSr4V/eqBQP0PeE= @@ -785,20 +850,21 @@ github.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc= github.com/mattn/go-colorable v0.1.12 h1:jF+Du6AlPIjs2BiUiQlKOX0rt3SujHxPnksPKZbaA40= github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4= +github.com/mattn/go-ieproxy v0.0.1/go.mod h1:pYabZ6IHcRpFh7vIaLfK7rdcWgFEb3SFJ6/gNWuh88E= github.com/mattn/go-isatty v0.0.3/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.4/go.mod h1:M+lRXTBqGeGNdLjl/ufCoiOlB5xdOkqRJdNxMWT7Zi4= github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= github.com/mattn/go-isatty v0.0.10/go.mod h1:qgIWMr58cqv1PHHyhnkY9lrL7etaEgOFcMEpPG5Rm84= github.com/mattn/go-isatty v0.0.11/go.mod h1:PhnuNfih5lzO57/f3n+odYbM4JtupLOxQOAqxQCu2WE= github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= +github.com/mattn/go-isatty v0.0.13/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= github.com/mattn/go-isatty v0.0.14 h1:yVuAays6BHfxijgZPzw+3Zlu5yQgKGP2/hcQbHb7S9Y= github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94= github.com/mattn/go-runewidth v0.0.2/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzpuz5H//U1FU= github.com/mattn/go-runewidth v0.0.6/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= -github.com/mattn/go-runewidth v0.0.7/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI= -github.com/mattn/go-runewidth v0.0.10/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= +github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk= github.com/mattn/go-runewidth v0.0.13 h1:lTGmDsbAYt5DmK6OnoV7EuIF1wEIFAcxld6ypU4OSgU= github.com/mattn/go-runewidth v0.0.13/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= github.com/mattn/go-shellwords v1.0.10 h1:Y7Xqm8piKOO3v10Thp7Z36h4FYFjt5xB//6XvOrs2Gw= @@ -812,13 +878,12 @@ github.com/mbilski/exhaustivestruct v1.2.0/go.mod h1:OeTBVxQWoEmB2J2JCHmXWPJ0aks github.com/mgechev/dots v0.0.0-20210922191527-e955255bf517/go.mod h1:KQ7+USdGKfpPjXk4Ga+5XxQM4Lm4e3gAogrreFAYpOg= github.com/mgechev/revive v1.2.1 h1:GjFml7ZsoR0IrQ2E2YIvWFNS5GPDV7xNwvA5GM1HZC4= github.com/mgechev/revive v1.2.1/go.mod h1:+Ro3wqY4vakcYNtkBWdZC7dBg1xSB6sp054wWwmeFm0= -github.com/microcosm-cc/bluemonday v1.0.6 h1:ZOvqHKtnx0fUpnbQm3m3zKFWE+DRC+XB1onh8JoEObE= -github.com/microcosm-cc/bluemonday v1.0.6/go.mod h1:HOT/6NaBlR0f9XlxD3zolN6Z3N8Lp4pvhp+jLS5ihnI= +github.com/microcosm-cc/bluemonday v1.0.17 h1:Z1a//hgsQ4yjC+8zEkV8IWySkXnsxmdSY642CTFQb5Y= +github.com/microcosm-cc/bluemonday v1.0.17/go.mod h1:Z0r70sCuXHig8YpBzCc5eGHAap2K7e/u082ZUpDRRqM= github.com/miekg/dns v1.0.14/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= github.com/miekg/dns v1.1.26/go.mod h1:bPDLeHnStXmXAq1m/Ch/hvfNHr14JKNPMBo3VZKjuso= github.com/miekg/dns v1.1.35/go.mod h1:KNUDUusw/aVsxyTYZM1oqvCicbwhgbNgztCETuNZ7xM= github.com/miekg/dns v1.1.41/go.mod h1:p6aan82bvRIyn+zDIv9xYNUpwa73JcSh9BKwknJysuI= -github.com/miekg/mmark v1.3.6/go.mod h1:w7r9mkTvpS55jlfyn22qJ618itLryxXBhA7Jp3FIlkw= github.com/miekg/pkcs11 v1.0.2/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= github.com/miekg/pkcs11 v1.0.3/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs= github.com/mitchellh/cli v1.0.0/go.mod h1:hNIlj7HEI86fIcpObd7a0FcrxTWetlwJDGcceTlRvqc= @@ -829,11 +894,11 @@ github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/mitchellh/go-testing-interface v1.0.0/go.mod h1:kRemZodwjscx+RGhAo8eIhFbs2+BFgRtFPeD/KE+zxI= github.com/mitchellh/gox v0.4.0/go.mod h1:Sd9lOJ0+aimLBi73mGofS1ycjY8lL3uZM3JPS42BGNg= -github.com/mitchellh/hashstructure v1.0.0/go.mod h1:QjSHrPWS+BGUVBYkbTZWEnOh3G1DutKwClXU/ABz6AQ= +github.com/mitchellh/hashstructure v1.1.0/go.mod h1:xUDAozZz0Wmdiufv0uyhnHkUTN6/6d8ulp4AwfLKrmA= github.com/mitchellh/iochan v1.0.0/go.mod h1:JwYml1nuB7xOzsp52dPpHFffvOCDupsG0QubkSMEySY= github.com/mitchellh/mapstructure v0.0.0-20160808181253-ca63d7c062ee/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y= -github.com/mitchellh/mapstructure v1.2.2/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.4.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= @@ -850,16 +915,16 @@ github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3Rllmb github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826/go.mod h1:TaXosZuwdSHYgviHp1DAtfrULt5eUgsSMsZf+YrPgl8= +github.com/montanaflynn/stats v0.6.3/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= github.com/moricho/tparallel v0.2.1 h1:95FytivzT6rYzdJLdtfn6m1bfFJylOJK41+lgv/EHf4= github.com/moricho/tparallel v0.2.1/go.mod h1:fXEIZxG2vdfl0ZF8b42f5a78EhjjD5mX8qUplsoSU4k= github.com/mozilla/scribe v0.0.0-20180711195314-fb71baf557c1/go.mod h1:FIczTrinKo8VaLxe6PWTPEXRXDIHz2QAwiaBaP5/4a8= github.com/mozilla/tls-observatory v0.0.0-20210609171429-7bc42856d2e5/go.mod h1:FUqVoUPHSEdDR0MnFM3Dh8AU0pZHLXUD127SAJGER/s= -github.com/muesli/reflow v0.2.0/go.mod h1:qT22vjVmM9MIUeLgsVYe/Ye7eZlbv9dZjL3dVhUqLX8= -github.com/muesli/reflow v0.2.1-0.20210115123740-9e1d0d53df68 h1:y1p/ycavWjGT9FnmSjdbWUlLGvcxrY0Rw3ATltrxOhk= -github.com/muesli/reflow v0.2.1-0.20210115123740-9e1d0d53df68/go.mod h1:Xk+z4oIWdQqJzsxyjgl3P22oYZnHdZ8FFTHAQQt5BMQ= +github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s= +github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8= github.com/muesli/smartcrop v0.3.0/go.mod h1:i2fCI/UorTfgEpPPLWiFBv4pye+YAG78RwcQLUkocpI= -github.com/muesli/termenv v0.8.1 h1:9q230czSP3DHVpkaPDXGp0TOfAwyjyYwXlUCQxQSaBk= -github.com/muesli/termenv v0.8.1/go.mod h1:kzt/D/4a88RoheZmwfqorY3A+tnsSMA9HJC/fQSFKo0= +github.com/muesli/termenv v0.9.0 h1:wnbOaGz+LUR3jNT0zOzinPnyDaCZUQRZj9GxK8eRVl8= +github.com/muesli/termenv v0.9.0/go.mod h1:R/LzAKf+suGs4IsO95y7+7DpFHO0KABgnZqtlyx2mBw= github.com/munnerz/goautoneg v0.0.0-20120707110453-a547fc61f48d/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= @@ -878,17 +943,16 @@ github.com/nats-io/nkeys v0.1.3/go.mod h1:xpnFELMwJABBLVhffcfd1MZx6VsNRFpEugbxzi github.com/nats-io/nuid v1.0.1/go.mod h1:19wcPz3Ph3q0Jbyiqsd0kePYG7A95tJPxeL+1OSON2c= github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354 h1:4kuARK6Y6FxaNu/BnU2OAaLF86eTVhP2hjTB6iMvItA= github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354/go.mod h1:KSVJerMDfblTH7p5MZaTt+8zaT2iEk3AkVb9PQdZuE8= +github.com/neurosnap/sentences v1.0.6/go.mod h1:pg1IapvYpWCJJm/Etxeh0+gtMf1rI1STY9S7eUCPbDc= github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646/go.mod h1:jpp1/29i3P1S/RLdc7JQKbRpFeM1dOBd8T9ki5s+AY8= -github.com/nicksnyder/go-i18n v1.10.0/go.mod h1:HrK7VCrbOvQoUAQ7Vpy7i87N7JZZZ7R2xBGjv0j365Q= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= -github.com/niklasfasching/go-org v1.3.0 h1:X8Ob7WOF61iP4KnisZo1eVVei8/GzmNz3ymJrYLnIic= -github.com/niklasfasching/go-org v1.3.0/go.mod h1:AsLD6X7djzRIz4/RFZu8vwRL0VGjUvGZCCH1Nz0VdrU= +github.com/niklasfasching/go-org v1.6.5 h1:5YAIqNTdl6lAOb7lD2AyQ1RuFGPVrAKvUexphk8PGbo= +github.com/niklasfasching/go-org v1.6.5/go.mod h1:ybv0eGDnxylFUfFE+ySaQc734j/L3+/ChKZ/h63a2wM= github.com/nishanths/exhaustive v0.7.11 h1:xV/WU3Vdwh5BUH4N06JNUznb6d5zhRPOnlgCrpNYNKA= github.com/nishanths/exhaustive v0.7.11/go.mod h1:gX+MP7DWMKJmNa1HfMozK+u04hQd3na9i0hyqf3/dOI= github.com/nishanths/predeclared v0.0.0-20190419143655-18a43bb90ffc/go.mod h1:62PewwiQTlm/7Rj+cxVYqZvDIUc+JjZq6GHAC1fsObQ= github.com/nishanths/predeclared v0.2.2 h1:V2EPdZPliZymNAn79T8RkNApBjMmVKh5XRpLm/w98Vk= github.com/nishanths/predeclared v0.2.2/go.mod h1:RROzoN6TnGQupbC+lqggsOlcgysk3LMK/HI84Mp280c= -github.com/nkovacs/streamquote v0.0.0-20170412213628-49af9bddb229/go.mod h1:0aYXnNPJ8l7uZxf45rWW1a/uME32OF0rhiYGNQ2oF2E= github.com/nxadm/tail v1.4.4/go.mod h1:kenIhsEOeOJmVchQTgglprH7qJGnHDVpk1VPCcaMI8A= github.com/nxadm/tail v1.4.8 h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE= github.com/nxadm/tail v1.4.8/go.mod h1:+ncqLTQzXmGhMZNUePPaPqPvBxHAIsmXswZKocGu+AU= @@ -900,7 +964,6 @@ github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn github.com/olekukonko/tablewriter v0.0.0-20170122224234-a0225b3f23b5/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= github.com/olekukonko/tablewriter v0.0.1/go.mod h1:vsDQFd/mU46D+Z4whnwzcISnGGzXWMclvtLoiIKAKIo= github.com/olekukonko/tablewriter v0.0.2/go.mod h1:rSAaSIOAGT9odnlyGlUfAJaoc5w2fSBUmeGDbRWPxyQ= -github.com/olekukonko/tablewriter v0.0.4/go.mod h1:zq6QwlOf5SlnkVbMSr5EoBv3636FWnp+qbPhuoO21uA= github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec= github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY= github.com/onsi/ginkgo v0.0.0-20170829012221-11459a886d9c/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= @@ -941,13 +1004,13 @@ github.com/pascaldekloe/goe v0.0.0-20180627143212-57f6aae5913c/go.mod h1:lzWF7FI github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc= github.com/pborman/uuid v1.2.0/go.mod h1:X/NO0urCmaxf9VXbdlT7C2Yzkj2IKimNn4k+gtPdI/k= github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic= -github.com/pelletier/go-toml v1.6.0/go.mod h1:5N711Q9dKgbdkxHL+MEfF31hpT7l0S0s/t2kKREewys= github.com/pelletier/go-toml v1.9.4/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml v1.9.5 h1:4yBQzkHv+7BHq2PQUZF3Mx0IYxG7LsP222s7Agd3ve8= github.com/pelletier/go-toml v1.9.5/go.mod h1:u1nR/EPcESfeI/szUZKdtJ0xRNbUoANCkoOuaOx1Y+c= github.com/pelletier/go-toml/v2 v2.0.0-beta.8/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= -github.com/pelletier/go-toml/v2 v2.0.0 h1:P7Bq0SaI8nsexyay5UAyDo+ICWy5MQPgEZ5+l8JQTKo= github.com/pelletier/go-toml/v2 v2.0.0/go.mod h1:r9LEWfGN8R5k0VXJ+0BkIe7MYkRdwZOjgMj2KwnJFUo= +github.com/pelletier/go-toml/v2 v2.0.2 h1:+jQXlF3scKIcSEKkdHzXhCTDLPFi5r1wnK6yPS+49Gw= +github.com/pelletier/go-toml/v2 v2.0.2/go.mod h1:MovirKjgVRESsAvNZlAjtFwV867yGuwRkXbG66OzopI= github.com/performancecopilot/speed v3.0.0+incompatible/go.mod h1:/CLtqpZ5gBg1M9iaPbIdPPGyKcA8hKdoy6hAWba7Yac= github.com/peterbourgon/diskv v2.0.1+incompatible/go.mod h1:uqqh8zWWbv1HBMNONnaR/tNboyR3/BZd58JJSHlUSCU= github.com/phayes/checkstyle v0.0.0-20170904204023-bfd46e6a821d h1:CdDQnGF8Nq9ocOS/xlSptM1N3BbrA6/kmaep5ggwaIA= @@ -978,8 +1041,9 @@ github.com/prometheus/client_golang v1.3.0/go.mod h1:hJaj2vgQTGQmVCsAACORcieXFeD github.com/prometheus/client_golang v1.4.0/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= -github.com/prometheus/client_golang v1.12.1 h1:ZiaPsmm9uiBeaSMRznKsCDNtPCS0T3JVDGF+06gjBzk= github.com/prometheus/client_golang v1.12.1/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= +github.com/prometheus/client_golang v1.12.2 h1:51L9cDoUHVrXx4zWYlcLQIZ+d+VXHgqnYKkIuq4g/34= +github.com/prometheus/client_golang v1.12.2/go.mod h1:3Z9XVyYiZYEO+YQWt3RD2R3jrbd179Rt297l4aS6nDY= github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190115171406-56726106282f/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= @@ -995,7 +1059,6 @@ github.com/prometheus/common v0.7.0/go.mod h1:DjGbpBbp5NYNiECxcL/VnbXCCaQpKd3tt2 github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4= github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= -github.com/prometheus/common v0.30.0/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= github.com/prometheus/common v0.32.1 h1:hWIdL3N2HoUx3B8j3YN9mWor0qhY/NlEKZEaXxuIRh4= github.com/prometheus/common v0.32.1/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= @@ -1030,14 +1093,14 @@ github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJ github.com/rogpeppe/fastuuid v0.0.0-20150106093220-6724a57986af/go.mod h1:XWv6SoW27p1b0cqNHllgS5HIMJraePCO15w5zCzIWYg= github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= -github.com/rogpeppe/go-internal v1.5.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.6.1/go.mod h1:xXDCJY+GAPziupqXw64V24skbSoqbTEfhy4qGm1nDQc= github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg= github.com/rogpeppe/go-internal v1.8.1/go.mod h1:JeRgkft04UBgHMgCIwADu4Pn6Mtm5d4nPKWu0nJ5d+o= github.com/rs/cors v1.7.0/go.mod h1:gFx+x8UowdsKA9AchylcLynDq+nNFfI8FkUZdN/jGCU= github.com/russross/blackfriday v1.5.2/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= -github.com/russross/blackfriday v1.5.3-0.20200218234912-41c5fccfd6f6/go.mod h1:JO/DiYxRf+HjHt06OyowR9PTA263kcR/rfWxYHBV53g= +github.com/russross/blackfriday v1.6.0/go.mod h1:ti0ldHuxg49ri4ksnFxlkCfN+hvslNlmVHqNRXXJNAY= github.com/russross/blackfriday/v2 v2.0.1/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/rwcarlsen/goexif v0.0.0-20190401172101-9e8deecbddbd/go.mod h1:hPqNNc0+uJM6H+SuU8sEs5K5IQeKccPqeSjfgcKGgPk= github.com/ryancurrah/gomodguard v1.2.3 h1:ww2fsjqocGCAFamzvv/b8IsRduuHHeK2MHTcTxZTQX8= @@ -1049,7 +1112,7 @@ github.com/sagikazarmark/crypt v0.5.0/go.mod h1:l+nzl7KWh51rpzp2h7t4MZWyiEWdhNpO github.com/saintfish/chardet v0.0.0-20120816061221-3af4cd4741ca h1:NugYot0LIVPxTvN8n+Kvkn6TrbMyxQiuvKdEwFdR9vI= github.com/saintfish/chardet v0.0.0-20120816061221-3af4cd4741ca/go.mod h1:uugorj2VCxiV1x+LzaIdVa9b4S4qGAcH6cbhh4qVxOU= github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da/go.mod h1:gi+0XIa01GRL2eRQVjQkKGqKF3SF9vZR/HnPullcV2E= -github.com/sanity-io/litter v1.2.0/go.mod h1:JF6pZUFgu2Q0sBZ+HSV35P8TVPI1TTzEwyu9FXAw2W4= +github.com/sanity-io/litter v1.5.5/go.mod h1:9gzJgR2i4ZpjZHsKvUXIRQVk7P+yM3e+jAF7bU2UI5U= github.com/sanposhiho/wastedassign/v2 v2.0.6 h1:+6/hQIHKNJAUixEj6EmOngGIisyeI+T3335lYTyxRoA= github.com/sanposhiho/wastedassign/v2 v2.0.6/go.mod h1:KyZ0MWTwxxBmfwn33zh3k1dmsbF2ud9pAAGfoLfjhtI= github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc= @@ -1060,6 +1123,7 @@ github.com/sergi/go-diff v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0= github.com/sergi/go-diff v1.1.0/go.mod h1:STckp+ISIX8hZLjrqAeVduY0gWCT9IjLuqbuNXdaHfM= github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c h1:W65qqJCIOVP4jpqPQ0YvHYKwcMEMVWIzWC5iNQQfBTU= github.com/shazow/go-diff v0.0.0-20160112020656-b6b7b6733b8c/go.mod h1:/PevMnwAxekIXwN8qQyfc5gl2NlkB3CQlkizAbOkeBs= +github.com/shogo82148/go-shuffle v0.0.0-20180218125048-27e6095f230d/go.mod h1:2htx6lmL0NGLHlO8ZCf+lQBGBHIbEujyywxJArf+2Yc= github.com/shurcooL/go v0.0.0-20180423040247-9e1955d9fb6e/go.mod h1:TDJrrUr11Vxrven61rcy3hJMUqaf/CLWYhHNPmT14Lk= github.com/shurcooL/go-goon v0.0.0-20170922171312-37c2f522c041/go.mod h1:N5mDOmsrJOB+vfqUK+7DmDyjhSLIIBnXo9lvZJj3MWQ= github.com/shurcooL/sanitized_anchor_name v1.0.0/go.mod h1:1NzhyTcUVG4SuEtjjoZeVRXNmyL/1OwPU0+IJeTBvfc= @@ -1089,9 +1153,9 @@ github.com/spf13/afero v1.6.0/go.mod h1:Ai8FlHk4v/PARR026UzYexafAt9roJ7LcLMAmO6Z github.com/spf13/afero v1.8.2 h1:xehSyVa0YnHWsJ49JFljMpg1HX19V6NDZ1fkm1Xznbo= github.com/spf13/afero v1.8.2/go.mod h1:CtAatgMJh6bJEIs48Ay/FOnkljP3WeGUG0MC1RfAqwo= github.com/spf13/cast v1.3.0/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cast v1.3.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= -github.com/spf13/cast v1.4.1 h1:s0hze+J0196ZfEMTs80N7UlFt0BDuQ7Q+JDnHiMWKdA= github.com/spf13/cast v1.4.1/go.mod h1:Qx5cxh0v+4UWYiBimWS+eyWzqEqokIECu5etghLkUJE= +github.com/spf13/cast v1.5.0 h1:rj3WzYc11XZaIZMPKmwP96zkFEnnAmV8s6XbB2aY32w= +github.com/spf13/cast v1.5.0/go.mod h1:SpXXQ5YoyJw6s3/6cMTQuxvgRl3PCJiyaX9p6b155UU= github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= github.com/spf13/cobra v0.0.5/go.mod h1:3K3wKZymM7VvHMDS9+Akkh4K60UwM26emMESw8tLCHU= github.com/spf13/cobra v1.1.3/go.mod h1:pGADOWyqRD/YMrPZigI/zbliZ2wVD/23d+is3pSWzOo= @@ -1106,7 +1170,6 @@ github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnIn github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= github.com/spf13/viper v1.3.2/go.mod h1:ZiWeW+zYFKm7srdB9IoDzzZXaJaI5eL9QjNiN/DMA2s= -github.com/spf13/viper v1.6.1/go.mod h1:t3iDnF5Jlj76alVNuyFBk5oUMCvsrkbvZK0WQdfDi5k= github.com/spf13/viper v1.7.0/go.mod h1:8WkrPz2fc9jxqZNCJI/76HCieCp4Q8HaLFoCha5qpdg= github.com/spf13/viper v1.11.0 h1:7OX/1FS6n7jHD1zGrZTM7WtY13ZELRyosK4k93oPr44= github.com/spf13/viper v1.11.0/go.mod h1:djo0X/bA5+tYVoCn+C7cAYJGcVn/qYLFTG8gdUsX7Zk= @@ -1133,6 +1196,7 @@ github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5 github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= github.com/stretchr/testify v1.7.4 h1:wZRexSlwd7ZXfKINDLsO4r7WBt3gTKONc6K/VesHvHM= github.com/stretchr/testify v1.7.4/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/subosito/gotenv v1.2.0 h1:Slr1R9HxAlEKefgq5jn9U+DnETlIUa6HfgEzj0g5d7s= @@ -1141,8 +1205,10 @@ github.com/sylvia7788/contextcheck v1.0.4 h1:MsiVqROAdr0efZc/fOCt0c235qm9XJqHtWw github.com/sylvia7788/contextcheck v1.0.4/go.mod h1:vuPKJMQ7MQ91ZTqfdyreNKwZjyUg6KO+IebVyQDedZQ= github.com/tdakkota/asciicheck v0.1.1 h1:PKzG7JUTUmVspQTDqtkX9eSiLGossXTybutHwTXuO0A= github.com/tdakkota/asciicheck v0.1.1/go.mod h1:yHp0ai0Z9gUljN3o0xMhYJnH/IcvkdTBOX2fmJ93JEM= -github.com/tdewolff/minify/v2 v2.6.2/go.mod h1:BkDSm8aMMT0ALGmpt7j3Ra7nLUgZL0qhyrAHXwxcy5w= -github.com/tdewolff/parse/v2 v2.4.2/go.mod h1:WzaJpRSbwq++EIQHYIRTpbYKNA3gn9it1Ik++q4zyho= +github.com/tdewolff/minify/v2 v2.11.10/go.mod h1:dHOS3dk+nJ0M3q3uM3VlNzTb70cou+ov0ki7C4PAFgM= +github.com/tdewolff/parse/v2 v2.6.0 h1:f2D7w32JtqjCv6SczWkfwK+m15et42qEtDnZXHoNY70= +github.com/tdewolff/parse/v2 v2.6.0/go.mod h1:WzaJpRSbwq++EIQHYIRTpbYKNA3gn9it1Ik++q4zyho= +github.com/tdewolff/test v1.0.6 h1:76mzYJQ83Op284kMT+63iCNCI7NEERsIN8dLM+RiKr4= github.com/tdewolff/test v1.0.6/go.mod h1:6DAvZliBAAnD7rhVgwaM7DE5/d9NMOAJ09SqYqeK4QE= github.com/temoto/robotstxt v1.1.1 h1:Gh8RCs8ouX3hRSxxK7B1mO5RFByQ4CmJZDwgom++JaA= github.com/temoto/robotstxt v1.1.1/go.mod h1:+1AmkuG3IYkh1kv0d2qEB9Le88ehNO0zwOr3ujewlOo= @@ -1154,7 +1220,6 @@ github.com/tetafro/godot v1.4.11 h1:BVoBIqAf/2QdbFmSwAWnaIqDivZdOV0ZRwEm6jivLKw= github.com/tetafro/godot v1.4.11/go.mod h1:LR3CJpxDVGlYOWn3ZZg1PgNZdTUvzsZWu8xaEohUpn8= github.com/theckman/yacspin v0.8.0 h1:9LA2kUol1/+eH5m/ptlbYCrnCEfLCaX4Xn+5tK/AprI= github.com/theckman/yacspin v0.8.0/go.mod h1:K1H1naXCpDytqETpvmlxWzAq8BbOMy3Wrd0iy0ZNzRI= -github.com/tidwall/pretty v0.0.0-20190325153808-1166b9ac2b65/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= github.com/timakin/bodyclose v0.0.0-20210704033933-f49887972144 h1:kl4KhGNsJIbDHS9/4U9yQo1UcPQM0kOMJHn29EoH/Ro= github.com/timakin/bodyclose v0.0.0-20210704033933-f49887972144/go.mod h1:Qimiffbc6q9tBWlVV6x0P9sat/ao1xEkREYPPj9hphk= github.com/tmc/grpc-websocket-proxy v0.0.0-20170815181823-89b8d40f7ca8/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= @@ -1167,11 +1232,9 @@ github.com/tomasen/realip v0.0.0-20180522021738-f0c99a92ddce/go.mod h1:o8v6yHRoi github.com/tommy-muehle/go-mnd/v2 v2.5.0 h1:iAj0a8e6+dXSL7Liq0aXPox36FiN1dBbjA6lt9fl65s= github.com/tommy-muehle/go-mnd/v2 v2.5.0/go.mod h1:WsUAkMJMYww6l/ufffCD3m+P7LEvr8TnZn9lwVDlgzw= github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM= -github.com/uber-go/atomic v1.3.2/go.mod h1:/Ct5t2lcmbJ4OSe/waGBoaVvVqtO0bmtfVNex1PFV8g= -github.com/uber/jaeger-client-go v2.15.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= -github.com/uber/jaeger-lib v1.5.0/go.mod h1:ComeNDZlWwrWnDv8aPp0Ba6+uUTzImX/AauajbLI56U= -github.com/ugorji/go v1.1.4/go.mod h1:uQMGLiO92mf5W77hV/PUCpI3pbzQx3CRekS0kk+RGrc= +github.com/ugorji/go v1.1.7/go.mod h1:kZn38zHttfInRq0xu/PH0az30d+z6vm202qpg1oXVMw= github.com/ugorji/go/codec v0.0.0-20181204163529-d75b2dcb6bc8/go.mod h1:VFNgLljTbGfSG7qAOspJ7OScBnGdDN/yBr0sguwnwf0= +github.com/ugorji/go/codec v1.1.7/go.mod h1:Ax+UKWsSmolVDwsd+7N3ZtXu+yMGCf907BLYF3GoBXY= github.com/ultraware/funlen v0.0.3 h1:5ylVWm8wsNwH5aWo9438pwvsK0QiqVuUrt9bn7S/iLA= github.com/ultraware/funlen v0.0.3/go.mod h1:Dp4UiAus7Wdb9KUZsYWZEWiRzGuM2kXM1lPbfaF6xhA= github.com/ultraware/whitespace v0.0.5 h1:hh+/cpIcopyMYbZNVov9iSxvJU3OYQg78Sfaqzi/CzI= @@ -1180,11 +1243,7 @@ github.com/urfave/cli v1.20.0/go.mod h1:70zkFmudgCuE/ngEzBv17Jvp/497gISqfk5gWijb github.com/urfave/cli v1.22.1/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0= github.com/uudashr/gocognit v1.0.5 h1:rrSex7oHr3/pPLQ0xoWq108XMU8s678FJcQ+aSfOHa4= github.com/uudashr/gocognit v1.0.5/go.mod h1:wgYz0mitoKOTysqxTDMOUXg+Jb5SvtihkfmugIZYpEA= -github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= -github.com/valyala/fasttemplate v1.0.1/go.mod h1:UQGH1tvbgY+Nz5t2n7tXsz52dQxojPUpymEIMZ47gx8= github.com/viki-org/dnscache v0.0.0-20130720023526-c70c1f23c5d8/go.mod h1:dniwbG03GafCjFohMDmz6Zc6oCuiqgH6tGNyXTkHzXE= -github.com/xdg/scram v0.0.0-20180814205039-7eeb5667e42c/go.mod h1:lB8K/P019DLNhemzwFU4jHLhdvlE6uDZjXFejJXr49I= -github.com/xdg/stringprep v1.0.0/go.mod h1:Jhud4/sHMO4oL310DaZAKk9ZaJ08SJfe+sJh0HrGL1Y= github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= github.com/xo/terminfo v0.0.0-20210125001918-ca9a967f8778/go.mod h1:2MuV+tbUrU1zIOPMxZ5EncGwgmMJsa+9ucAQZXxsObs= github.com/xordataexchange/crypt v0.0.3-0.20170626215501-b2862e3d0a77/go.mod h1:aYKd//L2LvnjZzWKhF00oedf4jCCReLcmhLdhm1A27Q= @@ -1195,20 +1254,18 @@ github.com/yeya24/promlinter v0.2.0/go.mod h1:u54lkmBOZrpEbQQ6gox2zWKKLKu2SGe+2K github.com/yudai/gojsondiff v1.0.0/go.mod h1:AY32+k2cwILAkW1fbgxQ5mUmMiZFgLIV+FBNExI05xg= github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82/go.mod h1:lgjkn3NuSvDfVJdfcVVdX+jpBxNmX4rDAzaS45IcYoM= github.com/yudai/pp v2.0.1+incompatible/go.mod h1:PuxR/8QJ7cyCkFp/aUDS+JY727OFEZkTdatxwunjIkc= -github.com/yuin/goldmark v1.1.22/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.1.31/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -github.com/yuin/goldmark v1.3.3/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= github.com/yuin/goldmark v1.4.0/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= -github.com/yuin/goldmark v1.4.1 h1:/vn0k+RBvwlxEmP5E7SZMqNxPhfMVFEJiykr15/0XKM= github.com/yuin/goldmark v1.4.1/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k= +github.com/yuin/goldmark v1.4.4/go.mod h1:rmuwmfZ0+bvzB24eSC//bk1R1Zp3hM0OXYv/G2LIilg= +github.com/yuin/goldmark v1.4.12 h1:6hffw6vALvEDqJ19dOJvJKOoAOKe4NDaTqvd2sktGN0= +github.com/yuin/goldmark v1.4.12/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= github.com/yuin/goldmark-emoji v1.0.1 h1:ctuWEyzGBwiucEqxzwe0SOYDXPAucOrE9NQC18Wa1os= github.com/yuin/goldmark-emoji v1.0.1/go.mod h1:2w1E6FEWLcDQkoTE+7HU6QF1F6SLlNGjRIBbIZQFqkQ= -github.com/yuin/goldmark-highlighting v0.0.0-20200307114337-60d527fdb691/go.mod h1:YLF3kDffRfUH/bTxOxHhV6lxwIB3Vfj91rEwNMS9MXo= gitlab.com/bosi/decorder v0.2.1 h1:ehqZe8hI4w7O4b1vgsDZw1YU1PE7iJXrQWFMsocbQ1w= gitlab.com/bosi/decorder v0.2.1/go.mod h1:6C/nhLSbF6qZbYD8bRmISBwc6vcWdNsiIBkRvjJFrH0= go.etcd.io/bbolt v1.3.2/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU= @@ -1230,7 +1287,6 @@ go.etcd.io/etcd/client/v3 v3.5.1/go.mod h1:OnjH4M8OnAotwaB2l9bVgZzRFKru7/ZMoS46O go.etcd.io/etcd/pkg/v3 v3.5.0/go.mod h1:UzJGatBQ1lXChBkQF0AuAtkRQMYnHubxAEYIrC3MSsE= go.etcd.io/etcd/raft/v3 v3.5.0/go.mod h1:UFOHSIvO/nKwd4lhkwabrTD3cqW5yVyYYf/KlD00Szc= go.etcd.io/etcd/server/v3 v3.5.0/go.mod h1:3Ah5ruV+M+7RZr0+Y/5mNLwC+eQlni+mQmOVdCRJoS4= -go.mongodb.org/mongo-driver v1.0.1/go.mod h1:u7ryQJ+DOzQmeO7zB6MHyr8jkEQvC8vH7qLUO4lqsUM= go.mozilla.org/mozlog v0.0.0-20170222151521-4bb13139d403/go.mod h1:jHoPAGnDrCy6kaI2tAze5Prf0Nr0w/oNkROt2lw3n3o= go.opencensus.io v0.15.0/go.mod h1:UffZAU+4sDEINUGP/B7UfBBkq4fqLu9zXAX7ke6CHW0= go.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk= @@ -1241,6 +1297,7 @@ go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= +go.opencensus.io v0.22.6/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opentelemetry.io/contrib v0.20.0/go.mod h1:G/EtFaa6qaN7+LxqfIAT3GiZa7Wv5DTBUzl5H4LY0Kc= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.20.0/go.mod h1:oVGt1LRbBOBq1A5BQLlUg9UaU/54aiHw8cgjV3aWZ/E= @@ -1258,25 +1315,27 @@ go.uber.org/atomic v1.3.2/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.4.0/go.mod h1:gD2HeocX3+yG+ygLZcrzQJaqmWj9AIm7n08wl/qW/PE= go.uber.org/atomic v1.5.0/go.mod h1:sABNBOSYdrvTF6hTgEIbc7YasKWGhgEQZyfxyTvoXHQ= go.uber.org/atomic v1.7.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= +go.uber.org/atomic v1.9.0/go.mod h1:fEN4uk6kAWBTFdckzkM89CLk9XfWZrxpCo0nPH17wJc= go.uber.org/goleak v1.1.10 h1:z+mqJhf6ss6BSfSM671tgKyZBFPTTJM+HLxnhPC3wu0= go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= go.uber.org/multierr v1.1.0/go.mod h1:wR5kodmAFQ0UK8QlbwjlSNy0Z68gJhDJUG5sjR94q/0= go.uber.org/multierr v1.3.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4= go.uber.org/multierr v1.4.0/go.mod h1:VgVr7evmIr6uPjLBxg28wmKNXyqE9akIJ5XnfpiKl+4= go.uber.org/multierr v1.6.0/go.mod h1:cdWPpRnG4AhwMwsgIHip0KRBQjJy5kYEpYjJxpXp9iU= +go.uber.org/multierr v1.7.0/go.mod h1:7EAYxJLBy9rStEaz58O2t4Uvip6FSURkq8/ppBp95ak= go.uber.org/tools v0.0.0-20190618225709-2cfd321de3ee/go.mod h1:vJERXedbb3MVM5f9Ejo0C68/HhF8uaILCdgjnY+goOA= go.uber.org/zap v1.10.0/go.mod h1:vwi/ZaCAaUcBkycHslxD9B2zi4UTXhF60s6SWpuDF0Q= go.uber.org/zap v1.13.0/go.mod h1:zwrFLgMcdUuIBviXEYEH1YKNaOBnKXsx2IPda5bBwHM= go.uber.org/zap v1.17.0/go.mod h1:MXVU+bhUf/A7Xi2HNOnopQOrmycQ5Ih87HtOu4q5SSo= +go.uber.org/zap v1.18.1/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= go.uber.org/zap v1.19.0/go.mod h1:xg/QME4nWcxGxrpdeYfq7UvYrLh66cuVKdrbD1XF/NI= -gocloud.dev v0.15.0/go.mod h1:ShXCyJaGrJu9y/7a6+DSCyBb9MFGZ1P5wwPa0Wu6w34= +gocloud.dev v0.24.0/go.mod h1:uA+als++iBX5ShuG4upQo/3Zoz49iIPlYUWHV5mM8w8= golang.org/x/crypto v0.0.0-20180501155221-613d6eafa307/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20181001203147-e3636079e1a4/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181029021203-45a5f77698d3/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20190422183909-d864b10871cd/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= @@ -1284,9 +1343,12 @@ golang.org/x/crypto v0.0.0-20190820162420-60c769a6c586/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20190923035154-9ee001bba392/go.mod h1:/lpIB1dKB+9EgE3H3cr1v9wB50oz8l4C4h62xy7jSTY= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200728195943-123391ffb6de/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= +golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a/go.mod h1:P+XmwS30IXTQdn5tA2iutPOUgjI07+tq3H3K9MVA1s8= +golang.org/x/crypto v0.0.0-20210817164053-32db794688a5/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20211108221036-ceb1ce70b4fa/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20220214200702-86341886e292/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= @@ -1307,7 +1369,8 @@ golang.org/x/exp/typeparams v0.0.0-20220218215828-6cf2b201936e h1:qyrTQ++p1afMkO golang.org/x/exp/typeparams v0.0.0-20220218215828-6cf2b201936e/go.mod h1:AbB0pIl9nAr9wVwH+Z2ZpaocVmF5I4GyWCDIsVjR0bk= golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= -golang.org/x/image v0.0.0-20191214001246-9130b4cfad52/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/image v0.0.0-20210220032944-ac19c3e999fb/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/image v0.0.0-20211028202545-6944b10bf410/go.mod h1:023OzeP/+EPmXeapQh35lcL3II3LrY8Ic+EFFKVhULM= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= @@ -1332,9 +1395,11 @@ golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.1/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.4.2/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.5.0/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= golang.org/x/mod v0.5.1/go.mod h1:5OXOZSfqPIIbmVBIIKWRFfZjPR0E5r58TLhUjH0a2Ro= -golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3 h1:kQgndtyPBW/JIYERgdxfwMYh3AVStj88WQTlNDi2a+o= golang.org/x/mod v0.6.0-dev.0.20220106191415-9b9b3d81d5e3/go.mod h1:3p9vT2HGsQu2K1YbXdKPJLVgG5VJdoTa1poYQBtP1AY= +golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 h1:6zppjxzCulZykYSLyVDYbneBfbaBIQPYMevg0bEwv2s= +golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= golang.org/x/net v0.0.0-20180218175443-cbe0f9307d01/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= @@ -1347,14 +1412,9 @@ golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73r golang.org/x/net v0.0.0-20190125091013-d26f9f9a57f3/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190320064053-1272bf9dcd53/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190322120337-addf6b3196f6/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190420063019-afa5a82059c6/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190424112056-4829fb13d2c6/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -1364,6 +1424,7 @@ golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLL golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20190923162816-aa69164e4478/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191002035440-2ec189313ef0/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191112182307-2180aed22343/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= @@ -1391,12 +1452,13 @@ golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20210119194325-5f4716e94777/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210316092652-d523dce5a7f4/go.mod h1:RBQZq4jEuRlivfhVLdyRGr576XBO4/greRjx4P4O3yc= -golang.org/x/net v0.0.0-20210331212208-0fccb6fa2b5c/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= golang.org/x/net v0.0.0-20210410081132-afb366fc7cd1/go.mod h1:9tjilg8BloeKEkVJvy7fQ90B1CfIiPueXVOjqfkSzI8= golang.org/x/net v0.0.0-20210428140749-89ef3d95e781/go.mod h1:OJAsFXCWl8Ukc7SiCT/9KSuxbyM7479/AVlXFRxuMCk= golang.org/x/net v0.0.0-20210503060351-7fd8e65b6420/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210726213435-c6fcb2dbf985/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20210825183410-e898025ed96a/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= @@ -1404,22 +1466,22 @@ golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qx golang.org/x/net v0.0.0-20220127200216-cd36cc0744dd/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220325170049-de3da57026de/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= -golang.org/x/net v0.0.0-20220412020605-290c469a71a5 h1:bRb386wvrE+oBNdF1d/Xh9mQrfQ4ecYhW5qJ5GvTGT4= golang.org/x/net v0.0.0-20220412020605-290c469a71a5/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= +golang.org/x/net v0.0.0-20220607020251-c690dde0001d h1:4SFsTMi4UahlKoloni7L4eYzhFRifURQLw+yv0QDCx8= +golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20190319182350-c85d3e98c914/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20190402181905-9f3314589c9a/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= -golang.org/x/oauth2 v0.0.0-20190523182746-aaccbc9213b0/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20200902213428-5d25da1a8d43/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20201109201403-9fd604954f58/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210126194326-f9ce19ea3013/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.0.0-20210427180440-81ed05c6b58c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210628180205-a41e5a781914/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210805134026-6f1e6394065a/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= @@ -1447,11 +1509,9 @@ golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5h golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181026203630-95b1ffbd15a5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181031143558-9b800f95dbbc/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181107165924-66b7b1311ac8/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181122145206-62eef0e2fa9b/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20181128092732-4ed8d59d0b35/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181205085412-a5c9d58dba9a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1471,6 +1531,7 @@ golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191008105621-543471e840be/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191112214154-59a1497f0cea/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191120155948-bd437916bb0e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20191220142924-d4481acd189f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1486,10 +1547,8 @@ golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200413165638-669c56c373c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200501145240-bc7a7d42d5c3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200519105757-fe76b779f299/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1497,6 +1556,7 @@ golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200828194041-157a740278f4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200905004654-be1d3432aa8f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200923182605-d9f96fdee20d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1507,6 +1567,7 @@ golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210119212857-b64e53b001e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210220050731-9a76102bfb43/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210223095934-7937bea0104d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210225134936-a50acf3fe073/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210303074136-134d130e1a04/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210305230114-8fe3ee5dd75b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -1516,6 +1577,7 @@ golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210403161142-5e06dd20ab57/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210503080704-8803ae5d1324/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210514084401-e8d321eab015/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -1543,6 +1605,7 @@ golang.org/x/sys v0.0.0-20220227234510-4e6760a101f9/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220328115105-d36c6a25d886/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220412211240-33da011f77ad/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220422013727-9388b58f7150/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c h1:aFV+BgZ4svzjfabn8ERpuB4JI4N6/rdy1iusx77G3oU= golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= @@ -1551,7 +1614,6 @@ golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuX golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.1-0.20181227161524-e6919f6577db/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -1565,6 +1627,7 @@ golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxb golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20200416051211-89c76fbcd5d1/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20210220033141-f8bda1e9f3ba/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20210723032227-1f47c861a9ac/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/time v0.0.0-20220210224613-90d013bbcef8/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20180525024113-a5b4c53f6e8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= @@ -1648,7 +1711,6 @@ golang.org/x/tools v0.0.0-20200831203904-5a2aa26beb65/go.mod h1:Cj7w3i3Rnn0Xh82u golang.org/x/tools v0.0.0-20200904185747-39188db58858/go.mod h1:Cj7w3i3Rnn0Xh82ur9kSqwfTHTeVxaDqrfMjpcNT6bE= golang.org/x/tools v0.0.0-20201001104356-43ebab892c4c/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= golang.org/x/tools v0.0.0-20201002184944-ecd9fd270d5d/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= -golang.org/x/tools v0.0.0-20201020161133-226fd2f889ca/go.mod h1:z6u4i615ZeAfBE4XtMziQW1fSVJXACjjbWkB/mvPzlU= golang.org/x/tools v0.0.0-20201023174141-c8cfbd0f21e6/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20201110124207-079ba7bd75cd/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= golang.org/x/tools v0.0.0-20201201161351-ac6f37ff4c2a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= @@ -1672,19 +1734,15 @@ golang.org/x/tools v0.1.9-0.20211228192929-ee1ca4ffc4da/go.mod h1:nABZi5QlRsZVlz golang.org/x/tools v0.1.9/go.mod h1:nABZi5QlRsZVlzPpHl034qft6wpY4eDcsTt5AaioBiU= golang.org/x/tools v0.1.10-0.20220218145154-897bd77cd717/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= golang.org/x/tools v0.1.10/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= -golang.org/x/tools v0.1.11-0.20220316014157-77aa08bb151a h1:ofrrl6c6NG5/IOSx/R1cyiQxxjqlur0h/TvbUhkH0II= -golang.org/x/tools v0.1.11-0.20220316014157-77aa08bb151a/go.mod h1:Uh6Zz+xoGYZom868N8YTex3t7RhtHDBrE8Gzo9bV56E= -golang.org/x/xerrors v0.0.0-20190410155217-1f06c39b4373/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/tools v0.1.11 h1:loJ25fNOEhSXfHrpoGj91eCUThwdNX6u24rO1xnNteY= +golang.org/x/tools v0.1.11/go.mod h1:SgwaegtQh8clINPpECJMqnxLv9I09HLqnW3RMqW0CA4= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f h1:GGU+dLjvlC3qDwqYgL6UgRmHXhOOgns0bZu2Ty5mm6U= golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= google.golang.org/api v0.3.1/go.mod h1:6wY9I6uQWHQ8EM57III9mq/AjF+i8G65rmVagqKMtkk= -google.golang.org/api v0.3.2/go.mod h1:6wY9I6uQWHQ8EM57III9mq/AjF+i8G65rmVagqKMtkk= google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= -google.golang.org/api v0.5.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= @@ -1703,13 +1761,16 @@ google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSr google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc= google.golang.org/api v0.35.0/go.mod h1:/XrVsuzM0rZmrsbjJutiuftIzeuTQcEeaYcSk/mQ1dg= google.golang.org/api v0.36.0/go.mod h1:+z5ficQTmoYpPn8LCUNVpK5I7hwkpjbcgqA7I34qYtE= +google.golang.org/api v0.37.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= google.golang.org/api v0.40.0/go.mod h1:fYKFpnQN0DsDSKRVRcQSDQNtqWPfM9i+zNPxepjRCQ8= google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBzRTU= google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= +google.golang.org/api v0.46.0/go.mod h1:ceL4oozhkAiTID8XMmJBsIxID/9wMXJVVFXPg4ylg3I= google.golang.org/api v0.47.0/go.mod h1:Wbvgpq1HddcWVtzsVLyfLp8lDg6AA241LmgIL59tHXo= google.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtukyy4= google.golang.org/api v0.50.0/go.mod h1:4bNT5pAuq5ji4SRZm+5QIkjny9JAyVD/3gaSihNefaw= google.golang.org/api v0.51.0/go.mod h1:t4HdrdoNgyN5cbEfm7Lum0lcLDLiise1F8qDKX00sOU= +google.golang.org/api v0.52.0/go.mod h1:Him/adpjt0sxtkWViy0b6xyKW/SD71CwdJ7HqJo7SrU= google.golang.org/api v0.54.0/go.mod h1:7C4bFFOvVDGXjfDTAsgGwDgAxRDeQ4X8NvUedIt6z3k= google.golang.org/api v0.55.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= google.golang.org/api v0.56.0/go.mod h1:38yMfeP1kfjsl8isn0tliTjIb1rJXcQi4UXlbqivdVE= @@ -1721,11 +1782,12 @@ google.golang.org/api v0.67.0/go.mod h1:ShHKP8E60yPsKNw/w8w+VYaj9H6buA5UqDp8dhbQ google.golang.org/api v0.70.0/go.mod h1:Bs4ZM2HGifEvXwd50TtW70ovgJffJYw2oRCOFU/SkfA= google.golang.org/api v0.71.0/go.mod h1:4PyU6e6JogV1f9eA4voyrTY2batOLdgZ5qZ5HOCc4j8= google.golang.org/api v0.74.0/go.mod h1:ZpfMZOVRMywNyvJFeqL9HRWBgAuRfSjJFpe9QtRRyDs= +google.golang.org/api v0.75.0/go.mod h1:pU9QmyHLnzlpar1Mjt4IbapUCy8J+6HD6GeELN69ljA= +google.golang.org/api v0.76.0/go.mod h1:pU9QmyHLnzlpar1Mjt4IbapUCy8J+6HD6GeELN69ljA= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= -google.golang.org/appengine v1.6.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= google.golang.org/appengine v1.6.2/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= @@ -1736,12 +1798,9 @@ google.golang.org/genproto v0.0.0-20170818010345-ee236bd376b0/go.mod h1:JiN7NxoA google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20181107211654-5fc9ac540362/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190404172233-64821d5d2107/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190508193815-b515fa19cec8/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= -google.golang.org/genproto v0.0.0-20190522204451-c2c4e71fbf69/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= google.golang.org/genproto v0.0.0-20190530194941-fb225487d101/go.mod h1:z3L6/3dTEVtUr6QSP8miRzeRqwQOioJ9I66odjN4I7s= google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= @@ -1780,23 +1839,30 @@ google.golang.org/genproto v0.0.0-20201201144952-b05cb90ed32e/go.mod h1:FWY/as6D google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210126160654-44e461bb6506/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210222152913-aa3ee6e6a81c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210303154014-9728d6b83eeb/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210310155132-4ce2db91004e/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210319143718-93e7006c17a6/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20210329143202-679c6ae281ee/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaEmUacj36I+k7YKbEc5CXzPIeORRgDAUOu28A= +google.golang.org/genproto v0.0.0-20210429181445-86c259c2b4ab/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= google.golang.org/genproto v0.0.0-20210513213006-bf773b8c8384/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= +google.golang.org/genproto v0.0.0-20210517163617-5e0236093d7a/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= google.golang.org/genproto v0.0.0-20210604141403-392c879c8b08/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= google.golang.org/genproto v0.0.0-20210608205507-b6d2f5bf0d7d/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= google.golang.org/genproto v0.0.0-20210624195500-8bfb893ecb84/go.mod h1:SzzZ/N+nwJDaO1kznhnlzqS8ocJICar6hYhVyhi++24= google.golang.org/genproto v0.0.0-20210713002101-d411969a0d9a/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= google.golang.org/genproto v0.0.0-20210716133855-ce7ef5c701ea/go.mod h1:AxrInvYm1dci+enl5hChSFPOmmUF1+uAa/UsgNRWd7k= +google.golang.org/genproto v0.0.0-20210721163202-f1cecdd8b78a/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= +google.golang.org/genproto v0.0.0-20210722135532-667f2b7c528f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= google.golang.org/genproto v0.0.0-20210728212813-7823e685a01f/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= google.golang.org/genproto v0.0.0-20210805201207-89edb61ffb67/go.mod h1:ob2IJxKrgPT52GcgX759i1sleT07tiKowYBGbczaW48= google.golang.org/genproto v0.0.0-20210813162853-db860fec028c/go.mod h1:cFeNkxwySK631ADgubI+/XFU/xp8FD5KIVV4rj8UC5w= google.golang.org/genproto v0.0.0-20210821163610-241b8fcbd6c8/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= +google.golang.org/genproto v0.0.0-20210825212027-de86158e7fda/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= google.golang.org/genproto v0.0.0-20210828152312-66f60bf46e71/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= google.golang.org/genproto v0.0.0-20210831024726-fe130286e0e2/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= google.golang.org/genproto v0.0.0-20210903162649-d08c68adba83/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= @@ -1816,11 +1882,15 @@ google.golang.org/genproto v0.0.0-20220222213610-43724f9ea8cf/go.mod h1:kGP+zUP2 google.golang.org/genproto v0.0.0-20220304144024-325a89244dc8/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI= google.golang.org/genproto v0.0.0-20220310185008-1973136f34c6/go.mod h1:kGP+zUP2Ddo0ayMi4YuN7C3WZyJvGLZRh8Z5wnAqvEI= google.golang.org/genproto v0.0.0-20220324131243-acbaeb5b85eb/go.mod h1:hAL49I2IFola2sVEjAn7MEwsja0xp51I0tlGAf9hz4E= +google.golang.org/genproto v0.0.0-20220405205423-9d709892a2bf/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= google.golang.org/genproto v0.0.0-20220407144326-9054f6ed7bac/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= +google.golang.org/genproto v0.0.0-20220413183235-5e96e2839df9/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= +google.golang.org/genproto v0.0.0-20220414192740-2d67ff6cf2b4/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= +google.golang.org/genproto v0.0.0-20220421151946-72621c1f0bd3/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= +google.golang.org/genproto v0.0.0-20220426171045-31bebdecfb46/go.mod h1:8w6bsBMX6yCPbAVTeqQHvzxW0EIFigd5lZyahWgyfDo= google.golang.org/grpc v1.8.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= -google.golang.org/grpc v1.19.1/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.0/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= @@ -1854,6 +1924,7 @@ google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9K google.golang.org/grpc v1.40.1/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= google.golang.org/grpc v1.44.0/go.mod h1:k+4IHHFw41K8+bbowsex27ge2rCb65oeWqe4jJ590SU= google.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ= +google.golang.org/grpc v1.46.0/go.mod h1:vN9eftEi1UMyUsIF80+uQXhHjbXYbm0uXoFCACuMGWk= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= @@ -1873,7 +1944,6 @@ google.golang.org/protobuf v1.28.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqw gopkg.in/alecthomas/kingpin.v2 v2.2.6 h1:jMFz6MfLP0/4fUyZle81rXUoxOBFi19VUFKVDOQfozc= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -1887,10 +1957,10 @@ gopkg.in/gcfg.v1 v1.2.3/go.mod h1:yesOnuUOFQAhST5vPY4nbZsb/huCgGGXlipJsBn0b3o= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/ini.v1 v1.51.0/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= -gopkg.in/ini.v1 v1.51.1/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/ini.v1 v1.66.4 h1:SsAcf+mM7mRZo2nJNGt8mZCjG8ZRaNGMURJw7BsIST4= gopkg.in/ini.v1 v1.66.4/go.mod h1:pNLf8WUiyNEtQjuu5G5vTm06TEv9tsIgeAvK8hOrP4k= gopkg.in/natefinch/lumberjack.v2 v2.0.0/go.mod h1:l0ndWWf7gzL7RNwBG7wST/UCcT4T24xpD6X8LsfU/+k= +gopkg.in/neurosnap/sentences.v1 v1.0.6/go.mod h1:YlK+SN+fLQZj+kY3r8DkGDhDr91+S3JmTb5LSxFRQo0= gopkg.in/resty.v1 v1.12.0/go.mod h1:mDo4pnntr5jdWRML875a/NmxYqAlA73dVijT2AXvQQo= gopkg.in/square/go-jose.v2 v2.2.2/go.mod h1:M9dMgbHiYLoDGQrXy7OpJDJWiKiU//h+vD76mk0e1AI= gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7 h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ= @@ -1911,6 +1981,7 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gotest.tools/v3 v3.0.2/go.mod h1:3SzNCllyD9/Y+b5r9JIKQ474KzkZyqLqEfYqMsX94Bk= @@ -1937,9 +2008,12 @@ k8s.io/code-generator v0.24.0/go.mod h1:dpVhs00hTuTdTY6jvVxvTFCk6gSMrtfRydbhZwHI k8s.io/code-generator v0.24.2 h1:EGeRWzJrpwi6T6CvoNl0spM6fnAnOdCr0rz7H4NU1rk= k8s.io/code-generator v0.24.2/go.mod h1:dpVhs00hTuTdTY6jvVxvTFCk6gSMrtfRydbhZwHI15w= k8s.io/component-base v0.24.0/go.mod h1:Dgazgon0i7KYUsS8krG8muGiMVtUZxG037l1MKyXgrA= +k8s.io/gengo v0.0.0-20201203183100-97869a43a9d9/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= k8s.io/gengo v0.0.0-20210813121822-485abfe95c7c/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= k8s.io/gengo v0.0.0-20211129171323-c02415ce4185 h1:TT1WdmqqXareKxZ/oNXEUSwKlLiHzPMyB0t8BaFeBYI= k8s.io/gengo v0.0.0-20211129171323-c02415ce4185/go.mod h1:FiNAH4ZV3gBg2Kwh89tzAEV2be7d5xI0vBa/VySYy3E= +k8s.io/klog v0.2.0 h1:0ElL0OHzF3N+OhoJTL0uca20SxtYt4X4+bzHeqrB83c= +k8s.io/klog v0.2.0/go.mod h1:Gq+BEi5rUBO/HRz0bTSXDUcqjScdoY3a9IHpCEIOOfk= k8s.io/klog/v2 v2.0.0/go.mod h1:PBfzABfn139FHAV07az/IF9Wp1bkk3vpT2XSJ76fSDE= k8s.io/klog/v2 v2.2.0/go.mod h1:Od+F08eJP+W3HUb4pSrPpgp9DGU4GzlpG/TmITuYh/Y= k8s.io/klog/v2 v2.60.1 h1:VW25q3bZx9uE3vvdL6M8ezOX79vA2Aq1nEWLqNQclHc= @@ -1956,8 +2030,8 @@ mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b h1:DxJ5nJdkhDlLok9K6qO+5290kphD mvdan.cc/lint v0.0.0-20170908181259-adc824a0674b/go.mod h1:2odslEg/xrtNQqCYg2/jCoyKnw3vv5biOc3JnIcYfL4= mvdan.cc/unparam v0.0.0-20211214103731-d0ef000c54e5 h1:Jh3LAeMt1eGpxomyu3jVkmVZWW2MxZ1qIIV2TZ/nRio= mvdan.cc/unparam v0.0.0-20211214103731-d0ef000c54e5/go.mod h1:b8RRCBm0eeiWR8cfN88xeq2G5SG3VKGO+5UPWi5FSOY= -pack.ag/amqp v0.8.0/go.mod h1:4/cbmt4EJXSKlG6LCfWHoqmN0uFdy5i/+YFz+fTfhV4= -pack.ag/amqp v0.11.0/go.mod h1:4/cbmt4EJXSKlG6LCfWHoqmN0uFdy5i/+YFz+fTfhV4= +nhooyr.io/websocket v1.8.6/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0= +nhooyr.io/websocket v1.8.7/go.mod h1:B70DZP8IakI65RVQ51MsWP/8jndNma26DVA/nFSCgW0= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= diff --git a/scripts/tools.go b/scripts/tools.go index 340e24265..4ede2530d 100644 --- a/scripts/tools.go +++ b/scripts/tools.go @@ -20,6 +20,7 @@ package tools import ( + _ "github.com/ahmetb/gen-crd-api-reference-docs" _ "github.com/brancz/gojsontoyaml" _ "github.com/bwplotka/mdox" _ "github.com/golangci/golangci-lint/cmd/golangci-lint"