diff --git a/.github/tools b/.github/tools index 8ffc52124..24e7b9b53 100644 --- a/.github/tools +++ b/.github/tools @@ -1,7 +1,7 @@ # DO NOT EDIT! Autogenerated by make tools golangci-lint v1.45.2 -controller-gen v0.7.0 +controller-gen v0.9.1 kustomize v3.9.4 oc v4.8.11 operator-sdk v1.13.0 diff --git a/Makefile.tools b/Makefile.tools index 501488c51..09a05d7b5 100644 --- a/Makefile.tools +++ b/Makefile.tools @@ -8,7 +8,7 @@ TOOLS_DIR = $(shell pwd)/tmp/bin # see: .github/tools-cache/action.yaml CONTROLLER_GEN=$(TOOLS_DIR)/controller-gen -CONTROLLER_GEN_VERSION= v0.7.0 +CONTROLLER_GEN_VERSION= v0.9.1 KUSTOMIZE=$(TOOLS_DIR)/kustomize KUSTOMIZE_VERSION= v3.9.4 diff --git a/deploy/crds/common/monitoring.rhobs_monitoringstacks.yaml b/deploy/crds/common/monitoring.rhobs_monitoringstacks.yaml index a66087de0..3dfeb4027 100644 --- a/deploy/crds/common/monitoring.rhobs_monitoringstacks.yaml +++ b/deploy/crds/common/monitoring.rhobs_monitoringstacks.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: monitoringstacks.monitoring.rhobs spec: @@ -90,6 +89,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty volume is desired. @@ -105,10 +105,10 @@ spec: 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 + DataSourceRef allows any non-core object, as well as PersistentVolumeClaim objects. * While DataSource ignores disallowed values (dropping - them), DataSourceRef preserves all values, and generates - an error if a disallowed value is specified. (Alpha) Using + them), DataSourceRef preserves all values, and generates + an error if a disallowed value is specified. (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.' properties: @@ -128,6 +128,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure feature @@ -205,6 +206,7 @@ spec: only "value". The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -229,6 +231,9 @@ spec: description: Authorization section for remote write properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -261,6 +266,9 @@ spec: description: BasicAuth for the URL. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -281,6 +289,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -344,6 +355,9 @@ spec: OAuth2 client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -364,6 +378,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -386,6 +403,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: @@ -484,6 +504,9 @@ spec: Verification 4 properties: accessKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: AccessKey is the AWS API key. If blank, the environment variable `AWS_ACCESS_KEY_ID` is used. properties: @@ -516,6 +539,9 @@ spec: authenticate. type: string secretKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: SecretKey is the AWS API secret. If blank, the environment variable `AWS_SECRET_ACCESS_KEY` is used. @@ -545,6 +571,9 @@ spec: the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -565,6 +594,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -595,6 +627,9 @@ spec: for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -615,6 +650,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -648,6 +686,9 @@ spec: container for the targets. type: string keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -788,6 +829,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic resources: default: limits: @@ -840,9 +882,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/deploy/crds/common/monitoring.rhobs_thanosqueriers.yaml b/deploy/crds/common/monitoring.rhobs_thanosqueriers.yaml index be8baedff..2d41c2ddf 100644 --- a/deploy/crds/common/monitoring.rhobs_thanosqueriers.yaml +++ b/deploy/crds/common/monitoring.rhobs_thanosqueriers.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: thanosqueriers.monitoring.rhobs spec: @@ -102,6 +101,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic required: - selector type: object @@ -115,9 +115,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/deploy/crds/kubernetes/monitoring.coreos.com_alertmanagerconfigs.yaml b/deploy/crds/kubernetes/monitoring.coreos.com_alertmanagerconfigs.yaml index 21a4e6968..3e54a6935 100644 --- a/deploy/crds/kubernetes/monitoring.coreos.com_alertmanagerconfigs.yaml +++ b/deploy/crds/kubernetes/monitoring.coreos.com_alertmanagerconfigs.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: alertmanagerconfigs.monitoring.coreos.com spec: @@ -15,6 +14,8 @@ spec: kind: AlertmanagerConfig listKind: AlertmanagerConfigList plural: alertmanagerconfigs + shortNames: + - amcfg singular: alertmanagerconfig scope: Namespaced versions: @@ -219,6 +220,9 @@ spec: description: The identity to use for authentication. type: string authPassword: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -241,6 +245,9 @@ spec: - key type: object authSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -315,6 +322,9 @@ spec: for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -335,6 +345,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -361,6 +374,9 @@ spec: for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -381,6 +397,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -406,6 +425,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -446,7 +468,14 @@ spec: description: OpsGenieConfig configures notifications via OpsGenie. See https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config properties: + actions: + description: Comma separated list of actions that will + be available for the alert. + type: string apiKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -492,6 +521,10 @@ spec: - value type: object type: array + entity: + description: Optional field that can be used to specify + which domain alert is related to. + type: string httpConfig: description: HTTP client configuration. properties: @@ -502,6 +535,9 @@ spec: v0.22+. properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -533,6 +569,9 @@ spec: BasicAuth takes precedence. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -554,6 +593,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -576,6 +618,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -612,6 +657,9 @@ spec: the OAuth2 client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -632,6 +680,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -655,6 +706,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: @@ -707,6 +761,9 @@ spec: use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -727,6 +784,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -754,6 +814,9 @@ spec: file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -774,6 +837,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -800,6 +866,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -851,6 +920,12 @@ spec: type: string type: description: Type of responder. + enum: + - team + - teams + - user + - escalation + - schedule minLength: 1 type: string username: @@ -870,6 +945,12 @@ spec: description: Comma separated list of tags attached to the notifications. type: string + updateAlerts: + description: 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. + type: boolean type: object type: array pagerdutyConfigs: @@ -925,6 +1006,9 @@ spec: v0.22+. properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -956,6 +1040,9 @@ spec: BasicAuth takes precedence. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -977,6 +1064,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -999,6 +1089,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -1035,6 +1128,9 @@ spec: the OAuth2 client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1055,6 +1151,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -1078,6 +1177,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: @@ -1130,6 +1232,9 @@ spec: use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1150,6 +1255,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -1177,6 +1285,9 @@ spec: file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1197,6 +1308,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -1223,6 +1337,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -1287,6 +1404,9 @@ spec: type: object type: array routingKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -1313,6 +1433,9 @@ spec: description: Whether or not to notify about resolved alerts. type: boolean serviceKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the PagerDuty service key (when using integration type "Prometheus"). Either this field or `routingKey` needs to be defined. @@ -1370,6 +1493,9 @@ spec: v0.22+. properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -1401,6 +1527,9 @@ spec: BasicAuth takes precedence. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -1422,6 +1551,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -1444,6 +1576,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -1480,6 +1615,9 @@ spec: the OAuth2 client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1500,6 +1638,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -1523,6 +1664,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: @@ -1575,6 +1719,9 @@ spec: use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1595,6 +1742,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -1622,6 +1772,9 @@ spec: file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1642,6 +1795,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -1668,6 +1824,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -1718,6 +1877,9 @@ spec: description: Notification title. type: string token: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -1748,6 +1910,9 @@ spec: just the URL is shown type: string userKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -1825,6 +1990,9 @@ spec: type: object type: array apiURL: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -1893,6 +2061,9 @@ spec: v0.22+. properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -1924,6 +2095,9 @@ spec: BasicAuth takes precedence. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -1945,6 +2119,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -1967,6 +2144,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -2003,6 +2183,9 @@ spec: the OAuth2 client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -2023,6 +2206,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -2046,6 +2232,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: @@ -2098,6 +2287,9 @@ spec: use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -2118,6 +2310,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -2145,6 +2340,9 @@ spec: file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -2165,6 +2363,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -2191,6 +2392,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -2274,6 +2478,9 @@ spec: v0.22+. properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -2305,6 +2512,9 @@ spec: BasicAuth takes precedence. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -2326,6 +2536,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -2348,6 +2561,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -2384,6 +2600,9 @@ spec: the OAuth2 client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -2404,6 +2623,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -2427,6 +2649,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: @@ -2479,6 +2704,9 @@ spec: use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -2499,6 +2727,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -2526,6 +2757,9 @@ spec: file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -2546,6 +2780,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -2572,6 +2809,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -2614,6 +2854,9 @@ spec: signing process to sign requests. properties: accessKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: AccessKey is the AWS API key. If blank, the environment variable `AWS_ACCESS_KEY_ID` is used. @@ -2648,6 +2891,9 @@ spec: to authenticate. type: string secretKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: SecretKey is the AWS API secret. If blank, the environment variable `AWS_SECRET_ACCESS_KEY` is used. @@ -2687,17 +2933,23 @@ spec: type: string type: object type: array - victoropsConfigs: - description: List of VictorOps configurations. + telegramConfigs: + description: List of Telegram configurations. items: - description: VictorOpsConfig configures notifications via - VictorOps. See https://prometheus.io/docs/alerting/latest/configuration/#victorops_config + description: TelegramConfig configures notifications via Telegram. + See https://prometheus.io/docs/alerting/latest/configuration/#telegram_config properties: - apiKey: - description: 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. + apiURL: + description: The Telegram API URL i.e. https://api.telegram.org. + If not specified, default API URL will be used. + type: string + botToken: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Telegram bot token The secret needs to be + in the same namespace as the AlertmanagerConfig object + and accessible by the Prometheus Operator. properties: key: description: The key of the secret to select from. Must @@ -2715,31 +2967,15 @@ spec: required: - key type: object - apiUrl: - description: The VictorOps API URL. - type: string - customFields: - description: Additional custom fields for notification. - items: - description: KeyValue defines a (key, value) tuple. - properties: - key: - description: Key of the tuple. - minLength: 1 - type: string - value: - description: Value of the tuple. - type: string - required: - - key - - value - type: object - type: array - entityDisplayName: - description: Contains summary of the alerted problem. - type: string + chatID: + description: The Telegram chat ID. + format: int64 + type: integer + disableNotifications: + description: Disable telegram notifications + type: boolean httpConfig: - description: The HTTP client's configuration. + description: HTTP client configuration. properties: authorization: description: Authorization header configuration for @@ -2748,6 +2984,9 @@ spec: v0.22+. properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -2779,6 +3018,9 @@ spec: BasicAuth takes precedence. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -2800,6 +3042,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -2822,6 +3067,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -2858,6 +3106,9 @@ spec: the OAuth2 client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -2878,6 +3129,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -2901,6 +3155,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: @@ -2953,6 +3210,9 @@ spec: use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -2973,6 +3233,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -3000,6 +3263,9 @@ spec: file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -3020,6 +3286,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -3046,6 +3315,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -3072,34 +3344,77 @@ spec: type: string type: object type: object - messageType: - description: Describes the behavior of the alert (CRITICAL, - WARNING, INFO). - type: string - monitoringTool: - description: The monitoring tool the state message is - from. + message: + description: Message template type: string - routingKey: - description: A key used to map the alert to a team. + parseMode: + description: Parse mode for telegram message + enum: + - MarkdownV2 + - Markdown + - HTML type: string sendResolved: - description: Whether or not to notify about resolved alerts. + description: Whether to notify about resolved alerts. type: boolean - stateMessage: - description: Contains long explanation of the alerted - problem. - type: string type: object type: array - webhookConfigs: - description: List of webhook configurations. + victoropsConfigs: + description: List of VictorOps configurations. items: - description: WebhookConfig configures notifications via a - generic receiver supporting the webhook payload. See https://prometheus.io/docs/alerting/latest/configuration/#webhook_config + description: VictorOpsConfig configures notifications via + VictorOps. See https://prometheus.io/docs/alerting/latest/configuration/#victorops_config properties: + apiKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + apiUrl: + description: The VictorOps API URL. + type: string + customFields: + description: Additional custom fields for notification. + items: + description: KeyValue defines a (key, value) tuple. + properties: + key: + description: Key of the tuple. + minLength: 1 + type: string + value: + description: Value of the tuple. + type: string + required: + - key + - value + type: object + type: array + entityDisplayName: + description: Contains summary of the alerted problem. + type: string httpConfig: - description: HTTP client configuration. + description: The HTTP client's configuration. properties: authorization: description: Authorization header configuration for @@ -3108,6 +3423,9 @@ spec: v0.22+. properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -3139,6 +3457,9 @@ spec: BasicAuth takes precedence. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -3160,6 +3481,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -3182,6 +3506,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -3218,6 +3545,9 @@ spec: the OAuth2 client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -3238,6 +3568,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -3261,6 +3594,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: @@ -3313,6 +3649,9 @@ spec: use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -3333,6 +3672,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -3360,6 +3702,9 @@ spec: file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -3380,6 +3725,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -3406,6 +3754,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -3432,82 +3783,32 @@ spec: type: string type: object type: object - maxAlerts: - description: Maximum number of alerts to be sent per webhook - message. When 0, all alerts are included. - format: int32 - minimum: 0 - type: integer + messageType: + description: Describes the behavior of the alert (CRITICAL, + WARNING, INFO). + type: string + monitoringTool: + description: The monitoring tool the state message is + from. + type: string + routingKey: + description: A key used to map the alert to a team. + type: string sendResolved: description: Whether or not to notify about resolved alerts. type: boolean - url: - description: The URL to send HTTP POST requests to. `urlSecret` - takes precedence over `url`. One of `urlSecret` and - `url` should be defined. + stateMessage: + description: Contains long explanation of the alerted + problem. type: string - urlSecret: - description: 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. - properties: - key: - description: The key of the secret to select from. Must - be a valid secret key. - type: string - name: - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - TODO: Add other useful fields. apiVersion, kind, - uid?' - type: string - optional: - description: Specify whether the Secret or its key - must be defined - type: boolean - required: - - key - type: object type: object type: array - wechatConfigs: - description: List of WeChat configurations. + webhookConfigs: + description: List of webhook configurations. items: - description: WeChatConfig configures notifications via WeChat. - See https://prometheus.io/docs/alerting/latest/configuration/#wechat_config + description: WebhookConfig configures notifications via a + generic receiver supporting the webhook payload. See https://prometheus.io/docs/alerting/latest/configuration/#webhook_config properties: - agentID: - type: string - apiSecret: - description: 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. - properties: - key: - description: The key of the secret to select from. Must - be a valid secret key. - type: string - name: - description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - TODO: Add other useful fields. apiVersion, kind, - uid?' - type: string - optional: - description: Specify whether the Secret or its key - must be defined - type: boolean - required: - - key - type: object - apiURL: - description: The WeChat API URL. - type: string - corpID: - description: The corp id for authentication. - type: string httpConfig: description: HTTP client configuration. properties: @@ -3518,6 +3819,9 @@ spec: v0.22+. properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -3549,6 +3853,9 @@ spec: BasicAuth takes precedence. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -3570,6 +3877,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -3592,6 +3902,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -3628,6 +3941,9 @@ spec: the OAuth2 client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -3648,6 +3964,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -3671,6 +3990,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: @@ -3723,6 +4045,9 @@ spec: use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -3743,6 +4068,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -3770,6 +4098,9 @@ spec: file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -3790,6 +4121,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -3816,6 +4150,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -3842,34 +4179,5004 @@ spec: type: string type: object type: object - message: - description: API request data as defined by the WeChat - API. - type: string - messageType: - type: string + maxAlerts: + description: Maximum number of alerts to be sent per webhook + message. When 0, all alerts are included. + format: int32 + minimum: 0 + type: integer sendResolved: description: Whether or not to notify about resolved alerts. type: boolean - toParty: - type: string - toTag: - type: string - toUser: + url: + description: The URL to send HTTP POST requests to. `urlSecret` + takes precedence over `url`. One of `urlSecret` and + `url` should be defined. type: string + urlSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object type: object type: array - required: - - name - type: object - type: array - route: - description: 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. - properties: - continue: - description: Boolean indicating whether an alert should continue + wechatConfigs: + description: List of WeChat configurations. + items: + description: WeChatConfig configures notifications via WeChat. + See https://prometheus.io/docs/alerting/latest/configuration/#wechat_config + properties: + agentID: + type: string + apiSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + apiURL: + description: The WeChat API URL. + type: string + corpID: + description: The corp id for authentication. + type: string + httpConfig: + description: HTTP client configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + message: + description: API request data as defined by the WeChat + API. + type: string + messageType: + type: string + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + toParty: + type: string + toTag: + type: string + toUser: + type: string + type: object + type: array + required: + - name + type: object + type: array + route: + description: 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. + properties: + continue: + description: 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. + type: boolean + groupBy: + description: 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. + items: + type: string + type: array + groupInterval: + description: '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"' + type: string + groupWait: + description: '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"' + type: string + matchers: + description: '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: ` matcher.' + items: + description: Matcher defines how to match on alert's labels. + properties: + matchType: + description: Match operation available with AlertManager + >= v0.22.0 and takes precedence over Regex (deprecated) + if non-empty. + enum: + - '!=' + - = + - =~ + - '!~' + type: string + name: + description: Label to match. + minLength: 1 + type: string + regex: + description: Whether to match on equality (false) or regular-expression + (true). Deprecated as of AlertManager >= v0.22.0 where + a user should use MatchType instead. + type: boolean + value: + description: Label value to match. + type: string + required: + - name + type: object + type: array + muteTimeIntervals: + description: '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,' + items: + type: string + type: array + receiver: + description: Name of the receiver for this route. If not empty, + it should be listed in the `receivers` field. + type: string + repeatInterval: + description: '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"' + type: string + routes: + description: Child routes. + items: + x-kubernetes-preserve-unknown-fields: true + type: array + type: object + type: object + required: + - spec + type: object + served: true + storage: true + - name: v1beta1 + schema: + openAPIV3Schema: + description: AlertmanagerConfig defines a namespaced AlertmanagerConfig to + be aggregated across multiple namespaces configuring one Alertmanager cluster. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: 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. + properties: + inhibitRules: + description: List of inhibition rules. The rules will only apply to + alerts matching the resource’s namespace. + items: + description: 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 + properties: + equal: + description: Labels that must have an equal value in the source + and target alert for the inhibition to take effect. + items: + type: string + type: array + sourceMatch: + description: 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. + items: + description: Matcher defines how to match on alert's labels. + properties: + matchType: + description: Match operator, one of `=` (equal to), `!=` + (not equal to), `=~` (regex match) or `!~` (not regex + match). Negative operators (`!=` and `!~`) require Alertmanager + >= v0.22.0. + enum: + - '!=' + - = + - =~ + - '!~' + type: string + name: + description: Label to match. + minLength: 1 + type: string + value: + description: Label value to match. + type: string + required: + - name + type: object + type: array + targetMatch: + description: Matchers that have to be fulfilled in the alerts + to be muted. The operator enforces that the alert matches + the resource’s namespace. + items: + description: Matcher defines how to match on alert's labels. + properties: + matchType: + description: Match operator, one of `=` (equal to), `!=` + (not equal to), `=~` (regex match) or `!~` (not regex + match). Negative operators (`!=` and `!~`) require Alertmanager + >= v0.22.0. + enum: + - '!=' + - = + - =~ + - '!~' + type: string + name: + description: Label to match. + minLength: 1 + type: string + value: + description: Label value to match. + type: string + required: + - name + type: object + type: array + type: object + type: array + receivers: + description: List of receivers. + items: + description: Receiver defines one or more notification integrations. + properties: + emailConfigs: + description: List of Email configurations. + items: + description: EmailConfig configures notifications via Email. + properties: + authIdentity: + description: The identity to use for authentication. + type: string + authPassword: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + authSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + authUsername: + description: The username to use for authentication. + type: string + from: + description: The sender address. + type: string + headers: + description: Further headers email header key/value pairs. + Overrides any headers previously set by the notification + implementation. + items: + description: KeyValue defines a (key, value) tuple. + properties: + key: + description: Key of the tuple. + minLength: 1 + type: string + value: + description: Value of the tuple. + type: string + required: + - key + - value + type: object + type: array + hello: + description: The hostname to identify to the SMTP server. + type: string + html: + description: The HTML body of the email notification. + type: string + requireTLS: + description: The SMTP TLS requirement. Note that Go does + not support unencrypted connections to remote SMTP endpoints. + type: boolean + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + smarthost: + description: The SMTP host and port through which emails + are sent. E.g. example.com:25 + type: string + text: + description: The text body of the email notification. + type: string + tlsConfig: + description: TLS configuration + properties: + ca: + description: Struct containing the CA cert to use + for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to use + for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use for + the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert file + for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to use + for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use for + the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key file + for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the targets. + type: string + type: object + to: + description: The email address to send notifications to. + type: string + type: object + type: array + name: + description: Name of the receiver. Must be unique across all + items from the list. + minLength: 1 + type: string + opsgenieConfigs: + description: List of OpsGenie configurations. + items: + description: OpsGenieConfig configures notifications via OpsGenie. + See https://prometheus.io/docs/alerting/latest/configuration/#opsgenie_config + properties: + actions: + description: Comma separated list of actions that will + be available for the alert. + type: string + apiKey: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + apiURL: + description: The URL to send OpsGenie API requests to. + type: string + description: + description: Description of the incident. + type: string + details: + description: A set of arbitrary key/value pairs that provide + further detail about the incident. + items: + description: KeyValue defines a (key, value) tuple. + properties: + key: + description: Key of the tuple. + minLength: 1 + type: string + value: + description: Value of the tuple. + type: string + required: + - key + - value + type: object + type: array + entity: + description: Optional field that can be used to specify + which domain alert is related to. + type: string + httpConfig: + description: HTTP client configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + message: + description: Alert text limited to 130 characters. + type: string + note: + description: Additional alert note. + type: string + priority: + description: Priority level of alert. Possible values + are P1, P2, P3, P4, and P5. + type: string + responders: + description: List of responders responsible for notifications. + items: + description: OpsGenieConfigResponder defines a responder + to an incident. One of `id`, `name` or `username` + has to be defined. + properties: + id: + description: ID of the responder. + type: string + name: + description: Name of the responder. + type: string + type: + description: Type of responder. + enum: + - team + - teams + - user + - escalation + - schedule + minLength: 1 + type: string + username: + description: Username of the responder. + type: string + required: + - type + type: object + type: array + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + source: + description: Backlink to the sender of the notification. + type: string + tags: + description: Comma separated list of tags attached to + the notifications. + type: string + type: object + type: array + pagerdutyConfigs: + description: List of PagerDuty configurations. + items: + description: PagerDutyConfig configures notifications via + PagerDuty. See https://prometheus.io/docs/alerting/latest/configuration/#pagerduty_config + properties: + class: + description: The class/type of the event. + type: string + client: + description: Client identification. + type: string + clientURL: + description: Backlink to the sender of notification. + type: string + component: + description: The part or component of the affected system + that is broken. + type: string + description: + description: Description of the incident. + type: string + details: + description: Arbitrary key/value pairs that provide further + detail about the incident. + items: + description: KeyValue defines a (key, value) tuple. + properties: + key: + description: Key of the tuple. + minLength: 1 + type: string + value: + description: Value of the tuple. + type: string + required: + - key + - value + type: object + type: array + group: + description: A cluster or grouping of sources. + type: string + httpConfig: + description: HTTP client configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + pagerDutyImageConfigs: + description: A list of image details to attach that provide + further detail about an incident. + items: + description: PagerDutyImageConfig attaches images to + an incident + properties: + alt: + description: Alt is the optional alternative text + for the image. + type: string + href: + description: Optional URL; makes the image a clickable + link. + type: string + src: + description: Src of the image being attached to + the incident + type: string + type: object + type: array + pagerDutyLinkConfigs: + description: A list of link details to attach that provide + further detail about an incident. + items: + description: PagerDutyLinkConfig attaches text links + to an incident + properties: + alt: + description: Text that describes the purpose of + the link, and can be used as the link's text. + type: string + href: + description: Href is the URL of the link to be attached + type: string + type: object + type: array + routingKey: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + serviceKey: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + severity: + description: Severity of the incident. + type: string + url: + description: The URL to send requests to. + type: string + type: object + type: array + pushoverConfigs: + description: List of Pushover configurations. + items: + description: PushoverConfig configures notifications via Pushover. + See https://prometheus.io/docs/alerting/latest/configuration/#pushover_config + properties: + expire: + description: How long your notification will continue + to be retried for, unless the user acknowledges the + notification. + pattern: ^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$ + type: string + html: + description: Whether notification message is HTML or plain + text. + type: boolean + httpConfig: + description: HTTP client configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + message: + description: Notification message. + type: string + priority: + description: Priority, see https://pushover.net/api#priority + type: string + retry: + description: How often the Pushover servers will send + the same notification to the user. Must be at least + 30 seconds. + pattern: ^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$ + type: string + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + sound: + description: The name of one of the sounds supported by + device clients to override the user's default sound + choice + type: string + title: + description: Notification title. + type: string + token: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + url: + description: A supplementary URL shown alongside the message. + type: string + urlTitle: + description: A title for supplementary URL, otherwise + just the URL is shown + type: string + userKey: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + type: object + type: array + slackConfigs: + description: List of Slack configurations. + items: + description: SlackConfig configures notifications via Slack. + See https://prometheus.io/docs/alerting/latest/configuration/#slack_config + properties: + actions: + description: A list of Slack actions that are sent with + each notification. + items: + description: 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. + properties: + confirm: + description: 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. + properties: + dismissText: + type: string + okText: + type: string + text: + minLength: 1 + type: string + title: + type: string + required: + - text + type: object + name: + type: string + style: + type: string + text: + minLength: 1 + type: string + type: + minLength: 1 + type: string + url: + type: string + value: + type: string + required: + - text + - type + type: object + type: array + apiURL: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + callbackId: + type: string + channel: + description: The channel or user to send notifications + to. + type: string + color: + type: string + fallback: + type: string + fields: + description: A list of Slack fields that are sent with + each notification. + items: + description: 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. + properties: + short: + type: boolean + title: + minLength: 1 + type: string + value: + minLength: 1 + type: string + required: + - title + - value + type: object + type: array + footer: + type: string + httpConfig: + description: HTTP client configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + iconEmoji: + type: string + iconURL: + type: string + imageURL: + type: string + linkNames: + type: boolean + mrkdwnIn: + items: + type: string + type: array + pretext: + type: string + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + shortFields: + type: boolean + text: + type: string + thumbURL: + type: string + title: + type: string + titleLink: + type: string + username: + type: string + type: object + type: array + snsConfigs: + description: List of SNS configurations + items: + description: SNSConfig configures notifications via AWS SNS. + See https://prometheus.io/docs/alerting/latest/configuration/#sns_configs + properties: + apiURL: + description: 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. + type: string + attributes: + additionalProperties: + type: string + description: SNS message attributes. + type: object + httpConfig: + description: HTTP client configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + message: + description: The message content of the SNS notification. + type: string + phoneNumber: + description: 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. + type: string + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + sigv4: + description: Configures AWS's Signature Verification 4 + signing process to sign requests. + properties: + accessKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: AccessKey is the AWS API key. If blank, + the environment variable `AWS_ACCESS_KEY_ID` is + used. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + profile: + description: Profile is the named AWS profile used + to authenticate. + type: string + region: + description: Region is the AWS region. If blank, the + region from the default credentials chain used. + type: string + roleArn: + description: RoleArn is the named AWS profile used + to authenticate. + type: string + secretKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: SecretKey is the AWS API secret. If blank, + the environment variable `AWS_SECRET_ACCESS_KEY` + is used. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + type: object + subject: + description: Subject line when the message is delivered + to email endpoints. + type: string + targetARN: + description: 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. + type: string + topicARN: + description: 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. + type: string + type: object + type: array + telegramConfigs: + description: List of Telegram configurations. + items: + description: TelegramConfig configures notifications via Telegram. + See https://prometheus.io/docs/alerting/latest/configuration/#telegram_config + properties: + apiURL: + description: The Telegram API URL i.e. https://api.telegram.org. + If not specified, default API URL will be used. + type: string + botToken: + description: Telegram bot token The secret needs to be + in the same namespace as the AlertmanagerConfig object + and accessible by the Prometheus Operator. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + chatID: + description: The Telegram chat ID. + format: int64 + type: integer + disableNotifications: + description: Disable telegram notifications + type: boolean + httpConfig: + description: HTTP client configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + message: + description: Message template + type: string + parseMode: + description: Parse mode for telegram message + enum: + - MarkdownV2 + - Markdown + - HTML + type: string + sendResolved: + description: Whether to notify about resolved alerts. + type: boolean + type: object + type: array + victoropsConfigs: + description: List of VictorOps configurations. + items: + description: VictorOpsConfig configures notifications via + VictorOps. See https://prometheus.io/docs/alerting/latest/configuration/#victorops_config + properties: + apiKey: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + apiUrl: + description: The VictorOps API URL. + type: string + customFields: + description: Additional custom fields for notification. + items: + description: KeyValue defines a (key, value) tuple. + properties: + key: + description: Key of the tuple. + minLength: 1 + type: string + value: + description: Value of the tuple. + type: string + required: + - key + - value + type: object + type: array + entityDisplayName: + description: Contains summary of the alerted problem. + type: string + httpConfig: + description: The HTTP client's configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + messageType: + description: Describes the behavior of the alert (CRITICAL, + WARNING, INFO). + type: string + monitoringTool: + description: The monitoring tool the state message is + from. + type: string + routingKey: + description: A key used to map the alert to a team. + type: string + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + stateMessage: + description: Contains long explanation of the alerted + problem. + type: string + type: object + type: array + webhookConfigs: + description: List of webhook configurations. + items: + description: WebhookConfig configures notifications via a + generic receiver supporting the webhook payload. See https://prometheus.io/docs/alerting/latest/configuration/#webhook_config + properties: + httpConfig: + description: HTTP client configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + maxAlerts: + description: Maximum number of alerts to be sent per webhook + message. When 0, all alerts are included. + format: int32 + minimum: 0 + type: integer + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + url: + description: The URL to send HTTP POST requests to. `urlSecret` + takes precedence over `url`. One of `urlSecret` and + `url` should be defined. + type: string + urlSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + type: object + type: array + wechatConfigs: + description: List of WeChat configurations. + items: + description: WeChatConfig configures notifications via WeChat. + See https://prometheus.io/docs/alerting/latest/configuration/#wechat_config + properties: + agentID: + type: string + apiSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + apiURL: + description: The WeChat API URL. + type: string + corpID: + description: The corp id for authentication. + type: string + httpConfig: + description: HTTP client configuration. + properties: + authorization: + description: Authorization header configuration for + the client. This is mutually exclusive with BasicAuth + and is only available starting from Alertmanager + v0.22+. + properties: + credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret's key that contains the + credentials of the request + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: + description: Set the authentication type. Defaults + to Bearer, Basic will cause an error + type: string + type: object + basicAuth: + description: BasicAuth for the client. This is mutually + exclusive with Authorization. If both are defined, + BasicAuth takes precedence. + properties: + password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the password for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret in the service monitor + namespace that contains the username for authentication. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenSecret: + description: 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. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + minLength: 1 + type: string + name: + description: The name of the secret in the object's + namespace to select from. + minLength: 1 + type: string + required: + - key + - name + type: object + followRedirects: + description: FollowRedirects specifies whether the + client should follow HTTP 3xx redirects. + type: boolean + oauth2: + description: OAuth2 client credentials used to fetch + a token for the targets. + properties: + clientId: + description: The secret or configmap containing + the OAuth2 client id + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: The secret containing the OAuth2 + client secret + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + endpointParams: + additionalProperties: + type: string + description: Parameters to append to the token + URL + type: object + scopes: + description: OAuth2 scopes used for the token + request + items: + type: string + type: array + tokenUrl: + description: The URL to fetch the token from + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + description: Optional proxy URL. + type: string + tlsConfig: + description: TLS configuration for the client. + properties: + ca: + description: Struct containing the CA cert to + use for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + cert: + description: Struct containing the client cert + file for the targets. + properties: + configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: ConfigMap containing data to + use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap + or its key must be defined + type: boolean + required: + - key + type: object + secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing data to use + for the targets. + properties: + key: + description: The key of the secret to + select from. Must be a valid secret + key. + type: string + name: + description: 'Name of the referent. More + info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret + or its key must be defined + type: boolean + required: + - key + type: object + type: object + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic + description: Secret containing the client key + file for the targets. + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, + kind, uid?' + type: string + optional: + description: Specify whether the Secret or + its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the + targets. + type: string + type: object + type: object + message: + description: API request data as defined by the WeChat + API. + type: string + messageType: + type: string + sendResolved: + description: Whether or not to notify about resolved alerts. + type: boolean + toParty: + type: string + toTag: + type: string + toUser: + type: string + type: object + type: array + required: + - name + type: object + type: array + route: + description: 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. + properties: + continue: + description: 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. type: boolean @@ -3899,9 +9206,10 @@ spec: description: Matcher defines how to match on alert's labels. properties: matchType: - description: Match operation available with AlertManager - >= v0.22.0 and takes precedence over Regex (deprecated) - if non-empty. + description: Match operator, one of `=` (equal to), `!=` + (not equal to), `=~` (regex match) or `!~` (not regex + match). Negative operators (`!=` and `!~`) require Alertmanager + >= v0.22.0. enum: - '!=' - = @@ -3912,11 +9220,6 @@ spec: description: Label to match. minLength: 1 type: string - regex: - description: Whether to match on equality (false) or regular-expression - (true). Deprecated as of AlertManager >= v0.22.0 where - a user should use MatchType instead. - type: boolean value: description: Label value to match. type: string @@ -3952,15 +9255,91 @@ spec: x-kubernetes-preserve-unknown-fields: true type: array type: object + timeIntervals: + description: List of TimeInterval specifying when the routes should + be muted or active. + items: + description: TimeInterval specifies the periods in time when notifications + will be muted or active. + properties: + name: + description: Name of the time interval. + type: string + timeIntervals: + description: TimeIntervals is a list of TimePeriod. + items: + description: TimePeriod describes periods of time. + properties: + daysOfMonth: + description: DaysOfMonth is a list of DayOfMonthRange + items: + description: DayOfMonthRange is an inclusive range of + days of the month beginning at 1 + properties: + end: + description: End of the inclusive range + maximum: 31 + minimum: -31 + type: integer + start: + description: Start of the inclusive range + maximum: 31 + minimum: -31 + type: integer + type: object + type: array + months: + description: Months is a list of MonthRange + items: + description: 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') + pattern: ^((?i)january|february|march|april|may|june|july|august|september|october|november|december|[1-12])(?:((:((?i)january|february|march|april|may|june|july|august|september|october|november|december|[1-12]))$)|$) + type: string + type: array + times: + description: Times is a list of TimeRange + items: + description: TimeRange defines a start and end time + in 24hr format + properties: + endTime: + description: EndTime is the end time in 24hr format. + pattern: ^((([01][0-9])|(2[0-3])):[0-5][0-9])$|(^24:00$) + type: string + startTime: + description: StartTime is the start time in 24hr + format. + pattern: ^((([01][0-9])|(2[0-3])):[0-5][0-9])$|(^24:00$) + type: string + type: object + type: array + weekdays: + description: Weekdays is a list of WeekdayRange + items: + description: 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') + pattern: ^((?i)sun|mon|tues|wednes|thurs|fri|satur)day(?:((:(sun|mon|tues|wednes|thurs|fri|satur)day)$)|$) + type: string + type: array + years: + description: Years is a list of YearRange + items: + description: YearRange is an inclusive range of years + pattern: ^2\d{3}(?::2\d{3}|$) + type: string + type: array + type: object + type: array + type: object + type: array type: object required: - spec type: object served: true - storage: true -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] + storage: false diff --git a/deploy/crds/kubernetes/monitoring.coreos.com_alertmanagers.yaml b/deploy/crds/kubernetes/monitoring.coreos.com_alertmanagers.yaml index 45beacf10..818b2b918 100644 --- a/deploy/crds/kubernetes/monitoring.coreos.com_alertmanagers.yaml +++ b/deploy/crds/kubernetes/monitoring.coreos.com_alertmanagers.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: alertmanagers.monitoring.coreos.com spec: @@ -161,6 +160,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100. @@ -261,10 +261,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: description: Describes pod affinity scheduling rules (e.g. co-locate @@ -341,6 +343,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied @@ -399,6 +402,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The @@ -497,6 +501,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied to the @@ -550,6 +555,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The term is applied @@ -650,6 +656,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied @@ -708,6 +715,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The @@ -806,6 +814,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied to the @@ -859,6 +868,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The term is applied @@ -929,6 +939,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic alertmanagerConfigSelector: description: AlertmanagerConfigs to be selected for to merge and configure Alertmanager with. @@ -974,6 +985,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic alertmanagerConfiguration: description: 'EXPERIMENTAL: alertmanagerConfiguration specifies the global Alertmanager configuration. If defined, it takes precedence @@ -1092,6 +1104,9 @@ spec: Cannot be used if value is not empty. properties: configMapKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a ConfigMap. properties: key: @@ -1128,6 +1143,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: description: 'Selects a resource of the container: only resources limits and requests (limits.cpu, @@ -1153,7 +1169,11 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a secret in the pod's namespace properties: @@ -1204,6 +1224,7 @@ spec: defined type: boolean type: object + x-kubernetes-map-type: atomic prefix: description: An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. @@ -1220,6 +1241,7 @@ spec: description: Specify whether the Secret must be defined type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -2300,6 +2322,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: description: 'InitContainers allows adding initContainers to the pod @@ -2370,6 +2393,9 @@ spec: Cannot be used if value is not empty. properties: configMapKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a ConfigMap. properties: key: @@ -2406,6 +2432,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: description: 'Selects a resource of the container: only resources limits and requests (limits.cpu, @@ -2431,7 +2458,11 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a secret in the pod's namespace properties: @@ -2482,6 +2513,7 @@ spec: defined type: boolean type: object + x-kubernetes-map-type: atomic prefix: description: An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. @@ -2498,6 +2530,7 @@ spec: description: Specify whether the Secret must be defined type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -3932,6 +3965,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty volume is desired. @@ -3948,13 +3982,13 @@ spec: 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 + only allows two specific types of objects, DataSourceRef + allows any non-core object, as well as PersistentVolumeClaim objects. * While DataSource ignores disallowed values - (dropping them), DataSourceRef preserves all values, - and generates an error if a disallowed value is specified. - (Alpha) Using this field requires the AnyVolumeDataSource - feature gate to be enabled.' + (dropping them), DataSourceRef preserves all values, + and generates an error if a disallowed value is + specified. (Alpha) Using this field requires the + AnyVolumeDataSource feature gate to be enabled.' properties: apiGroup: description: APIGroup is the group for the resource @@ -3975,6 +4009,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure @@ -4056,6 +4091,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -4155,6 +4191,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty volume is desired. @@ -4171,11 +4208,11 @@ spec: 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 + DataSourceRef allows any non-core object, as well as + PersistentVolumeClaim objects. * While DataSource ignores + disallowed values (dropping them), DataSourceRef preserves all values, and generates an error if a disallowed value - is specified. (Alpha) Using this field requires the + is specified. (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.' properties: apiGroup: @@ -4194,6 +4231,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure @@ -4272,6 +4310,7 @@ spec: contains only "value". The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -4477,6 +4516,7 @@ spec: only "value". The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic maxSkew: description: 'MaxSkew describes the degree to which pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, @@ -4505,10 +4545,10 @@ spec: description: 'WhenUnsatisfiable indicates how to deal with a pod if it doesn''t satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway - tells the scheduler to schedule the pod in any location, but + tells the scheduler to schedule the pod in any location, but giving higher precedence to topologies that would help reduce - the skew. A constraint is considered "Unsatisfiable" for - an incoming pod if and only if every possible node assignment + the skew. A constraint is considered "Unsatisfiable" for an + incoming pod if and only if every possible node assignment for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: | zone1 | zone2 @@ -4696,6 +4736,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic user: description: 'Optional: User is the rados user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' @@ -4727,6 +4768,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic volumeID: description: 'volume id used to identify the volume in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md' @@ -4798,6 +4840,7 @@ spec: be defined type: boolean type: object + x-kubernetes-map-type: atomic csi: description: CSI (Container Storage Interface) represents ephemeral storage that is handled by certain external CSI drivers (Beta @@ -4828,6 +4871,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic readOnly: description: Specifies a read-only configuration for the volume. Defaults to false (read/write). @@ -4881,6 +4925,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: description: 'Optional: mode bits used to set permissions on this file, must be an octal value between 0000 @@ -4924,6 +4969,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -4960,18 +5006,17 @@ spec: pod starts, and deleted when the pod is removed. \n Use this if: a) the volume is only needed while the pod runs, b) features of normal volumes like restoring from snapshot or capacity - \ tracking are needed, c) the storage driver is specified - through a storage class, and d) the storage driver supports - dynamic volume provisioning through a PersistentVolumeClaim - (see EphemeralVolumeSource for more information on the - connection between this volume type and PersistentVolumeClaim). - \n Use PersistentVolumeClaim or one of the vendor-specific - APIs for volumes that persist for longer than the lifecycle - of an individual pod. \n Use CSI for light-weight local ephemeral - volumes if the CSI driver is meant to be used that way - see - the documentation of the driver for more information. \n A - pod can use both types of ephemeral volumes and persistent - volumes at the same time." + tracking are needed, c) the storage driver is specified through + a storage class, and d) the storage driver supports dynamic + volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource + for more information on the connection between this volume + type and PersistentVolumeClaim). \n Use PersistentVolumeClaim + or one of the vendor-specific APIs for volumes that persist + for longer than the lifecycle of an individual pod. \n Use + CSI for light-weight local ephemeral volumes if the CSI driver + is meant to be used that way - see the documentation of the + driver for more information. \n A pod can use both types of + ephemeral volumes and persistent volumes at the same time." properties: volumeClaimTemplate: description: "Will be used to create a stand-alone PVC to @@ -5041,6 +5086,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty @@ -5059,13 +5105,13 @@ spec: other is non-empty. There are two important differences between DataSource and DataSourceRef: * While DataSource only allows two specific types of objects, - DataSourceRef allows any non-core object, as - well as PersistentVolumeClaim objects. * While - DataSource ignores disallowed values (dropping - them), DataSourceRef preserves all values, and - generates an error if a disallowed value is specified. - (Alpha) Using this field requires the AnyVolumeDataSource - feature gate to be enabled.' + DataSourceRef allows any non-core object, as well + as PersistentVolumeClaim objects. * While DataSource + ignores disallowed values (dropping them), DataSourceRef + preserves all values, and generates an error if + a disallowed value is specified. (Alpha) Using + this field requires the AnyVolumeDataSource feature + gate to be enabled.' properties: apiGroup: description: APIGroup is the group for the resource @@ -5086,6 +5132,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure @@ -5170,6 +5217,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -5256,6 +5304,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -5429,6 +5478,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic targetPortal: description: iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port is other than default (typically @@ -5597,6 +5647,7 @@ spec: its keys must be defined type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: description: information about the downwardAPI data to project @@ -5626,6 +5677,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: description: 'Optional: mode bits used to set permissions on this file, must be @@ -5674,6 +5726,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -5738,6 +5791,7 @@ spec: key must be defined type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: description: information about the serviceAccountToken data to project @@ -5853,6 +5907,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic user: description: 'The rados user name. Default is admin. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' @@ -5891,6 +5946,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic sslEnabled: description: Flag to enable/disable SSL communication with Gateway, default false @@ -6004,6 +6060,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic volumeName: description: VolumeName is the human-readable name of the StorageOS volume. Volume names are only unique within @@ -6090,9 +6147,3 @@ spec: served: true storage: true subresources: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/deploy/crds/kubernetes/monitoring.coreos.com_podmonitors.yaml b/deploy/crds/kubernetes/monitoring.coreos.com_podmonitors.yaml index 82c7ab9f2..70e0d49c1 100644 --- a/deploy/crds/kubernetes/monitoring.coreos.com_podmonitors.yaml +++ b/deploy/crds/kubernetes/monitoring.coreos.com_podmonitors.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: podmonitors.monitoring.coreos.com spec: @@ -94,6 +93,9 @@ spec: description: Authorization section for this endpoint properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -122,6 +124,9 @@ spec: basic authentication. More info: https://prometheus.io/docs/operating/configuration/#endpoint' properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -141,6 +146,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -161,6 +169,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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. @@ -265,6 +276,9 @@ spec: client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -284,6 +298,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -304,6 +321,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: key: @@ -442,6 +462,9 @@ spec: targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -461,6 +484,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -485,6 +511,9 @@ spec: the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -504,6 +533,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -527,6 +559,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -606,6 +641,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic targetLimit: description: TargetLimit defines a limit on the number of scraped targets that will be accepted. @@ -620,9 +656,3 @@ spec: type: object served: true storage: true -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/deploy/crds/kubernetes/monitoring.coreos.com_probes.yaml b/deploy/crds/kubernetes/monitoring.coreos.com_probes.yaml index bbadf477b..a99a2f222 100644 --- a/deploy/crds/kubernetes/monitoring.coreos.com_probes.yaml +++ b/deploy/crds/kubernetes/monitoring.coreos.com_probes.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: probes.monitoring.coreos.com spec: @@ -45,6 +44,9 @@ spec: description: Authorization section for this endpoint properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -73,6 +75,9 @@ spec: authentication. More info: https://prometheus.io/docs/operating/configuration/#endpoint' properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -92,6 +97,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -112,6 +120,9 @@ spec: type: object type: object bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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. @@ -225,6 +236,9 @@ spec: id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: key: @@ -242,6 +256,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -261,6 +278,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: key: @@ -462,6 +482,7 @@ spec: only "value". The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic type: object staticConfig: description: 'staticConfig defines the static list of targets @@ -547,6 +568,9 @@ spec: description: Struct containing the CA cert to use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: key: @@ -564,6 +588,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -586,6 +613,9 @@ spec: description: Struct containing the client cert file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: key: @@ -603,6 +633,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -625,6 +658,9 @@ spec: description: Disable target certificate validation. type: boolean keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: key: @@ -652,9 +688,3 @@ spec: type: object served: true storage: true -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/deploy/crds/kubernetes/monitoring.coreos.com_prometheuses.yaml b/deploy/crds/kubernetes/monitoring.coreos.com_prometheuses.yaml index 4f74bdcf6..e26a8fd41 100644 --- a/deploy/crds/kubernetes/monitoring.coreos.com_prometheuses.yaml +++ b/deploy/crds/kubernetes/monitoring.coreos.com_prometheuses.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: prometheuses.monitoring.coreos.com spec: @@ -54,6 +53,9 @@ spec: cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' properties: additionalAlertManagerConfigs: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 'AdditionalAlertManagerConfigs allows specifying a key of a Secret containing additional Prometheus AlertManager configurations. AlertManager configurations specified are appended to the configurations @@ -81,6 +83,9 @@ spec: - key type: object additionalAlertRelabelConfigs: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 'AdditionalAlertRelabelConfigs allows specifying a key of a Secret containing additional Prometheus alert relabel configurations. Alert relabel configurations specified are appended to the configurations @@ -108,6 +113,9 @@ spec: - key type: object additionalScrapeConfigs: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 'AdditionalScrapeConfigs allows specifying a key of a Secret containing additional Prometheus scrape configurations. Scrape configurations specified are appended to the configurations generated @@ -236,6 +244,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100. @@ -336,10 +345,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: description: Describes pod affinity scheduling rules (e.g. co-locate @@ -416,6 +427,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied @@ -474,6 +486,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The @@ -572,6 +585,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied to the @@ -625,6 +639,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The term is applied @@ -725,6 +740,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied @@ -783,6 +799,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The @@ -881,6 +898,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied to the @@ -934,6 +952,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The term is applied @@ -979,6 +998,9 @@ spec: endpoint properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -1038,6 +1060,9 @@ spec: the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1058,6 +1083,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -1088,6 +1116,9 @@ spec: for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1108,6 +1139,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: @@ -1141,6 +1175,9 @@ spec: container for the targets. type: string keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -1188,6 +1225,9 @@ spec: description: Authorization section for accessing apiserver properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -1220,6 +1260,9 @@ spec: basic authentication properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -1239,6 +1282,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -1276,6 +1322,9 @@ spec: targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1295,6 +1344,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -1323,6 +1375,9 @@ spec: targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -1342,6 +1397,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -1373,6 +1431,9 @@ spec: container for the targets. type: string keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -1487,6 +1548,9 @@ spec: Cannot be used if value is not empty. properties: configMapKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a ConfigMap. properties: key: @@ -1523,6 +1587,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: description: 'Selects a resource of the container: only resources limits and requests (limits.cpu, @@ -1548,7 +1613,11 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a secret in the pod's namespace properties: @@ -1599,6 +1668,7 @@ spec: defined type: boolean type: object + x-kubernetes-map-type: atomic prefix: description: An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. @@ -1615,6 +1685,7 @@ spec: description: Specify whether the Secret must be defined type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -2709,8 +2780,8 @@ spec: description: "EnforcedNamespaceLabel If set, a label will be added to \n 1. all user-metrics (created by `ServiceMonitor`, `PodMonitor` and `Probe` objects) and 2. in all `PrometheusRule` objects (except - the ones excluded in `prometheusRulesExcludedFromEnforce`) to * - alerting & recording rules and * the metrics used in their expressions + the ones excluded in `prometheusRulesExcludedFromEnforce`) to * + alerting & recording rules and * the metrics used in their expressions (`expr`). \n Label name is this field's value. Label value is the namespace of the created object (mentioned above)." type: string @@ -2833,6 +2904,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: description: 'InitContainers allows adding initContainers to the pod @@ -2905,6 +2977,9 @@ spec: Cannot be used if value is not empty. properties: configMapKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a ConfigMap. properties: key: @@ -2941,6 +3016,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: description: 'Selects a resource of the container: only resources limits and requests (limits.cpu, @@ -2966,7 +3042,11 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a secret in the pod's namespace properties: @@ -3017,6 +3097,7 @@ spec: defined type: boolean type: object + x-kubernetes-map-type: atomic prefix: description: An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. @@ -3033,6 +3114,7 @@ spec: description: Specify whether the Secret must be defined type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -4182,6 +4264,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic podMonitorSelector: description: '*Experimental* PodMonitors to be selected for target discovery. *Deprecated:* if neither this nor serviceMonitorSelector @@ -4228,6 +4311,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic portName: description: Port name used for the pods and governing service. This defaults to web @@ -4280,6 +4364,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic probeSelector: description: '*Experimental* Probes to be selected for target discovery.' properties: @@ -4324,6 +4409,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic prometheusExternalLabelName: description: Name of Prometheus external label used to denote Prometheus instance name. Defaults to the value of `prometheus`. External label @@ -4398,6 +4484,9 @@ spec: description: Authorization section for remote read properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -4429,6 +4518,9 @@ spec: description: BasicAuth for the URL. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -4448,6 +4540,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -4496,6 +4591,9 @@ spec: client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -4515,6 +4613,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -4535,6 +4636,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: key: @@ -4596,6 +4700,9 @@ spec: targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -4615,6 +4722,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -4643,6 +4753,9 @@ spec: the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -4662,6 +4775,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -4693,6 +4809,9 @@ spec: container for the targets. type: string keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -4732,6 +4851,9 @@ spec: description: Authorization section for remote write properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -4763,6 +4885,9 @@ spec: description: BasicAuth for the URL. properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -4782,6 +4907,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -4844,6 +4972,9 @@ spec: client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -4863,6 +4994,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -4883,6 +5017,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: key: @@ -4978,6 +5115,9 @@ spec: 4 properties: accessKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: AccessKey is the AWS API key. If blank, the environment variable `AWS_ACCESS_KEY_ID` is used. properties: @@ -5007,6 +5147,9 @@ spec: description: RoleArn is the named AWS profile used to authenticate. type: string secretKey: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: SecretKey is the AWS API secret. If blank, the environment variable `AWS_SECRET_ACCESS_KEY` is used. properties: @@ -5034,6 +5177,9 @@ spec: targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -5053,6 +5199,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -5081,6 +5230,9 @@ spec: the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -5100,6 +5252,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -5131,6 +5286,9 @@ spec: container for the targets. type: string keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -5319,6 +5477,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic ruleSelector: description: A selector to select which PrometheusRules to mount for loading alerting/recording rules from. Until (excluding) Prometheus @@ -5368,6 +5527,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic rules: description: /--rules.*/ command-line arguments. properties: @@ -5619,6 +5779,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic serviceMonitorSelector: description: ServiceMonitors to be selected for target discovery. *Deprecated:* if neither this nor podMonitorSelector are specified, @@ -5665,6 +5826,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic sha: description: 'SHA of Prometheus container image to be deployed. Defaults to the value of `version`. Similar to a tag, but the SHA explicitly @@ -5789,6 +5951,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty volume is desired. @@ -5805,13 +5968,13 @@ spec: 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 + only allows two specific types of objects, DataSourceRef + allows any non-core object, as well as PersistentVolumeClaim objects. * While DataSource ignores disallowed values - (dropping them), DataSourceRef preserves all values, - and generates an error if a disallowed value is specified. - (Alpha) Using this field requires the AnyVolumeDataSource - feature gate to be enabled.' + (dropping them), DataSourceRef preserves all values, + and generates an error if a disallowed value is + specified. (Alpha) Using this field requires the + AnyVolumeDataSource feature gate to be enabled.' properties: apiGroup: description: APIGroup is the group for the resource @@ -5832,6 +5995,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure @@ -5913,6 +6077,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -6012,6 +6177,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty volume is desired. @@ -6028,11 +6194,11 @@ spec: 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 + DataSourceRef allows any non-core object, as well as + PersistentVolumeClaim objects. * While DataSource ignores + disallowed values (dropping them), DataSourceRef preserves all values, and generates an error if a disallowed value - is specified. (Alpha) Using this field requires the + is specified. (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.' properties: apiGroup: @@ -6051,6 +6217,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure @@ -6129,6 +6296,7 @@ spec: contains only "value". The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -6264,6 +6432,9 @@ spec: targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -6283,6 +6454,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -6311,6 +6485,9 @@ spec: targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -6330,6 +6507,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -6361,6 +6541,9 @@ spec: container for the targets. type: string keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -6416,6 +6599,9 @@ spec: units are ms, s, m, h, d, w, y. type: string objectStorageConfig: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ObjectStorageConfig configures object storage in Thanos. Alternative to ObjectStorageConfigFile, and lower order priority. @@ -6487,6 +6673,9 @@ spec: be specified as part of the image URL.' type: string tracingConfig: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: TracingConfig configures tracing in Thanos. This is an experimental feature, it may change in any upcoming release in a breaking way. @@ -6650,6 +6839,7 @@ spec: only "value". The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic maxSkew: description: 'MaxSkew describes the degree to which pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, @@ -6678,10 +6868,10 @@ spec: description: 'WhenUnsatisfiable indicates how to deal with a pod if it doesn''t satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway - tells the scheduler to schedule the pod in any location, but + tells the scheduler to schedule the pod in any location, but giving higher precedence to topologies that would help reduce - the skew. A constraint is considered "Unsatisfiable" for - an incoming pod if and only if every possible node assignment + the skew. A constraint is considered "Unsatisfiable" for an + incoming pod if and only if every possible node assignment for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: | zone1 | zone2 @@ -6869,6 +7059,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic user: description: 'Optional: User is the rados user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' @@ -6900,6 +7091,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic volumeID: description: 'volume id used to identify the volume in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md' @@ -6971,6 +7163,7 @@ spec: be defined type: boolean type: object + x-kubernetes-map-type: atomic csi: description: CSI (Container Storage Interface) represents ephemeral storage that is handled by certain external CSI drivers (Beta @@ -7001,6 +7194,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic readOnly: description: Specifies a read-only configuration for the volume. Defaults to false (read/write). @@ -7054,6 +7248,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: description: 'Optional: mode bits used to set permissions on this file, must be an octal value between 0000 @@ -7097,6 +7292,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -7133,18 +7329,17 @@ spec: pod starts, and deleted when the pod is removed. \n Use this if: a) the volume is only needed while the pod runs, b) features of normal volumes like restoring from snapshot or capacity - \ tracking are needed, c) the storage driver is specified - through a storage class, and d) the storage driver supports - dynamic volume provisioning through a PersistentVolumeClaim - (see EphemeralVolumeSource for more information on the - connection between this volume type and PersistentVolumeClaim). - \n Use PersistentVolumeClaim or one of the vendor-specific - APIs for volumes that persist for longer than the lifecycle - of an individual pod. \n Use CSI for light-weight local ephemeral - volumes if the CSI driver is meant to be used that way - see - the documentation of the driver for more information. \n A - pod can use both types of ephemeral volumes and persistent - volumes at the same time." + tracking are needed, c) the storage driver is specified through + a storage class, and d) the storage driver supports dynamic + volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource + for more information on the connection between this volume + type and PersistentVolumeClaim). \n Use PersistentVolumeClaim + or one of the vendor-specific APIs for volumes that persist + for longer than the lifecycle of an individual pod. \n Use + CSI for light-weight local ephemeral volumes if the CSI driver + is meant to be used that way - see the documentation of the + driver for more information. \n A pod can use both types of + ephemeral volumes and persistent volumes at the same time." properties: volumeClaimTemplate: description: "Will be used to create a stand-alone PVC to @@ -7214,6 +7409,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty @@ -7232,13 +7428,13 @@ spec: other is non-empty. There are two important differences between DataSource and DataSourceRef: * While DataSource only allows two specific types of objects, - DataSourceRef allows any non-core object, as - well as PersistentVolumeClaim objects. * While - DataSource ignores disallowed values (dropping - them), DataSourceRef preserves all values, and - generates an error if a disallowed value is specified. - (Alpha) Using this field requires the AnyVolumeDataSource - feature gate to be enabled.' + DataSourceRef allows any non-core object, as well + as PersistentVolumeClaim objects. * While DataSource + ignores disallowed values (dropping them), DataSourceRef + preserves all values, and generates an error if + a disallowed value is specified. (Alpha) Using + this field requires the AnyVolumeDataSource feature + gate to be enabled.' properties: apiGroup: description: APIGroup is the group for the resource @@ -7259,6 +7455,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure @@ -7343,6 +7540,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -7429,6 +7627,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -7602,6 +7801,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic targetPortal: description: iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port is other than default (typically @@ -7770,6 +7970,7 @@ spec: its keys must be defined type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: description: information about the downwardAPI data to project @@ -7799,6 +8000,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: description: 'Optional: mode bits used to set permissions on this file, must be @@ -7847,6 +8049,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -7911,6 +8114,7 @@ spec: key must be defined type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: description: information about the serviceAccountToken data to project @@ -8026,6 +8230,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic user: description: 'The rados user name. Default is admin. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' @@ -8064,6 +8269,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic sslEnabled: description: Flag to enable/disable SSL communication with Gateway, default false @@ -8177,6 +8383,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic volumeName: description: VolumeName is the human-readable name of the StorageOS volume. Volume names are only unique within @@ -8238,6 +8445,9 @@ spec: description: Contains the TLS certificate for the server. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -8257,6 +8467,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -8289,6 +8502,9 @@ spec: authentication to the server. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -8308,6 +8524,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -8340,6 +8559,9 @@ spec: type: string type: array keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the TLS key for the server. properties: key: @@ -8490,9 +8712,3 @@ spec: storage: true subresources: status: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/deploy/crds/kubernetes/monitoring.coreos.com_prometheusrules.yaml b/deploy/crds/kubernetes/monitoring.coreos.com_prometheusrules.yaml index 39ac201c7..d9e2934b3 100644 --- a/deploy/crds/kubernetes/monitoring.coreos.com_prometheusrules.yaml +++ b/deploy/crds/kubernetes/monitoring.coreos.com_prometheusrules.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: prometheusrules.monitoring.coreos.com spec: @@ -96,9 +95,3 @@ spec: type: object served: true storage: true -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/deploy/crds/kubernetes/monitoring.coreos.com_servicemonitors.yaml b/deploy/crds/kubernetes/monitoring.coreos.com_servicemonitors.yaml index a6240094f..63c705cdb 100644 --- a/deploy/crds/kubernetes/monitoring.coreos.com_servicemonitors.yaml +++ b/deploy/crds/kubernetes/monitoring.coreos.com_servicemonitors.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: servicemonitors.monitoring.coreos.com spec: @@ -51,6 +50,9 @@ spec: description: Authorization section for this endpoint properties: credentials: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret's key that contains the credentials of the request properties: @@ -79,6 +81,9 @@ spec: basic authentication More info: https://prometheus.io/docs/operating/configuration/#endpoints' properties: password: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the password for authentication. properties: @@ -98,6 +103,9 @@ spec: - key type: object username: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret in the service monitor namespace that contains the username for authentication. properties: @@ -121,6 +129,9 @@ spec: description: File to read bearer token for scraping targets. type: string bearerTokenSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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. @@ -225,6 +236,9 @@ spec: client id properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -244,6 +258,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -264,6 +281,9 @@ spec: type: object type: object clientSecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: The secret containing the OAuth2 client secret properties: key: @@ -405,6 +425,9 @@ spec: targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -424,6 +447,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -452,6 +478,9 @@ spec: the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: @@ -471,6 +500,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -502,6 +534,9 @@ spec: container for the targets. type: string keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: @@ -618,6 +653,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic targetLabels: description: TargetLabels transfers labels from the Kubernetes `Service` onto the created metrics. @@ -638,9 +674,3 @@ spec: type: object served: true storage: true -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/deploy/crds/kubernetes/monitoring.coreos.com_thanosrulers.yaml b/deploy/crds/kubernetes/monitoring.coreos.com_thanosrulers.yaml index 539a731b8..3c613ca64 100644 --- a/deploy/crds/kubernetes/monitoring.coreos.com_thanosrulers.yaml +++ b/deploy/crds/kubernetes/monitoring.coreos.com_thanosrulers.yaml @@ -1,10 +1,9 @@ - --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: - controller-gen.kubebuilder.io/version: v0.7.0 + controller-gen.kubebuilder.io/version: v0.9.1 creationTimestamp: null name: thanosrulers.monitoring.coreos.com spec: @@ -151,6 +150,7 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic weight: description: Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100. @@ -251,10 +251,12 @@ spec: type: object type: array type: object + x-kubernetes-map-type: atomic type: array required: - nodeSelectorTerms type: object + x-kubernetes-map-type: atomic type: object podAffinity: description: Describes pod affinity scheduling rules (e.g. co-locate @@ -331,6 +333,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied @@ -389,6 +392,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The @@ -487,6 +491,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied to the @@ -540,6 +545,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The term is applied @@ -640,6 +646,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied @@ -698,6 +705,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The @@ -796,6 +804,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaceSelector: description: A label query over the set of namespaces that the term applies to. The term is applied to the @@ -849,6 +858,7 @@ spec: requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic namespaces: description: namespaces specifies a static list of namespace names that the term applies to. The term is applied @@ -892,6 +902,9 @@ spec: alertRelabelConfigFile takes precedence. type: string alertRelabelConfigs: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: '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 @@ -912,6 +925,9 @@ spec: - key type: object alertmanagersConfig: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Define configuration for connecting to alertmanager. Only available with thanos v0.10.0 and higher. Maps to the `alertmanagers.config` arg. @@ -1008,6 +1024,9 @@ spec: Cannot be used if value is not empty. properties: configMapKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a ConfigMap. properties: key: @@ -1044,6 +1063,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: description: 'Selects a resource of the container: only resources limits and requests (limits.cpu, @@ -1069,7 +1089,11 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a secret in the pod's namespace properties: @@ -1120,6 +1144,7 @@ spec: defined type: boolean type: object + x-kubernetes-map-type: atomic prefix: description: An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. @@ -1136,6 +1161,7 @@ spec: description: Specify whether the Secret must be defined type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -2225,6 +2251,9 @@ spec: description: Struct containing the CA cert to use for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: key: @@ -2242,6 +2271,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -2268,6 +2300,9 @@ spec: description: Struct containing the client cert file for the targets. properties: configMap: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ConfigMap containing data to use for the targets. properties: key: @@ -2285,6 +2320,9 @@ spec: - key type: object secret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing data to use for the targets. properties: key: @@ -2315,6 +2353,9 @@ spec: for the targets. type: string keySecret: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Secret containing the client key file for the targets. properties: key: @@ -2373,6 +2414,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic type: array initContainers: description: 'InitContainers allows adding initContainers to the pod @@ -2443,6 +2485,9 @@ spec: Cannot be used if value is not empty. properties: configMapKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a ConfigMap. properties: key: @@ -2479,6 +2524,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic resourceFieldRef: description: 'Selects a resource of the container: only resources limits and requests (limits.cpu, @@ -2504,7 +2550,11 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic secretKeyRef: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: Selects a key of a secret in the pod's namespace properties: @@ -2555,6 +2605,7 @@ spec: defined type: boolean type: object + x-kubernetes-map-type: atomic prefix: description: An optional identifier to prepend to each key in the ConfigMap. Must be a C_IDENTIFIER. @@ -2571,6 +2622,7 @@ spec: description: Specify whether the Secret must be defined type: boolean type: object + x-kubernetes-map-type: atomic type: object type: array image: @@ -3641,6 +3693,9 @@ spec: description: Define which Nodes the Pods are scheduled on. type: object objectStorageConfig: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: ObjectStorageConfig configures object storage in Thanos. Alternative to ObjectStorageConfigFile, and lower order priority. properties: @@ -3725,6 +3780,9 @@ spec: type: object type: array queryConfig: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: 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 @@ -3837,6 +3895,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic ruleSelector: description: A label selector to select which PrometheusRules to mount for alerting and recording. @@ -3882,6 +3941,7 @@ spec: are ANDed. type: object type: object + x-kubernetes-map-type: atomic securityContext: description: SecurityContext holds pod-level security attributes and common container settings. This defaults to the default PodSecurityContext. @@ -4156,6 +4216,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty volume is desired. @@ -4172,13 +4233,13 @@ spec: 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 + only allows two specific types of objects, DataSourceRef + allows any non-core object, as well as PersistentVolumeClaim objects. * While DataSource ignores disallowed values - (dropping them), DataSourceRef preserves all values, - and generates an error if a disallowed value is specified. - (Alpha) Using this field requires the AnyVolumeDataSource - feature gate to be enabled.' + (dropping them), DataSourceRef preserves all values, + and generates an error if a disallowed value is + specified. (Alpha) Using this field requires the + AnyVolumeDataSource feature gate to be enabled.' properties: apiGroup: description: APIGroup is the group for the resource @@ -4199,6 +4260,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure @@ -4280,6 +4342,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -4379,6 +4442,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty volume is desired. @@ -4395,11 +4459,11 @@ spec: 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 + DataSourceRef allows any non-core object, as well as + PersistentVolumeClaim objects. * While DataSource ignores + disallowed values (dropping them), DataSourceRef preserves all values, and generates an error if a disallowed value - is specified. (Alpha) Using this field requires the + is specified. (Alpha) Using this field requires the AnyVolumeDataSource feature gate to be enabled.' properties: apiGroup: @@ -4418,6 +4482,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure @@ -4496,6 +4561,7 @@ spec: contains only "value". The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -4695,6 +4761,7 @@ spec: only "value". The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic maxSkew: description: 'MaxSkew describes the degree to which pods may be unevenly distributed. When `whenUnsatisfiable=DoNotSchedule`, @@ -4723,10 +4790,10 @@ spec: description: 'WhenUnsatisfiable indicates how to deal with a pod if it doesn''t satisfy the spread constraint. - DoNotSchedule (default) tells the scheduler not to schedule it. - ScheduleAnyway - tells the scheduler to schedule the pod in any location, but + tells the scheduler to schedule the pod in any location, but giving higher precedence to topologies that would help reduce - the skew. A constraint is considered "Unsatisfiable" for - an incoming pod if and only if every possible node assignment + the skew. A constraint is considered "Unsatisfiable" for an + incoming pod if and only if every possible node assignment for that pod would violate "MaxSkew" on some topology. For example, in a 3-zone cluster, MaxSkew is set to 1, and pods with the same labelSelector spread as 3/1/1: | zone1 | zone2 @@ -4744,6 +4811,9 @@ spec: type: object type: array tracingConfig: + allOf: + - x-kubernetes-map-type: atomic + - x-kubernetes-map-type: atomic description: TracingConfig configures tracing in Thanos. This is an experimental feature, it may change in any upcoming release in a breaking way. @@ -4888,6 +4958,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic user: description: 'Optional: User is the rados user name, default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' @@ -4919,6 +4990,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic volumeID: description: 'volume id used to identify the volume in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md' @@ -4990,6 +5062,7 @@ spec: be defined type: boolean type: object + x-kubernetes-map-type: atomic csi: description: CSI (Container Storage Interface) represents ephemeral storage that is handled by certain external CSI drivers (Beta @@ -5020,6 +5093,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic readOnly: description: Specifies a read-only configuration for the volume. Defaults to false (read/write). @@ -5073,6 +5147,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: description: 'Optional: mode bits used to set permissions on this file, must be an octal value between 0000 @@ -5116,6 +5191,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -5152,18 +5228,17 @@ spec: pod starts, and deleted when the pod is removed. \n Use this if: a) the volume is only needed while the pod runs, b) features of normal volumes like restoring from snapshot or capacity - \ tracking are needed, c) the storage driver is specified - through a storage class, and d) the storage driver supports - dynamic volume provisioning through a PersistentVolumeClaim - (see EphemeralVolumeSource for more information on the - connection between this volume type and PersistentVolumeClaim). - \n Use PersistentVolumeClaim or one of the vendor-specific - APIs for volumes that persist for longer than the lifecycle - of an individual pod. \n Use CSI for light-weight local ephemeral - volumes if the CSI driver is meant to be used that way - see - the documentation of the driver for more information. \n A - pod can use both types of ephemeral volumes and persistent - volumes at the same time." + tracking are needed, c) the storage driver is specified through + a storage class, and d) the storage driver supports dynamic + volume provisioning through a PersistentVolumeClaim (see EphemeralVolumeSource + for more information on the connection between this volume + type and PersistentVolumeClaim). \n Use PersistentVolumeClaim + or one of the vendor-specific APIs for volumes that persist + for longer than the lifecycle of an individual pod. \n Use + CSI for light-weight local ephemeral volumes if the CSI driver + is meant to be used that way - see the documentation of the + driver for more information. \n A pod can use both types of + ephemeral volumes and persistent volumes at the same time." properties: volumeClaimTemplate: description: "Will be used to create a stand-alone PVC to @@ -5233,6 +5308,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic dataSourceRef: description: 'Specifies the object from which to populate the volume with data, if a non-empty @@ -5251,13 +5327,13 @@ spec: other is non-empty. There are two important differences between DataSource and DataSourceRef: * While DataSource only allows two specific types of objects, - DataSourceRef allows any non-core object, as - well as PersistentVolumeClaim objects. * While - DataSource ignores disallowed values (dropping - them), DataSourceRef preserves all values, and - generates an error if a disallowed value is specified. - (Alpha) Using this field requires the AnyVolumeDataSource - feature gate to be enabled.' + DataSourceRef allows any non-core object, as well + as PersistentVolumeClaim objects. * While DataSource + ignores disallowed values (dropping them), DataSourceRef + preserves all values, and generates an error if + a disallowed value is specified. (Alpha) Using + this field requires the AnyVolumeDataSource feature + gate to be enabled.' properties: apiGroup: description: APIGroup is the group for the resource @@ -5278,6 +5354,7 @@ spec: - kind - name type: object + x-kubernetes-map-type: atomic resources: description: 'Resources represents the minimum resources the volume should have. If RecoverVolumeExpansionFailure @@ -5362,6 +5439,7 @@ spec: The requirements are ANDed. type: object type: object + x-kubernetes-map-type: atomic storageClassName: description: 'Name of the StorageClass required by the claim. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' @@ -5448,6 +5526,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic required: - driver type: object @@ -5621,6 +5700,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic targetPortal: description: iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port is other than default (typically @@ -5789,6 +5869,7 @@ spec: its keys must be defined type: boolean type: object + x-kubernetes-map-type: atomic downwardAPI: description: information about the downwardAPI data to project @@ -5818,6 +5899,7 @@ spec: required: - fieldPath type: object + x-kubernetes-map-type: atomic mode: description: 'Optional: mode bits used to set permissions on this file, must be @@ -5866,6 +5948,7 @@ spec: required: - resource type: object + x-kubernetes-map-type: atomic required: - path type: object @@ -5930,6 +6013,7 @@ spec: key must be defined type: boolean type: object + x-kubernetes-map-type: atomic serviceAccountToken: description: information about the serviceAccountToken data to project @@ -6045,6 +6129,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic user: description: 'The rados user name. Default is admin. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' @@ -6083,6 +6168,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic sslEnabled: description: Flag to enable/disable SSL communication with Gateway, default false @@ -6196,6 +6282,7 @@ spec: TODO: Add other useful fields. apiVersion, kind, uid?' type: string type: object + x-kubernetes-map-type: atomic volumeName: description: VolumeName is the human-readable name of the StorageOS volume. Volume names are only unique within @@ -6282,9 +6369,3 @@ spec: served: true storage: true subresources: {} -status: - acceptedNames: - kind: "" - plural: "" - conditions: [] - storedVersions: [] diff --git a/deploy/operator/observability-operator-cluster-role.yaml b/deploy/operator/observability-operator-cluster-role.yaml index 87cf73fad..67672e940 100644 --- a/deploy/operator/observability-operator-cluster-role.yaml +++ b/deploy/operator/observability-operator-cluster-role.yaml @@ -1,4 +1,3 @@ - --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole diff --git a/test/e2e/monitoring_stack_controller_test.go b/test/e2e/monitoring_stack_controller_test.go index 4d455d9c2..d9f279667 100644 --- a/test/e2e/monitoring_stack_controller_test.go +++ b/test/e2e/monitoring_stack_controller_test.go @@ -185,7 +185,6 @@ func reconcileStack(t *testing.T) { } func reconcileRevertsManualChanges(t *testing.T) { - t.Skip("Skipping revert-test, see https://github.com/rhobs/observability-operator/issues/142") ms := newMonitoringStack(t, "revert-test") ms.Spec.LogLevel = "debug" ms.Spec.Retention = "1h"