---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.16.5
    operator.prometheus.io/version: 0.79.2
  name: probes.monitoring.coreos.com
spec:
  group: monitoring.coreos.com
  names:
    categories:
      - prometheus-operator
    kind: Probe
    listKind: ProbeList
    plural: probes
    shortNames:
      - prb
    singular: probe
  scope: Namespaced
  versions:
    - name: v1
      schema:
        openAPIV3Schema:
          properties:
            apiVersion:
              type: string
            kind:
              type: string
            metadata:
              type: object
            spec:
              properties:
                authorization:
                  properties:
                    credentials:
                      properties:
                        key:
                          type: string
                        name:
                          default: ""
                          type: string
                        optional:
                          type: boolean
                      required:
                        - key
                      type: object
                      x-kubernetes-map-type: atomic
                    type:
                      type: string
                  type: object
                basicAuth:
                  properties:
                    password:
                      properties:
                        key:
                          type: string
                        name:
                          default: ""
                          type: string
                        optional:
                          type: boolean
                      required:
                        - key
                      type: object
                      x-kubernetes-map-type: atomic
                    username:
                      properties:
                        key:
                          type: string
                        name:
                          default: ""
                          type: string
                        optional:
                          type: boolean
                      required:
                        - key
                      type: object
                      x-kubernetes-map-type: atomic
                  type: object
                bearerTokenSecret:
                  properties:
                    key:
                      type: string
                    name:
                      default: ""
                      type: string
                    optional:
                      type: boolean
                  required:
                    - key
                  type: object
                  x-kubernetes-map-type: atomic
                fallbackScrapeProtocol:
                  enum:
                    - PrometheusProto
                    - OpenMetricsText0.0.1
                    - OpenMetricsText1.0.0
                    - PrometheusText0.0.4
                    - PrometheusText1.0.0
                  type: string
                interval:
                  pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
                  type: string
                jobName:
                  type: string
                keepDroppedTargets:
                  format: int64
                  type: integer
                labelLimit:
                  format: int64
                  type: integer
                labelNameLengthLimit:
                  format: int64
                  type: integer
                labelValueLengthLimit:
                  format: int64
                  type: integer
                metricRelabelings:
                  items:
                    properties:
                      action:
                        default: replace
                        enum:
                          - replace
                          - Replace
                          - keep
                          - Keep
                          - drop
                          - Drop
                          - hashmod
                          - HashMod
                          - labelmap
                          - LabelMap
                          - labeldrop
                          - LabelDrop
                          - labelkeep
                          - LabelKeep
                          - lowercase
                          - Lowercase
                          - uppercase
                          - Uppercase
                          - keepequal
                          - KeepEqual
                          - dropequal
                          - DropEqual
                        type: string
                      modulus:
                        format: int64
                        type: integer
                      regex:
                        type: string
                      replacement:
                        type: string
                      separator:
                        type: string
                      sourceLabels:
                        items:
                          pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
                          type: string
                        type: array
                      targetLabel:
                        type: string
                    type: object
                  type: array
                module:
                  type: string
                nativeHistogramBucketLimit:
                  format: int64
                  type: integer
                nativeHistogramMinBucketFactor:
                  anyOf:
                    - type: integer
                    - type: string
                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
                  x-kubernetes-int-or-string: true
                oauth2:
                  properties:
                    clientId:
                      properties:
                        configMap:
                          properties:
                            key:
                              type: string
                            name:
                              default: ""
                              type: string
                            optional:
                              type: boolean
                          required:
                            - key
                          type: object
                          x-kubernetes-map-type: atomic
                        secret:
                          properties:
                            key:
                              type: string
                            name:
                              default: ""
                              type: string
                            optional:
                              type: boolean
                          required:
                            - key
                          type: object
                          x-kubernetes-map-type: atomic
                      type: object
                    clientSecret:
                      properties:
                        key:
                          type: string
                        name:
                          default: ""
                          type: string
                        optional:
                          type: boolean
                      required:
                        - key
                      type: object
                      x-kubernetes-map-type: atomic
                    endpointParams:
                      additionalProperties:
                        type: string
                      type: object
                    noProxy:
                      type: string
                    proxyConnectHeader:
                      additionalProperties:
                        items:
                          properties:
                            key:
                              type: string
                            name:
                              default: ""
                              type: string
                            optional:
                              type: boolean
                          required:
                            - key
                          type: object
                          x-kubernetes-map-type: atomic
                        type: array
                      type: object
                      x-kubernetes-map-type: atomic
                    proxyFromEnvironment:
                      type: boolean
                    proxyUrl:
                      pattern: ^http(s)?://.+$
                      type: string
                    scopes:
                      items:
                        type: string
                      type: array
                    tlsConfig:
                      properties:
                        ca:
                          properties:
                            configMap:
                              properties:
                                key:
                                  type: string
                                name:
                                  default: ""
                                  type: string
                                optional:
                                  type: boolean
                              required:
                                - key
                              type: object
                              x-kubernetes-map-type: atomic
                            secret:
                              properties:
                                key:
                                  type: string
                                name:
                                  default: ""
                                  type: string
                                optional:
                                  type: boolean
                              required:
                                - key
                              type: object
                              x-kubernetes-map-type: atomic
                          type: object
                        cert:
                          properties:
                            configMap:
                              properties:
                                key:
                                  type: string
                                name:
                                  default: ""
                                  type: string
                                optional:
                                  type: boolean
                              required:
                                - key
                              type: object
                              x-kubernetes-map-type: atomic
                            secret:
                              properties:
                                key:
                                  type: string
                                name:
                                  default: ""
                                  type: string
                                optional:
                                  type: boolean
                              required:
                                - key
                              type: object
                              x-kubernetes-map-type: atomic
                          type: object
                        insecureSkipVerify:
                          type: boolean
                        keySecret:
                          properties:
                            key:
                              type: string
                            name:
                              default: ""
                              type: string
                            optional:
                              type: boolean
                          required:
                            - key
                          type: object
                          x-kubernetes-map-type: atomic
                        maxVersion:
                          enum:
                            - TLS10
                            - TLS11
                            - TLS12
                            - TLS13
                          type: string
                        minVersion:
                          enum:
                            - TLS10
                            - TLS11
                            - TLS12
                            - TLS13
                          type: string
                        serverName:
                          type: string
                      type: object
                    tokenUrl:
                      minLength: 1
                      type: string
                  required:
                    - clientId
                    - clientSecret
                    - tokenUrl
                  type: object
                prober:
                  properties:
                    path:
                      default: /probe
                      type: string
                    proxyUrl:
                      type: string
                    scheme:
                      enum:
                        - http
                        - https
                      type: string
                    url:
                      type: string
                  required:
                    - url
                  type: object
                sampleLimit:
                  format: int64
                  type: integer
                scrapeClass:
                  minLength: 1
                  type: string
                scrapeClassicHistograms:
                  type: boolean
                scrapeProtocols:
                  items:
                    enum:
                      - PrometheusProto
                      - OpenMetricsText0.0.1
                      - OpenMetricsText1.0.0
                      - PrometheusText0.0.4
                      - PrometheusText1.0.0
                    type: string
                  type: array
                  x-kubernetes-list-type: set
                scrapeTimeout:
                  pattern: ^(0|(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$
                  type: string
                targetLimit:
                  format: int64
                  type: integer
                targets:
                  properties:
                    ingress:
                      properties:
                        namespaceSelector:
                          properties:
                            any:
                              type: boolean
                            matchNames:
                              items:
                                type: string
                              type: array
                          type: object
                        relabelingConfigs:
                          items:
                            properties:
                              action:
                                default: replace
                                enum:
                                  - replace
                                  - Replace
                                  - keep
                                  - Keep
                                  - drop
                                  - Drop
                                  - hashmod
                                  - HashMod
                                  - labelmap
                                  - LabelMap
                                  - labeldrop
                                  - LabelDrop
                                  - labelkeep
                                  - LabelKeep
                                  - lowercase
                                  - Lowercase
                                  - uppercase
                                  - Uppercase
                                  - keepequal
                                  - KeepEqual
                                  - dropequal
                                  - DropEqual
                                type: string
                              modulus:
                                format: int64
                                type: integer
                              regex:
                                type: string
                              replacement:
                                type: string
                              separator:
                                type: string
                              sourceLabels:
                                items:
                                  pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
                                  type: string
                                type: array
                              targetLabel:
                                type: string
                            type: object
                          type: array
                        selector:
                          properties:
                            matchExpressions:
                              items:
                                properties:
                                  key:
                                    type: string
                                  operator:
                                    type: string
                                  values:
                                    items:
                                      type: string
                                    type: array
                                    x-kubernetes-list-type: atomic
                                required:
                                  - key
                                  - operator
                                type: object
                              type: array
                              x-kubernetes-list-type: atomic
                            matchLabels:
                              additionalProperties:
                                type: string
                              type: object
                          type: object
                          x-kubernetes-map-type: atomic
                      type: object
                    staticConfig:
                      properties:
                        labels:
                          additionalProperties:
                            type: string
                          type: object
                        relabelingConfigs:
                          items:
                            properties:
                              action:
                                default: replace
                                enum:
                                  - replace
                                  - Replace
                                  - keep
                                  - Keep
                                  - drop
                                  - Drop
                                  - hashmod
                                  - HashMod
                                  - labelmap
                                  - LabelMap
                                  - labeldrop
                                  - LabelDrop
                                  - labelkeep
                                  - LabelKeep
                                  - lowercase
                                  - Lowercase
                                  - uppercase
                                  - Uppercase
                                  - keepequal
                                  - KeepEqual
                                  - dropequal
                                  - DropEqual
                                type: string
                              modulus:
                                format: int64
                                type: integer
                              regex:
                                type: string
                              replacement:
                                type: string
                              separator:
                                type: string
                              sourceLabels:
                                items:
                                  pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
                                  type: string
                                type: array
                              targetLabel:
                                type: string
                            type: object
                          type: array
                        static:
                          items:
                            type: string
                          type: array
                      type: object
                  type: object
                tlsConfig:
                  properties:
                    ca:
                      properties:
                        configMap:
                          properties:
                            key:
                              type: string
                            name:
                              default: ""
                              type: string
                            optional:
                              type: boolean
                          required:
                            - key
                          type: object
                          x-kubernetes-map-type: atomic
                        secret:
                          properties:
                            key:
                              type: string
                            name:
                              default: ""
                              type: string
                            optional:
                              type: boolean
                          required:
                            - key
                          type: object
                          x-kubernetes-map-type: atomic
                      type: object
                    cert:
                      properties:
                        configMap:
                          properties:
                            key:
                              type: string
                            name:
                              default: ""
                              type: string
                            optional:
                              type: boolean
                          required:
                            - key
                          type: object
                          x-kubernetes-map-type: atomic
                        secret:
                          properties:
                            key:
                              type: string
                            name:
                              default: ""
                              type: string
                            optional:
                              type: boolean
                          required:
                            - key
                          type: object
                          x-kubernetes-map-type: atomic
                      type: object
                    insecureSkipVerify:
                      type: boolean
                    keySecret:
                      properties:
                        key:
                          type: string
                        name:
                          default: ""
                          type: string
                        optional:
                          type: boolean
                      required:
                        - key
                      type: object
                      x-kubernetes-map-type: atomic
                    maxVersion:
                      enum:
                        - TLS10
                        - TLS11
                        - TLS12
                        - TLS13
                      type: string
                    minVersion:
                      enum:
                        - TLS10
                        - TLS11
                        - TLS12
                        - TLS13
                      type: string
                    serverName:
                      type: string
                  type: object
              type: object
          required:
            - spec
          type: object
      served: true
      storage: true
