diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 0394f6443..e73056614 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -4,5 +4,5 @@ contact_links: url: https://kubernetes.slack.com/archives/CFFDS2Z7F about: "Join us for questions, answers or prometheus-operator related chat. Please do create issues on Github for better collaboration. If you don't have an account, sign up at http://slack.k8s.io/" - name: "Question via prometheus-operator discussions (similar to Stack Overflow)" - url: https://github.com/prometheus-operator/prometheus-operator/discussions + url: https://github.com/rhobs/obo-prometheus-operator/discussions about: "Please ask and answer questions here for async response." diff --git a/.github/workflows/e2e.yaml b/.github/workflows/e2e.yaml index e40406146..7b2f93e35 100644 --- a/.github/workflows/e2e.yaml +++ b/.github/workflows/e2e.yaml @@ -79,9 +79,9 @@ jobs: kubectl get pods -A - name: Load images run: | - kind load docker-image -n e2e quay.io/prometheus-operator/prometheus-operator:$(git rev-parse --short HEAD) - kind load docker-image -n e2e quay.io/prometheus-operator/prometheus-config-reloader:$(git rev-parse --short HEAD) - kind load docker-image -n e2e quay.io/prometheus-operator/admission-webhook:$(git rev-parse --short HEAD) + kind load docker-image -n e2e quay.io/rhobs/obo-prometheus-operator:$(git rev-parse --short HEAD) + kind load docker-image -n e2e quay.io/rhobs/obo-prometheus-config-reloader:$(git rev-parse --short HEAD) + kind load docker-image -n e2e quay.io/rhobs/obo-admission-webhook:$(git rev-parse --short HEAD) kubectl apply -f scripts/kind-rbac.yaml - name: Run tests run: > diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml deleted file mode 100644 index eb0861ed6..000000000 --- a/.github/workflows/publish.yaml +++ /dev/null @@ -1,58 +0,0 @@ -name: publish -on: - workflow_dispatch: - push: - branches: - - 'release-*' - - 'master' - - 'main' - tags: - - 'v*' - - '!pkg*' - -jobs: - publish: - name: Publish container images - - permissions: - id-token: write # needed to sign images with cosign. - packages: write # needed to push images to ghcr.io. - - runs-on: ubuntu-latest - - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Import environment variables from file - run: cat ".github/env" >> $GITHUB_ENV - - name: Install Go - uses: actions/setup-go@v4 - with: - go-version: '${{ env.golang-version }}' - check-latest: true - - name: Install cosign - uses: sigstore/cosign-installer@main - - name: Check the Docker version - run: docker version - - name: Check the cosign version - run: cosign version - - name: Install crane - uses: imjasonh/setup-crane@v0.3 - - name: Login to quay.io - uses: docker/login-action@v3 - with: - registry: quay.io - username: ${{ secrets.quay_username }} - password: ${{ secrets.quay_password }} - - name: Login to ghcr.io - uses: docker/login-action@v3 - with: - registry: ghcr.io - username: ${{ github.repository_owner }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Cosign login - run: | - echo "${{ secrets.GITHUB_TOKEN }}" | cosign login -u ${{ github.repository_owner }} --password-stdin ghcr.io - echo "${{ secrets.quay_password }}" | cosign login -u ${{ secrets.quay_username }} --password-stdin quay.io - - name: Build images and push - run: ./scripts/push-docker-image.sh diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml deleted file mode 100644 index c2a54ecaa..000000000 --- a/.github/workflows/release.yaml +++ /dev/null @@ -1,38 +0,0 @@ -name: release -on: - release: - types: - - created - -jobs: - upload-assets: - runs-on: ubuntu-latest - name: Upload release assets - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Import environment variables from file - run: cat ".github/env" >> $GITHUB_ENV - - name: Install Go - uses: actions/setup-go@v4 - with: - go-version: '${{ env.golang-version }}' - check-latest: true - - name: Upload bundle.yaml to release - uses: svenstaro/upload-release-action@v2 - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: bundle.yaml - asset_name: bundle.yaml - tag: ${{ github.ref }} - overwrite: true - - name: Generate stripped down version of CRDs - run: make stripped-down-crds.yaml - - name: Upload stripped-down-crds.yaml to release - uses: svenstaro/upload-release-action@v2 - with: - repo_token: ${{ secrets.GITHUB_TOKEN }} - file: stripped-down-crds.yaml - asset_name: stripped-down-crds.yaml - tag: ${{ github.ref }} - overwrite: true diff --git a/.github/workflows/rhobs-release.yaml b/.github/workflows/rhobs-release.yaml new file mode 100644 index 000000000..c6966e2dc --- /dev/null +++ b/.github/workflows/rhobs-release.yaml @@ -0,0 +1,80 @@ +# This workflow creates a git tag and publishes container images +name: rhobs release +on: + push: + branches: + - 'rhobs-rel-**' + +jobs: + debug: + runs-on: ubuntu-latest + if: "!startsWith(github.event.head_commit.message, 'chore(release):')" + steps: + - name: Debug + run: | + echo "Skipping release workflow since commit message does match the convention" + + create-release: + runs-on: ubuntu-latest + if: "startsWith(github.event.head_commit.message, 'chore(release):')" + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + + - name: Import common environment variables + run: cat ".github/env" >> $GITHUB_ENV + + - name: Install Go + uses: actions/setup-go@v3 + with: + go-version: '${{ env.golang-version }}' + + - name: login to quay.io + uses: docker/login-action@v2 + with: + registry: quay.io + username: ${{ secrets.quay_repo_username }} + password: ${{ secrets.quay_repo_password }} + + - name: create git tag + id: git_tag + run: | + version="$(head -1 VERSION)" + git config user.name rhobs-release-bot + git config user.email release-bot@monitoring.rhobs.io + + git tag -a "v${version}" -m "v${version}" + git tag -a "pkg/apis/monitoring/v${version}" -m "v${version}" + git tag -a "pkg/client/v${version}" -m "v${version}" + + + - name: Build RHOBS images and push + env: + IMAGE_ORG: ${{ secrets.IMAGE_ORG }} + run: | + REGISTRIES="quay.io" \ + IMAGE_ORG=$IMAGE_ORG \ + CPU_ARCHS="amd64" \ + TAG="v$(head -1 VERSION)" \ + ./rhobs/push-container-images.sh + + cd rhobs/olm + make tools + make bundle-image bundle-push IMAGE_REPO=quay.io/$IMAGE_ORG + + - name: push git tags + run: | + git push --tags + + - name: test if rhobs fork can be imported + run: | + [[ "$IMAGE_ORG" != "rhobs" ]] && { + echo "Skipping import tests on forked repos" + exit 0 + } + + cd rhobs/test/import + go mod tidy + go test ./... diff --git a/.github/workflows/stale.yaml b/.github/workflows/stale.yaml deleted file mode 100644 index 255aacfa6..000000000 --- a/.github/workflows/stale.yaml +++ /dev/null @@ -1,21 +0,0 @@ -name: 'Close stale issues and PRs' -on: - schedule: - - cron: '30 1 * * *' - -jobs: - stale: - runs-on: ubuntu-latest - steps: - - uses: actions/stale@v8 - with: - stale-issue-message: 'This issue has been automatically marked as stale because it has not had any activity in the last 60 days. Thank you for your contributions.' - close-issue-message: 'This issue was closed because it has not had any activity in the last 120 days. Please reopen if you feel this is still valid.' - days-before-stale: 60 - days-before-issue-close: 120 - days-before-pr-close: -1 # Prevent closing PRs - exempt-issue-labels: 'kind/feature,help wanted,kind/bug,kind/documentation' - stale-issue-label: 'stale' - stale-pr-label: 'stale' - exempt-draft-pr: true - operations-per-run: 500 diff --git a/.github/workflows/test-prom-version-upgrade.yaml b/.github/workflows/test-prom-version-upgrade.yaml index 8e6878a1c..5854b55d7 100644 --- a/.github/workflows/test-prom-version-upgrade.yaml +++ b/.github/workflows/test-prom-version-upgrade.yaml @@ -35,9 +35,9 @@ jobs: kubectl get pods -A - name: Load images run: | - kind load docker-image -n e2e quay.io/prometheus-operator/prometheus-operator:$(git rev-parse --short HEAD) - kind load docker-image -n e2e quay.io/prometheus-operator/prometheus-config-reloader:$(git rev-parse --short HEAD) - kind load docker-image -n e2e quay.io/prometheus-operator/admission-webhook:$(git rev-parse --short HEAD) + kind load docker-image -n e2e quay.io/rhobs/obo-prometheus-operator:$(git rev-parse --short HEAD) + kind load docker-image -n e2e quay.io/rhobs/obo-prometheus-config-reloader:$(git rev-parse --short HEAD) + kind load docker-image -n e2e quay.io/rhobs/obo-admission-webhook:$(git rev-parse --short HEAD) kubectl apply -f scripts/kind-rbac.yaml - name: Run tests run: > diff --git a/.golangci.yml b/.golangci.yml index 17637ff6a..16a68bfe4 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -24,7 +24,7 @@ linters-settings: sections: - standard - default - - prefix(github.com/prometheus-operator/prometheus-operator) + - prefix(github.com/rhobs/obo-prometheus-operator) depguard: rules: forbid-pkg-errors: diff --git a/.mdox.validate.yaml b/.mdox.validate.yaml index d33fb7bba..3f6286321 100644 --- a/.mdox.validate.yaml +++ b/.mdox.validate.yaml @@ -20,11 +20,11 @@ validators: - regex: 'https:\/\/github\.com\/prometheus-operator\/prometheus-operator\/releases' type: "ignore" # Ignore GitHub container packages link as it returns 404 in curl, but works in browser - - regex: 'https://github.com/prometheus-operator/prometheus-operator/pkgs/container/prometheus-operator' + - regex: 'https://github.com/rhobs/obo-prometheus-operator/pkgs/container/prometheus-operator' type: "ignore" # Ignore links to /img/ because the generated content will resolve them correctly. - regex: '/img/.+' type: ignore # Ignore anchor links pointing to the API documentation which are HTML tags and not supported by mdox. - - regex: 'api\.md#monitoring\.coreos\.com/v1\.(BasicAuth|PrometheusSpec|StorageSpec)$' + - regex: 'api\.md#monitoring\.rhobs/v1\.(BasicAuth|PrometheusSpec|StorageSpec)$' type: ignore diff --git a/ADOPTERS.md b/ADOPTERS.md index b628df920..90aa29d8a 100644 --- a/ADOPTERS.md +++ b/ADOPTERS.md @@ -25,7 +25,7 @@ Details (optional): This document tracks people and use cases for the Prometheus Operator in production. By creating a list of production use cases we hope to build a community of advisors that we can reach out to with experience using various the Prometheus Operator applications, operation environments, and cluster sizes. The Prometheus Operator development team may reach out periodically to check-in on how the Prometheus Operator is working in the field and update this list. -Go ahead and [add your organization](https://github.com/prometheus-operator/prometheus-operator/edit/main/ADOPTERS.md) to the list. +Go ahead and [add your organization](https://github.com/rhobs/obo-prometheus-operator/edit/main/ADOPTERS.md) to the list. ## CERN diff --git a/Dockerfile b/Dockerfile index 12ea770a2..390616fc4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,7 +7,7 @@ COPY operator /bin/operator # On busybox 'nobody' has uid `65534' USER 65534 -LABEL org.opencontainers.image.source="https://github.com/prometheus-operator/prometheus-operator" \ +LABEL org.opencontainers.image.source="https://github.com/rhobs/obo-prometheus-operator" \ org.opencontainers.image.url="https://prometheus-operator.dev/" \ org.opencontainers.image.documentation="https://prometheus-operator.dev/" \ org.opencontainers.image.licenses="Apache-2.0" diff --git a/Documentation/additional-scrape-config.md b/Documentation/additional-scrape-config.md index 33f388b40..9d2ab5809 100644 --- a/Documentation/additional-scrape-config.md +++ b/Documentation/additional-scrape-config.md @@ -40,7 +40,7 @@ kubectl apply -f additional-scrape-configs.yaml -n monitoring Finally, reference this additional configuration in your `prometheus.yaml` CRD. ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus @@ -61,5 +61,5 @@ NOTE: Use only one secret for ALL additional scrape configurations. ## Additional References -* [Prometheus Spec](api.md#monitoring.coreos.com/v1.PrometheusSpec) +* [Prometheus Spec](api.md#monitoring.rhobs/v1.PrometheusSpec) * [Additional Scrape Configs](../example/additional-scrape-configs) diff --git a/Documentation/api.md b/Documentation/api.md index 9ad2d128b..f6537b461 100644 --- a/Documentation/api.md +++ b/Documentation/api.md @@ -11,33 +11,33 @@ toc: true

Packages:

-

monitoring.coreos.com/v1

+

monitoring.rhobs/v1

Resource Types: -

Alertmanager +

Alertmanager

Alertmanager describes an Alertmanager cluster.

@@ -56,7 +56,7 @@ Resource Types: string -monitoring.coreos.com/v1 +monitoring.rhobs/v1 @@ -85,7 +85,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + AlertmanagerSpec @@ -100,7 +100,7 @@ AlertmanagerSpec podMetadata
- + EmbeddedObjectMetadata @@ -298,7 +298,7 @@ size.

retention
- + GoDuration @@ -312,7 +312,7 @@ and must match the regular expression [0-9]+(ms|s|m|h) (millisecond storage
- + StorageSpec @@ -573,7 +573,7 @@ Needs to be provided for non RFC1918 1 addresses. clusterGossipInterval
- + GoDuration @@ -586,7 +586,7 @@ GoDuration clusterPushpullInterval
- + GoDuration @@ -599,7 +599,7 @@ GoDuration clusterPeerTimeout
- + GoDuration @@ -649,7 +649,7 @@ Kubernetes meta/v1.LabelSelector alertmanagerConfigMatcherStrategy
- + AlertmanagerConfigMatcherStrategy @@ -692,7 +692,7 @@ This is an alpha field from kubernetes 1.22 until 1.24 which requires enabling t hostAliases
- + []HostAlias @@ -705,7 +705,7 @@ This is an alpha field from kubernetes 1.22 until 1.24 which requires enabling t web
- + AlertmanagerWebSpec @@ -718,7 +718,7 @@ AlertmanagerWebSpec alertmanagerConfiguration
- + AlertmanagerConfiguration @@ -749,7 +749,7 @@ If the service account has automountServiceAccountToken: true, set status
- + AlertmanagerStatus @@ -762,7 +762,7 @@ More info: -

PodMonitor +

PodMonitor

PodMonitor defines monitoring for a set of pods.

@@ -781,7 +781,7 @@ More info: string -monitoring.coreos.com/v1 +monitoring.rhobs/v1 @@ -810,7 +810,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + PodMonitorSpec @@ -846,7 +846,7 @@ string podMetricsEndpoints
- + []PodMetricsEndpoint @@ -872,7 +872,7 @@ Kubernetes meta/v1.LabelSelector namespaceSelector
- + NamespaceSelector @@ -961,7 +961,7 @@ that will be kept in memory. 0 means no limit.

attachMetadata
- + AttachMetadata @@ -976,7 +976,7 @@ Requires Prometheus v2.35.0 and above.

-

Probe +

Probe

Probe defines monitoring for a set of static targets or ingresses.

@@ -995,7 +995,7 @@ Requires Prometheus v2.35.0 and above.

string -monitoring.coreos.com/v1 +monitoring.rhobs/v1 @@ -1024,7 +1024,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + ProbeSpec @@ -1049,7 +1049,7 @@ string prober
- + ProberSpec @@ -1076,7 +1076,7 @@ Example module configuring in the blackbox exporter: targets
- + ProbeTargets @@ -1089,7 +1089,7 @@ ProbeTargets interval
- + Duration @@ -1103,7 +1103,7 @@ If not specified Prometheus’ global scrape interval is used.

scrapeTimeout
- + Duration @@ -1117,7 +1117,7 @@ If not specified, the Prometheus global scrape timeout is used.

tlsConfig
- + ProbeTLSConfig @@ -1145,7 +1145,7 @@ the Prometheus Operator.

basicAuth
- + BasicAuth @@ -1159,7 +1159,7 @@ More info: + OAuth2 @@ -1172,7 +1172,7 @@ OAuth2 metricRelabelings
- + []RelabelConfig @@ -1185,7 +1185,7 @@ OAuth2 authorization
- + SafeAuthorization @@ -1276,7 +1276,7 @@ that will be kept in memory. 0 means no limit.

-

Prometheus +

Prometheus

Prometheus defines a Prometheus deployment.

@@ -1295,7 +1295,7 @@ that will be kept in memory. 0 means no limit.

string -monitoring.coreos.com/v1 +monitoring.rhobs/v1 @@ -1324,7 +1324,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + PrometheusSpec @@ -1339,7 +1339,7 @@ PrometheusSpec podMetadata
- + EmbeddedObjectMetadata @@ -1674,7 +1674,7 @@ string scrapeInterval
- + Duration @@ -1688,7 +1688,7 @@ Duration scrapeTimeout
- + Duration @@ -1776,7 +1776,7 @@ for use with kubectl proxy.

storage
- + StorageSpec @@ -1819,7 +1819,7 @@ container, that are generated as a result of StorageSpec objects.

web
- + PrometheusWebSpec @@ -1938,7 +1938,7 @@ Kubernetes core/v1.Affinity remoteWrite
- + []RemoteWriteSpec @@ -2055,7 +2055,7 @@ Prometheus after the upgrade.

apiserverConfig
- + APIServerConfig @@ -2096,7 +2096,7 @@ Default: “web”

arbitraryFSAccessThroughSMs
- + ArbitraryFSAccessThroughSMsConfig @@ -2280,7 +2280,7 @@ greater than zero and less than spec.enforcedKeepDroppedTargets.

enforcedBodySizeLimit
- + ByteSize @@ -2313,7 +2313,7 @@ enabling the StatefulSetMinReadySeconds feature gate.

hostAliases
- + []HostAlias @@ -2328,7 +2328,7 @@ hosts file if specified.

additionalArgs
- + []Argument @@ -2363,7 +2363,7 @@ bool excludedFromEnforcement
- + []ObjectReference @@ -2407,7 +2407,7 @@ PodMonitor and ServiceMonitor objects.

tracingConfig
- + PrometheusTracingConfig @@ -2423,7 +2423,7 @@ breaking way.

bodySizeLimit
- + ByteSize @@ -2552,7 +2552,7 @@ specified as part of the image name.

retention
- + Duration @@ -2566,7 +2566,7 @@ Duration retentionSize
- + ByteSize @@ -2590,7 +2590,7 @@ bool rules
- + Rules @@ -2603,7 +2603,7 @@ Rules prometheusRulesExcludedFromEnforce
- + []PrometheusRuleExcludeConfig @@ -2652,7 +2652,7 @@ namespace only.

query
- + QuerySpec @@ -2666,7 +2666,7 @@ QuerySpec alerting
- + AlertingSpec @@ -2728,7 +2728,7 @@ Prometheus after the upgrade.

remoteRead
- + []RemoteReadSpec @@ -2742,7 +2742,7 @@ Prometheus after the upgrade.

thanos
- + ThanosSpec @@ -2791,7 +2791,7 @@ merge in Prometheus.

exemplars
- + Exemplars @@ -2806,7 +2806,7 @@ It requires to enable the exemplar-storage feature flag to be effec evaluationInterval
- + Duration @@ -2837,7 +2837,7 @@ ensure only clients authorized to perform these actions can do so.

tsdb
- + TSDBSpec @@ -2854,7 +2854,7 @@ TSDBSpec status
- + PrometheusStatus @@ -2867,7 +2867,7 @@ More info: -

PrometheusRule +

PrometheusRule

PrometheusRule defines recording and alerting rules for a Prometheus instance

@@ -2886,7 +2886,7 @@ More info: string -monitoring.coreos.com/v1 +monitoring.rhobs/v1 @@ -2915,7 +2915,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + PrometheusRuleSpec @@ -2929,7 +2929,7 @@ PrometheusRuleSpec groups
- + []RuleGroup @@ -2943,7 +2943,7 @@ PrometheusRuleSpec -

ServiceMonitor +

ServiceMonitor

ServiceMonitor defines monitoring for a set of services.

@@ -2962,7 +2962,7 @@ PrometheusRuleSpec string -monitoring.coreos.com/v1 +monitoring.rhobs/v1 @@ -2991,7 +2991,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + ServiceMonitorSpec @@ -3043,7 +3043,7 @@ then the job="bar" label is added to all metrics.

endpoints
- + []Endpoint @@ -3069,7 +3069,7 @@ Kubernetes meta/v1.LabelSelector namespaceSelector
- + NamespaceSelector @@ -3159,7 +3159,7 @@ that will be kept in memory. 0 means no limit.

attachMetadata
- + AttachMetadata @@ -3174,7 +3174,7 @@ Requires Prometheus v2.37.0 and above.

-

ThanosRuler +

ThanosRuler

ThanosRuler defines a ThanosRuler deployment.

@@ -3193,7 +3193,7 @@ Requires Prometheus v2.37.0 and above.

string -monitoring.coreos.com/v1 +monitoring.rhobs/v1 @@ -3222,7 +3222,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + ThanosRulerSpec @@ -3248,7 +3248,7 @@ string podMetadata
- + EmbeddedObjectMetadata @@ -3431,7 +3431,7 @@ Thanos Ruler Pods.

storage
- + StorageSpec @@ -3608,7 +3608,7 @@ being created.

excludedFromEnforcement
- + []ObjectReference @@ -3623,7 +3623,7 @@ Applies only if enforcedNamespaceLabel set to true.

prometheusRulesExcludedFromEnforce
- + []PrometheusRuleExcludeConfig @@ -3673,7 +3673,7 @@ Defaults to web.

evaluationInterval
- + Duration @@ -3686,7 +3686,7 @@ Duration retention
- + Duration @@ -3811,7 +3811,7 @@ string grpcServerTlsConfig
- + TLSConfig @@ -3883,7 +3883,7 @@ When used alongside with AlertRelabelConfigs, alertRelabelConfigFile takes prece hostAliases
- + []HostAlias @@ -3896,7 +3896,7 @@ When used alongside with AlertRelabelConfigs, alertRelabelConfigFile takes prece additionalArgs
- + []Argument @@ -3919,7 +3919,7 @@ fail and an error will be logged.

status
- + ThanosRulerStatus @@ -3932,10 +3932,10 @@ More info: -

APIServerConfig +

APIServerConfig

-(Appears on:CommonPrometheusFields) +(Appears on:CommonPrometheusFields)

APIServerConfig defines how the Prometheus server connects to the Kubernetes API server.

@@ -3965,7 +3965,7 @@ by an optional port number.

basicAuth
- + BasicAuth @@ -3994,7 +3994,7 @@ string tlsConfig
- + TLSConfig @@ -4008,7 +4008,7 @@ TLSConfig authorization
- + Authorization @@ -4035,10 +4035,10 @@ in clear-text. Prefer using authorization.

-

AlertingSpec +

AlertingSpec

-(Appears on:PrometheusSpec) +(Appears on:PrometheusSpec)

AlertingSpec defines parameters for alerting configuration of Prometheus servers.

@@ -4055,7 +4055,7 @@ in clear-text. Prefer using authorization.

alertmanagers
- + []AlertmanagerEndpoints @@ -4066,10 +4066,10 @@ in clear-text. Prefer using authorization.

-

AlertmanagerConfigMatcherStrategy +

AlertmanagerConfigMatcherStrategy

-(Appears on:AlertmanagerSpec) +(Appears on:AlertmanagerSpec)

AlertmanagerConfigMatcherStrategy defines the strategy used by AlertmanagerConfig objects to match alerts.

@@ -4097,10 +4097,10 @@ Default is OnNamespace.

-

AlertmanagerConfiguration +

AlertmanagerConfiguration

-(Appears on:AlertmanagerSpec) +(Appears on:AlertmanagerSpec)

AlertmanagerConfiguration defines the Alertmanager configuration.

@@ -4130,7 +4130,7 @@ The operator will not enforce a namespace label for routes and inhi global
- + AlertmanagerGlobalConfig @@ -4144,7 +4144,7 @@ AlertmanagerGlobalConfig templates
- + []SecretOrConfigMap @@ -4156,10 +4156,10 @@ AlertmanagerGlobalConfig -

AlertmanagerEndpoints +

AlertmanagerEndpoints

-(Appears on:AlertingSpec) +(Appears on:AlertingSpec)

AlertmanagerEndpoints defines a selection of a single Endpoints object @@ -4234,7 +4234,7 @@ string tlsConfig
- + TLSConfig @@ -4248,7 +4248,7 @@ TLSConfig basicAuth
- + BasicAuth @@ -4276,7 +4276,7 @@ string authorization
- + SafeAuthorization @@ -4291,7 +4291,7 @@ SafeAuthorization sigv4
- + Sigv4 @@ -4319,7 +4319,7 @@ It can be “v1” or “v2”.

timeout
- + Duration @@ -4343,10 +4343,10 @@ bool -

AlertmanagerGlobalConfig +

AlertmanagerGlobalConfig

-(Appears on:AlertmanagerConfiguration) +(Appears on:AlertmanagerConfiguration)

AlertmanagerGlobalConfig configures parameters that are valid in all other configuration contexts. @@ -4364,7 +4364,7 @@ See + GlobalSMTPConfig @@ -4378,7 +4378,7 @@ GlobalSMTPConfig resolveTimeout
- + Duration @@ -4393,7 +4393,7 @@ This has no impact on alerts from Prometheus, as they always include EndsAt.

httpConfig
- + HTTPConfig @@ -4454,10 +4454,10 @@ string -

AlertmanagerSpec +

AlertmanagerSpec

-(Appears on:Alertmanager) +(Appears on:Alertmanager)

AlertmanagerSpec is a specification of the desired behavior of the Alertmanager cluster. More info: @@ -4475,7 +4475,7 @@ string podMetadata
- + EmbeddedObjectMetadata @@ -4673,7 +4673,7 @@ size.

retention
- + GoDuration @@ -4687,7 +4687,7 @@ and must match the regular expression [0-9]+(ms|s|m|h) (millisecond storage
- + StorageSpec @@ -4948,7 +4948,7 @@ Needs to be provided for non RFC1918 1 addresses. clusterGossipInterval
- + GoDuration @@ -4961,7 +4961,7 @@ GoDuration clusterPushpullInterval
- + GoDuration @@ -4974,7 +4974,7 @@ GoDuration clusterPeerTimeout
- + GoDuration @@ -5024,7 +5024,7 @@ Kubernetes meta/v1.LabelSelector alertmanagerConfigMatcherStrategy
- + AlertmanagerConfigMatcherStrategy @@ -5067,7 +5067,7 @@ This is an alpha field from kubernetes 1.22 until 1.24 which requires enabling t hostAliases
- + []HostAlias @@ -5080,7 +5080,7 @@ This is an alpha field from kubernetes 1.22 until 1.24 which requires enabling t web
- + AlertmanagerWebSpec @@ -5093,7 +5093,7 @@ AlertmanagerWebSpec alertmanagerConfiguration
- + AlertmanagerConfiguration @@ -5119,10 +5119,10 @@ If the service account has automountServiceAccountToken: true, set -

AlertmanagerStatus +

AlertmanagerStatus

-(Appears on:Alertmanager) +(Appears on:Alertmanager)

AlertmanagerStatus is the most recent observed status of the Alertmanager cluster. Read-only. @@ -5200,7 +5200,7 @@ int32 conditions
- + []Condition @@ -5212,10 +5212,10 @@ int32 -

AlertmanagerWebSpec +

AlertmanagerWebSpec

-(Appears on:AlertmanagerSpec) +(Appears on:AlertmanagerSpec)

AlertmanagerWebSpec defines the web command line flags when starting Alertmanager.

@@ -5232,7 +5232,7 @@ int32 tlsConfig
- + WebTLSConfig @@ -5245,7 +5245,7 @@ WebTLSConfig httpConfig
- + WebHTTPConfig @@ -5282,10 +5282,10 @@ uint32 -

ArbitraryFSAccessThroughSMsConfig +

ArbitraryFSAccessThroughSMsConfig

-(Appears on:CommonPrometheusFields) +(Appears on:CommonPrometheusFields)

ArbitraryFSAccessThroughSMsConfig enables users to configure, whether @@ -5317,10 +5317,10 @@ bool -

Argument +

Argument

-(Appears on:CommonPrometheusFields, ThanosRulerSpec, ThanosSpec) +(Appears on:CommonPrometheusFields, ThanosRulerSpec, ThanosSpec)

Argument as part of the AdditionalArgs list.

@@ -5357,10 +5357,10 @@ string -

AttachMetadata +

AttachMetadata

-(Appears on:PodMonitorSpec, ServiceMonitorSpec) +(Appears on:PodMonitorSpec, ServiceMonitorSpec)

@@ -5385,10 +5385,10 @@ bool -

Authorization +

Authorization

-(Appears on:APIServerConfig, RemoteReadSpec, RemoteWriteSpec) +(Appears on:APIServerConfig, RemoteReadSpec, RemoteWriteSpec)

@@ -5439,7 +5439,7 @@ string -

AuthorizationValidationError +

AuthorizationValidationError

AuthorizationValidationError is returned by Authorization.Validate() @@ -5465,10 +5465,10 @@ string -

AzureAD +

AzureAD

-(Appears on:RemoteWriteSpec) +(Appears on:RemoteWriteSpec)

AzureAD defines the configuration for remote write’s azuread parameters.

@@ -5497,7 +5497,7 @@ string managedIdentity
- + ManagedIdentity @@ -5508,10 +5508,10 @@ ManagedIdentity -

BasicAuth +

BasicAuth

-(Appears on:APIServerConfig, AlertmanagerEndpoints, Endpoint, HTTPConfig, PodMetricsEndpoint, ProbeSpec, RemoteReadSpec, RemoteWriteSpec, ConsulSDConfig, HTTPConfig, HTTPSDConfig, ScrapeConfigSpec, HTTPConfig) +(Appears on:APIServerConfig, AlertmanagerEndpoints, Endpoint, HTTPConfig, PodMetricsEndpoint, ProbeSpec, RemoteReadSpec, RemoteWriteSpec, ConsulSDConfig, HTTPConfig, HTTPSDConfig, ScrapeConfigSpec, HTTPConfig)

BasicAuth allow an endpoint to authenticate over basic authentication @@ -5555,19 +5555,19 @@ for authentication.

-

ByteSize +

ByteSize (string alias)

-(Appears on:CommonPrometheusFields, PrometheusSpec) +(Appears on:CommonPrometheusFields, PrometheusSpec)

ByteSize is a valid memory size type based on powers-of-2, so 1KB is 1024B. Supported units: B, KB, KiB, MB, MiB, GB, GiB, TB, TiB, PB, PiB, EB, EiB Ex: 512MB.

-

CommonPrometheusFields +

CommonPrometheusFields

-(Appears on:PrometheusSpec, PrometheusAgentSpec) +(Appears on:PrometheusSpec, PrometheusAgentSpec)

CommonPrometheusFields are the options available to both the Prometheus server and agent.

@@ -5584,7 +5584,7 @@ Supported units: B, KB, KiB, MB, MiB, GB, GiB, TB, TiB, PB, PiB, EB, EiB Ex: podMetadata
- + EmbeddedObjectMetadata @@ -5919,7 +5919,7 @@ string scrapeInterval
- + Duration @@ -5933,7 +5933,7 @@ Duration scrapeTimeout
- + Duration @@ -6021,7 +6021,7 @@ for use with kubectl proxy.

storage
- + StorageSpec @@ -6064,7 +6064,7 @@ container, that are generated as a result of StorageSpec objects.

web
- + PrometheusWebSpec @@ -6183,7 +6183,7 @@ Kubernetes core/v1.Affinity remoteWrite
- + []RemoteWriteSpec @@ -6300,7 +6300,7 @@ Prometheus after the upgrade.

apiserverConfig
- + APIServerConfig @@ -6341,7 +6341,7 @@ Default: “web”

arbitraryFSAccessThroughSMs
- + ArbitraryFSAccessThroughSMsConfig @@ -6525,7 +6525,7 @@ greater than zero and less than spec.enforcedKeepDroppedTargets.

enforcedBodySizeLimit
- + ByteSize @@ -6558,7 +6558,7 @@ enabling the StatefulSetMinReadySeconds feature gate.

hostAliases
- + []HostAlias @@ -6573,7 +6573,7 @@ hosts file if specified.

additionalArgs
- + []Argument @@ -6608,7 +6608,7 @@ bool excludedFromEnforcement
- + []ObjectReference @@ -6652,7 +6652,7 @@ PodMonitor and ServiceMonitor objects.

tracingConfig
- + PrometheusTracingConfig @@ -6668,7 +6668,7 @@ breaking way.

bodySizeLimit
- + ByteSize @@ -6760,10 +6760,10 @@ that will be kept in memory. 0 means no limit.

-

Condition +

Condition

-(Appears on:AlertmanagerStatus, PrometheusStatus, ThanosRulerStatus) +(Appears on:AlertmanagerStatus, PrometheusStatus, ThanosRulerStatus)

Condition represents the state of the resources associated with the @@ -6781,7 +6781,7 @@ Prometheus, Alertmanager or ThanosRuler resource.

type
- + ConditionType @@ -6794,7 +6794,7 @@ ConditionType status
- + ConditionStatus @@ -6857,10 +6857,10 @@ instance.

-

ConditionStatus +

ConditionStatus (string alias)

-(Appears on:Condition) +(Appears on:Condition)

@@ -6881,10 +6881,10 @@ instance.

-

ConditionType +

ConditionType (string alias)

-(Appears on:Condition) +(Appears on:Condition)

@@ -6914,20 +6914,20 @@ The possible status values for this condition type are: -

Duration +

Duration (string alias)

-(Appears on:AlertmanagerEndpoints, AlertmanagerGlobalConfig, CommonPrometheusFields, Endpoint, MetadataConfig, PodMetricsEndpoint, ProbeSpec, PrometheusSpec, PrometheusTracingConfig, QuerySpec, RemoteReadSpec, RemoteWriteSpec, Rule, RuleGroup, TSDBSpec, ThanosRulerSpec, ThanosSpec, ConsulSDConfig, DNSSDConfig, EC2SDConfig, FileSDConfig, HTTPSDConfig, ScrapeConfigSpec) +(Appears on:AlertmanagerEndpoints, AlertmanagerGlobalConfig, CommonPrometheusFields, Endpoint, MetadataConfig, PodMetricsEndpoint, ProbeSpec, PrometheusSpec, PrometheusTracingConfig, QuerySpec, RemoteReadSpec, RemoteWriteSpec, Rule, RuleGroup, TSDBSpec, ThanosRulerSpec, ThanosSpec, ConsulSDConfig, DNSSDConfig, EC2SDConfig, FileSDConfig, HTTPSDConfig, ScrapeConfigSpec)

Duration is a valid time duration that can be parsed by Prometheus model.ParseDuration() function. Supported units: y, w, d, h, m, s, ms Examples: 30s, 1m, 1h20m15s, 15d

-

EmbeddedObjectMetadata +

EmbeddedObjectMetadata

-(Appears on:AlertmanagerSpec, CommonPrometheusFields, EmbeddedPersistentVolumeClaim, ThanosRulerSpec) +(Appears on:AlertmanagerSpec, CommonPrometheusFields, EmbeddedPersistentVolumeClaim, ThanosRulerSpec)

EmbeddedObjectMetadata contains a subset of the fields included in k8s.io/apimachinery/pkg/apis/meta/v1.ObjectMeta @@ -6990,10 +6990,10 @@ More info: http://kub -

EmbeddedPersistentVolumeClaim +

EmbeddedPersistentVolumeClaim

-(Appears on:StorageSpec) +(Appears on:StorageSpec)

EmbeddedPersistentVolumeClaim is an embedded version of k8s.io/api/core/v1.PersistentVolumeClaim. @@ -7011,7 +7011,7 @@ It contains TypeMeta and a reduced ObjectMeta.

metadata
- + EmbeddedObjectMetadata @@ -7199,10 +7199,10 @@ Kubernetes core/v1.PersistentVolumeClaimStatus -

Endpoint +

Endpoint

-(Appears on:ServiceMonitorSpec) +(Appears on:ServiceMonitorSpec)

Endpoint defines a scrapeable endpoint serving Prometheus metrics.

@@ -7279,7 +7279,7 @@ map[string][]string interval
- + Duration @@ -7293,7 +7293,7 @@ If not specified Prometheus’ global scrape interval is used.

scrapeTimeout
- + Duration @@ -7307,7 +7307,7 @@ If not specified, the Prometheus global scrape timeout is used unless it is less tlsConfig
- + TLSConfig @@ -7346,7 +7346,7 @@ the Prometheus Operator.

authorization
- + SafeAuthorization @@ -7381,7 +7381,7 @@ bool basicAuth
- + BasicAuth @@ -7395,7 +7395,7 @@ More info: + OAuth2 @@ -7408,7 +7408,7 @@ OAuth2 metricRelabelings
- + []RelabelConfig @@ -7421,7 +7421,7 @@ OAuth2 relabelings
- + []RelabelConfig @@ -7480,10 +7480,10 @@ More info: Exemplars +

Exemplars

-(Appears on:PrometheusSpec) +(Appears on:PrometheusSpec)

@@ -7513,10 +7513,10 @@ than zero disables the storage.

-

GlobalSMTPConfig +

GlobalSMTPConfig

-(Appears on:AlertmanagerGlobalConfig) +(Appears on:AlertmanagerGlobalConfig)

GlobalSMTPConfig configures global SMTP parameters. @@ -7546,7 +7546,7 @@ string smartHost
- + HostPort @@ -7635,20 +7635,20 @@ Note that Go does not support unencrypted connections to remote SMTP endpoints.< -

GoDuration +

GoDuration (string alias)

-(Appears on:AlertmanagerSpec) +(Appears on:AlertmanagerSpec)

GoDuration is a valid time duration that can be parsed by Go’s time.ParseDuration() function. Supported units: h, m, s, ms Examples: 45ms, 30s, 1m, 1h20m15s

-

HTTPConfig +

HTTPConfig

-(Appears on:AlertmanagerGlobalConfig) +(Appears on:AlertmanagerGlobalConfig)

HTTPConfig defines a client HTTP configuration. @@ -7666,7 +7666,7 @@ See + SafeAuthorization @@ -7681,7 +7681,7 @@ This is mutually exclusive with BasicAuth and is only available starting from Al basicAuth
- + BasicAuth @@ -7696,7 +7696,7 @@ This is mutually exclusive with Authorization. If both are defined, BasicAuth ta oauth2
- + OAuth2 @@ -7727,7 +7727,7 @@ object and accessible by the Prometheus Operator.

tlsConfig
- + SafeTLSConfig @@ -7763,10 +7763,10 @@ bool -

HostAlias +

HostAlias

-(Appears on:AlertmanagerSpec, CommonPrometheusFields, ThanosRulerSpec) +(Appears on:AlertmanagerSpec, CommonPrometheusFields, ThanosRulerSpec)

HostAlias holds the mapping between IP and hostnames that will be injected as an entry in the @@ -7804,10 +7804,10 @@ string -

HostPort +

HostPort

-(Appears on:GlobalSMTPConfig) +(Appears on:GlobalSMTPConfig)

HostPort represents a “host:port” network address.

@@ -7844,18 +7844,18 @@ string -

LabelName +

LabelName (string alias)

-(Appears on:RelabelConfig) +(Appears on:RelabelConfig)

LabelName is a valid Prometheus label name which may only contain ASCII letters, numbers, as well as underscores.

-

ManagedIdentity +

ManagedIdentity

-(Appears on:AzureAD) +(Appears on:AzureAD)

ManagedIdentity defines the Azure User-assigned Managed identity.

@@ -7881,10 +7881,10 @@ string -

MetadataConfig +

MetadataConfig

-(Appears on:RemoteWriteSpec) +(Appears on:RemoteWriteSpec)

MetadataConfig configures the sending of series metadata to the remote storage.

@@ -7912,7 +7912,7 @@ bool sendInterval
- + Duration @@ -7923,10 +7923,10 @@ Duration -

NamespaceSelector +

NamespaceSelector

-(Appears on:PodMonitorSpec, ProbeTargetIngress, ServiceMonitorSpec) +(Appears on:PodMonitorSpec, ProbeTargetIngress, ServiceMonitorSpec)

NamespaceSelector is a selector for selecting either all namespaces or a @@ -7968,10 +7968,10 @@ list restricting them.

-

NonEmptyDuration +

NonEmptyDuration (string alias)

-(Appears on:Rule) +(Appears on:Rule)

NonEmptyDuration is a valid time duration that can be parsed by Prometheus model.ParseDuration() function. @@ -7979,10 +7979,10 @@ Compared to Duration, NonEmptyDuration enforces a minimum length of 1. Supported units: y, w, d, h, m, s, ms Examples: 30s, 1m, 1h20m15s, 15d

-

OAuth2 +

OAuth2

-(Appears on:Endpoint, HTTPConfig, PodMetricsEndpoint, ProbeSpec, RemoteReadSpec, RemoteWriteSpec, ConsulSDConfig, HTTPConfig, HTTPConfig) +(Appears on:Endpoint, HTTPConfig, PodMetricsEndpoint, ProbeSpec, RemoteReadSpec, RemoteWriteSpec, ConsulSDConfig, HTTPConfig, HTTPConfig)

OAuth2 allows an endpoint to authenticate with OAuth2. @@ -8000,7 +8000,7 @@ More info: + SecretOrConfigMap @@ -8057,7 +8057,7 @@ map[string]string -

OAuth2ValidationError +

OAuth2ValidationError

@@ -8081,10 +8081,10 @@ string -

ObjectReference +

ObjectReference

-(Appears on:CommonPrometheusFields, ThanosRulerSpec) +(Appears on:CommonPrometheusFields, ThanosRulerSpec)

ObjectReference references a PodMonitor, ServiceMonitor, Probe or PrometheusRule object.

@@ -8106,7 +8106,7 @@ string (Optional) -

Group of the referent. When not specified, it defaults to monitoring.coreos.com

+

Group of the referent. When not specified, it defaults to monitoring.rhobs

@@ -8146,10 +8146,10 @@ string -

PodMetricsEndpoint +

PodMetricsEndpoint

-(Appears on:PodMonitorSpec) +(Appears on:PodMonitorSpec)

PodMetricsEndpoint defines a scrapeable endpoint of a Kubernetes Pod serving Prometheus metrics.

@@ -8226,7 +8226,7 @@ map[string][]string interval
- + Duration @@ -8240,7 +8240,7 @@ If not specified Prometheus’ global scrape interval is used.

scrapeTimeout
- + Duration @@ -8254,7 +8254,7 @@ If not specified, the Prometheus global scrape interval is used.

tlsConfig
- + PodMetricsEndpointTLSConfig @@ -8304,7 +8304,7 @@ bool basicAuth
- + BasicAuth @@ -8318,7 +8318,7 @@ More info: + OAuth2 @@ -8331,7 +8331,7 @@ OAuth2 authorization
- + SafeAuthorization @@ -8344,7 +8344,7 @@ SafeAuthorization metricRelabelings
- + []RelabelConfig @@ -8357,7 +8357,7 @@ SafeAuthorization relabelings
- + []RelabelConfig @@ -8416,10 +8416,10 @@ More info: PodMetricsEndpointTLSConfig +

PodMetricsEndpointTLSConfig

-(Appears on:PodMetricsEndpoint) +(Appears on:PodMetricsEndpoint)

PodMetricsEndpointTLSConfig specifies TLS configuration parameters.

@@ -8436,7 +8436,7 @@ More info: + SecretOrConfigMap @@ -8449,7 +8449,7 @@ SecretOrConfigMap cert
- + SecretOrConfigMap @@ -8495,10 +8495,10 @@ bool -

PodMonitorSpec +

PodMonitorSpec

-(Appears on:PodMonitor) +(Appears on:PodMonitor)

PodMonitorSpec contains specification parameters for a PodMonitor.

@@ -8537,7 +8537,7 @@ string podMetricsEndpoints
- + []PodMetricsEndpoint @@ -8563,7 +8563,7 @@ Kubernetes meta/v1.LabelSelector namespaceSelector
- + NamespaceSelector @@ -8652,7 +8652,7 @@ that will be kept in memory. 0 means no limit.

attachMetadata
- + AttachMetadata @@ -8664,10 +8664,10 @@ Requires Prometheus v2.35.0 and above.

-

ProbeSpec +

ProbeSpec

-(Appears on:Probe) +(Appears on:Probe)

ProbeSpec contains specification parameters for a Probe.

@@ -8695,7 +8695,7 @@ string prober
- + ProberSpec @@ -8722,7 +8722,7 @@ Example module configuring in the blackbox exporter: targets
- + ProbeTargets @@ -8735,7 +8735,7 @@ ProbeTargets interval
- + Duration @@ -8749,7 +8749,7 @@ If not specified Prometheus’ global scrape interval is used.

scrapeTimeout
- + Duration @@ -8763,7 +8763,7 @@ If not specified, the Prometheus global scrape timeout is used.

tlsConfig
- + ProbeTLSConfig @@ -8791,7 +8791,7 @@ the Prometheus Operator.

basicAuth
- + BasicAuth @@ -8805,7 +8805,7 @@ More info: + OAuth2 @@ -8818,7 +8818,7 @@ OAuth2 metricRelabelings
- + []RelabelConfig @@ -8831,7 +8831,7 @@ OAuth2 authorization
- + SafeAuthorization @@ -8919,10 +8919,10 @@ that will be kept in memory. 0 means no limit.

-

ProbeTLSConfig +

ProbeTLSConfig

-(Appears on:ProbeSpec) +(Appears on:ProbeSpec)

ProbeTLSConfig specifies TLS configuration parameters for the prober.

@@ -8939,7 +8939,7 @@ that will be kept in memory. 0 means no limit.

ca
- + SecretOrConfigMap @@ -8952,7 +8952,7 @@ SecretOrConfigMap cert
- + SecretOrConfigMap @@ -8998,10 +8998,10 @@ bool -

ProbeTargetIngress +

ProbeTargetIngress

-(Appears on:ProbeTargets) +(Appears on:ProbeTargets)

ProbeTargetIngress defines the set of Ingress objects considered for probing. @@ -9032,7 +9032,7 @@ Kubernetes meta/v1.LabelSelector namespaceSelector
- + NamespaceSelector @@ -9045,7 +9045,7 @@ NamespaceSelector relabelingConfigs
- + []RelabelConfig @@ -9062,10 +9062,10 @@ More info: ProbeTargetStaticConfig +

ProbeTargetStaticConfig

-(Appears on:ProbeTargets) +(Appears on:ProbeTargets)

ProbeTargetStaticConfig defines the set of static targets considered for probing.

@@ -9104,7 +9104,7 @@ map[string]string relabelingConfigs
- + []RelabelConfig @@ -9117,10 +9117,10 @@ More info: ProbeTargets +

ProbeTargets

-(Appears on:ProbeSpec) +(Appears on:ProbeSpec)

ProbeTargets defines how to discover the probed targets. @@ -9139,7 +9139,7 @@ If both are defined, staticConfig takes precedence.

staticConfig
- + ProbeTargetStaticConfig @@ -9155,7 +9155,7 @@ More info: + ProbeTargetIngress @@ -9168,7 +9168,7 @@ If staticConfig is also defined, staticConfig takes pr -

ProbeTargetsValidationError +

ProbeTargetsValidationError

ProbeTargetsValidationError is returned by ProbeTargets.Validate() @@ -9194,10 +9194,10 @@ string -

ProberSpec +

ProberSpec

-(Appears on:ProbeSpec) +(Appears on:ProbeSpec)

ProberSpec contains specification parameters for the Prober used for probing.

@@ -9259,10 +9259,10 @@ string -

PrometheusRuleExcludeConfig +

PrometheusRuleExcludeConfig

-(Appears on:PrometheusSpec, ThanosRulerSpec) +(Appears on:PrometheusSpec, ThanosRulerSpec)

PrometheusRuleExcludeConfig enables users to configure excluded @@ -9301,10 +9301,10 @@ string -

PrometheusRuleSpec +

PrometheusRuleSpec

-(Appears on:PrometheusRule) +(Appears on:PrometheusRule)

PrometheusRuleSpec contains specification parameters for a Rule.

@@ -9321,7 +9321,7 @@ string groups
- + []RuleGroup @@ -9332,10 +9332,10 @@ string -

PrometheusSpec +

PrometheusSpec

-(Appears on:Prometheus) +(Appears on:Prometheus)

PrometheusSpec is a specification of the desired behavior of the Prometheus cluster. More info: @@ -9353,7 +9353,7 @@ string podMetadata
- + EmbeddedObjectMetadata @@ -9688,7 +9688,7 @@ string scrapeInterval
- + Duration @@ -9702,7 +9702,7 @@ Duration scrapeTimeout
- + Duration @@ -9790,7 +9790,7 @@ for use with kubectl proxy.

storage
- + StorageSpec @@ -9833,7 +9833,7 @@ container, that are generated as a result of StorageSpec objects.

web
- + PrometheusWebSpec @@ -9952,7 +9952,7 @@ Kubernetes core/v1.Affinity remoteWrite
- + []RemoteWriteSpec @@ -10069,7 +10069,7 @@ Prometheus after the upgrade.

apiserverConfig
- + APIServerConfig @@ -10110,7 +10110,7 @@ Default: “web”

arbitraryFSAccessThroughSMs
- + ArbitraryFSAccessThroughSMsConfig @@ -10294,7 +10294,7 @@ greater than zero and less than spec.enforcedKeepDroppedTargets.

enforcedBodySizeLimit
- + ByteSize @@ -10327,7 +10327,7 @@ enabling the StatefulSetMinReadySeconds feature gate.

hostAliases
- + []HostAlias @@ -10342,7 +10342,7 @@ hosts file if specified.

additionalArgs
- + []Argument @@ -10377,7 +10377,7 @@ bool excludedFromEnforcement
- + []ObjectReference @@ -10421,7 +10421,7 @@ PodMonitor and ServiceMonitor objects.

tracingConfig
- + PrometheusTracingConfig @@ -10437,7 +10437,7 @@ breaking way.

bodySizeLimit
- + ByteSize @@ -10566,7 +10566,7 @@ specified as part of the image name.

retention
- + Duration @@ -10580,7 +10580,7 @@ Duration retentionSize
- + ByteSize @@ -10604,7 +10604,7 @@ bool rules
- + Rules @@ -10617,7 +10617,7 @@ Rules prometheusRulesExcludedFromEnforce
- + []PrometheusRuleExcludeConfig @@ -10666,7 +10666,7 @@ namespace only.

query
- + QuerySpec @@ -10680,7 +10680,7 @@ QuerySpec alerting
- + AlertingSpec @@ -10742,7 +10742,7 @@ Prometheus after the upgrade.

remoteRead
- + []RemoteReadSpec @@ -10756,7 +10756,7 @@ Prometheus after the upgrade.

thanos
- + ThanosSpec @@ -10805,7 +10805,7 @@ merge in Prometheus.

exemplars
- + Exemplars @@ -10820,7 +10820,7 @@ It requires to enable the exemplar-storage feature flag to be effec evaluationInterval
- + Duration @@ -10851,7 +10851,7 @@ ensure only clients authorized to perform these actions can do so.

tsdb
- + TSDBSpec @@ -10863,10 +10863,10 @@ TSDBSpec -

PrometheusStatus +

PrometheusStatus

-(Appears on:Prometheus, PrometheusAgent) +(Appears on:Prometheus, PrometheusAgent)

PrometheusStatus is the most recent observed status of the Prometheus cluster. @@ -10944,7 +10944,7 @@ int32 conditions
- + []Condition @@ -10958,7 +10958,7 @@ int32 shardStatuses
- + []ShardStatus @@ -10970,10 +10970,10 @@ int32 -

PrometheusTracingConfig +

PrometheusTracingConfig

-(Appears on:CommonPrometheusFields) +(Appears on:CommonPrometheusFields)

@@ -11060,7 +11060,7 @@ string timeout
- + Duration @@ -11074,7 +11074,7 @@ Duration tlsConfig
- + TLSConfig @@ -11086,10 +11086,10 @@ TLSConfig -

PrometheusWebSpec +

PrometheusWebSpec

-(Appears on:CommonPrometheusFields) +(Appears on:CommonPrometheusFields)

PrometheusWebSpec defines the configuration of the Prometheus web server.

@@ -11106,7 +11106,7 @@ TLSConfig tlsConfig
- + WebTLSConfig @@ -11119,7 +11119,7 @@ WebTLSConfig httpConfig
- + WebHTTPConfig @@ -11155,10 +11155,10 @@ A zero value means that Prometheus doesn’t accept any incoming connection. -

QuerySpec +

QuerySpec

-(Appears on:PrometheusSpec) +(Appears on:PrometheusSpec)

QuerySpec defines the query command line flags when starting Prometheus.

@@ -11213,7 +11213,7 @@ so this also limits the number of samples a query can return.

timeout
- + Duration @@ -11225,10 +11225,10 @@ Duration -

QueueConfig +

QueueConfig

-(Appears on:RemoteWriteSpec) +(Appears on:RemoteWriteSpec)

QueueConfig allows the tuning of remote write’s queue_config parameters. @@ -11345,10 +11345,10 @@ This is experimental feature and might change in the future.

-

RelabelConfig +

RelabelConfig

-(Appears on:Endpoint, PodMetricsEndpoint, ProbeSpec, ProbeTargetIngress, ProbeTargetStaticConfig, RemoteWriteSpec, ScrapeConfigSpec) +(Appears on:Endpoint, PodMetricsEndpoint, ProbeSpec, ProbeTargetIngress, ProbeTargetStaticConfig, RemoteWriteSpec, ScrapeConfigSpec)

RelabelConfig allows dynamic rewriting of the label set for targets, alerts, @@ -11367,7 +11367,7 @@ scraped samples and remote write samples.

sourceLabels
- + []LabelName @@ -11456,10 +11456,10 @@ string -

RemoteReadSpec +

RemoteReadSpec

-(Appears on:PrometheusSpec) +(Appears on:PrometheusSpec)

RemoteReadSpec defines the configuration for Prometheus to read back samples @@ -11515,7 +11515,7 @@ in a selector to query the remote read endpoint.

remoteTimeout
- + Duration @@ -11554,7 +11554,7 @@ the local storage should have complete data for.

oauth2
- + OAuth2 @@ -11570,7 +11570,7 @@ OAuth2 basicAuth
- + BasicAuth @@ -11597,7 +11597,7 @@ string authorization
- + Authorization @@ -11626,7 +11626,7 @@ in clear-text. Prefer using authorization.

tlsConfig
- + TLSConfig @@ -11675,10 +11675,10 @@ bool -

RemoteWriteSpec +

RemoteWriteSpec

-(Appears on:CommonPrometheusFields) +(Appears on:CommonPrometheusFields)

RemoteWriteSpec defines the configuration to write samples from Prometheus @@ -11749,7 +11749,7 @@ over remote write.

remoteTimeout
- + Duration @@ -11776,7 +11776,7 @@ Be aware that headers that are set by Prometheus itself can’t be overwritt writeRelabelConfigs
- + []RelabelConfig @@ -11790,7 +11790,7 @@ Be aware that headers that are set by Prometheus itself can’t be overwritt oauth2
- + OAuth2 @@ -11806,7 +11806,7 @@ OAuth2 basicAuth
- + BasicAuth @@ -11833,7 +11833,7 @@ string authorization
- + Authorization @@ -11849,7 +11849,7 @@ Authorization sigv4
- + Sigv4 @@ -11865,7 +11865,7 @@ Sigv4 azureAd
- + AzureAD @@ -11894,7 +11894,7 @@ in clear-text. Prefer using authorization.

tlsConfig
- + TLSConfig @@ -11919,7 +11919,7 @@ string queueConfig
- + QueueConfig @@ -11933,7 +11933,7 @@ QueueConfig metadataConfig
- + MetadataConfig @@ -11945,10 +11945,10 @@ MetadataConfig -

Rule +

Rule

-(Appears on:RuleGroup) +(Appears on:RuleGroup)

Rule describes an alerting or recording rule @@ -12003,7 +12003,7 @@ k8s.io/apimachinery/pkg/util/intstr.IntOrString for
- + Duration @@ -12017,7 +12017,7 @@ Duration keep_firing_for
- + NonEmptyDuration @@ -12052,10 +12052,10 @@ Only valid for alerting rules.

-

RuleGroup +

RuleGroup

-(Appears on:PrometheusRuleSpec) +(Appears on:PrometheusRuleSpec)

RuleGroup is a list of sequentially evaluated recording and alerting rules.

@@ -12083,7 +12083,7 @@ string interval
- + Duration @@ -12097,7 +12097,7 @@ Duration rules
- + []Rule @@ -12136,10 +12136,10 @@ Limit is supported starting with Prometheus >= 2.31 and Thanos Ruler >= 0. -

Rules +

Rules

-(Appears on:PrometheusSpec) +(Appears on:PrometheusSpec)

@@ -12155,7 +12155,7 @@ Limit is supported starting with Prometheus >= 2.31 and Thanos Ruler >= 0. alert
- + RulesAlert @@ -12167,10 +12167,10 @@ RulesAlert -

RulesAlert +

RulesAlert

-(Appears on:Rules) +(Appears on:Rules)

@@ -12221,10 +12221,10 @@ Alertmanager.

-

SafeAuthorization +

SafeAuthorization

-(Appears on:AlertmanagerEndpoints, Authorization, Endpoint, HTTPConfig, PodMetricsEndpoint, ProbeSpec, ConsulSDConfig, HTTPConfig, HTTPSDConfig, ScrapeConfigSpec, HTTPConfig) +(Appears on:AlertmanagerEndpoints, Authorization, Endpoint, HTTPConfig, PodMetricsEndpoint, ProbeSpec, ConsulSDConfig, HTTPConfig, HTTPSDConfig, ScrapeConfigSpec, HTTPConfig)

SafeAuthorization specifies a subset of the Authorization struct, that is @@ -12267,10 +12267,10 @@ Kubernetes core/v1.SecretKeySelector -

SafeTLSConfig +

SafeTLSConfig

-(Appears on:HTTPConfig, PodMetricsEndpointTLSConfig, ProbeTLSConfig, TLSConfig, ConsulSDConfig, EmailConfig, HTTPConfig, HTTPSDConfig, ScrapeConfigSpec, EmailConfig, HTTPConfig) +(Appears on:HTTPConfig, PodMetricsEndpointTLSConfig, ProbeTLSConfig, TLSConfig, ConsulSDConfig, EmailConfig, HTTPConfig, HTTPSDConfig, ScrapeConfigSpec, EmailConfig, HTTPConfig)

SafeTLSConfig specifies safe TLS configuration parameters.

@@ -12287,7 +12287,7 @@ Kubernetes core/v1.SecretKeySelector ca
- + SecretOrConfigMap @@ -12300,7 +12300,7 @@ SecretOrConfigMap cert
- + SecretOrConfigMap @@ -12346,10 +12346,10 @@ bool -

SecretOrConfigMap +

SecretOrConfigMap

-(Appears on:AlertmanagerConfiguration, OAuth2, SafeTLSConfig, WebTLSConfig) +(Appears on:AlertmanagerConfiguration, OAuth2, SafeTLSConfig, WebTLSConfig)

SecretOrConfigMap allows to specify data as a Secret or ConfigMap. Fields are mutually exclusive.

@@ -12390,7 +12390,7 @@ Kubernetes core/v1.ConfigMapKeySelector -

SecretOrConfigMapValidationError +

SecretOrConfigMapValidationError

SecretOrConfigMapValidationError is returned by SecretOrConfigMap.Validate() @@ -12416,10 +12416,10 @@ string -

ServiceMonitorSpec +

ServiceMonitorSpec

-(Appears on:ServiceMonitor) +(Appears on:ServiceMonitor)

ServiceMonitorSpec contains specification parameters for a ServiceMonitor.

@@ -12473,7 +12473,7 @@ then the job="bar" label is added to all metrics.

endpoints
- + []Endpoint @@ -12499,7 +12499,7 @@ Kubernetes meta/v1.LabelSelector namespaceSelector
- + NamespaceSelector @@ -12589,7 +12589,7 @@ that will be kept in memory. 0 means no limit.

attachMetadata
- + AttachMetadata @@ -12601,10 +12601,10 @@ Requires Prometheus v2.37.0 and above.

-

ShardStatus +

ShardStatus

-(Appears on:PrometheusStatus) +(Appears on:PrometheusStatus)

@@ -12675,10 +12675,10 @@ int32 -

Sigv4 +

Sigv4

-(Appears on:AlertmanagerEndpoints, RemoteWriteSpec, SNSConfig, SNSConfig) +(Appears on:AlertmanagerEndpoints, RemoteWriteSpec, SNSConfig, SNSConfig)

Sigv4 optionally configures AWS’s Signature Verification 4 signing process to @@ -12757,10 +12757,10 @@ string -

StorageSpec +

StorageSpec

-(Appears on:AlertmanagerSpec, CommonPrometheusFields, ThanosRulerSpec) +(Appears on:AlertmanagerSpec, CommonPrometheusFields, ThanosRulerSpec)

StorageSpec defines the configured storage for a group Prometheus servers. @@ -12824,7 +12824,7 @@ More info: + EmbeddedPersistentVolumeClaim @@ -12837,10 +12837,10 @@ is to use a label selector alongside manually created PersistentVolumes.

-

TLSConfig +

TLSConfig

-(Appears on:APIServerConfig, AlertmanagerEndpoints, Endpoint, PrometheusTracingConfig, RemoteReadSpec, RemoteWriteSpec, ThanosRulerSpec, ThanosSpec) +(Appears on:APIServerConfig, AlertmanagerEndpoints, Endpoint, PrometheusTracingConfig, RemoteReadSpec, RemoteWriteSpec, ThanosRulerSpec, ThanosSpec)

TLSConfig extends the safe TLS configuration with file parameters.

@@ -12857,7 +12857,7 @@ is to use a label selector alongside manually created PersistentVolumes.

ca
- + SecretOrConfigMap @@ -12870,7 +12870,7 @@ SecretOrConfigMap cert
- + SecretOrConfigMap @@ -12949,7 +12949,7 @@ string -

TLSConfigValidationError +

TLSConfigValidationError

TLSConfigValidationError is returned by TLSConfig.Validate() on semantically @@ -12975,10 +12975,10 @@ string -

TSDBSpec +

TSDBSpec

-(Appears on:PrometheusSpec) +(Appears on:PrometheusSpec)

@@ -12994,7 +12994,7 @@ string outOfOrderTimeWindow
- + Duration @@ -13010,10 +13010,10 @@ the timestamp of the sample is >= (TSDB.MaxTime - outOfOrderTimeWindow).

-

ThanosRulerSpec +

ThanosRulerSpec

-(Appears on:ThanosRuler) +(Appears on:ThanosRuler)

ThanosRulerSpec is a specification of the desired behavior of the ThanosRuler. More info: @@ -13042,7 +13042,7 @@ string podMetadata
- + EmbeddedObjectMetadata @@ -13225,7 +13225,7 @@ Thanos Ruler Pods.

storage
- + StorageSpec @@ -13402,7 +13402,7 @@ being created.

excludedFromEnforcement
- + []ObjectReference @@ -13417,7 +13417,7 @@ Applies only if enforcedNamespaceLabel set to true.

prometheusRulesExcludedFromEnforce
- + []PrometheusRuleExcludeConfig @@ -13467,7 +13467,7 @@ Defaults to web.

evaluationInterval
- + Duration @@ -13480,7 +13480,7 @@ Duration retention
- + Duration @@ -13605,7 +13605,7 @@ string grpcServerTlsConfig
- + TLSConfig @@ -13677,7 +13677,7 @@ When used alongside with AlertRelabelConfigs, alertRelabelConfigFile takes prece hostAliases
- + []HostAlias @@ -13690,7 +13690,7 @@ When used alongside with AlertRelabelConfigs, alertRelabelConfigFile takes prece additionalArgs
- + []Argument @@ -13708,10 +13708,10 @@ fail and an error will be logged.

-

ThanosRulerStatus +

ThanosRulerStatus

-(Appears on:ThanosRuler) +(Appears on:ThanosRuler)

ThanosRulerStatus is the most recent observed status of the ThanosRuler. Read-only. @@ -13789,7 +13789,7 @@ int32 conditions
- + []Condition @@ -13801,10 +13801,10 @@ int32 -

ThanosSpec +

ThanosSpec

-(Appears on:PrometheusSpec) +(Appears on:PrometheusSpec)

ThanosSpec defines the configuration of the Thanos sidecar.

@@ -14007,7 +14007,7 @@ in a breaking way.

grpcServerTlsConfig
- + TLSConfig @@ -14058,7 +14058,7 @@ units are ms, s, m, h, d, w, y.

blockSize
- + Duration @@ -14077,7 +14077,7 @@ example, 30s * 120 = 1h.

readyTimeout
- + Duration @@ -14091,7 +14091,7 @@ Prometheus to start.

getConfigInterval
- + Duration @@ -14104,7 +14104,7 @@ Duration getConfigTimeout
- + Duration @@ -14133,7 +14133,7 @@ VolumeMounts specified will be appended to other VolumeMounts in the additionalArgs
- + []Argument @@ -14150,10 +14150,10 @@ fail and an error will be logged.

-

WebConfigFileFields +

WebConfigFileFields

-(Appears on:AlertmanagerWebSpec, PrometheusWebSpec) +(Appears on:AlertmanagerWebSpec, PrometheusWebSpec)

WebConfigFileFields defines the file content for –web.config.file flag.

@@ -14170,7 +14170,7 @@ fail and an error will be logged.

tlsConfig
- + WebTLSConfig @@ -14183,7 +14183,7 @@ WebTLSConfig httpConfig
- + WebHTTPConfig @@ -14194,10 +14194,10 @@ WebHTTPConfig -

WebHTTPConfig +

WebHTTPConfig

-(Appears on:WebConfigFileFields) +(Appears on:WebConfigFileFields)

WebHTTPConfig defines HTTP parameters for web server.

@@ -14227,7 +14227,7 @@ Whenever the value of the field changes, a rolling update will be triggered.

headers
- + WebHTTPHeaders @@ -14238,10 +14238,10 @@ WebHTTPHeaders -

WebHTTPHeaders +

WebHTTPHeaders

-(Appears on:WebHTTPConfig) +(Appears on:WebHTTPConfig)

WebHTTPHeaders defines the list of headers that can be added to HTTP responses.

@@ -14323,10 +14323,10 @@ domain and subdomains over HTTPS. -

WebTLSConfig +

WebTLSConfig

-(Appears on:WebConfigFileFields) +(Appears on:WebConfigFileFields)

WebTLSConfig defines the TLS parameters for HTTPS.

@@ -14356,7 +14356,7 @@ Kubernetes core/v1.SecretKeySelector cert
- + SecretOrConfigMap @@ -14382,7 +14382,7 @@ For more detail on clientAuth options: client_ca
- + SecretOrConfigMap @@ -14455,7 +14455,7 @@ order. Available curves are documented in the go documentation: -

WebTLSConfigError +

WebTLSConfigError

WebTLSConfigError is returned by WebTLSConfig.Validate() on @@ -14482,16 +14482,16 @@ string


-

monitoring.coreos.com/v1alpha1

+

monitoring.rhobs/v1alpha1

Resource Types: -

AlertmanagerConfig +

AlertmanagerConfig

AlertmanagerConfig configures the Prometheus Alertmanager, @@ -14511,7 +14511,7 @@ specifying how alerts should be grouped, inhibited and notified to external syst string -monitoring.coreos.com/v1alpha1 +monitoring.rhobs/v1alpha1 @@ -14540,7 +14540,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + AlertmanagerConfigSpec @@ -14553,7 +14553,7 @@ AlertmanagerConfigSpec route
- + Route @@ -14569,7 +14569,7 @@ configuration as a first-level route.

receivers
- + []Receiver @@ -14583,7 +14583,7 @@ configuration as a first-level route.

inhibitRules
- + []InhibitRule @@ -14598,7 +14598,7 @@ the resource’s namespace.

muteTimeIntervals
- + []MuteTimeInterval @@ -14613,7 +14613,7 @@ the resource’s namespace.

-

PrometheusAgent +

PrometheusAgent

PrometheusAgent defines a Prometheus agent deployment.

@@ -14632,7 +14632,7 @@ the resource’s namespace.

string -monitoring.coreos.com/v1alpha1 +monitoring.rhobs/v1alpha1 @@ -14661,7 +14661,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + PrometheusAgentSpec @@ -14676,7 +14676,7 @@ PrometheusAgentSpec podMetadata
- + EmbeddedObjectMetadata @@ -15011,7 +15011,7 @@ string scrapeInterval
- + Duration @@ -15025,7 +15025,7 @@ Duration scrapeTimeout
- + Duration @@ -15113,7 +15113,7 @@ for use with kubectl proxy.

storage
- + StorageSpec @@ -15156,7 +15156,7 @@ container, that are generated as a result of StorageSpec objects.

web
- + PrometheusWebSpec @@ -15275,7 +15275,7 @@ Kubernetes core/v1.Affinity remoteWrite
- + []RemoteWriteSpec @@ -15392,7 +15392,7 @@ Prometheus after the upgrade.

apiserverConfig
- + APIServerConfig @@ -15433,7 +15433,7 @@ Default: “web”

arbitraryFSAccessThroughSMs
- + ArbitraryFSAccessThroughSMsConfig @@ -15617,7 +15617,7 @@ greater than zero and less than spec.enforcedKeepDroppedTargets.

enforcedBodySizeLimit
- + ByteSize @@ -15650,7 +15650,7 @@ enabling the StatefulSetMinReadySeconds feature gate.

hostAliases
- + []HostAlias @@ -15665,7 +15665,7 @@ hosts file if specified.

additionalArgs
- + []Argument @@ -15700,7 +15700,7 @@ bool excludedFromEnforcement
- + []ObjectReference @@ -15744,7 +15744,7 @@ PodMonitor and ServiceMonitor objects.

tracingConfig
- + PrometheusTracingConfig @@ -15760,7 +15760,7 @@ breaking way.

bodySizeLimit
- + ByteSize @@ -15857,7 +15857,7 @@ that will be kept in memory. 0 means no limit.

status
- + PrometheusStatus @@ -15870,7 +15870,7 @@ More info: -

ScrapeConfig +

ScrapeConfig

ScrapeConfig defines a namespaced Prometheus scrape_config to be aggregated across @@ -15890,7 +15890,7 @@ multiple namespaces into the Prometheus configuration.

string -monitoring.coreos.com/v1alpha1 +monitoring.rhobs/v1alpha1 @@ -15919,7 +15919,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + ScrapeConfigSpec @@ -15932,7 +15932,7 @@ ScrapeConfigSpec staticConfigs
- + []StaticConfig @@ -15946,7 +15946,7 @@ ScrapeConfigSpec fileSDConfigs
- + []FileSDConfig @@ -15960,7 +15960,7 @@ ScrapeConfigSpec httpSDConfigs
- + []HTTPSDConfig @@ -15974,7 +15974,7 @@ ScrapeConfigSpec kubernetesSDConfigs
- + []KubernetesSDConfig @@ -15988,7 +15988,7 @@ ScrapeConfigSpec consulSDConfigs
- + []ConsulSDConfig @@ -16002,7 +16002,7 @@ ScrapeConfigSpec dnsSDConfigs
- + []DNSSDConfig @@ -16016,7 +16016,7 @@ ScrapeConfigSpec ec2SDConfigs
- + []EC2SDConfig @@ -16030,7 +16030,7 @@ ScrapeConfigSpec relabelings
- + []RelabelConfig @@ -16059,7 +16059,7 @@ string scrapeInterval
- + Duration @@ -16073,7 +16073,7 @@ Duration scrapeTimeout
- + Duration @@ -16136,7 +16136,7 @@ If empty, Prometheus uses HTTP by default.

basicAuth
- + BasicAuth @@ -16150,7 +16150,7 @@ BasicAuth authorization
- + SafeAuthorization @@ -16164,7 +16164,7 @@ SafeAuthorization tlsConfig
- + SafeTLSConfig @@ -16255,7 +16255,7 @@ that will be kept in memory. 0 means no limit.

metricRelabelings
- + []RelabelConfig @@ -16270,10 +16270,10 @@ that will be kept in memory. 0 means no limit.

-

AlertmanagerConfigSpec +

AlertmanagerConfigSpec

-(Appears on:AlertmanagerConfig) +(Appears on:AlertmanagerConfig)

AlertmanagerConfigSpec is a specification of the desired behavior of the Alertmanager configuration. @@ -16292,7 +16292,7 @@ the namespace label is equal to the namespace of the AlertmanagerCo route
- + Route @@ -16308,7 +16308,7 @@ configuration as a first-level route.

receivers
- + []Receiver @@ -16322,7 +16322,7 @@ configuration as a first-level route.

inhibitRules
- + []InhibitRule @@ -16337,7 +16337,7 @@ the resource’s namespace.

muteTimeIntervals
- + []MuteTimeInterval @@ -16349,10 +16349,10 @@ the resource’s namespace.

-

ConsulSDConfig +

ConsulSDConfig

-(Appears on:ScrapeConfigSpec) +(Appears on:ScrapeConfigSpec)

ConsulSDConfig defines a Consul service discovery configuration @@ -16505,7 +16505,7 @@ If unset, Prometheus uses its default value.

refresh_interval
- + Duration @@ -16521,7 +16521,7 @@ If unset, Prometheus uses its default value.

basicAuth
- + BasicAuth @@ -16536,7 +16536,7 @@ More info: + SafeAuthorization @@ -16550,7 +16550,7 @@ SafeAuthorization oauth2
- + OAuth2 @@ -16643,7 +16643,7 @@ If unset, Prometheus uses its default value.

tlsConfig
- + SafeTLSConfig @@ -16655,10 +16655,10 @@ SafeTLSConfig -

DNSSDConfig +

DNSSDConfig

-(Appears on:ScrapeConfigSpec) +(Appears on:ScrapeConfigSpec)

DNSSDConfig allows specifying a set of DNS domain names which are periodically queried to discover a list of targets. @@ -16688,7 +16688,7 @@ See + Duration @@ -16727,10 +16727,10 @@ Ignored for SRV records

-

DayOfMonthRange +

DayOfMonthRange

-(Appears on:TimeInterval) +(Appears on:TimeInterval)

DayOfMonthRange is an inclusive range of days of the month beginning at 1

@@ -16767,10 +16767,10 @@ int -

DiscordConfig +

DiscordConfig

-(Appears on:Receiver) +(Appears on:Receiver)

DiscordConfig configures notifications via Discord. @@ -16839,7 +16839,7 @@ string httpConfig
- + HTTPConfig @@ -16851,10 +16851,10 @@ HTTPConfig -

EC2Filter +

EC2Filter

-(Appears on:EC2SDConfig) +(Appears on:EC2SDConfig)

EC2Filter is the configuration for filtering EC2 instances.

@@ -16889,10 +16889,10 @@ string -

EC2SDConfig +

EC2SDConfig

-(Appears on:ScrapeConfigSpec) +(Appears on:ScrapeConfigSpec)

EC2SDConfig allow retrieving scrape targets from AWS EC2 instances. @@ -16964,7 +16964,7 @@ string refreshInterval
- + Duration @@ -16991,7 +16991,7 @@ instead be specified in the relabeling rule.

filters
- + []EC2Filter @@ -17006,10 +17006,10 @@ Filter API documentation: EmailConfig +

EmailConfig

-(Appears on:Receiver) +(Appears on:Receiver)

EmailConfig configures notifications via Email.

@@ -17140,7 +17140,7 @@ string headers
- + []KeyValue @@ -17191,7 +17191,7 @@ Note that Go does not support unencrypted connections to remote SMTP endpoints.< tlsConfig
- + SafeTLSConfig @@ -17203,10 +17203,10 @@ SafeTLSConfig -

FileSDConfig +

FileSDConfig

-(Appears on:ScrapeConfigSpec) +(Appears on:ScrapeConfigSpec)

FileSDConfig defines a Prometheus file service discovery configuration @@ -17224,7 +17224,7 @@ See + []SDFile @@ -17240,7 +17240,7 @@ Files must be mounted using Prometheus.ConfigMaps or Prometheus.Secrets.

refreshInterval
- + Duration @@ -17252,10 +17252,10 @@ Duration -

HTTPConfig +

HTTPConfig

-(Appears on:DiscordConfig, MSTeamsConfig, OpsGenieConfig, PagerDutyConfig, PushoverConfig, SNSConfig, SlackConfig, TelegramConfig, VictorOpsConfig, WeChatConfig, WebexConfig, WebhookConfig) +(Appears on:DiscordConfig, MSTeamsConfig, OpsGenieConfig, PagerDutyConfig, PushoverConfig, SNSConfig, SlackConfig, TelegramConfig, VictorOpsConfig, WeChatConfig, WebexConfig, WebhookConfig)

HTTPConfig defines a client HTTP configuration. @@ -17273,7 +17273,7 @@ See + SafeAuthorization @@ -17288,7 +17288,7 @@ This is mutually exclusive with BasicAuth and is only available starting from Al basicAuth
- + BasicAuth @@ -17303,7 +17303,7 @@ This is mutually exclusive with Authorization. If both are defined, BasicAuth ta oauth2
- + OAuth2 @@ -17334,7 +17334,7 @@ object and accessible by the Prometheus Operator.

tlsConfig
- + SafeTLSConfig @@ -17370,10 +17370,10 @@ bool -

HTTPSDConfig +

HTTPSDConfig

-(Appears on:ScrapeConfigSpec) +(Appears on:ScrapeConfigSpec)

HTTPSDConfig defines a prometheus HTTP service discovery configuration @@ -17402,7 +17402,7 @@ string refreshInterval
- + Duration @@ -17417,7 +17417,7 @@ endpoint to update the target list.

basicAuth
- + BasicAuth @@ -17432,7 +17432,7 @@ More info: + SafeAuthorization @@ -17446,7 +17446,7 @@ SafeAuthorization tlsConfig
- + SafeTLSConfig @@ -17458,10 +17458,10 @@ SafeTLSConfig -

InhibitRule +

InhibitRule

-(Appears on:AlertmanagerConfigSpec) +(Appears on:AlertmanagerConfigSpec)

InhibitRule defines an inhibition rule that allows to mute alerts when other @@ -17480,7 +17480,7 @@ See + []Matcher @@ -17494,7 +17494,7 @@ operator enforces that the alert matches the resource’s namespace.

sourceMatch
- + []Matcher @@ -17519,19 +17519,19 @@ the inhibition to take effect.

-

K8SRole +

K8SRole (string alias)

-(Appears on:K8SSelectorConfig, KubernetesSDConfig) +(Appears on:K8SSelectorConfig, KubernetesSDConfig)

K8SRole is role of the service in Kubernetes. Currently the only supported role is “Node”.

-

K8SSelectorConfig +

K8SSelectorConfig

-(Appears on:KubernetesSDConfig) +(Appears on:KubernetesSDConfig)

K8SSelectorConfig is Kubernetes Selector Config

@@ -17548,7 +17548,7 @@ Currently the only supported role is “Node”.

role
- + K8SRole @@ -17578,10 +17578,10 @@ string -

KeyValue +

KeyValue

-(Appears on:EmailConfig, OpsGenieConfig, PagerDutyConfig, VictorOpsConfig) +(Appears on:EmailConfig, OpsGenieConfig, PagerDutyConfig, VictorOpsConfig)

KeyValue defines a (key, value) tuple.

@@ -17618,10 +17618,10 @@ string -

KubernetesSDConfig +

KubernetesSDConfig

-(Appears on:ScrapeConfigSpec) +(Appears on:ScrapeConfigSpec)

KubernetesSDConfig allows retrieving scrape targets from Kubernetes’ REST API. @@ -17639,7 +17639,7 @@ See + K8SRole @@ -17652,7 +17652,7 @@ K8SRole selectors
- + []K8SSelectorConfig @@ -17664,10 +17664,10 @@ K8SRole -

MSTeamsConfig +

MSTeamsConfig

-(Appears on:Receiver) +(Appears on:Receiver)

MSTeamsConfig configures notifications via Microsoft Teams. @@ -17734,7 +17734,7 @@ string httpConfig
- + HTTPConfig @@ -17746,10 +17746,10 @@ HTTPConfig -

MatchType +

MatchType (string alias)

-(Appears on:Matcher) +(Appears on:Matcher)

MatchType is a comparison operator on a Matcher

@@ -17771,10 +17771,10 @@ HTTPConfig -

Matcher +

Matcher

-(Appears on:InhibitRule, Route) +(Appears on:InhibitRule, Route)

Matcher defines how to match on alert’s labels.

@@ -17814,7 +17814,7 @@ string matchType
- + MatchType @@ -17840,7 +17840,7 @@ Deprecated as of AlertManager >= v0.22.0 where a user should use MatchType in -

Month +

Month (string alias)

Month of the year

@@ -17878,19 +17878,19 @@ Deprecated as of AlertManager >= v0.22.0 where a user should use MatchType in -

MonthRange +

MonthRange (string alias)

-(Appears on:TimeInterval) +(Appears on:TimeInterval)

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’)

-

MuteTimeInterval +

MuteTimeInterval

-(Appears on:AlertmanagerConfigSpec) +(Appears on:AlertmanagerConfigSpec)

MuteTimeInterval specifies the periods in time when notifications will be muted

@@ -17918,7 +17918,7 @@ string timeIntervals
- + []TimeInterval @@ -17929,10 +17929,10 @@ string -

OpsGenieConfig +

OpsGenieConfig

-(Appears on:Receiver) +(Appears on:Receiver)

OpsGenieConfig configures notifications via OpsGenie. @@ -18075,7 +18075,7 @@ By default, the alert is never updated in OpsGenie, the new message only appears details
- + []KeyValue @@ -18089,7 +18089,7 @@ By default, the alert is never updated in OpsGenie, the new message only appears responders
- + []OpsGenieConfigResponder @@ -18103,7 +18103,7 @@ By default, the alert is never updated in OpsGenie, the new message only appears httpConfig
- + HTTPConfig @@ -18139,10 +18139,10 @@ string -

OpsGenieConfigResponder +

OpsGenieConfigResponder

-(Appears on:OpsGenieConfig) +(Appears on:OpsGenieConfig)

OpsGenieConfigResponder defines a responder to an incident. @@ -18205,10 +18205,10 @@ string -

PagerDutyConfig +

PagerDutyConfig

-(Appears on:Receiver) +(Appears on:Receiver)

PagerDutyConfig configures notifications via PagerDuty. @@ -18369,7 +18369,7 @@ string details
- + []KeyValue @@ -18383,7 +18383,7 @@ string pagerDutyImageConfigs
- + []PagerDutyImageConfig @@ -18397,7 +18397,7 @@ string pagerDutyLinkConfigs
- + []PagerDutyLinkConfig @@ -18411,7 +18411,7 @@ string httpConfig
- + HTTPConfig @@ -18423,10 +18423,10 @@ HTTPConfig -

PagerDutyImageConfig +

PagerDutyImageConfig

-(Appears on:PagerDutyConfig) +(Appears on:PagerDutyConfig)

PagerDutyImageConfig attaches images to an incident

@@ -18477,10 +18477,10 @@ string -

PagerDutyLinkConfig +

PagerDutyLinkConfig

-(Appears on:PagerDutyConfig) +(Appears on:PagerDutyConfig)

PagerDutyLinkConfig attaches text links to an incident

@@ -18519,7 +18519,7 @@ string -

ParsedRange +

ParsedRange

ParsedRange is an integer representation of a range

@@ -18556,10 +18556,10 @@ int -

PrometheusAgentSpec +

PrometheusAgentSpec

-(Appears on:PrometheusAgent) +(Appears on:PrometheusAgent)

PrometheusAgentSpec is a specification of the desired behavior of the Prometheus agent. More info: @@ -18577,7 +18577,7 @@ int podMetadata
- + EmbeddedObjectMetadata @@ -18912,7 +18912,7 @@ string scrapeInterval
- + Duration @@ -18926,7 +18926,7 @@ Duration scrapeTimeout
- + Duration @@ -19014,7 +19014,7 @@ for use with kubectl proxy.

storage
- + StorageSpec @@ -19057,7 +19057,7 @@ container, that are generated as a result of StorageSpec objects.

web
- + PrometheusWebSpec @@ -19176,7 +19176,7 @@ Kubernetes core/v1.Affinity remoteWrite
- + []RemoteWriteSpec @@ -19293,7 +19293,7 @@ Prometheus after the upgrade.

apiserverConfig
- + APIServerConfig @@ -19334,7 +19334,7 @@ Default: “web”

arbitraryFSAccessThroughSMs
- + ArbitraryFSAccessThroughSMsConfig @@ -19518,7 +19518,7 @@ greater than zero and less than spec.enforcedKeepDroppedTargets.

enforcedBodySizeLimit
- + ByteSize @@ -19551,7 +19551,7 @@ enabling the StatefulSetMinReadySeconds feature gate.

hostAliases
- + []HostAlias @@ -19566,7 +19566,7 @@ hosts file if specified.

additionalArgs
- + []Argument @@ -19601,7 +19601,7 @@ bool excludedFromEnforcement
- + []ObjectReference @@ -19645,7 +19645,7 @@ PodMonitor and ServiceMonitor objects.

tracingConfig
- + PrometheusTracingConfig @@ -19661,7 +19661,7 @@ breaking way.

bodySizeLimit
- + ByteSize @@ -19753,10 +19753,10 @@ that will be kept in memory. 0 means no limit.

-

PushoverConfig +

PushoverConfig

-(Appears on:Receiver) +(Appears on:Receiver)

PushoverConfig configures notifications via Pushover. @@ -19958,7 +19958,7 @@ bool httpConfig
- + HTTPConfig @@ -19970,10 +19970,10 @@ HTTPConfig -

Receiver +

Receiver

-(Appears on:AlertmanagerConfigSpec) +(Appears on:AlertmanagerConfigSpec)

Receiver defines one or more notification integrations.

@@ -20001,7 +20001,7 @@ string opsgenieConfigs
- + []OpsGenieConfig @@ -20014,7 +20014,7 @@ string pagerdutyConfigs
- + []PagerDutyConfig @@ -20027,7 +20027,7 @@ string discordConfigs
- + []DiscordConfig @@ -20041,7 +20041,7 @@ string slackConfigs
- + []SlackConfig @@ -20054,7 +20054,7 @@ string webhookConfigs
- + []WebhookConfig @@ -20067,7 +20067,7 @@ string wechatConfigs
- + []WeChatConfig @@ -20080,7 +20080,7 @@ string emailConfigs
- + []EmailConfig @@ -20093,7 +20093,7 @@ string victoropsConfigs
- + []VictorOpsConfig @@ -20106,7 +20106,7 @@ string pushoverConfigs
- + []PushoverConfig @@ -20119,7 +20119,7 @@ string snsConfigs
- + []SNSConfig @@ -20132,7 +20132,7 @@ string telegramConfigs
- + []TelegramConfig @@ -20145,7 +20145,7 @@ string webexConfigs
- + []WebexConfig @@ -20158,7 +20158,7 @@ string msteamsConfigs
- + []MSTeamsConfig @@ -20170,10 +20170,10 @@ It requires Alertmanager >= 0.26.0.

-

Route +

Route

-(Appears on:AlertmanagerConfigSpec) +(Appears on:AlertmanagerConfigSpec)

Route defines a node in the routing tree.

@@ -20259,7 +20259,7 @@ Example: “4h”

matchers
- + []Matcher @@ -20332,18 +20332,18 @@ MuteTimeIntervals is a list of MuteTimeInterval names that will mute this route -

SDFile +

SDFile (string alias)

-(Appears on:FileSDConfig) +(Appears on:FileSDConfig)

SDFile represents a file used for service discovery

-

SNSConfig +

SNSConfig

-(Appears on:Receiver) +(Appears on:Receiver)

SNSConfig configures notifications via AWS SNS. @@ -20386,7 +20386,7 @@ If not specified, the SNS API URL from the SNS SDK will be used.

sigv4
- + Sigv4 @@ -20475,7 +20475,7 @@ map[string]string httpConfig
- + HTTPConfig @@ -20487,10 +20487,10 @@ HTTPConfig -

ScrapeConfigSpec +

ScrapeConfigSpec

-(Appears on:ScrapeConfig) +(Appears on:ScrapeConfig)

ScrapeConfigSpec is a specification of the desired configuration for a scrape configuration.

@@ -20507,7 +20507,7 @@ HTTPConfig staticConfigs
- + []StaticConfig @@ -20521,7 +20521,7 @@ HTTPConfig fileSDConfigs
- + []FileSDConfig @@ -20535,7 +20535,7 @@ HTTPConfig httpSDConfigs
- + []HTTPSDConfig @@ -20549,7 +20549,7 @@ HTTPConfig kubernetesSDConfigs
- + []KubernetesSDConfig @@ -20563,7 +20563,7 @@ HTTPConfig consulSDConfigs
- + []ConsulSDConfig @@ -20577,7 +20577,7 @@ HTTPConfig dnsSDConfigs
- + []DNSSDConfig @@ -20591,7 +20591,7 @@ HTTPConfig ec2SDConfigs
- + []EC2SDConfig @@ -20605,7 +20605,7 @@ HTTPConfig relabelings
- + []RelabelConfig @@ -20634,7 +20634,7 @@ string scrapeInterval
- + Duration @@ -20648,7 +20648,7 @@ Duration scrapeTimeout
- + Duration @@ -20711,7 +20711,7 @@ If empty, Prometheus uses HTTP by default.

basicAuth
- + BasicAuth @@ -20725,7 +20725,7 @@ BasicAuth authorization
- + SafeAuthorization @@ -20739,7 +20739,7 @@ SafeAuthorization tlsConfig
- + SafeTLSConfig @@ -20830,7 +20830,7 @@ that will be kept in memory. 0 means no limit.

metricRelabelings
- + []RelabelConfig @@ -20842,10 +20842,10 @@ that will be kept in memory. 0 means no limit.

-

SlackAction +

SlackAction

-(Appears on:SlackConfig) +(Appears on:SlackConfig)

SlackAction configures a single Slack action that is sent with each @@ -20929,7 +20929,7 @@ string confirm
- + SlackConfirmationField @@ -20940,10 +20940,10 @@ SlackConfirmationField -

SlackConfig +

SlackConfig

-(Appears on:Receiver) +(Appears on:Receiver)

SlackConfig configures notifications via Slack. @@ -21067,7 +21067,7 @@ string fields
- + []SlackField @@ -21191,7 +21191,7 @@ bool actions
- + []SlackAction @@ -21205,7 +21205,7 @@ bool httpConfig
- + HTTPConfig @@ -21217,10 +21217,10 @@ HTTPConfig -

SlackConfirmationField +

SlackConfirmationField

-(Appears on:SlackAction) +(Appears on:SlackAction)

SlackConfirmationField protect users from destructive actions or @@ -21282,10 +21282,10 @@ string -

SlackField +

SlackField

-(Appears on:SlackConfig) +(Appears on:SlackConfig)

SlackField configures a single Slack field that is sent with each notification. @@ -21334,10 +21334,10 @@ bool -

StaticConfig +

StaticConfig

-(Appears on:ScrapeConfigSpec) +(Appears on:ScrapeConfigSpec)

StaticConfig defines a Prometheus static configuration. @@ -21355,7 +21355,7 @@ See + []Target @@ -21369,7 +21369,7 @@ See Target +

Target (string alias)

-(Appears on:StaticConfig) +(Appears on:StaticConfig)

Target represents a target for Prometheus to scrape

-

TelegramConfig +

TelegramConfig

-(Appears on:Receiver) +(Appears on:Receiver)

TelegramConfig configures notifications via Telegram. @@ -21511,7 +21511,7 @@ string httpConfig
- + HTTPConfig @@ -21523,18 +21523,18 @@ HTTPConfig -

Time +

Time (string alias)

-(Appears on:TimeRange) +(Appears on:TimeRange)

Time defines a time in 24hr format

-

TimeInterval +

TimeInterval

-(Appears on:MuteTimeInterval) +(Appears on:MuteTimeInterval)

TimeInterval describes intervals of time

@@ -21551,7 +21551,7 @@ HTTPConfig times
- + []TimeRange @@ -21565,7 +21565,7 @@ HTTPConfig weekdays
- + []WeekdayRange @@ -21579,7 +21579,7 @@ HTTPConfig daysOfMonth
- + []DayOfMonthRange @@ -21593,7 +21593,7 @@ HTTPConfig months
- + []MonthRange @@ -21607,7 +21607,7 @@ HTTPConfig years
- + []YearRange @@ -21619,10 +21619,10 @@ HTTPConfig -

TimeRange +

TimeRange

-(Appears on:TimeInterval) +(Appears on:TimeInterval)

TimeRange defines a start and end time in 24hr format

@@ -21639,7 +21639,7 @@ HTTPConfig startTime
- + Time @@ -21652,7 +21652,7 @@ Time endTime
- + Time @@ -21663,18 +21663,18 @@ Time -

URL +

URL (string alias)

-(Appears on:WebexConfig) +(Appears on:WebexConfig)

URL represents a valid URL

-

VictorOpsConfig +

VictorOpsConfig

-(Appears on:Receiver) +(Appears on:Receiver)

VictorOpsConfig configures notifications via VictorOps. @@ -21792,7 +21792,7 @@ string customFields
- + []KeyValue @@ -21806,7 +21806,7 @@ string httpConfig
- + HTTPConfig @@ -21818,10 +21818,10 @@ HTTPConfig -

WeChatConfig +

WeChatConfig

-(Appears on:Receiver) +(Appears on:Receiver)

WeChatConfig configures notifications via WeChat. @@ -21957,7 +21957,7 @@ string httpConfig
- + HTTPConfig @@ -21969,10 +21969,10 @@ HTTPConfig -

WebexConfig +

WebexConfig

-(Appears on:Receiver) +(Appears on:Receiver)

WebexConfig configures notification via Cisco Webex @@ -22002,7 +22002,7 @@ bool apiURL
- + URL @@ -22017,7 +22017,7 @@ Provide if different from the default API URL.

httpConfig
- + HTTPConfig @@ -22053,10 +22053,10 @@ string -

WebhookConfig +

WebhookConfig

-(Appears on:Receiver) +(Appears on:Receiver)

WebhookConfig configures notifications via a generic receiver supporting the webhook payload. @@ -22117,7 +22117,7 @@ object and accessible by the Prometheus Operator.

httpConfig
- + HTTPConfig @@ -22141,7 +22141,7 @@ int32 -

Weekday +

Weekday (string alias)

Weekday is day of the week

@@ -22169,30 +22169,30 @@ int32 -

WeekdayRange +

WeekdayRange (string alias)

-(Appears on:TimeInterval) +(Appears on:TimeInterval)

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’)

-

YearRange +

YearRange (string alias)

-(Appears on:TimeInterval) +(Appears on:TimeInterval)

YearRange is an inclusive range of years


-

monitoring.coreos.com/v1beta1

+

monitoring.rhobs/v1beta1

Resource Types: -

AlertmanagerConfig +

AlertmanagerConfig

AlertmanagerConfig configures the Prometheus Alertmanager, @@ -22212,7 +22212,7 @@ specifying how alerts should be grouped, inhibited and notified to external syst string -monitoring.coreos.com/v1beta1 +monitoring.rhobs/v1beta1 @@ -22241,7 +22241,7 @@ Refer to the Kubernetes API documentation for the fields of the spec
- + AlertmanagerConfigSpec @@ -22254,7 +22254,7 @@ AlertmanagerConfigSpec route
- + Route @@ -22270,7 +22270,7 @@ configuration as a first-level route.

receivers
- + []Receiver @@ -22284,7 +22284,7 @@ configuration as a first-level route.

inhibitRules
- + []InhibitRule @@ -22299,7 +22299,7 @@ the resource’s namespace.

timeIntervals
- + []TimeInterval @@ -22314,10 +22314,10 @@ the resource’s namespace.

-

AlertmanagerConfigSpec +

AlertmanagerConfigSpec

-(Appears on:AlertmanagerConfig) +(Appears on:AlertmanagerConfig)

AlertmanagerConfigSpec is a specification of the desired behavior of the Alertmanager configuration. @@ -22336,7 +22336,7 @@ the namespace label is equal to the namespace of the AlertmanagerCo route
- + Route @@ -22352,7 +22352,7 @@ configuration as a first-level route.

receivers
- + []Receiver @@ -22366,7 +22366,7 @@ configuration as a first-level route.

inhibitRules
- + []InhibitRule @@ -22381,7 +22381,7 @@ the resource’s namespace.

timeIntervals
- + []TimeInterval @@ -22393,10 +22393,10 @@ the resource’s namespace.

-

DayOfMonthRange +

DayOfMonthRange

-(Appears on:TimePeriod) +(Appears on:TimePeriod)

DayOfMonthRange is an inclusive range of days of the month beginning at 1

@@ -22433,10 +22433,10 @@ int -

DiscordConfig +

DiscordConfig

-(Appears on:Receiver) +(Appears on:Receiver)

DiscordConfig configures notifications via Discord. @@ -22505,7 +22505,7 @@ string httpConfig
- + HTTPConfig @@ -22517,10 +22517,10 @@ HTTPConfig -

EmailConfig +

EmailConfig

-(Appears on:Receiver) +(Appears on:Receiver)

EmailConfig configures notifications via Email.

@@ -22609,7 +22609,7 @@ string authPassword
- + SecretKeySelector @@ -22624,7 +22624,7 @@ object and accessible by the Prometheus Operator.

authSecret
- + SecretKeySelector @@ -22651,7 +22651,7 @@ string headers
- + []KeyValue @@ -22702,7 +22702,7 @@ Note that Go does not support unencrypted connections to remote SMTP endpoints.< tlsConfig
- + SafeTLSConfig @@ -22714,10 +22714,10 @@ SafeTLSConfig -

HTTPConfig +

HTTPConfig

-(Appears on:DiscordConfig, MSTeamsConfig, OpsGenieConfig, PagerDutyConfig, PushoverConfig, SNSConfig, SlackConfig, TelegramConfig, VictorOpsConfig, WeChatConfig, WebexConfig, WebhookConfig) +(Appears on:DiscordConfig, MSTeamsConfig, OpsGenieConfig, PagerDutyConfig, PushoverConfig, SNSConfig, SlackConfig, TelegramConfig, VictorOpsConfig, WeChatConfig, WebexConfig, WebhookConfig)

HTTPConfig defines a client HTTP configuration. @@ -22735,7 +22735,7 @@ See + SafeAuthorization @@ -22750,7 +22750,7 @@ This is mutually exclusive with BasicAuth and is only available starting from Al basicAuth
- + BasicAuth @@ -22765,7 +22765,7 @@ This is mutually exclusive with Authorization. If both are defined, BasicAuth ta oauth2
- + OAuth2 @@ -22779,7 +22779,7 @@ OAuth2 bearerTokenSecret
- + SecretKeySelector @@ -22796,7 +22796,7 @@ object and accessible by the Prometheus Operator.

tlsConfig
- + SafeTLSConfig @@ -22832,10 +22832,10 @@ bool -

InhibitRule +

InhibitRule

-(Appears on:AlertmanagerConfigSpec) +(Appears on:AlertmanagerConfigSpec)

InhibitRule defines an inhibition rule that allows to mute alerts when other @@ -22854,7 +22854,7 @@ See + []Matcher @@ -22868,7 +22868,7 @@ operator enforces that the alert matches the resource’s namespace.

sourceMatch
- + []Matcher @@ -22893,10 +22893,10 @@ the inhibition to take effect.

-

KeyValue +

KeyValue

-(Appears on:EmailConfig, OpsGenieConfig, PagerDutyConfig, VictorOpsConfig) +(Appears on:EmailConfig, OpsGenieConfig, PagerDutyConfig, VictorOpsConfig)

KeyValue defines a (key, value) tuple.

@@ -22933,10 +22933,10 @@ string -

MSTeamsConfig +

MSTeamsConfig

-(Appears on:Receiver) +(Appears on:Receiver)

MSTeamsConfig configures notifications via Microsoft Teams. @@ -23003,7 +23003,7 @@ string httpConfig
- + HTTPConfig @@ -23015,10 +23015,10 @@ HTTPConfig -

MatchType +

MatchType (string alias)

-(Appears on:Matcher) +(Appears on:Matcher)

MatchType is a comparison operator on a Matcher

@@ -23040,10 +23040,10 @@ HTTPConfig -

Matcher +

Matcher

-(Appears on:InhibitRule, Route) +(Appears on:InhibitRule, Route)

Matcher defines how to match on alert’s labels.

@@ -23083,7 +23083,7 @@ string matchType
- + MatchType @@ -23096,7 +23096,7 @@ Negative operators (!= and !~) require Alertmanager &g -

Month +

Month (string alias)

Month of the year

@@ -23134,19 +23134,19 @@ Negative operators (!= and !~) require Alertmanager &g -

MonthRange +

MonthRange (string alias)

-(Appears on:TimePeriod) +(Appears on:TimePeriod)

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’)

-

OpsGenieConfig +

OpsGenieConfig

-(Appears on:Receiver) +(Appears on:Receiver)

OpsGenieConfig configures notifications via OpsGenie. @@ -23176,7 +23176,7 @@ bool apiKey
- + SecretKeySelector @@ -23276,7 +23276,7 @@ string details
- + []KeyValue @@ -23290,7 +23290,7 @@ string responders
- + []OpsGenieConfigResponder @@ -23304,7 +23304,7 @@ string httpConfig
- + HTTPConfig @@ -23340,10 +23340,10 @@ string -

OpsGenieConfigResponder +

OpsGenieConfigResponder

-(Appears on:OpsGenieConfig) +(Appears on:OpsGenieConfig)

OpsGenieConfigResponder defines a responder to an incident. @@ -23406,10 +23406,10 @@ string -

PagerDutyConfig +

PagerDutyConfig

-(Appears on:Receiver) +(Appears on:Receiver)

PagerDutyConfig configures notifications via PagerDuty. @@ -23439,7 +23439,7 @@ bool routingKey
- + SecretKeySelector @@ -23456,7 +23456,7 @@ object and accessible by the Prometheus Operator.

serviceKey
- + SecretKeySelector @@ -23570,7 +23570,7 @@ string details
- + []KeyValue @@ -23584,7 +23584,7 @@ string pagerDutyImageConfigs
- + []PagerDutyImageConfig @@ -23598,7 +23598,7 @@ string pagerDutyLinkConfigs
- + []PagerDutyLinkConfig @@ -23612,7 +23612,7 @@ string httpConfig
- + HTTPConfig @@ -23624,10 +23624,10 @@ HTTPConfig -

PagerDutyImageConfig +

PagerDutyImageConfig

-(Appears on:PagerDutyConfig) +(Appears on:PagerDutyConfig)

PagerDutyImageConfig attaches images to an incident

@@ -23678,10 +23678,10 @@ string -

PagerDutyLinkConfig +

PagerDutyLinkConfig

-(Appears on:PagerDutyConfig) +(Appears on:PagerDutyConfig)

PagerDutyLinkConfig attaches text links to an incident

@@ -23720,7 +23720,7 @@ string -

ParsedRange +

ParsedRange

ParsedRange is an integer representation of a range

@@ -23757,10 +23757,10 @@ int -

PushoverConfig +

PushoverConfig

-(Appears on:Receiver) +(Appears on:Receiver)

PushoverConfig configures notifications via Pushover. @@ -23790,7 +23790,7 @@ bool userKey
- + SecretKeySelector @@ -23821,7 +23821,7 @@ It requires Alertmanager >= v0.26.0.

token
- + SecretKeySelector @@ -23962,7 +23962,7 @@ bool httpConfig
- + HTTPConfig @@ -23974,10 +23974,10 @@ HTTPConfig -

Receiver +

Receiver

-(Appears on:AlertmanagerConfigSpec) +(Appears on:AlertmanagerConfigSpec)

Receiver defines one or more notification integrations.

@@ -24005,7 +24005,7 @@ string opsgenieConfigs
- + []OpsGenieConfig @@ -24018,7 +24018,7 @@ string pagerdutyConfigs
- + []PagerDutyConfig @@ -24031,7 +24031,7 @@ string discordConfigs
- + []DiscordConfig @@ -24044,7 +24044,7 @@ string slackConfigs
- + []SlackConfig @@ -24057,7 +24057,7 @@ string webhookConfigs
- + []WebhookConfig @@ -24070,7 +24070,7 @@ string wechatConfigs
- + []WeChatConfig @@ -24083,7 +24083,7 @@ string emailConfigs
- + []EmailConfig @@ -24096,7 +24096,7 @@ string victoropsConfigs
- + []VictorOpsConfig @@ -24109,7 +24109,7 @@ string pushoverConfigs
- + []PushoverConfig @@ -24122,7 +24122,7 @@ string snsConfigs
- + []SNSConfig @@ -24135,7 +24135,7 @@ string telegramConfigs
- + []TelegramConfig @@ -24148,7 +24148,7 @@ string webexConfigs
- + []WebexConfig @@ -24161,7 +24161,7 @@ string msteamsConfigs
- + []MSTeamsConfig @@ -24173,10 +24173,10 @@ It requires Alertmanager >= 0.26.0.

-

Route +

Route

-(Appears on:AlertmanagerConfigSpec) +(Appears on:AlertmanagerConfigSpec)

Route defines a node in the routing tree.

@@ -24262,7 +24262,7 @@ Example: “4h”

matchers
- + []Matcher @@ -24335,10 +24335,10 @@ MuteTimeIntervals is a list of TimeInterval names that will mute this route when -

SNSConfig +

SNSConfig

-(Appears on:Receiver) +(Appears on:Receiver)

SNSConfig configures notifications via AWS SNS. @@ -24381,7 +24381,7 @@ If not specified, the SNS API URL from the SNS SDK will be used.

sigv4
- + Sigv4 @@ -24470,7 +24470,7 @@ map[string]string httpConfig
- + HTTPConfig @@ -24482,10 +24482,10 @@ HTTPConfig -

SecretKeySelector +

SecretKeySelector

-(Appears on:EmailConfig, HTTPConfig, OpsGenieConfig, PagerDutyConfig, PushoverConfig, SlackConfig, TelegramConfig, VictorOpsConfig, WeChatConfig, WebhookConfig) +(Appears on:EmailConfig, HTTPConfig, OpsGenieConfig, PagerDutyConfig, PushoverConfig, SlackConfig, TelegramConfig, VictorOpsConfig, WeChatConfig, WebhookConfig)

SecretKeySelector selects a key of a Secret.

@@ -24522,10 +24522,10 @@ string -

SlackAction +

SlackAction

-(Appears on:SlackConfig) +(Appears on:SlackConfig)

SlackAction configures a single Slack action that is sent with each @@ -24609,7 +24609,7 @@ string confirm
- + SlackConfirmationField @@ -24620,10 +24620,10 @@ SlackConfirmationField -

SlackConfig +

SlackConfig

-(Appears on:Receiver) +(Appears on:Receiver)

SlackConfig configures notifications via Slack. @@ -24653,7 +24653,7 @@ bool apiURL
- + SecretKeySelector @@ -24747,7 +24747,7 @@ string fields
- + []SlackField @@ -24871,7 +24871,7 @@ bool actions
- + []SlackAction @@ -24885,7 +24885,7 @@ bool httpConfig
- + HTTPConfig @@ -24897,10 +24897,10 @@ HTTPConfig -

SlackConfirmationField +

SlackConfirmationField

-(Appears on:SlackAction) +(Appears on:SlackAction)

SlackConfirmationField protect users from destructive actions or @@ -24962,10 +24962,10 @@ string -

SlackField +

SlackField

-(Appears on:SlackConfig) +(Appears on:SlackConfig)

SlackField configures a single Slack field that is sent with each notification. @@ -25014,10 +25014,10 @@ bool -

TelegramConfig +

TelegramConfig

-(Appears on:Receiver) +(Appears on:Receiver)

TelegramConfig configures notifications via Telegram. @@ -25060,7 +25060,7 @@ If not specified, default API URL will be used.

botToken
- + SecretKeySelector @@ -25138,7 +25138,7 @@ string httpConfig
- + HTTPConfig @@ -25150,18 +25150,18 @@ HTTPConfig -

Time +

Time (string alias)

-(Appears on:TimeRange) +(Appears on:TimeRange)

Time defines a time in 24hr format

-

TimeInterval +

TimeInterval

-(Appears on:AlertmanagerConfigSpec) +(Appears on:AlertmanagerConfigSpec)

TimeInterval specifies the periods in time when notifications will be muted or active.

@@ -25189,7 +25189,7 @@ string timeIntervals
- + []TimePeriod @@ -25200,10 +25200,10 @@ string -

TimePeriod +

TimePeriod

-(Appears on:TimeInterval) +(Appears on:TimeInterval)

TimePeriod describes periods of time.

@@ -25220,7 +25220,7 @@ string times
- + []TimeRange @@ -25234,7 +25234,7 @@ string weekdays
- + []WeekdayRange @@ -25248,7 +25248,7 @@ string daysOfMonth
- + []DayOfMonthRange @@ -25262,7 +25262,7 @@ string months
- + []MonthRange @@ -25276,7 +25276,7 @@ string years
- + []YearRange @@ -25288,10 +25288,10 @@ string -

TimeRange +

TimeRange

-(Appears on:TimePeriod) +(Appears on:TimePeriod)

TimeRange defines a start and end time in 24hr format

@@ -25308,7 +25308,7 @@ string startTime
- + Time @@ -25321,7 +25321,7 @@ Time endTime
- + Time @@ -25332,18 +25332,18 @@ Time -

URL +

URL (string alias)

-(Appears on:WebexConfig) +(Appears on:WebexConfig)

URL represents a valid URL

-

VictorOpsConfig +

VictorOpsConfig

-(Appears on:Receiver) +(Appears on:Receiver)

VictorOpsConfig configures notifications via VictorOps. @@ -25373,7 +25373,7 @@ bool apiKey
- + SecretKeySelector @@ -25461,7 +25461,7 @@ string customFields
- + []KeyValue @@ -25475,7 +25475,7 @@ string httpConfig
- + HTTPConfig @@ -25487,10 +25487,10 @@ HTTPConfig -

WeChatConfig +

WeChatConfig

-(Appears on:Receiver) +(Appears on:Receiver)

WeChatConfig configures notifications via WeChat. @@ -25520,7 +25520,7 @@ bool apiSecret
- + SecretKeySelector @@ -25626,7 +25626,7 @@ string httpConfig
- + HTTPConfig @@ -25638,10 +25638,10 @@ HTTPConfig -

WebexConfig +

WebexConfig

-(Appears on:Receiver) +(Appears on:Receiver)

WebexConfig configures notification via Cisco Webex @@ -25671,7 +25671,7 @@ bool apiURL
- + URL @@ -25685,7 +25685,7 @@ URL httpConfig
- + HTTPConfig @@ -25720,10 +25720,10 @@ string -

WebhookConfig +

WebhookConfig

-(Appears on:Receiver) +(Appears on:Receiver)

WebhookConfig configures notifications via a generic receiver supporting the webhook payload. @@ -25766,7 +25766,7 @@ string urlSecret
- + SecretKeySelector @@ -25784,7 +25784,7 @@ object and accessible by the Prometheus Operator.

httpConfig
- + HTTPConfig @@ -25808,7 +25808,7 @@ int32 -

Weekday +

Weekday (string alias)

Weekday is day of the week

@@ -25836,19 +25836,19 @@ int32 -

WeekdayRange +

WeekdayRange (string alias)

-(Appears on:TimePeriod) +(Appears on:TimePeriod)

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’)

-

YearRange +

YearRange (string alias)

-(Appears on:TimePeriod) +(Appears on:TimePeriod)

YearRange is an inclusive range of years

diff --git a/Documentation/design.md b/Documentation/design.md index f232877b2..bfe78fcb0 100644 --- a/Documentation/design.md +++ b/Documentation/design.md @@ -67,7 +67,7 @@ Both `ServiceMonitors` as well as discovered targets may come from any namespace One can discover targets in all namespaces like this: ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: example-app @@ -99,7 +99,7 @@ Using the `namespaceSelector` of the `PodMonitorSpec`, one can restrict the name Once can discover targets in all namespaces like this: ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: PodMonitor metadata: name: example-app @@ -128,7 +128,7 @@ Alerts and recording rules are reconciled by the Operator and dynamically loaded The `AlertmanagerConfig` custom resource definition (CRD) declaratively specifies subsections of the Alertmanager configuration, allowing routing of alerts to custom receivers, and setting inhibition rules. The `AlertmanagerConfig` can be defined on a namespace level providing an aggregated configuration to Alertmanager. An example on how to use it is provided below. Please be aware that this CRD is not stable yet. ```yaml mdox-exec="cat example/user-guides/alerting/alertmanager-config-example.yaml" -apiVersion: monitoring.coreos.com/v1alpha1 +apiVersion: monitoring.rhobs/v1alpha1 kind: AlertmanagerConfig metadata: name: config-example diff --git a/Documentation/operator.md b/Documentation/operator.md index bb2271d19..0f4586126 100644 --- a/Documentation/operator.md +++ b/Documentation/operator.md @@ -64,7 +64,7 @@ Usage of ./operator: -namespaces value Namespaces to scope the interaction of the Prometheus Operator and the apiserver (allow list). This is mutually exclusive with --deny-namespaces. -prometheus-config-reloader string - Prometheus config reloader image (default "quay.io/prometheus-operator/prometheus-config-reloader:v0.69.1") + Prometheus config reloader image (default "quay.io/rhobs/obo-prometheus-config-reloader:v0.69.1-rhobs1") -prometheus-default-base-image string Prometheus default base image (path without tag/version) (default "quay.io/prometheus/prometheus") -prometheus-instance-namespaces value diff --git a/Documentation/proposals/202212-scrape-config.md b/Documentation/proposals/202212-scrape-config.md index e5ec60e39..89e5d6ba6 100644 --- a/Documentation/proposals/202212-scrape-config.md +++ b/Documentation/proposals/202212-scrape-config.md @@ -80,7 +80,7 @@ prometheusConfig Using a pseudo custom resource definition, we should have the following: ```yaml -apiVersion: monitoring.coreos.com/v1alpha1 +apiVersion: monitoring.rhobs/v1alpha1 kind: ScrapeConfig metadata: name: my-scrape-config diff --git a/Documentation/rbac-crd.md b/Documentation/rbac-crd.md index cedf83be8..53d6f9421 100644 --- a/Documentation/rbac-crd.md +++ b/Documentation/rbac-crd.md @@ -37,7 +37,7 @@ metadata: rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-view: "true" rules: -- apiGroups: ["monitoring.coreos.com"] +- apiGroups: ["monitoring.rhobs"] resources: ["alertmanagers", "alertmanagerconfigs", "prometheuses", "prometheusrules", "servicemonitors", "podmonitors", "probes"] verbs: ["get", "list", "watch"] --- @@ -49,7 +49,7 @@ metadata: rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true" rules: -- apiGroups: ["monitoring.coreos.com"] +- apiGroups: ["monitoring.rhobs"] resources: ["alertmanagers", "alertmanagerconfigs", "prometheuses", "prometheusrules", "servicemonitors", "podmonitors", "probes"] verbs: ["get", "list", "watch", "create", "update", "patch", "delete"] ``` diff --git a/Documentation/rbac.md b/Documentation/rbac.md index 01cff188e..bbb86165b 100644 --- a/Documentation/rbac.md +++ b/Documentation/rbac.md @@ -26,11 +26,11 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs resources: - alertmanagers - alertmanagers/finalizers @@ -187,7 +187,7 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator namespace: default ``` @@ -203,7 +203,7 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator roleRef: apiGroup: rbac.authorization.k8s.io diff --git a/Documentation/thanos.md b/Documentation/thanos.md index 766cc1856..ea33a9412 100644 --- a/Documentation/thanos.md +++ b/Documentation/thanos.md @@ -89,7 +89,7 @@ The [Thanos Ruler](https://thanos.io/tip/components/rule.md/) component evaluate ```yaml ... -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ThanosRuler metadata: name: thanos-ruler-demo diff --git a/Documentation/troubleshooting.md b/Documentation/troubleshooting.md index a146791d7..1e5a428f5 100644 --- a/Documentation/troubleshooting.md +++ b/Documentation/troubleshooting.md @@ -17,7 +17,7 @@ When applying updated CRDs on a cluster, you may face the following error messag ```bash $ kubectl apply -f $MANIFESTS -The CustomResourceDefinition "prometheuses.monitoring.coreos.com" is invalid: metadata.annotations: Too long: must have at most 262144 bytes +The CustomResourceDefinition "prometheuses.monitoring.rhobs" is invalid: metadata.annotations: Too long: must have at most 262144 bytes ``` The reason is that apply runs in the client by default and saves information into the object annotations but there's a hard limit on the size of annotations. @@ -146,7 +146,7 @@ We would then define the service monitor using `metrics` as the port not `"8080" **CORRECT** ```yaml mdox-exec="cat example/user-guides/getting-started/example-app-service-monitor.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: example-app @@ -163,7 +163,7 @@ spec: **INCORRECT** ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: example-app diff --git a/Documentation/user-guides/alerting.md b/Documentation/user-guides/alerting.md index 505c25df9..2f077eb4f 100644 --- a/Documentation/user-guides/alerting.md +++ b/Documentation/user-guides/alerting.md @@ -49,7 +49,7 @@ You have a running Prometheus operator. First, let's create a Alertmanager cluster with three replicas: ```yaml mdox-exec="cat example/user-guides/alerting/alertmanager-example.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: name: example @@ -140,7 +140,7 @@ The following example configuration creates an AlertmanagerConfig resource that sends notifications to a fictitious webhook service. ```yaml mdox-exec="cat example/user-guides/alerting/alertmanager-config-example.yaml" -apiVersion: monitoring.coreos.com/v1alpha1 +apiVersion: monitoring.rhobs/v1alpha1 kind: AlertmanagerConfig metadata: name: config-example @@ -171,7 +171,7 @@ the previous example, the label `alertmanagerConfig: example` is added, so the Alertmanager object should be updated like this: ```yaml mdox-exec="cat example/user-guides/alerting/alertmanager-selector-example.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: name: example @@ -189,7 +189,7 @@ an AlertmanagerConfig resource to be used for the Alertmanager configuration instead of the `alertmanager-example` secret. ```yaml mdox-exec="cat example/user-guides/alerting/alertmanager-example-alertmanager-configuration.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: name: example @@ -242,7 +242,7 @@ alerts are fired against it. First, create a Prometheus instance that will send alerts to the Alertmanger cluster: ```yaml mdox-exec="cat example/user-guides/alerting/prometheus-example.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: example @@ -288,7 +288,7 @@ Discover `PrometheusRule` resources with `role=alert-rules` and `prometheus=example` labels from all namespaces with `team=frontend` label: ```yaml mdox-exec="cat example/user-guides/alerting/prometheus-example-rule-namespace-selector.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: example @@ -322,7 +322,7 @@ Create a PrometheusRule object from the following manifest. Note that the object's labels match with the `spec.ruleSelector` of the Prometheus object. ```yaml mdox-exec="cat example/user-guides/alerting/prometheus-example-rules.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: PrometheusRule metadata: creationTimestamp: null diff --git a/Documentation/user-guides/basic-auth.md b/Documentation/user-guides/basic-auth.md index 0470142b4..193b06830 100644 --- a/Documentation/user-guides/basic-auth.md +++ b/Documentation/user-guides/basic-auth.md @@ -5,10 +5,10 @@ ## Basic auth for targets -To authenticate a `ServiceMonitor`s over a metrics endpoint use [`basicAuth`](../api.md#monitoring.coreos.com/v1.BasicAuth) +To authenticate a `ServiceMonitor`s over a metrics endpoint use [`basicAuth`](../api.md#monitoring.rhobs/v1.BasicAuth) ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: labels: diff --git a/Documentation/user-guides/exposing-prometheus-and-alertmanager.md b/Documentation/user-guides/exposing-prometheus-and-alertmanager.md index c26812d9a..58e29b3b8 100644 --- a/Documentation/user-guides/exposing-prometheus-and-alertmanager.md +++ b/Documentation/user-guides/exposing-prometheus-and-alertmanager.md @@ -14,7 +14,7 @@ The easiest way to expose Prometheus or Alertmanager is to use a Service of type Create a simple Prometheus object with one replica: ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: main @@ -48,7 +48,7 @@ After creating a Service with the above manifest, the web UI of Prometheus will Exposing the Alertmanager works in the same fashion, with the selector `alertmanager: `. ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: name: main @@ -111,7 +111,7 @@ spec: Prometheus and Alertmanager must be configured with the full URL at which they will be exposed. Therefore the Prometheus manifest requires an entry for `externalUrl`: ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: main @@ -129,7 +129,7 @@ Once the Prometheus Pods are running they are reachable under the specified `ext The Alertmanager object's manifest follows the same rules: ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: name: main @@ -232,7 +232,7 @@ spec: Finally, the Prometheus and `Alertmanager` objects must be created, specifying the `externalUrl` at which they will be found. ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: main @@ -242,7 +242,7 @@ spec: requests: memory: 400Mi --- -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: name: main diff --git a/Documentation/user-guides/getting-started.md b/Documentation/user-guides/getting-started.md index c9637112e..5605b788b 100644 --- a/Documentation/user-guides/getting-started.md +++ b/Documentation/user-guides/getting-started.md @@ -118,7 +118,7 @@ label (in this case `team: frontend`) to identify which team is responsible for monitoring the application/service. ```yaml mdox-exec="cat example/user-guides/getting-started/example-app-service-monitor.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: example-app @@ -204,7 +204,7 @@ to create new ServiceMonitors and Services without having to reconfigure the Prometheus object. ```yaml mdox-exec="cat example/user-guides/getting-started/prometheus-service-monitor.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus @@ -236,7 +236,7 @@ creation of a Kubernetes Service. In practice, the `spec.selector` label tells Prometheus which Pods should be scraped. ```yaml mdox-exec="cat example/user-guides/getting-started/example-app-pod-monitor.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: PodMonitor metadata: name: example-app @@ -254,7 +254,7 @@ Similarly the Prometheus object defines which PodMonitors get selected with the `spec.podMonitorSelector` field. ```yaml mdox-exec="cat example/user-guides/getting-started/prometheus-pod-monitor.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus @@ -313,7 +313,7 @@ flag. The following example exposes the admin API: > ensure only clients authorized to perform these actions can do so. ```yaml mdox-exec="cat example/user-guides/getting-started/prometheus-admin-api.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus diff --git a/Documentation/user-guides/monitoring-kubernetes-ingress.md b/Documentation/user-guides/monitoring-kubernetes-ingress.md index c09a5e72d..d2ae0f083 100644 --- a/Documentation/user-guides/monitoring-kubernetes-ingress.md +++ b/Documentation/user-guides/monitoring-kubernetes-ingress.md @@ -132,7 +132,7 @@ spec: selector: prometheus: prometheus --- -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus @@ -163,7 +163,7 @@ Finally, we need tell Prometheus where to scrape metrics from. The Prometheus Op ```yaml --- -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: ambassador-monitor diff --git a/Documentation/user-guides/prometheus-agent.md b/Documentation/user-guides/prometheus-agent.md index 36172a187..f104bf939 100644 --- a/Documentation/user-guides/prometheus-agent.md +++ b/Documentation/user-guides/prometheus-agent.md @@ -26,11 +26,11 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs resources: - alertmanagers - alertmanagers/finalizers @@ -168,7 +168,7 @@ subjects: Lastly, we can deploy the Agent. The `spec` field is very similar to the Prometheus CRD but the features that aren't applicable to the agent mode (like alerting, retention, Thanos, ...) are not available. ```yaml mdox-exec="cat example/rbac/prometheus-agent/prometheus.yaml" -apiVersion: monitoring.coreos.com/v1alpha1 +apiVersion: monitoring.rhobs/v1alpha1 kind: PrometheusAgent metadata: name: prometheus-agent diff --git a/Documentation/user-guides/running-exporters.md b/Documentation/user-guides/running-exporters.md index da834b5cf..15bb61b98 100644 --- a/Documentation/user-guides/running-exporters.md +++ b/Documentation/user-guides/running-exporters.md @@ -29,7 +29,7 @@ metadata: app: kube-state-metrics k8s-app: kube-state-metrics annotations: - alpha.monitoring.coreos.com/non-namespaced: "true" + alpha.monitoring.rhobs/non-namespaced: "true" name: kube-state-metrics spec: ports: @@ -48,7 +48,7 @@ This Service targets all Pods with the label `k8s-app: kube-state-metrics`. This ServiceMonitor targets **all** Services with the label `k8s-app` (`spec.selector`) any value, in the namespaces `kube-system` and `monitoring` (`spec.namespaceSelector`). ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: k8s-apps-http @@ -145,7 +145,7 @@ The following snippet will configure Prometheus to scrape metrics from the targe The following `ServiceMonitor` configures Prometheus to only select targets that have the `team` label set to `prometheus` and exclude the ones that have `datacenter` set to `west_europe`. The same configuration may be used with a `PodMonitor`. ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: example-app @@ -203,7 +203,7 @@ metricRelabelings: The following `PodMonitor` configures Prometheus to drop metrics where the `id` label matches the regex `/system.slice/var-lib-docker-containers.*-shm.mount`. The same configuration could also be used with a `ServiceMonitor` ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: PodMonitor metadata: name: example-app diff --git a/Documentation/user-guides/scrapeconfig.md b/Documentation/user-guides/scrapeconfig.md index b76eb168c..c611ec5de 100644 --- a/Documentation/user-guides/scrapeconfig.md +++ b/Documentation/user-guides/scrapeconfig.md @@ -52,7 +52,7 @@ If you have an interest in another service discovery mechanism or you see someth For example, to scrape the target located at `http://prometheus.demo.do.prometheus.io:9090`, use the following: ```yaml -apiVersion: monitoring.coreos.com/v1alpha1 +apiVersion: monitoring.rhobs/v1alpha1 kind: ScrapeConfig metadata: name: static-config @@ -94,7 +94,7 @@ data: This `ConfigMap` will then need to be mounted in the `Prometheus` spec: ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: your-prometheus @@ -111,7 +111,7 @@ spec: You can then use ScrapeConfig to reference that file and scrape the associated targets: ```yaml -apiVersion: monitoring.coreos.com/v1alpha1 +apiVersion: monitoring.rhobs/v1alpha1 kind: ScrapeConfig metadata: name: file-sd @@ -130,7 +130,7 @@ spec: `http_sd` works the same way as the `file_sd` but requires an endpoint providing that data rather than a file. For instance: ```yaml -apiVersion: monitoring.coreos.com/v1alpha1 +apiVersion: monitoring.rhobs/v1alpha1 kind: ScrapeConfig metadata: name: http-sd diff --git a/Documentation/user-guides/shards-and-replicas.md b/Documentation/user-guides/shards-and-replicas.md index 9d3c6118d..dde244fec 100644 --- a/Documentation/user-guides/shards-and-replicas.md +++ b/Documentation/user-guides/shards-and-replicas.md @@ -17,7 +17,7 @@ View the complete [Shards manifests](../../example/shards). The following manifest creates a Prometheus server with two replicas: ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: labels: @@ -86,7 +86,7 @@ spec: ``` ```yaml mdox-exec="cat example/shards/example-app-service-monitor.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: example-app @@ -113,7 +113,7 @@ We find the prometheus server scrapes three targets. Expand prometheus to two shards as shown below: ```yaml mdox-exec="cat example/shards/prometheus.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: labels: diff --git a/Documentation/user-guides/storage.md b/Documentation/user-guides/storage.md index e6b0c11f4..ecdcb4359 100644 --- a/Documentation/user-guides/storage.md +++ b/Documentation/user-guides/storage.md @@ -53,7 +53,7 @@ instead of making the following change to your `Prometheus` resource, see the example). ```yaml mdox-exec="cat example/storage/persisted-prometheus.yaml" -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: persisted @@ -89,7 +89,7 @@ For example, using an NFS volume might be accomplished with the following manifests: ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: my-example-prometheus-name diff --git a/Documentation/user-guides/strategic-merge-patch.md b/Documentation/user-guides/strategic-merge-patch.md index 70d9bd5cb..7d6e8c940 100644 --- a/Documentation/user-guides/strategic-merge-patch.md +++ b/Documentation/user-guides/strategic-merge-patch.md @@ -32,7 +32,7 @@ The following manifest overwrites the `failureThreshold` value of startup probe of the Prometheus container: ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: labels: @@ -52,7 +52,7 @@ The following manifest overwrites the `failureThreshold` values of the readiness and liveness probes for the Alertmanager container. ```yaml -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: labels: diff --git a/Documentation/user-guides/webhook.md b/Documentation/user-guides/webhook.md index 562e401d4..6d4ebeb53 100644 --- a/Documentation/user-guides/webhook.md +++ b/Documentation/user-guides/webhook.md @@ -86,7 +86,7 @@ kind: ServiceAccount metadata: labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator-admission-webhook namespace: default ``` @@ -97,7 +97,7 @@ kind: Deployment metadata: labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator-admission-webhook namespace: default spec: @@ -114,7 +114,7 @@ spec: kubectl.kubernetes.io/default-container: prometheus-operator-admission-webhook labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 spec: affinity: podAntiAffinity: @@ -131,7 +131,7 @@ spec: - --web.enable-tls=true - --web.cert-file=/etc/tls/private/tls.crt - --web.key-file=/etc/tls/private/tls.key - image: quay.io/prometheus-operator/admission-webhook:v0.69.1 + image: quay.io/rhobs/obo-admission-webhook:v0.69.1-rhobs1 name: prometheus-operator-admission-webhook ports: - containerPort: 8443 @@ -179,7 +179,7 @@ kind: Service metadata: labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator-admission-webhook namespace: default spec: @@ -226,11 +226,11 @@ webhooks: namespace: default path: /admission-prometheusrules/validate failurePolicy: Fail - name: prometheusrulevalidate.monitoring.coreos.com + name: prometheusrulevalidate.monitoring.rhobs namespaceSelector: {} rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs apiVersions: - '*' operations: @@ -266,11 +266,11 @@ webhooks: namespace: default path: /admission-prometheusrules/mutate failurePolicy: Fail - name: prometheusrulemutate.monitoring.coreos.com + name: prometheusrulemutate.monitoring.rhobs namespaceSelector: {} rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs apiVersions: - '*' operations: @@ -306,11 +306,11 @@ webhooks: namespace: default path: /admission-alertmanagerconfigs/validate failurePolicy: Fail - name: alertmanagerconfigsvalidate.monitoring.coreos.com + name: alertmanagerconfigsvalidate.monitoring.rhobs namespaceSelector: {} rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs apiVersions: - v1alpha1 operations: @@ -331,10 +331,10 @@ For more details, refer to the [Kubernetes documentation](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definition-versioning/#webhook-conversion). The following command patches the -`alertmanagerconfigs.monitoring.coreos.com` CRD to enable the conversion. +`alertmanagerconfigs.monitoring.rhobs` CRD to enable the conversion. ```bash -cat < Note: If you're not using cert-manager, check the [CA Bundle]({{< ref "#ca-bundle" >}}) section. diff --git a/Makefile b/Makefile index c2693572f..96a64f579 100644 --- a/Makefile +++ b/Makefile @@ -10,10 +10,10 @@ endif CONTAINER_CLI ?= docker -GO_PKG=github.com/prometheus-operator/prometheus-operator -IMAGE_OPERATOR?=quay.io/prometheus-operator/prometheus-operator -IMAGE_RELOADER?=quay.io/prometheus-operator/prometheus-config-reloader -IMAGE_WEBHOOK?=quay.io/prometheus-operator/admission-webhook +GO_PKG=github.com/rhobs/obo-prometheus-operator +IMAGE_OPERATOR?=quay.io/rhobs/obo-prometheus-operator +IMAGE_RELOADER?=quay.io/rhobs/obo-prometheus-config-reloader +IMAGE_WEBHOOK?=quay.io/rhobs/obo-admission-webhook TAG?=$(shell git rev-parse --short HEAD) VERSION?=$(shell cat VERSION | tr -d " \t\n\r") @@ -228,7 +228,7 @@ generate-crds: $(CONTROLLER_GEN_BINARY) $(GOJSONTOYAML_BINARY) $(TYPES_V1_TARGET find example/prometheus-operator-crd/ -name '*.yaml' -print0 | xargs -0 -I{} sh -c '$(GOJSONTOYAML_BINARY) -yamltojson < "$$1" | jq > "$(PWD)/jsonnet/prometheus-operator/$$(basename $$1 | cut -d'_' -f2 | cut -d. -f1)-crd.json"' -- {} cd pkg/apis/monitoring && $(CONTROLLER_GEN_BINARY) crd:crdVersions=v1 paths=./... output:crd:dir=$(PWD)/example/prometheus-operator-crd-full echo "// Code generated using 'make generate-crds'. DO NOT EDIT." > $(PWD)/jsonnet/prometheus-operator/alertmanagerconfigs-v1beta1-crd.libsonnet - echo "{spec+: {versions+: $$($(GOJSONTOYAML_BINARY) -yamltojson < example/prometheus-operator-crd-full/monitoring.coreos.com_alertmanagerconfigs.yaml | jq '.spec.versions | map(select(.name == "v1beta1"))')}}" | $(JSONNETFMT_BINARY) - >> $(PWD)/jsonnet/prometheus-operator/alertmanagerconfigs-v1beta1-crd.libsonnet + echo "{spec+: {versions+: $$($(GOJSONTOYAML_BINARY) -yamltojson < example/prometheus-operator-crd-full/monitoring.rhobs_alertmanagerconfigs.yaml | jq '.spec.versions | map(select(.name == "v1beta1"))')}}" | $(JSONNETFMT_BINARY) - >> $(PWD)/jsonnet/prometheus-operator/alertmanagerconfigs-v1beta1-crd.libsonnet .PHONY: generate-remote-write-certs generate-remote-write-certs: @@ -245,7 +245,7 @@ bundle.yaml: generate-crds $(shell find example/rbac/prometheus-operator/*.yaml # description fields being removed. It is meant as a workaround for the issue # that `kubectl apply -f ...` might fail with the full version of the CRDs # because of too long annotations field. -# See https://github.com/prometheus-operator/prometheus-operator/issues/4355 +# See https://github.com/rhobs/obo-prometheus-operator/issues/4355 stripped-down-crds.yaml: $(shell find example/prometheus-operator-crd/*.yaml -type f) $(GOJSONTOYAML_BINARY) : > $@ for f in example/prometheus-operator-crd/*.yaml; do echo '---' >> $@; $(GOJSONTOYAML_BINARY) -yamltojson < $$f | jq 'walk(if type == "object" then with_entries(if .value|type=="object" then . else select(.key | test("description") | not) end) else . end)' | $(GOJSONTOYAML_BINARY) >> $@; done @@ -282,7 +282,7 @@ Documentation/compatibility.md: pkg/operator/defaults.go $(MDOX_BINARY) fmt $@ Documentation/api.md: $(TYPES_V1_TARGET) $(TYPES_V1ALPHA1_TARGET) $(TYPES_V1BETA1_TARGET) - $(API_DOC_GEN_BINARY) -api-dir "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/" -config "$(PWD)/scripts/docs/config.json" -template-dir "$(PWD)/scripts/docs/templates" -out-file "$(PWD)/Documentation/api.md" + $(API_DOC_GEN_BINARY) -api-dir "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/" -config "$(PWD)/scripts/docs/config.json" -template-dir "$(PWD)/scripts/docs/templates" -out-file "$(PWD)/Documentation/api.md" ############## # Formatting # diff --git a/README.md b/README.md index 825b0838c..a6c10c557 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Prometheus Operator -[![Build Status](https://github.com/prometheus-operator/prometheus-operator/workflows/ci/badge.svg)](https://github.com/prometheus-operator/prometheus-operator/actions) +[![Build Status](https://github.com/rhobs/obo-prometheus-operator/workflows/ci/badge.svg)](https://github.com/rhobs/obo-prometheus-operator/actions) [![Go Report Card](https://goreportcard.com/badge/prometheus-operator/prometheus-operator "Go Report Card")](https://goreportcard.com/report/prometheus-operator/prometheus-operator) [![Slack](https://img.shields.io/badge/join%20slack-%23prometheus--operator-brightgreen.svg)](http://slack.k8s.io/) @@ -21,15 +21,15 @@ The Prometheus operator includes, but is not limited to, the following features: * **Prometheus Target Configuration**: Automatically generate monitoring target configurations based on familiar Kubernetes label queries; no need to learn a Prometheus specific configuration language. -For an introduction to the Prometheus Operator, see the [getting started](https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/user-guides/getting-started.md) guide. +For an introduction to the Prometheus Operator, see the [getting started](https://github.com/rhobs/obo-prometheus-operator/blob/main/Documentation/user-guides/getting-started.md) guide. ## Project Status The operator in itself is considered to be production ready. Please refer to the Custom Resource Definition (CRD) versions for the status of each CRD: -* `monitoring.coreos.com/v1`: **stable** CRDs and API, changes are made in a backward-compatible way. -* `monitoring.coreos.com/v1beta1`: **unstable** CRDs and API, changes can happen but the team is focused on avoiding them. We encourage usage in production for users that accept the risk of breaking changes. -* `monitoring.coreos.com/v1alpha1`: **unstable** CRDs and API, changes can happen frequently, and we suggest avoiding its usage on mission-critical environments. +* `monitoring.rhobs/v1`: **stable** CRDs and API, changes are made in a backward-compatible way. +* `monitoring.rhobs/v1beta1`: **unstable** CRDs and API, changes can happen but the team is focused on avoiding them. We encourage usage in production for users that accept the risk of breaking changes. +* `monitoring.rhobs/v1alpha1`: **unstable** CRDs and API, changes can happen frequently, and we suggest avoiding its usage on mission-critical environments. ## Prometheus Operator vs. kube-prometheus vs. community helm chart @@ -154,11 +154,11 @@ for n in $(kubectl get namespaces -o jsonpath={..metadata.name}); do done kubectl delete --ignore-not-found customresourcedefinitions \ - prometheuses.monitoring.coreos.com \ - servicemonitors.monitoring.coreos.com \ - podmonitors.monitoring.coreos.com \ - alertmanagers.monitoring.coreos.com \ - prometheusrules.monitoring.coreos.com + prometheuses.monitoring.rhobs \ + servicemonitors.monitoring.rhobs \ + podmonitors.monitoring.rhobs \ + alertmanagers.monitoring.rhobs \ + prometheusrules.monitoring.rhobs ``` ## Development @@ -172,7 +172,7 @@ kubectl delete --ignore-not-found customresourcedefinitions \ ### Testing > Ensure that you're running tests in the following path: -> `$GOPATH/src/github.com/prometheus-operator/prometheus-operator` as tests expect paths to +> `$GOPATH/src/github.com/rhobs/obo-prometheus-operator` as tests expect paths to > match. If you're working from a fork, just add the forked repo as a remote and > pull against your local prometheus-operator checkout before running tests. @@ -199,12 +199,12 @@ kubectl delete --ignore-not-found customresourcedefinitions \ 4. publish locally built images to be accessible inside kind ```bash - for n in "prometheus-operator" "prometheus-config-reloader" "admission-webhook"; do kind load docker-image "quay.io/prometheus-operator/$n:$(git rev-parse --short HEAD)"; done; + for n in "prometheus-operator" "prometheus-config-reloader" "admission-webhook"; do kind load docker-image "quay.io/rhobs/obo-$n:$(git rev-parse --short HEAD)"; done; ``` > Note: In case you are running kind using podman, docker-image command won't work. You need to use image archives instead: > -> `for n in "prometheus-operator" "prometheus-config-reloader" "admission-webhook"; do podman save --quiet -o images/$n.tar "quay.io/prometheus-operator/$n:$(git rev-parse --short HEAD)"; kind load image-archive images/$n.tar; done` +> `for n in "prometheus-operator" "prometheus-config-reloader" "admission-webhook"; do podman save --quiet -o images/$n.tar "quay.io/rhobs/obo-$n:$(git rev-parse --short HEAD)"; kind load image-archive images/$n.tar; done` 5. `make test-e2e` diff --git a/RELEASE.md b/RELEASE.md index f0a65316e..1813c8c0f 100644 --- a/RELEASE.md +++ b/RELEASE.md @@ -68,7 +68,7 @@ make tidy ## Update operand versions -A couple of days before the release, update the [default versions](https://github.com/prometheus-operator/prometheus-operator/blob/f6ce472ecd6064fb6769e306b55b149dfb6af903/pkg/operator/defaults.go#L20-L31) of Prometheus, Alertmanager and Thanos if newer versions are available. +A couple of days before the release, update the [default versions](https://github.com/rhobs/obo-prometheus-operator/blob/f6ce472ecd6064fb6769e306b55b149dfb6af903/pkg/operator/defaults.go#L20-L31) of Prometheus, Alertmanager and Thanos if newer versions are available. ## Prepare your release @@ -85,9 +85,9 @@ make clean generate Bump the version of the `pkg/apis/monitoring` and `pkg/client` packages in `go.mod`: ```bash -go mod edit -require "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring@v$(< VERSION)" pkg/client/go.mod -go mod edit -require "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring@v$(< VERSION)" -go mod edit -require "github.com/prometheus-operator/prometheus-operator/pkg/client@v$(< VERSION)" +go mod edit -require "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring@v$(< VERSION)" pkg/client/go.mod +go mod edit -require "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring@v$(< VERSION)" +go mod edit -require "github.com/rhobs/obo-prometheus-operator/pkg/client@v$(< VERSION)" ``` Now that all version information has been updated, an entry for the new version can be added to the `CHANGELOG.md` file. @@ -112,7 +112,7 @@ git push origin release-. From now on, all work happens on the `release-.` branch. -Tag the new release with a tag named `v..`, e.g. `v2.1.3`. Note the `v` prefix. Tag also the `github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring` module with `pkg/apis/monitoring/v..` and the `github.com/prometheus-operator/prometheus-operator/pkg/client` module with `pkg/client/v..`. You can do the tagging on the commandline: +Tag the new release with a tag named `v..`, e.g. `v2.1.3`. Note the `v` prefix. Tag also the `github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring` module with `pkg/apis/monitoring/v..` and the `github.com/rhobs/obo-prometheus-operator/pkg/client` module with `pkg/client/v..`. You can do the tagging on the commandline: ```bash tag="v$(< VERSION)" @@ -124,9 +124,9 @@ git push origin "${tag}" "pkg/apis/monitoring/${tag}" "pkg/client/${tag}" Signed tag with a GPG key is appreciated, but in case you can't add a GPG key to your Github account using the following [procedure](https://docs.github.com/articles/generating-a-gpg-key), you can replace the `-s` flag by `-a` flag of the `git tag` command to only annotate the tag without signing. -Our CI pipeline will automatically push the container images to [quay.io](https://quay.io/organization/prometheus-operator) and [ghcr.io](https://github.com/prometheus-operator/prometheus-operator/pkgs/container/prometheus-operator) +Our CI pipeline will automatically push the container images to [quay.io](https://quay.io/organization/prometheus-operator) and [ghcr.io](https://github.com/rhobs/obo-prometheus-operator/pkgs/container/prometheus-operator) -Go to https://github.com/prometheus-operator/prometheus-operator/releases/new, associate the new release with the before pushed tag, paste in changes made to `CHANGELOG.md` and click "Publish release". +Go to https://github.com/rhobs/obo-prometheus-operator/releases/new, associate the new release with the before pushed tag, paste in changes made to `CHANGELOG.md` and click "Publish release". For patch releases, submit a pull request to merge back the release branch into the `main` branch. diff --git a/VERSION b/VERSION index a868f07b1..f49d6cc36 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.69.1 +0.69.1-rhobs1 diff --git a/bundle.yaml b/bundle.yaml index c5038807e..87d048adc 100644 --- a/bundle.yaml +++ b/bundle.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: alertmanagerconfigs.monitoring.coreos.com + name: alertmanagerconfigs.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: AlertmanagerConfig listKind: AlertmanagerConfigList plural: alertmanagerconfigs - shortNames: - - amcfg singular: alertmanagerconfig scope: Namespaced versions: @@ -5673,19 +5671,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: alertmanagers.monitoring.coreos.com + name: alertmanagers.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: Alertmanager listKind: AlertmanagerList plural: alertmanagers - shortNames: - - am singular: alertmanager scope: Namespaced versions: @@ -13092,19 +13088,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: podmonitors.monitoring.coreos.com + name: podmonitors.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: PodMonitor listKind: PodMonitorList plural: podmonitors - shortNames: - - pmon singular: podmonitor scope: Namespaced versions: @@ -13784,19 +13778,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: probes.monitoring.coreos.com + name: probes.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: Probe listKind: ProbeList plural: probes - shortNames: - - prb singular: probe scope: Namespaced versions: @@ -14518,19 +14510,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: prometheusagents.monitoring.coreos.com + name: prometheusagents.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: PrometheusAgent listKind: PrometheusAgentList plural: prometheusagents - shortNames: - - promagent singular: prometheusagent scope: Namespaced versions: @@ -17121,11 +17111,11 @@ spec: Probe or PrometheusRule object. properties: group: - default: monitoring.coreos.com + default: monitoring.rhobs description: Group of the referent. When not specified, it defaults - to `monitoring.coreos.com` + to `monitoring.rhobs` enum: - - monitoring.coreos.com + - monitoring.rhobs type: string name: description: Name of the referent. When not set, all resources @@ -22960,19 +22950,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: prometheuses.monitoring.coreos.com + name: prometheuses.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: Prometheus listKind: PrometheusList plural: prometheuses - shortNames: - - prom singular: prometheus scope: Namespaced versions: @@ -25980,11 +25968,11 @@ spec: Probe or PrometheusRule object. properties: group: - default: monitoring.coreos.com + default: monitoring.rhobs description: Group of the referent. When not specified, it defaults - to `monitoring.coreos.com` + to `monitoring.rhobs` enum: - - monitoring.coreos.com + - monitoring.rhobs type: string name: description: Name of the referent. When not set, all resources @@ -32801,19 +32789,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: prometheusrules.monitoring.coreos.com + name: prometheusrules.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: PrometheusRule listKind: PrometheusRuleList plural: prometheusrules - shortNames: - - promrule singular: prometheusrule scope: Namespaced versions: @@ -32933,19 +32919,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: scrapeconfigs.monitoring.coreos.com + name: scrapeconfigs.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: ScrapeConfig listKind: ScrapeConfigList plural: scrapeconfigs - shortNames: - - scfg singular: scrapeconfig scope: Namespaced versions: @@ -34227,19 +34211,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: servicemonitors.monitoring.coreos.com + name: servicemonitors.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: ServiceMonitor listKind: ServiceMonitorList plural: servicemonitors - shortNames: - - smon singular: servicemonitor scope: Namespaced versions: @@ -34949,19 +34931,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: thanosrulers.monitoring.coreos.com + name: thanosrulers.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: ThanosRuler listKind: ThanosRulerList plural: thanosrulers - shortNames: - - ruler singular: thanosruler scope: Namespaced versions: @@ -37244,11 +37224,11 @@ spec: Probe or PrometheusRule object. properties: group: - default: monitoring.coreos.com + default: monitoring.rhobs description: Group of the referent. When not specified, it defaults - to `monitoring.coreos.com` + to `monitoring.rhobs` enum: - - monitoring.coreos.com + - monitoring.rhobs type: string name: description: Name of the referent. When not set, all resources @@ -41866,7 +41846,7 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator roleRef: apiGroup: rbac.authorization.k8s.io @@ -41883,11 +41863,11 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs resources: - alertmanagers - alertmanagers/finalizers @@ -41976,7 +41956,7 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator namespace: default spec: @@ -41992,14 +41972,14 @@ spec: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 spec: automountServiceAccountToken: true containers: - args: - --kubelet-service=kube-system/kubelet - - --prometheus-config-reloader=quay.io/prometheus-operator/prometheus-config-reloader:v0.69.1 - image: quay.io/prometheus-operator/prometheus-operator:v0.69.1 + - --prometheus-config-reloader=quay.io/rhobs/obo-prometheus-config-reloader:v0.69.1-rhobs1 + image: quay.io/rhobs/obo-prometheus-operator:v0.69.1-rhobs1 name: prometheus-operator ports: - containerPort: 8080 @@ -42033,7 +42013,7 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator namespace: default --- @@ -42043,7 +42023,7 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator namespace: default spec: diff --git a/cmd/admission-webhook/main.go b/cmd/admission-webhook/main.go index d8e222105..fc1ad4a76 100644 --- a/cmd/admission-webhook/main.go +++ b/cmd/admission-webhook/main.go @@ -37,9 +37,9 @@ import ( "github.com/prometheus/common/version" "golang.org/x/sync/errgroup" - logging "github.com/prometheus-operator/prometheus-operator/internal/log" - "github.com/prometheus-operator/prometheus-operator/pkg/admission" - "github.com/prometheus-operator/prometheus-operator/pkg/server" + logging "github.com/rhobs/obo-prometheus-operator/internal/log" + "github.com/rhobs/obo-prometheus-operator/pkg/admission" + "github.com/rhobs/obo-prometheus-operator/pkg/server" ) const ( diff --git a/cmd/operator/main.go b/cmd/operator/main.go index b23e065f9..405e2f66d 100644 --- a/cmd/operator/main.go +++ b/cmd/operator/main.go @@ -43,18 +43,18 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/client-go/kubernetes" - logging "github.com/prometheus-operator/prometheus-operator/internal/log" - "github.com/prometheus-operator/prometheus-operator/pkg/admission" - alertmanagercontroller "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prometheusagentcontroller "github.com/prometheus-operator/prometheus-operator/pkg/prometheus/agent" - prometheuscontroller "github.com/prometheus-operator/prometheus-operator/pkg/prometheus/server" - "github.com/prometheus-operator/prometheus-operator/pkg/server" - thanoscontroller "github.com/prometheus-operator/prometheus-operator/pkg/thanos" - "github.com/prometheus-operator/prometheus-operator/pkg/versionutil" + logging "github.com/rhobs/obo-prometheus-operator/internal/log" + "github.com/rhobs/obo-prometheus-operator/pkg/admission" + alertmanagercontroller "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prometheusagentcontroller "github.com/rhobs/obo-prometheus-operator/pkg/prometheus/agent" + prometheuscontroller "github.com/rhobs/obo-prometheus-operator/pkg/prometheus/server" + "github.com/rhobs/obo-prometheus-operator/pkg/server" + thanoscontroller "github.com/rhobs/obo-prometheus-operator/pkg/thanos" + "github.com/rhobs/obo-prometheus-operator/pkg/versionutil" ) const ( diff --git a/cmd/po-docgen/compatibility.go b/cmd/po-docgen/compatibility.go index 68691a7d3..cf3364bfe 100644 --- a/cmd/po-docgen/compatibility.go +++ b/cmd/po-docgen/compatibility.go @@ -15,7 +15,7 @@ package main import ( - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) type compatibilityMatrix struct { diff --git a/cmd/po-docgen/main.go b/cmd/po-docgen/main.go index 273d01719..b2a479722 100644 --- a/cmd/po-docgen/main.go +++ b/cmd/po-docgen/main.go @@ -18,7 +18,7 @@ import ( "fmt" "os" - "github.com/prometheus-operator/prometheus-operator/pkg/versionutil" + "github.com/rhobs/obo-prometheus-operator/pkg/versionutil" ) func main() { diff --git a/cmd/po-lint/main.go b/cmd/po-lint/main.go index 91497ea9c..2f71e3d48 100644 --- a/cmd/po-lint/main.go +++ b/cmd/po-lint/main.go @@ -26,10 +26,10 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "sigs.k8s.io/yaml" - "github.com/prometheus-operator/prometheus-operator/pkg/admission" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/versionutil" + "github.com/rhobs/obo-prometheus-operator/pkg/admission" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/versionutil" ) func main() { diff --git a/cmd/po-rule-migration/main.go b/cmd/po-rule-migration/main.go index fe61f75f3..71053977a 100644 --- a/cmd/po-rule-migration/main.go +++ b/cmd/po-rule-migration/main.go @@ -28,9 +28,9 @@ import ( k8sYAML "k8s.io/apimachinery/pkg/util/yaml" "sigs.k8s.io/yaml" - monitoring "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/versionutil" + monitoring "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/versionutil" ) func main() { diff --git a/cmd/prometheus-config-reloader/main.go b/cmd/prometheus-config-reloader/main.go index b98873827..fe2353a2b 100644 --- a/cmd/prometheus-config-reloader/main.go +++ b/cmd/prometheus-config-reloader/main.go @@ -38,9 +38,9 @@ import ( "github.com/prometheus/exporter-toolkit/web" "github.com/thanos-io/thanos/pkg/reloader" - logging "github.com/prometheus-operator/prometheus-operator/internal/log" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - "github.com/prometheus-operator/prometheus-operator/pkg/versionutil" + logging "github.com/rhobs/obo-prometheus-operator/internal/log" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + "github.com/rhobs/obo-prometheus-operator/pkg/versionutil" ) const ( diff --git a/cmd/prometheus-config-reloader/main_test.go b/cmd/prometheus-config-reloader/main_test.go index 0180efe25..eb88bbda5 100644 --- a/cmd/prometheus-config-reloader/main_test.go +++ b/cmd/prometheus-config-reloader/main_test.go @@ -24,7 +24,7 @@ import ( "github.com/go-test/deep" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) var cases = []struct { diff --git a/contrib/kube-prometheus/README.md b/contrib/kube-prometheus/README.md index b42b32b87..24fc794f8 100644 --- a/contrib/kube-prometheus/README.md +++ b/contrib/kube-prometheus/README.md @@ -9,7 +9,7 @@ Moving kube-prometheus into its own repository is going to allow us to move more As an example, we are now going to publish versioned kube-prometheus releases, something that was not possible before. Take a look at this issue for more information: -https://github.com/prometheus-operator/prometheus-operator/issues/2553 +https://github.com/rhobs/obo-prometheus-operator/issues/2553 **What do I need to do?** @@ -22,7 +22,7 @@ Users depending on kube-prometheus with jsonnet-bundler, should change this thei "name": "kube-prometheus", "source": { "git": { -- "remote": "https://github.com/prometheus-operator/prometheus-operator", +- "remote": "https://github.com/rhobs/obo-prometheus-operator", - "subdir": "contrib/kube-prometheus/jsonnet/kube-prometheus" + "remote": "https://github.com/prometheus-operator/kube-prometheus", + "subdir": "jsonnet/kube-prometheus" diff --git a/example/additional-scrape-configs/prometheus.yaml b/example/additional-scrape-configs/prometheus.yaml index ee4cc0c6b..9192ae9c4 100644 --- a/example/additional-scrape-configs/prometheus.yaml +++ b/example/additional-scrape-configs/prometheus.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus diff --git a/example/admission-webhook/deployment.yaml b/example/admission-webhook/deployment.yaml index 892a4f642..4b38ba029 100644 --- a/example/admission-webhook/deployment.yaml +++ b/example/admission-webhook/deployment.yaml @@ -3,7 +3,7 @@ kind: Deployment metadata: labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator-admission-webhook namespace: default spec: @@ -20,7 +20,7 @@ spec: kubectl.kubernetes.io/default-container: prometheus-operator-admission-webhook labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 spec: affinity: podAntiAffinity: @@ -37,7 +37,7 @@ spec: - --web.enable-tls=true - --web.cert-file=/etc/tls/private/tls.crt - --web.key-file=/etc/tls/private/tls.key - image: quay.io/prometheus-operator/admission-webhook:v0.69.1 + image: quay.io/rhobs/obo-admission-webhook:v0.69.1-rhobs1 name: prometheus-operator-admission-webhook ports: - containerPort: 8443 diff --git a/example/admission-webhook/pod-disruption-budget.yaml b/example/admission-webhook/pod-disruption-budget.yaml index 50146daa2..f7435cb67 100644 --- a/example/admission-webhook/pod-disruption-budget.yaml +++ b/example/admission-webhook/pod-disruption-budget.yaml @@ -3,7 +3,7 @@ kind: PodDisruptionBudget metadata: labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator-admission-webhook namespace: default spec: diff --git a/example/admission-webhook/service-account.yaml b/example/admission-webhook/service-account.yaml index db92cf852..9a1a05b70 100644 --- a/example/admission-webhook/service-account.yaml +++ b/example/admission-webhook/service-account.yaml @@ -4,6 +4,6 @@ kind: ServiceAccount metadata: labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator-admission-webhook namespace: default diff --git a/example/admission-webhook/service-monitor.yaml b/example/admission-webhook/service-monitor.yaml index 9a681cacc..073e0d30e 100644 --- a/example/admission-webhook/service-monitor.yaml +++ b/example/admission-webhook/service-monitor.yaml @@ -1,9 +1,9 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator-admission-webhook namespace: default spec: @@ -13,4 +13,4 @@ spec: selector: matchLabels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 diff --git a/example/admission-webhook/service.yaml b/example/admission-webhook/service.yaml index abf215074..0014baa14 100644 --- a/example/admission-webhook/service.yaml +++ b/example/admission-webhook/service.yaml @@ -3,7 +3,7 @@ kind: Service metadata: labels: app.kubernetes.io/name: prometheus-operator-admission-webhook - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator-admission-webhook namespace: default spec: diff --git a/example/alertmanager-crd-conversion/patch.json b/example/alertmanager-crd-conversion/patch.json index e6cdbd0ac..ae922149b 100644 --- a/example/alertmanager-crd-conversion/patch.json +++ b/example/alertmanager-crd-conversion/patch.json @@ -4,10 +4,10 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "alertmanagerconfigs.monitoring.coreos.com" + "name": "alertmanagerconfigs.monitoring.rhobs" }, "spec": { "conversion": { diff --git a/example/alertmanager-webhook/Makefile b/example/alertmanager-webhook/Makefile index 998546f07..00f46d292 100644 --- a/example/alertmanager-webhook/Makefile +++ b/example/alertmanager-webhook/Makefile @@ -1,4 +1,4 @@ -IMAGE ?= quay.io/prometheus-operator/prometheus-alertmanager-test-webhook +IMAGE ?= quay.io/rhobs/obo-prometheus-alertmanager-test-webhook TAG ?= latest .PHONY: build diff --git a/example/alertmanager-webhook/README.md b/example/alertmanager-webhook/README.md index 333b19e0a..ffe8e6c8e 100644 --- a/example/alertmanager-webhook/README.md +++ b/example/alertmanager-webhook/README.md @@ -2,14 +2,14 @@ This directory contains a very simple program that can receive alert notifications from Alertmanager. It is used by the end-to-end tests to verify that Alertmanager works as expected. -The program is available at `quay.io/prometheus-operator/prometheus-alertmanager-test-webhook:latest`. +The program is available at `quay.io/rhobs/obo-prometheus-alertmanager-test-webhook:latest`. ## Updating the image on quay.io The image requires very few updates since the program is very simple and only used for testing. Pre-requisites: -* Credentials to push the image to `quay.io/prometheus-operator/prometheus-alertmanager-test-webhook`. +* Credentials to push the image to `quay.io/rhobs/obo-prometheus-alertmanager-test-webhook`. * Buildah CLI + the `qemu-user-static` package. Running `make manifest` should be all that is needed. diff --git a/example/non-rbac/prometheus-operator.yaml b/example/non-rbac/prometheus-operator.yaml index 554c677b9..80267055d 100644 --- a/example/non-rbac/prometheus-operator.yaml +++ b/example/non-rbac/prometheus-operator.yaml @@ -25,8 +25,8 @@ spec: containers: - args: - --kubelet-service=kube-system/kubelet - - --prometheus-config-reloader=quay.io/prometheus-operator/prometheus-config-reloader:v0.52.0 - image: quay.io/prometheus-operator/prometheus-operator:v0.52.0 + - --prometheus-config-reloader=quay.io/rhobs/obo-prometheus-config-reloader:v0.52.0 + image: quay.io/rhobs/obo-prometheus-operator:v0.52.0 name: prometheus-operator ports: - containerPort: 8080 diff --git a/example/non-rbac/prometheus.yaml b/example/non-rbac/prometheus.yaml index fa9c0e8e0..88da96516 100644 --- a/example/non-rbac/prometheus.yaml +++ b/example/non-rbac/prometheus.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: main diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_alertmanagerconfigs.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_alertmanagerconfigs.yaml similarity index 99% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_alertmanagerconfigs.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_alertmanagerconfigs.yaml index 27a50b9f6..3d06fd52a 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_alertmanagerconfigs.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_alertmanagerconfigs.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: alertmanagerconfigs.monitoring.coreos.com + name: alertmanagerconfigs.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: AlertmanagerConfig listKind: AlertmanagerConfigList plural: alertmanagerconfigs - shortNames: - - amcfg singular: alertmanagerconfig scope: Namespaced versions: diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_alertmanagers.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_alertmanagers.yaml similarity index 99% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_alertmanagers.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_alertmanagers.yaml index 0944e404d..827f7d1d7 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_alertmanagers.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_alertmanagers.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: alertmanagers.monitoring.coreos.com + name: alertmanagers.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: Alertmanager listKind: AlertmanagerList plural: alertmanagers - shortNames: - - am singular: alertmanager scope: Namespaced versions: diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_podmonitors.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_podmonitors.yaml similarity index 99% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_podmonitors.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_podmonitors.yaml index 2d8416b94..b19b2baf1 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_podmonitors.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_podmonitors.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: podmonitors.monitoring.coreos.com + name: podmonitors.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: PodMonitor listKind: PodMonitorList plural: podmonitors - shortNames: - - pmon singular: podmonitor scope: Namespaced versions: diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_probes.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_probes.yaml similarity index 99% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_probes.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_probes.yaml index 2b55f2135..6e0414dc7 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_probes.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_probes.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: probes.monitoring.coreos.com + name: probes.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: Probe listKind: ProbeList plural: probes - shortNames: - - prb singular: probe scope: Namespaced versions: diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_prometheusagents.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_prometheusagents.yaml similarity index 99% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_prometheusagents.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_prometheusagents.yaml index 2df522bf4..6aff37db8 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_prometheusagents.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_prometheusagents.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: prometheusagents.monitoring.coreos.com + name: prometheusagents.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: PrometheusAgent listKind: PrometheusAgentList plural: prometheusagents - shortNames: - - promagent singular: prometheusagent scope: Namespaced versions: @@ -2606,11 +2604,11 @@ spec: Probe or PrometheusRule object. properties: group: - default: monitoring.coreos.com + default: monitoring.rhobs description: Group of the referent. When not specified, it defaults - to `monitoring.coreos.com` + to `monitoring.rhobs` enum: - - monitoring.coreos.com + - monitoring.rhobs type: string name: description: Name of the referent. When not set, all resources diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_prometheuses.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_prometheuses.yaml similarity index 99% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_prometheuses.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_prometheuses.yaml index 35c4286c9..f20d2e3b2 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_prometheuses.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_prometheuses.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: prometheuses.monitoring.coreos.com + name: prometheuses.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: Prometheus listKind: PrometheusList plural: prometheuses - shortNames: - - prom singular: prometheus scope: Namespaced versions: @@ -3023,11 +3021,11 @@ spec: Probe or PrometheusRule object. properties: group: - default: monitoring.coreos.com + default: monitoring.rhobs description: Group of the referent. When not specified, it defaults - to `monitoring.coreos.com` + to `monitoring.rhobs` enum: - - monitoring.coreos.com + - monitoring.rhobs type: string name: description: Name of the referent. When not set, all resources diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_prometheusrules.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_prometheusrules.yaml similarity index 97% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_prometheusrules.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_prometheusrules.yaml index d06a55769..6347009bc 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_prometheusrules.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_prometheusrules.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: prometheusrules.monitoring.coreos.com + name: prometheusrules.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: PrometheusRule listKind: PrometheusRuleList plural: prometheusrules - shortNames: - - promrule singular: prometheusrule scope: Namespaced versions: diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_scrapeconfigs.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_scrapeconfigs.yaml similarity index 99% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_scrapeconfigs.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_scrapeconfigs.yaml index b30e17e13..bf2926c85 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_scrapeconfigs.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_scrapeconfigs.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: scrapeconfigs.monitoring.coreos.com + name: scrapeconfigs.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: ScrapeConfig listKind: ScrapeConfigList plural: scrapeconfigs - shortNames: - - scfg singular: scrapeconfig scope: Namespaced versions: diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_servicemonitors.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_servicemonitors.yaml similarity index 99% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_servicemonitors.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_servicemonitors.yaml index 61018071b..2fe3a8ceb 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_servicemonitors.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_servicemonitors.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: servicemonitors.monitoring.coreos.com + name: servicemonitors.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: ServiceMonitor listKind: ServiceMonitorList plural: servicemonitors - shortNames: - - smon singular: servicemonitor scope: Namespaced versions: diff --git a/example/prometheus-operator-crd-full/monitoring.coreos.com_thanosrulers.yaml b/example/prometheus-operator-crd-full/monitoring.rhobs_thanosrulers.yaml similarity index 99% rename from example/prometheus-operator-crd-full/monitoring.coreos.com_thanosrulers.yaml rename to example/prometheus-operator-crd-full/monitoring.rhobs_thanosrulers.yaml index e60953b94..3dd547ce5 100644 --- a/example/prometheus-operator-crd-full/monitoring.coreos.com_thanosrulers.yaml +++ b/example/prometheus-operator-crd-full/monitoring.rhobs_thanosrulers.yaml @@ -5,17 +5,15 @@ metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 creationTimestamp: null - name: thanosrulers.monitoring.coreos.com + name: thanosrulers.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: ThanosRuler listKind: ThanosRulerList plural: thanosrulers - shortNames: - - ruler singular: thanosruler scope: Namespaced versions: @@ -2298,11 +2296,11 @@ spec: Probe or PrometheusRule object. properties: group: - default: monitoring.coreos.com + default: monitoring.rhobs description: Group of the referent. When not specified, it defaults - to `monitoring.coreos.com` + to `monitoring.rhobs` enum: - - monitoring.coreos.com + - monitoring.rhobs type: string name: description: Name of the referent. When not set, all resources diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagerconfigs.yaml b/example/prometheus-operator-crd/monitoring.rhobs_alertmanagerconfigs.yaml similarity index 99% rename from example/prometheus-operator-crd/monitoring.coreos.com_alertmanagerconfigs.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_alertmanagerconfigs.yaml index 546d503db..0f26acfdc 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagerconfigs.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_alertmanagerconfigs.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: alertmanagerconfigs.monitoring.coreos.com + name: alertmanagerconfigs.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: AlertmanagerConfig listKind: AlertmanagerConfigList plural: alertmanagerconfigs - shortNames: - - amcfg singular: alertmanagerconfig scope: Namespaced versions: diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagers.yaml b/example/prometheus-operator-crd/monitoring.rhobs_alertmanagers.yaml similarity index 99% rename from example/prometheus-operator-crd/monitoring.coreos.com_alertmanagers.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_alertmanagers.yaml index 3e69d7d1a..152a3d5f3 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagers.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_alertmanagers.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: alertmanagers.monitoring.coreos.com + name: alertmanagers.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: Alertmanager listKind: AlertmanagerList plural: alertmanagers - shortNames: - - am singular: alertmanager scope: Namespaced versions: diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_podmonitors.yaml b/example/prometheus-operator-crd/monitoring.rhobs_podmonitors.yaml similarity index 99% rename from example/prometheus-operator-crd/monitoring.coreos.com_podmonitors.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_podmonitors.yaml index 42478db0e..00592eb97 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_podmonitors.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_podmonitors.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: podmonitors.monitoring.coreos.com + name: podmonitors.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: PodMonitor listKind: PodMonitorList plural: podmonitors - shortNames: - - pmon singular: podmonitor scope: Namespaced versions: diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_probes.yaml b/example/prometheus-operator-crd/monitoring.rhobs_probes.yaml similarity index 99% rename from example/prometheus-operator-crd/monitoring.coreos.com_probes.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_probes.yaml index 74d0185b4..555d7e66f 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_probes.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_probes.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: probes.monitoring.coreos.com + name: probes.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: Probe listKind: ProbeList plural: probes - shortNames: - - prb singular: probe scope: Namespaced versions: diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_prometheusagents.yaml b/example/prometheus-operator-crd/monitoring.rhobs_prometheusagents.yaml similarity index 99% rename from example/prometheus-operator-crd/monitoring.coreos.com_prometheusagents.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_prometheusagents.yaml index 7d96e4122..5bf8a3a0b 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_prometheusagents.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_prometheusagents.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: prometheusagents.monitoring.coreos.com + name: prometheusagents.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: PrometheusAgent listKind: PrometheusAgentList plural: prometheusagents - shortNames: - - promagent singular: prometheusagent scope: Namespaced versions: @@ -2607,11 +2605,11 @@ spec: Probe or PrometheusRule object. properties: group: - default: monitoring.coreos.com + default: monitoring.rhobs description: Group of the referent. When not specified, it defaults - to `monitoring.coreos.com` + to `monitoring.rhobs` enum: - - monitoring.coreos.com + - monitoring.rhobs type: string name: description: Name of the referent. When not set, all resources diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_prometheuses.yaml b/example/prometheus-operator-crd/monitoring.rhobs_prometheuses.yaml similarity index 99% rename from example/prometheus-operator-crd/monitoring.coreos.com_prometheuses.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_prometheuses.yaml index 463207209..917477e95 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_prometheuses.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_prometheuses.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: prometheuses.monitoring.coreos.com + name: prometheuses.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: Prometheus listKind: PrometheusList plural: prometheuses - shortNames: - - prom singular: prometheus scope: Namespaced versions: @@ -3024,11 +3022,11 @@ spec: Probe or PrometheusRule object. properties: group: - default: monitoring.coreos.com + default: monitoring.rhobs description: Group of the referent. When not specified, it defaults - to `monitoring.coreos.com` + to `monitoring.rhobs` enum: - - monitoring.coreos.com + - monitoring.rhobs type: string name: description: Name of the referent. When not set, all resources diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_prometheusrules.yaml b/example/prometheus-operator-crd/monitoring.rhobs_prometheusrules.yaml similarity index 97% rename from example/prometheus-operator-crd/monitoring.coreos.com_prometheusrules.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_prometheusrules.yaml index 0bd8b643f..cd4acbc35 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_prometheusrules.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_prometheusrules.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: prometheusrules.monitoring.coreos.com + name: prometheusrules.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: PrometheusRule listKind: PrometheusRuleList plural: prometheusrules - shortNames: - - promrule singular: prometheusrule scope: Namespaced versions: diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_scrapeconfigs.yaml b/example/prometheus-operator-crd/monitoring.rhobs_scrapeconfigs.yaml similarity index 99% rename from example/prometheus-operator-crd/monitoring.coreos.com_scrapeconfigs.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_scrapeconfigs.yaml index 36e332074..db2c150f0 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_scrapeconfigs.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_scrapeconfigs.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: scrapeconfigs.monitoring.coreos.com + name: scrapeconfigs.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: ScrapeConfig listKind: ScrapeConfigList plural: scrapeconfigs - shortNames: - - scfg singular: scrapeconfig scope: Namespaced versions: diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml b/example/prometheus-operator-crd/monitoring.rhobs_servicemonitors.yaml similarity index 99% rename from example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_servicemonitors.yaml index e27b2f15f..effdcafcd 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_servicemonitors.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: servicemonitors.monitoring.coreos.com + name: servicemonitors.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: ServiceMonitor listKind: ServiceMonitorList plural: servicemonitors - shortNames: - - smon singular: servicemonitor scope: Namespaced versions: diff --git a/example/prometheus-operator-crd/monitoring.coreos.com_thanosrulers.yaml b/example/prometheus-operator-crd/monitoring.rhobs_thanosrulers.yaml similarity index 99% rename from example/prometheus-operator-crd/monitoring.coreos.com_thanosrulers.yaml rename to example/prometheus-operator-crd/monitoring.rhobs_thanosrulers.yaml index af09401a9..c19658d33 100644 --- a/example/prometheus-operator-crd/monitoring.coreos.com_thanosrulers.yaml +++ b/example/prometheus-operator-crd/monitoring.rhobs_thanosrulers.yaml @@ -4,19 +4,17 @@ kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.11.1 - operator.prometheus.io/version: 0.69.1 + operator.prometheus.io/version: 0.69.1-rhobs1 creationTimestamp: null - name: thanosrulers.monitoring.coreos.com + name: thanosrulers.monitoring.rhobs spec: - group: monitoring.coreos.com + group: monitoring.rhobs names: categories: - - prometheus-operator + - rhobs-prometheus-operator kind: ThanosRuler listKind: ThanosRulerList plural: thanosrulers - shortNames: - - ruler singular: thanosruler scope: Namespaced versions: @@ -2299,11 +2297,11 @@ spec: Probe or PrometheusRule object. properties: group: - default: monitoring.coreos.com + default: monitoring.rhobs description: Group of the referent. When not specified, it defaults - to `monitoring.coreos.com` + to `monitoring.rhobs` enum: - - monitoring.coreos.com + - monitoring.rhobs type: string name: description: Name of the referent. When not set, all resources diff --git a/example/rbac/prometheus-agent/prometheus.yaml b/example/rbac/prometheus-agent/prometheus.yaml index 5be07f40c..28e824e07 100644 --- a/example/rbac/prometheus-agent/prometheus.yaml +++ b/example/rbac/prometheus-agent/prometheus.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1alpha1 +apiVersion: monitoring.rhobs/v1alpha1 kind: PrometheusAgent metadata: name: prometheus-agent diff --git a/example/rbac/prometheus-operator-crd/prometheus-operator-crd-cluster-roles.yaml b/example/rbac/prometheus-operator-crd/prometheus-operator-crd-cluster-roles.yaml index cb4452631..1ee9aad05 100644 --- a/example/rbac/prometheus-operator-crd/prometheus-operator-crd-cluster-roles.yaml +++ b/example/rbac/prometheus-operator-crd/prometheus-operator-crd-cluster-roles.yaml @@ -7,7 +7,7 @@ metadata: rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-view: "true" rules: -- apiGroups: ["monitoring.coreos.com"] +- apiGroups: ["monitoring.rhobs"] resources: ["alertmanagers", "alertmanagerconfigs", "prometheuses", "prometheusrules", "servicemonitors", "podmonitors", "probes"] verbs: ["get", "list", "watch"] --- @@ -19,6 +19,6 @@ metadata: rbac.authorization.k8s.io/aggregate-to-edit: "true" rbac.authorization.k8s.io/aggregate-to-admin: "true" rules: -- apiGroups: ["monitoring.coreos.com"] +- apiGroups: ["monitoring.rhobs"] resources: ["alertmanagers", "alertmanagerconfigs", "prometheuses", "prometheusrules", "servicemonitors", "podmonitors", "probes"] verbs: ["get", "list", "watch", "create", "update", "patch", "delete"] diff --git a/example/rbac/prometheus-operator/prometheus-operator-cluster-role-binding.yaml b/example/rbac/prometheus-operator/prometheus-operator-cluster-role-binding.yaml index 0be4ebc5e..f9dc4c980 100644 --- a/example/rbac/prometheus-operator/prometheus-operator-cluster-role-binding.yaml +++ b/example/rbac/prometheus-operator/prometheus-operator-cluster-role-binding.yaml @@ -4,7 +4,7 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator roleRef: apiGroup: rbac.authorization.k8s.io diff --git a/example/rbac/prometheus-operator/prometheus-operator-cluster-role.yaml b/example/rbac/prometheus-operator/prometheus-operator-cluster-role.yaml index 552325a63..d5df4a6c1 100644 --- a/example/rbac/prometheus-operator/prometheus-operator-cluster-role.yaml +++ b/example/rbac/prometheus-operator/prometheus-operator-cluster-role.yaml @@ -4,11 +4,11 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs resources: - alertmanagers - alertmanagers/finalizers diff --git a/example/rbac/prometheus-operator/prometheus-operator-deployment.yaml b/example/rbac/prometheus-operator/prometheus-operator-deployment.yaml index 8bd90b8d6..d37752ee2 100644 --- a/example/rbac/prometheus-operator/prometheus-operator-deployment.yaml +++ b/example/rbac/prometheus-operator/prometheus-operator-deployment.yaml @@ -4,7 +4,7 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator namespace: default spec: @@ -20,14 +20,14 @@ spec: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 spec: automountServiceAccountToken: true containers: - args: - --kubelet-service=kube-system/kubelet - - --prometheus-config-reloader=quay.io/prometheus-operator/prometheus-config-reloader:v0.69.1 - image: quay.io/prometheus-operator/prometheus-operator:v0.69.1 + - --prometheus-config-reloader=quay.io/rhobs/obo-prometheus-config-reloader:v0.69.1-rhobs1 + image: quay.io/rhobs/obo-prometheus-operator:v0.69.1-rhobs1 name: prometheus-operator ports: - containerPort: 8080 diff --git a/example/rbac/prometheus-operator/prometheus-operator-service-account.yaml b/example/rbac/prometheus-operator/prometheus-operator-service-account.yaml index eba6f47e9..510265ad6 100644 --- a/example/rbac/prometheus-operator/prometheus-operator-service-account.yaml +++ b/example/rbac/prometheus-operator/prometheus-operator-service-account.yaml @@ -5,6 +5,6 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator namespace: default diff --git a/example/rbac/prometheus-operator/prometheus-operator-service-monitor.yaml b/example/rbac/prometheus-operator/prometheus-operator-service-monitor.yaml index 7ed19a89b..68694c314 100644 --- a/example/rbac/prometheus-operator/prometheus-operator-service-monitor.yaml +++ b/example/rbac/prometheus-operator/prometheus-operator-service-monitor.yaml @@ -1,10 +1,10 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator namespace: default spec: @@ -15,4 +15,4 @@ spec: matchLabels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 diff --git a/example/rbac/prometheus-operator/prometheus-operator-service.yaml b/example/rbac/prometheus-operator/prometheus-operator-service.yaml index d1f3e5297..8ddca9f41 100644 --- a/example/rbac/prometheus-operator/prometheus-operator-service.yaml +++ b/example/rbac/prometheus-operator/prometheus-operator-service.yaml @@ -4,7 +4,7 @@ metadata: labels: app.kubernetes.io/component: controller app.kubernetes.io/name: prometheus-operator - app.kubernetes.io/version: 0.69.1 + app.kubernetes.io/version: 0.69.1-rhobs1 name: prometheus-operator namespace: default spec: diff --git a/example/rbac/prometheus/prometheus.yaml b/example/rbac/prometheus/prometheus.yaml index 2adaef137..798ccc8e7 100644 --- a/example/rbac/prometheus/prometheus.yaml +++ b/example/rbac/prometheus/prometheus.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus diff --git a/example/shards/example-app-service-monitor.yaml b/example/shards/example-app-service-monitor.yaml index d2a68fc95..87a529554 100644 --- a/example/shards/example-app-service-monitor.yaml +++ b/example/shards/example-app-service-monitor.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: example-app diff --git a/example/shards/prometheus.yaml b/example/shards/prometheus.yaml index 8cf3d8c27..9f9f46105 100644 --- a/example/shards/prometheus.yaml +++ b/example/shards/prometheus.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: labels: diff --git a/example/storage/persisted-prometheus.yaml b/example/storage/persisted-prometheus.yaml index 6d5a955c6..11339de4d 100644 --- a/example/storage/persisted-prometheus.yaml +++ b/example/storage/persisted-prometheus.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: persisted diff --git a/example/stripped-down-crds/all.yaml b/example/stripped-down-crds/all.yaml new file mode 100644 index 000000000..112ccdcf5 --- /dev/null +++ b/example/stripped-down-crds/all.yaml @@ -0,0 +1,21100 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: alertmanagerconfigs.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: AlertmanagerConfig + listKind: AlertmanagerConfigList + plural: alertmanagerconfigs + singular: alertmanagerconfig + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + inhibitRules: + items: + properties: + equal: + items: + type: string + type: array + sourceMatch: + items: + properties: + matchType: + enum: + - '!=' + - = + - =~ + - '!~' + type: string + name: + minLength: 1 + type: string + regex: + type: boolean + value: + type: string + required: + - name + type: object + type: array + targetMatch: + items: + properties: + matchType: + enum: + - '!=' + - = + - =~ + - '!~' + type: string + name: + minLength: 1 + type: string + regex: + type: boolean + value: + type: string + required: + - name + type: object + type: array + type: object + type: array + muteTimeIntervals: + items: + properties: + name: + type: string + timeIntervals: + items: + properties: + daysOfMonth: + items: + properties: + end: + maximum: 31 + minimum: -31 + type: integer + start: + maximum: 31 + minimum: -31 + type: integer + type: object + type: array + months: + items: + 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: + items: + properties: + endTime: + pattern: ^((([01][0-9])|(2[0-3])):[0-5][0-9])$|(^24:00$) + type: string + startTime: + pattern: ^((([01][0-9])|(2[0-3])):[0-5][0-9])$|(^24:00$) + type: string + type: object + type: array + weekdays: + items: + pattern: ^((?i)sun|mon|tues|wednes|thurs|fri|satur)day(?:((:(sun|mon|tues|wednes|thurs|fri|satur)day)$)|$) + type: string + type: array + years: + items: + pattern: ^2\d{3}(?::2\d{3}|$) + type: string + type: array + type: object + type: array + type: object + type: array + receivers: + items: + properties: + discordConfigs: + items: + properties: + apiURL: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + sendResolved: + type: boolean + title: + type: string + required: + - apiURL + type: object + type: array + emailConfigs: + items: + properties: + authIdentity: + type: string + authPassword: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + authSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + authUsername: + type: string + from: + type: string + headers: + items: + properties: + key: + minLength: 1 + type: string + value: + type: string + required: + - key + - value + type: object + type: array + hello: + type: string + html: + type: string + requireTLS: + type: boolean + sendResolved: + type: boolean + smarthost: + type: string + text: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + to: + type: string + type: object + type: array + msteamsConfigs: + items: + properties: + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + sendResolved: + type: boolean + text: + type: string + title: + type: string + webhookUrl: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + required: + - webhookUrl + type: object + type: array + name: + minLength: 1 + type: string + opsgenieConfigs: + items: + properties: + actions: + type: string + apiKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + apiURL: + type: string + description: + type: string + details: + items: + properties: + key: + minLength: 1 + type: string + value: + type: string + required: + - key + - value + type: object + type: array + entity: + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + note: + type: string + priority: + type: string + responders: + items: + properties: + id: + type: string + name: + type: string + type: + enum: + - team + - teams + - user + - escalation + - schedule + minLength: 1 + type: string + username: + type: string + required: + - type + type: object + type: array + sendResolved: + type: boolean + source: + type: string + tags: + type: string + updateAlerts: + type: boolean + type: object + type: array + pagerdutyConfigs: + items: + properties: + class: + type: string + client: + type: string + clientURL: + type: string + component: + type: string + description: + type: string + details: + items: + properties: + key: + minLength: 1 + type: string + value: + type: string + required: + - key + - value + type: object + type: array + group: + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + pagerDutyImageConfigs: + items: + properties: + alt: + type: string + href: + type: string + src: + type: string + type: object + type: array + pagerDutyLinkConfigs: + items: + properties: + alt: + type: string + href: + type: string + type: object + type: array + routingKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + sendResolved: + type: boolean + serviceKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + severity: + type: string + url: + type: string + type: object + type: array + pushoverConfigs: + items: + properties: + expire: + 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: + type: boolean + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + priority: + type: string + retry: + 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: + type: boolean + sound: + type: string + title: + type: string + token: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + tokenFile: + type: string + url: + type: string + urlTitle: + type: string + userKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + userKeyFile: + type: string + type: object + type: array + slackConfigs: + items: + properties: + actions: + items: + properties: + confirm: + 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: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + callbackId: + type: string + channel: + type: string + color: + type: string + fallback: + type: string + fields: + items: + 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: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + 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: + 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: + items: + properties: + apiURL: + type: string + attributes: + additionalProperties: + type: string + type: object + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + phoneNumber: + type: string + sendResolved: + type: boolean + sigv4: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + profile: + type: string + region: + type: string + roleArn: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + subject: + type: string + targetARN: + type: string + topicARN: + type: string + type: object + type: array + telegramConfigs: + items: + properties: + apiURL: + type: string + botToken: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + botTokenFile: + type: string + chatID: + format: int64 + type: integer + disableNotifications: + type: boolean + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + parseMode: + enum: + - MarkdownV2 + - Markdown + - HTML + type: string + sendResolved: + type: boolean + type: object + type: array + victoropsConfigs: + items: + properties: + apiKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + apiUrl: + type: string + customFields: + items: + properties: + key: + minLength: 1 + type: string + value: + type: string + required: + - key + - value + type: object + type: array + entityDisplayName: + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + messageType: + type: string + monitoringTool: + type: string + routingKey: + type: string + sendResolved: + type: boolean + stateMessage: + type: string + type: object + type: array + webexConfigs: + items: + properties: + apiURL: + pattern: ^https?://.+$ + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + roomID: + minLength: 1 + type: string + sendResolved: + type: boolean + required: + - roomID + type: object + type: array + webhookConfigs: + items: + properties: + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + maxAlerts: + format: int32 + minimum: 0 + type: integer + sendResolved: + type: boolean + url: + type: string + urlSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: array + wechatConfigs: + items: + properties: + agentID: + type: string + apiSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + apiURL: + type: string + corpID: + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + messageType: + type: string + sendResolved: + type: boolean + toParty: + type: string + toTag: + type: string + toUser: + type: string + type: object + type: array + required: + - name + type: object + type: array + route: + properties: + activeTimeIntervals: + items: + type: string + type: array + continue: + type: boolean + groupBy: + items: + type: string + type: array + groupInterval: + type: string + groupWait: + type: string + matchers: + items: + properties: + matchType: + enum: + - '!=' + - = + - =~ + - '!~' + type: string + name: + minLength: 1 + type: string + regex: + type: boolean + value: + type: string + required: + - name + type: object + type: array + muteTimeIntervals: + items: + type: string + type: array + receiver: + type: string + repeatInterval: + type: string + routes: + items: + x-kubernetes-preserve-unknown-fields: true + type: array + type: object + type: object + required: + - spec + type: object + served: true + storage: true +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: alertmanagers.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: Alertmanager + listKind: AlertmanagerList + plural: alertmanagers + singular: alertmanager + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.replicas + name: Replicas + type: integer + - jsonPath: .status.availableReplicas + name: Ready + type: integer + - jsonPath: .status.conditions[?(@.type == 'Reconciled')].status + name: Reconciled + type: string + - jsonPath: .status.conditions[?(@.type == 'Available')].status + name: Available + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.paused + name: Paused + priority: 1 + type: boolean + name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + additionalPeers: + items: + type: string + type: array + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + 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: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + alertmanagerConfigMatcherStrategy: + properties: + type: + default: OnNamespace + enum: + - OnNamespace + - None + type: string + type: object + alertmanagerConfigNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + alertmanagerConfigSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + alertmanagerConfiguration: + properties: + global: + properties: + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + opsGenieApiKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + opsGenieApiUrl: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + pagerdutyUrl: + type: string + resolveTimeout: + 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 + slackApiUrl: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + smtp: + properties: + authIdentity: + type: string + authPassword: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + authSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + authUsername: + type: string + from: + type: string + hello: + type: string + requireTLS: + type: boolean + smartHost: + properties: + host: + minLength: 1 + type: string + port: + minLength: 1 + type: string + required: + - host + - port + type: object + type: object + type: object + name: + minLength: 1 + type: string + templates: + items: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + type: array + type: object + automountServiceAccountToken: + type: boolean + baseImage: + type: string + clusterAdvertiseAddress: + type: string + clusterGossipInterval: + pattern: ^(0|(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + clusterPeerTimeout: + pattern: ^(0|(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + clusterPushpullInterval: + pattern: ^(0|(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + configMaps: + items: + type: string + type: array + configSecret: + type: string + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + externalUrl: + type: string + forceEnableClusterMode: + type: boolean + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + required: + - hostnames + - ip + type: object + type: array + x-kubernetes-list-map-keys: + - ip + x-kubernetes-list-type: map + image: + type: string + imagePullPolicy: + enum: + - "" + - Always + - Never + - IfNotPresent + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minReadySeconds: + format: int32 + type: integer + nodeSelector: + additionalProperties: + type: string + type: object + paused: + type: boolean + podMetadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + portName: + default: web + type: string + priorityClassName: + type: string + replicas: + format: int32 + type: integer + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + retention: + default: 120h + pattern: ^(0|(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + routePrefix: + type: string + secrets: + items: + type: string + type: array + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + serviceAccountName: + type: string + sha: + type: string + storage: + properties: + disableMountSubPath: + type: boolean + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + volumeClaimTemplate: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + status: + properties: + accessModes: + items: + type: string + type: array + allocatedResourceStatuses: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: granular + allocatedResources: + additionalProperties: + 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 + type: object + capacity: + additionalProperties: + 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 + type: object + conditions: + items: + properties: + lastProbeTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + phase: + type: string + type: object + type: object + type: object + tag: + type: string + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + maxSkew: + format: int32 + type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + web: + properties: + getConcurrency: + format: int32 + type: integer + httpConfig: + properties: + headers: + properties: + contentSecurityPolicy: + type: string + strictTransportSecurity: + type: string + xContentTypeOptions: + enum: + - "" + - NoSniff + type: string + xFrameOptions: + enum: + - "" + - Deny + - SameOrigin + type: string + xXSSProtection: + type: string + type: object + http2: + type: boolean + type: object + timeout: + format: int32 + type: integer + tlsConfig: + properties: + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cipherSuites: + items: + type: string + type: array + client_ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientAuthType: + type: string + curvePreferences: + items: + type: string + type: array + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + maxVersion: + type: string + minVersion: + type: string + preferServerCipherSuites: + type: boolean + required: + - cert + - keySecret + type: object + type: object + type: object + status: + properties: + availableReplicas: + format: int32 + type: integer + conditions: + items: + properties: + lastTransitionTime: + format: date-time + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + reason: + type: string + status: + type: string + type: + type: string + required: + - lastTransitionTime + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + paused: + type: boolean + replicas: + format: int32 + type: integer + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: podmonitors.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: PodMonitor + listKind: PodMonitorList + plural: podmonitors + singular: podmonitor + scope: Namespaced + versions: + - name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + attachMetadata: + properties: + node: + type: boolean + type: object + jobLabel: + type: string + keepDroppedTargets: + format: int64 + type: integer + labelLimit: + format: int64 + type: integer + labelNameLengthLimit: + format: int64 + type: integer + labelValueLengthLimit: + format: int64 + type: integer + namespaceSelector: + properties: + any: + type: boolean + matchNames: + items: + type: string + type: array + type: object + podMetricsEndpoints: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + enableHttp2: + type: boolean + filterRunning: + type: boolean + followRedirects: + type: boolean + honorLabels: + type: boolean + honorTimestamps: + type: boolean + 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 + 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 + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + params: + additionalProperties: + items: + type: string + type: array + type: object + path: + type: string + port: + type: string + proxyUrl: + type: string + relabelings: + 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 + scheme: + enum: + - http + - https + type: string + 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 + targetPort: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + type: array + podTargetLabels: + items: + type: string + type: array + sampleLimit: + format: int64 + type: integer + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + targetLimit: + format: int64 + type: integer + required: + - podMetricsEndpoints + - selector + type: object + required: + - spec + type: object + served: true + storage: true +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: probes.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: Probe + listKind: ProbeList + plural: probes + 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: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + 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 + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + 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 + 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 + required: + - key + - operator + type: object + type: array + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + required: + - spec + type: object + served: true + storage: true +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: prometheusagents.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: PrometheusAgent + listKind: PrometheusAgentList + plural: prometheusagents + singular: prometheusagent + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.replicas + name: Desired + type: integer + - jsonPath: .status.availableReplicas + name: Ready + type: integer + - jsonPath: .status.conditions[?(@.type == 'Reconciled')].status + name: Reconciled + type: string + - jsonPath: .status.conditions[?(@.type == 'Available')].status + name: Available + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.paused + name: Paused + priority: 1 + type: boolean + name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + additionalArgs: + items: + properties: + name: + minLength: 1 + type: string + value: + type: string + required: + - name + type: object + type: array + additionalScrapeConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + 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: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + apiserverConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + host: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - host + type: object + arbitraryFSAccessThroughSMs: + properties: + deny: + type: boolean + type: object + bodySizeLimit: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + configMaps: + items: + type: string + type: array + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + enableFeatures: + items: + type: string + type: array + enableRemoteWriteReceiver: + type: boolean + enforcedBodySizeLimit: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + enforcedKeepDroppedTargets: + format: int64 + type: integer + enforcedLabelLimit: + format: int64 + type: integer + enforcedLabelNameLengthLimit: + format: int64 + type: integer + enforcedLabelValueLengthLimit: + format: int64 + type: integer + enforcedNamespaceLabel: + type: string + enforcedSampleLimit: + format: int64 + type: integer + enforcedTargetLimit: + format: int64 + type: integer + excludedFromEnforcement: + items: + properties: + group: + default: monitoring.rhobs + enum: + - monitoring.rhobs + type: string + name: + type: string + namespace: + minLength: 1 + type: string + resource: + enum: + - prometheusrules + - servicemonitors + - podmonitors + - probes + - scrapeconfigs + type: string + required: + - namespace + - resource + type: object + type: array + externalLabels: + additionalProperties: + type: string + type: object + externalUrl: + type: string + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + required: + - hostnames + - ip + type: object + type: array + x-kubernetes-list-map-keys: + - ip + x-kubernetes-list-type: map + hostNetwork: + type: boolean + ignoreNamespaceSelectors: + type: boolean + image: + type: string + imagePullPolicy: + enum: + - "" + - Always + - Never + - IfNotPresent + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + keepDroppedTargets: + format: int64 + type: integer + labelLimit: + format: int64 + type: integer + labelNameLengthLimit: + format: int64 + type: integer + labelValueLengthLimit: + format: int64 + type: integer + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minReadySeconds: + format: int32 + type: integer + nodeSelector: + additionalProperties: + type: string + type: object + overrideHonorLabels: + type: boolean + overrideHonorTimestamps: + type: boolean + paused: + type: boolean + podMetadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + podMonitorNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + podMonitorSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + podTargetLabels: + items: + type: string + type: array + portName: + default: web + type: string + priorityClassName: + type: string + probeNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + probeSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + prometheusExternalLabelName: + type: string + remoteWrite: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + azureAd: + properties: + cloud: + enum: + - AzureChina + - AzureGovernment + - AzurePublic + type: string + managedIdentity: + properties: + clientId: + type: string + required: + - clientId + type: object + required: + - managedIdentity + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + headers: + additionalProperties: + type: string + type: object + metadataConfig: + properties: + send: + type: boolean + sendInterval: + 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 + type: object + name: + type: string + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyUrl: + type: string + queueConfig: + properties: + batchSendDeadline: + type: string + capacity: + type: integer + maxBackoff: + type: string + maxRetries: + type: integer + maxSamplesPerSend: + type: integer + maxShards: + type: integer + minBackoff: + type: string + minShards: + type: integer + retryOnRateLimit: + type: boolean + type: object + remoteTimeout: + 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 + sendExemplars: + type: boolean + sendNativeHistograms: + type: boolean + sigv4: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + profile: + type: string + region: + type: string + roleArn: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + url: + type: string + writeRelabelConfigs: + 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 + required: + - url + type: object + type: array + replicaExternalLabelName: + type: string + replicas: + format: int32 + type: integer + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + routePrefix: + type: string + sampleLimit: + format: int64 + type: integer + scrapeConfigNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + scrapeConfigSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + scrapeInterval: + default: 30s + 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 + 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 + secrets: + items: + type: string + type: array + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + serviceAccountName: + type: string + serviceMonitorNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + serviceMonitorSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + shards: + format: int32 + type: integer + storage: + properties: + disableMountSubPath: + type: boolean + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + volumeClaimTemplate: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + status: + properties: + accessModes: + items: + type: string + type: array + allocatedResourceStatuses: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: granular + allocatedResources: + additionalProperties: + 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 + type: object + capacity: + additionalProperties: + 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 + type: object + conditions: + items: + properties: + lastProbeTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + phase: + type: string + type: object + type: object + type: object + targetLimit: + format: int64 + type: integer + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + maxSkew: + format: int32 + type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + tracingConfig: + properties: + clientType: + enum: + - http + - grpc + type: string + compression: + enum: + - gzip + type: string + endpoint: + minLength: 1 + type: string + headers: + additionalProperties: + type: string + type: object + insecure: + type: boolean + samplingFraction: + 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 + timeout: + 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 + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - endpoint + type: object + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + walCompression: + type: boolean + web: + properties: + httpConfig: + properties: + headers: + properties: + contentSecurityPolicy: + type: string + strictTransportSecurity: + type: string + xContentTypeOptions: + enum: + - "" + - NoSniff + type: string + xFrameOptions: + enum: + - "" + - Deny + - SameOrigin + type: string + xXSSProtection: + type: string + type: object + http2: + type: boolean + type: object + maxConnections: + format: int32 + minimum: 0 + type: integer + pageTitle: + type: string + tlsConfig: + properties: + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cipherSuites: + items: + type: string + type: array + client_ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientAuthType: + type: string + curvePreferences: + items: + type: string + type: array + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + maxVersion: + type: string + minVersion: + type: string + preferServerCipherSuites: + type: boolean + required: + - cert + - keySecret + type: object + type: object + type: object + status: + properties: + availableReplicas: + format: int32 + type: integer + conditions: + items: + properties: + lastTransitionTime: + format: date-time + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + reason: + type: string + status: + type: string + type: + type: string + required: + - lastTransitionTime + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + paused: + type: boolean + replicas: + format: int32 + type: integer + shardStatuses: + items: + properties: + availableReplicas: + format: int32 + type: integer + replicas: + format: int32 + type: integer + shardID: + type: string + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - replicas + - shardID + - unavailableReplicas + - updatedReplicas + type: object + type: array + x-kubernetes-list-map-keys: + - shardID + x-kubernetes-list-type: map + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: prometheuses.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: Prometheus + listKind: PrometheusList + plural: prometheuses + singular: prometheus + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.replicas + name: Desired + type: integer + - jsonPath: .status.availableReplicas + name: Ready + type: integer + - jsonPath: .status.conditions[?(@.type == 'Reconciled')].status + name: Reconciled + type: string + - jsonPath: .status.conditions[?(@.type == 'Available')].status + name: Available + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.paused + name: Paused + priority: 1 + type: boolean + name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + additionalAlertManagerConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + additionalAlertRelabelConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + additionalArgs: + items: + properties: + name: + minLength: 1 + type: string + value: + type: string + required: + - name + type: object + type: array + additionalScrapeConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + 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: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + alerting: + properties: + alertmanagers: + items: + properties: + apiVersion: + type: string + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenFile: + type: string + enableHttp2: + type: boolean + name: + type: string + namespace: + type: string + pathPrefix: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + sigv4: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + profile: + type: string + region: + type: string + roleArn: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + timeout: + 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 + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - name + - namespace + - port + type: object + type: array + required: + - alertmanagers + type: object + allowOverlappingBlocks: + type: boolean + apiserverConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + host: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - host + type: object + arbitraryFSAccessThroughSMs: + properties: + deny: + type: boolean + type: object + baseImage: + type: string + bodySizeLimit: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + configMaps: + items: + type: string + type: array + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + disableCompaction: + type: boolean + enableAdminAPI: + type: boolean + enableFeatures: + items: + type: string + type: array + enableRemoteWriteReceiver: + type: boolean + enforcedBodySizeLimit: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + enforcedKeepDroppedTargets: + format: int64 + type: integer + enforcedLabelLimit: + format: int64 + type: integer + enforcedLabelNameLengthLimit: + format: int64 + type: integer + enforcedLabelValueLengthLimit: + format: int64 + type: integer + enforcedNamespaceLabel: + type: string + enforcedSampleLimit: + format: int64 + type: integer + enforcedTargetLimit: + format: int64 + type: integer + evaluationInterval: + default: 30s + 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 + excludedFromEnforcement: + items: + properties: + group: + default: monitoring.rhobs + enum: + - monitoring.rhobs + type: string + name: + type: string + namespace: + minLength: 1 + type: string + resource: + enum: + - prometheusrules + - servicemonitors + - podmonitors + - probes + - scrapeconfigs + type: string + required: + - namespace + - resource + type: object + type: array + exemplars: + properties: + maxSize: + format: int64 + type: integer + type: object + externalLabels: + additionalProperties: + type: string + type: object + externalUrl: + type: string + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + required: + - hostnames + - ip + type: object + type: array + x-kubernetes-list-map-keys: + - ip + x-kubernetes-list-type: map + hostNetwork: + type: boolean + ignoreNamespaceSelectors: + type: boolean + image: + type: string + imagePullPolicy: + enum: + - "" + - Always + - Never + - IfNotPresent + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + keepDroppedTargets: + format: int64 + type: integer + labelLimit: + format: int64 + type: integer + labelNameLengthLimit: + format: int64 + type: integer + labelValueLengthLimit: + format: int64 + type: integer + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minReadySeconds: + format: int32 + type: integer + nodeSelector: + additionalProperties: + type: string + type: object + overrideHonorLabels: + type: boolean + overrideHonorTimestamps: + type: boolean + paused: + type: boolean + podMetadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + podMonitorNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + podMonitorSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + podTargetLabels: + items: + type: string + type: array + portName: + default: web + type: string + priorityClassName: + type: string + probeNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + probeSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + prometheusExternalLabelName: + type: string + prometheusRulesExcludedFromEnforce: + items: + properties: + ruleName: + type: string + ruleNamespace: + type: string + required: + - ruleName + - ruleNamespace + type: object + type: array + query: + properties: + lookbackDelta: + type: string + maxConcurrency: + format: int32 + minimum: 1 + type: integer + maxSamples: + format: int32 + type: integer + timeout: + 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 + type: object + queryLogFile: + type: string + remoteRead: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + filterExternalLabels: + type: boolean + followRedirects: + type: boolean + headers: + additionalProperties: + type: string + type: object + name: + type: string + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyUrl: + type: string + readRecent: + type: boolean + remoteTimeout: + 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 + requiredMatchers: + additionalProperties: + type: string + type: object + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + url: + type: string + required: + - url + type: object + type: array + remoteWrite: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + azureAd: + properties: + cloud: + enum: + - AzureChina + - AzureGovernment + - AzurePublic + type: string + managedIdentity: + properties: + clientId: + type: string + required: + - clientId + type: object + required: + - managedIdentity + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + headers: + additionalProperties: + type: string + type: object + metadataConfig: + properties: + send: + type: boolean + sendInterval: + 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 + type: object + name: + type: string + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyUrl: + type: string + queueConfig: + properties: + batchSendDeadline: + type: string + capacity: + type: integer + maxBackoff: + type: string + maxRetries: + type: integer + maxSamplesPerSend: + type: integer + maxShards: + type: integer + minBackoff: + type: string + minShards: + type: integer + retryOnRateLimit: + type: boolean + type: object + remoteTimeout: + 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 + sendExemplars: + type: boolean + sendNativeHistograms: + type: boolean + sigv4: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + profile: + type: string + region: + type: string + roleArn: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + url: + type: string + writeRelabelConfigs: + 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 + required: + - url + type: object + type: array + replicaExternalLabelName: + type: string + replicas: + format: int32 + type: integer + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + retention: + 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 + retentionSize: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + routePrefix: + type: string + ruleNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + ruleSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + rules: + properties: + alert: + properties: + forGracePeriod: + type: string + forOutageTolerance: + type: string + resendDelay: + type: string + type: object + type: object + sampleLimit: + format: int64 + type: integer + scrapeConfigNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + scrapeConfigSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + scrapeInterval: + default: 30s + 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 + 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 + secrets: + items: + type: string + type: array + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + serviceAccountName: + type: string + serviceMonitorNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + serviceMonitorSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + sha: + type: string + shards: + format: int32 + type: integer + storage: + properties: + disableMountSubPath: + type: boolean + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + volumeClaimTemplate: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + status: + properties: + accessModes: + items: + type: string + type: array + allocatedResourceStatuses: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: granular + allocatedResources: + additionalProperties: + 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 + type: object + capacity: + additionalProperties: + 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 + type: object + conditions: + items: + properties: + lastProbeTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + phase: + type: string + type: object + type: object + type: object + tag: + type: string + targetLimit: + format: int64 + type: integer + thanos: + properties: + additionalArgs: + items: + properties: + name: + minLength: 1 + type: string + value: + type: string + required: + - name + type: object + type: array + baseImage: + type: string + blockSize: + default: 2h + 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 + getConfigInterval: + 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 + getConfigTimeout: + 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 + grpcListenLocal: + type: boolean + grpcServerTlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + httpListenLocal: + type: boolean + image: + type: string + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minTime: + type: string + objectStorageConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + objectStorageConfigFile: + type: string + readyTimeout: + 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 + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + sha: + type: string + tag: + type: string + tracingConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + tracingConfigFile: + type: string + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + type: object + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + maxSkew: + format: int32 + type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + tracingConfig: + properties: + clientType: + enum: + - http + - grpc + type: string + compression: + enum: + - gzip + type: string + endpoint: + minLength: 1 + type: string + headers: + additionalProperties: + type: string + type: object + insecure: + type: boolean + samplingFraction: + 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 + timeout: + 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 + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - endpoint + type: object + tsdb: + properties: + outOfOrderTimeWindow: + 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 + type: object + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + walCompression: + type: boolean + web: + properties: + httpConfig: + properties: + headers: + properties: + contentSecurityPolicy: + type: string + strictTransportSecurity: + type: string + xContentTypeOptions: + enum: + - "" + - NoSniff + type: string + xFrameOptions: + enum: + - "" + - Deny + - SameOrigin + type: string + xXSSProtection: + type: string + type: object + http2: + type: boolean + type: object + maxConnections: + format: int32 + minimum: 0 + type: integer + pageTitle: + type: string + tlsConfig: + properties: + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cipherSuites: + items: + type: string + type: array + client_ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientAuthType: + type: string + curvePreferences: + items: + type: string + type: array + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + maxVersion: + type: string + minVersion: + type: string + preferServerCipherSuites: + type: boolean + required: + - cert + - keySecret + type: object + type: object + type: object + status: + properties: + availableReplicas: + format: int32 + type: integer + conditions: + items: + properties: + lastTransitionTime: + format: date-time + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + reason: + type: string + status: + type: string + type: + type: string + required: + - lastTransitionTime + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + paused: + type: boolean + replicas: + format: int32 + type: integer + shardStatuses: + items: + properties: + availableReplicas: + format: int32 + type: integer + replicas: + format: int32 + type: integer + shardID: + type: string + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - replicas + - shardID + - unavailableReplicas + - updatedReplicas + type: object + type: array + x-kubernetes-list-map-keys: + - shardID + x-kubernetes-list-type: map + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: prometheusrules.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: PrometheusRule + listKind: PrometheusRuleList + plural: prometheusrules + singular: prometheusrule + scope: Namespaced + versions: + - name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + groups: + items: + properties: + 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 + limit: + type: integer + name: + minLength: 1 + type: string + partial_response_strategy: + pattern: ^(?i)(abort|warn)?$ + type: string + rules: + items: + properties: + alert: + type: string + annotations: + additionalProperties: + type: string + type: object + expr: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + for: + 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 + keep_firing_for: + minLength: 1 + 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 + labels: + additionalProperties: + type: string + type: object + record: + type: string + required: + - expr + type: object + type: array + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + type: object + required: + - spec + type: object + served: true + storage: true +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: scrapeconfigs.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: ScrapeConfig + listKind: ScrapeConfigList + plural: scrapeconfigs + singular: scrapeconfig + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + consulSDConfigs: + items: + properties: + allow_stale: + type: boolean + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + datacenter: + type: string + enable_http2: + type: boolean + follow_redirects: + type: boolean + namespace: + type: string + no_proxy: + type: string + node_meta: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: atomic + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + partition: + type: string + proxy_connect_header: + additionalProperties: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + x-kubernetes-map-type: atomic + proxy_from_environment: + type: boolean + proxy_url: + type: string + refresh_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 + scheme: + enum: + - HTTP + - HTTPS + type: string + server: + minLength: 1 + type: string + services: + items: + type: string + type: array + x-kubernetes-list-type: atomic + tag_separator: + type: string + tags: + items: + type: string + type: array + x-kubernetes-list-type: atomic + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + tokenRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + required: + - server + type: object + type: array + dnsSDConfigs: + items: + properties: + names: + items: + type: string + minItems: 1 + type: array + port: + type: integer + refreshInterval: + 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 + type: + enum: + - SRV + - A + - AAAA + - MX + type: string + required: + - names + type: object + type: array + ec2SDConfigs: + items: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + filters: + items: + properties: + name: + type: string + values: + items: + type: string + type: array + required: + - name + - values + type: object + type: array + port: + type: integer + refreshInterval: + 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 + region: + type: string + roleARN: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: array + fileSDConfigs: + items: + properties: + files: + items: + pattern: ^[^*]*(\*[^/]*)?\.(json|yml|yaml|JSON|YML|YAML)$ + type: string + minItems: 1 + type: array + refreshInterval: + 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 + required: + - files + type: object + type: array + honorLabels: + type: boolean + honorTimestamps: + type: boolean + httpSDConfigs: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + refreshInterval: + 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 + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + url: + minLength: 1 + pattern: ^http(s)?://.+$ + type: string + required: + - url + type: object + type: array + keepDroppedTargets: + format: int64 + type: integer + kubernetesSDConfigs: + items: + properties: + role: + enum: + - Node + - node + type: string + selectors: + items: + properties: + field: + type: string + label: + type: string + role: + enum: + - Node + - node + type: string + required: + - role + type: object + type: array + x-kubernetes-list-map-keys: + - role + x-kubernetes-list-type: map + required: + - role + type: object + type: array + 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 + metricsPath: + type: string + params: + additionalProperties: + items: + type: string + type: array + type: object + x-kubernetes-map-type: atomic + relabelings: + 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 + sampleLimit: + format: int64 + type: integer + scheme: + enum: + - HTTP + - HTTPS + type: string + scrapeInterval: + 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 + 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 + staticConfigs: + items: + properties: + labels: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: atomic + targets: + items: + type: string + type: array + type: object + type: array + targetLimit: + format: int64 + type: integer + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + required: + - spec + type: object + served: true + storage: true +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: servicemonitors.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: ServiceMonitor + listKind: ServiceMonitorList + plural: servicemonitors + singular: servicemonitor + scope: Namespaced + versions: + - name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + attachMetadata: + properties: + node: + type: boolean + type: object + endpoints: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenFile: + type: string + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + enableHttp2: + type: boolean + filterRunning: + type: boolean + followRedirects: + type: boolean + honorLabels: + type: boolean + honorTimestamps: + type: boolean + 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 + 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 + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + params: + additionalProperties: + items: + type: string + type: array + type: object + path: + type: string + port: + type: string + proxyUrl: + type: string + relabelings: + 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 + scheme: + enum: + - http + - https + type: string + 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 + targetPort: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + type: array + jobLabel: + type: string + keepDroppedTargets: + format: int64 + type: integer + labelLimit: + format: int64 + type: integer + labelNameLengthLimit: + format: int64 + type: integer + labelValueLengthLimit: + format: int64 + type: integer + namespaceSelector: + properties: + any: + type: boolean + matchNames: + items: + type: string + type: array + type: object + podTargetLabels: + items: + type: string + type: array + sampleLimit: + format: int64 + type: integer + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + targetLabels: + items: + type: string + type: array + targetLimit: + format: int64 + type: integer + required: + - endpoints + - selector + type: object + required: + - spec + type: object + served: true + storage: true +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + name: thanosrulers.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: ThanosRuler + listKind: ThanosRulerList + plural: thanosrulers + singular: thanosruler + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.replicas + name: Replicas + type: integer + - jsonPath: .status.availableReplicas + name: Ready + type: integer + - jsonPath: .status.conditions[?(@.type == 'Reconciled')].status + name: Reconciled + type: string + - jsonPath: .status.conditions[?(@.type == 'Available')].status + name: Available + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.paused + name: Paused + priority: 1 + type: boolean + name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + additionalArgs: + items: + properties: + name: + minLength: 1 + type: string + value: + type: string + required: + - name + type: object + type: array + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + 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: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + alertDropLabels: + items: + type: string + type: array + alertQueryUrl: + type: string + alertRelabelConfigFile: + type: string + alertRelabelConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + alertmanagersConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + alertmanagersUrl: + items: + type: string + type: array + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + enforcedNamespaceLabel: + type: string + evaluationInterval: + default: 15s + 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 + excludedFromEnforcement: + items: + properties: + group: + default: monitoring.rhobs + enum: + - monitoring.rhobs + type: string + name: + type: string + namespace: + minLength: 1 + type: string + resource: + enum: + - prometheusrules + - servicemonitors + - podmonitors + - probes + - scrapeconfigs + type: string + required: + - namespace + - resource + type: object + type: array + externalPrefix: + type: string + grpcServerTlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + required: + - hostnames + - ip + type: object + type: array + x-kubernetes-list-map-keys: + - ip + x-kubernetes-list-type: map + image: + type: string + imagePullPolicy: + enum: + - "" + - Always + - Never + - IfNotPresent + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + labels: + additionalProperties: + type: string + type: object + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minReadySeconds: + format: int32 + type: integer + nodeSelector: + additionalProperties: + type: string + type: object + objectStorageConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + objectStorageConfigFile: + type: string + paused: + type: boolean + podMetadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + portName: + default: web + type: string + priorityClassName: + type: string + prometheusRulesExcludedFromEnforce: + items: + properties: + ruleName: + type: string + ruleNamespace: + type: string + required: + - ruleName + - ruleNamespace + type: object + type: array + queryConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + queryEndpoints: + items: + type: string + type: array + replicas: + format: int32 + type: integer + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + retention: + default: 24h + 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 + routePrefix: + type: string + ruleNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + ruleSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + serviceAccountName: + type: string + storage: + properties: + disableMountSubPath: + type: boolean + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + volumeClaimTemplate: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + status: + properties: + accessModes: + items: + type: string + type: array + allocatedResourceStatuses: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: granular + allocatedResources: + additionalProperties: + 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 + type: object + capacity: + additionalProperties: + 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 + type: object + conditions: + items: + properties: + lastProbeTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + phase: + type: string + type: object + type: object + type: object + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + maxSkew: + format: int32 + type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + tracingConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + tracingConfigFile: + type: string + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + type: object + status: + properties: + availableReplicas: + format: int32 + type: integer + conditions: + items: + properties: + lastTransitionTime: + format: date-time + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + reason: + type: string + status: + type: string + type: + type: string + required: + - lastTransitionTime + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + paused: + type: boolean + replicas: + format: int32 + type: integer + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} diff --git a/example/thanos/prometheus-rule.yaml b/example/thanos/prometheus-rule.yaml index d4844d5fe..97a5abcc0 100644 --- a/example/thanos/prometheus-rule.yaml +++ b/example/thanos/prometheus-rule.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: PrometheusRule metadata: creationTimestamp: null diff --git a/example/thanos/prometheus-servicemonitor.yaml b/example/thanos/prometheus-servicemonitor.yaml index cd588618f..e26c7432a 100644 --- a/example/thanos/prometheus-servicemonitor.yaml +++ b/example/thanos/prometheus-servicemonitor.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: labels: diff --git a/example/thanos/prometheus.yaml b/example/thanos/prometheus.yaml index a1cd634da..b275968c4 100644 --- a/example/thanos/prometheus.yaml +++ b/example/thanos/prometheus.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: labels: diff --git a/example/thanos/thanos-ruler.yaml b/example/thanos/thanos-ruler.yaml index b3926f5b0..895c09f9c 100644 --- a/example/thanos/thanos-ruler.yaml +++ b/example/thanos/thanos-ruler.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ThanosRuler metadata: labels: diff --git a/example/user-guides/alerting/alertmanager-config-example.yaml b/example/user-guides/alerting/alertmanager-config-example.yaml index e3e746564..ffae26222 100644 --- a/example/user-guides/alerting/alertmanager-config-example.yaml +++ b/example/user-guides/alerting/alertmanager-config-example.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1alpha1 +apiVersion: monitoring.rhobs/v1alpha1 kind: AlertmanagerConfig metadata: name: config-example diff --git a/example/user-guides/alerting/alertmanager-example-alertmanager-configuration.yaml b/example/user-guides/alerting/alertmanager-example-alertmanager-configuration.yaml index 3724f7914..f8c8f8493 100644 --- a/example/user-guides/alerting/alertmanager-example-alertmanager-configuration.yaml +++ b/example/user-guides/alerting/alertmanager-example-alertmanager-configuration.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: name: example diff --git a/example/user-guides/alerting/alertmanager-example.yaml b/example/user-guides/alerting/alertmanager-example.yaml index f2ffb360d..6ba59f296 100644 --- a/example/user-guides/alerting/alertmanager-example.yaml +++ b/example/user-guides/alerting/alertmanager-example.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: name: example diff --git a/example/user-guides/alerting/alertmanager-selector-example.yaml b/example/user-guides/alerting/alertmanager-selector-example.yaml index a1c0db9fb..4d88ea879 100644 --- a/example/user-guides/alerting/alertmanager-selector-example.yaml +++ b/example/user-guides/alerting/alertmanager-selector-example.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Alertmanager metadata: name: example diff --git a/example/user-guides/alerting/prometheus-example-rule-namespace-selector.yaml b/example/user-guides/alerting/prometheus-example-rule-namespace-selector.yaml index 634f9ebd0..2f5f6b2ea 100644 --- a/example/user-guides/alerting/prometheus-example-rule-namespace-selector.yaml +++ b/example/user-guides/alerting/prometheus-example-rule-namespace-selector.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: example diff --git a/example/user-guides/alerting/prometheus-example-rules.yaml b/example/user-guides/alerting/prometheus-example-rules.yaml index ef5f43053..adf1295d9 100644 --- a/example/user-guides/alerting/prometheus-example-rules.yaml +++ b/example/user-guides/alerting/prometheus-example-rules.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: PrometheusRule metadata: creationTimestamp: null diff --git a/example/user-guides/alerting/prometheus-example.yaml b/example/user-guides/alerting/prometheus-example.yaml index 9e98f1d28..51a431423 100644 --- a/example/user-guides/alerting/prometheus-example.yaml +++ b/example/user-guides/alerting/prometheus-example.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: example diff --git a/example/user-guides/getting-started/example-app-pod-monitor.yaml b/example/user-guides/getting-started/example-app-pod-monitor.yaml index a7df2f5bb..b9fc1d360 100644 --- a/example/user-guides/getting-started/example-app-pod-monitor.yaml +++ b/example/user-guides/getting-started/example-app-pod-monitor.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: PodMonitor metadata: name: example-app diff --git a/example/user-guides/getting-started/example-app-service-monitor.yaml b/example/user-guides/getting-started/example-app-service-monitor.yaml index d2a68fc95..87a529554 100644 --- a/example/user-guides/getting-started/example-app-service-monitor.yaml +++ b/example/user-guides/getting-started/example-app-service-monitor.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: ServiceMonitor metadata: name: example-app diff --git a/example/user-guides/getting-started/prometheus-admin-api.yaml b/example/user-guides/getting-started/prometheus-admin-api.yaml index 1e9332fb1..02e4e83e8 100644 --- a/example/user-guides/getting-started/prometheus-admin-api.yaml +++ b/example/user-guides/getting-started/prometheus-admin-api.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus diff --git a/example/user-guides/getting-started/prometheus-pod-monitor.yaml b/example/user-guides/getting-started/prometheus-pod-monitor.yaml index 0ce4a61fb..05b4de0cf 100644 --- a/example/user-guides/getting-started/prometheus-pod-monitor.yaml +++ b/example/user-guides/getting-started/prometheus-pod-monitor.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus diff --git a/example/user-guides/getting-started/prometheus-service-monitor.yaml b/example/user-guides/getting-started/prometheus-service-monitor.yaml index 4e937fb3e..9232da85b 100644 --- a/example/user-guides/getting-started/prometheus-service-monitor.yaml +++ b/example/user-guides/getting-started/prometheus-service-monitor.yaml @@ -1,4 +1,4 @@ -apiVersion: monitoring.coreos.com/v1 +apiVersion: monitoring.rhobs/v1 kind: Prometheus metadata: name: prometheus diff --git a/go.mod b/go.mod index 013959d3c..f185b7b0e 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/prometheus-operator/prometheus-operator +module github.com/rhobs/obo-prometheus-operator go 1.21 @@ -21,13 +21,13 @@ require ( github.com/oklog/run v1.1.0 github.com/pkg/errors v0.9.1 github.com/prometheus-community/prom-label-proxy v0.7.0 - github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.69.1 - github.com/prometheus-operator/prometheus-operator/pkg/client v0.69.1 github.com/prometheus/alertmanager v0.26.0 github.com/prometheus/client_golang v1.17.0 github.com/prometheus/common v0.45.0 github.com/prometheus/exporter-toolkit v0.10.0 github.com/prometheus/prometheus v0.47.2 + github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.69.1-rhobs1 + github.com/rhobs/obo-prometheus-operator/pkg/client v0.69.1-rhobs1 github.com/stretchr/testify v1.8.4 github.com/thanos-io/thanos v0.32.5 golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1 @@ -135,7 +135,7 @@ require ( ) replace ( - github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring => ./pkg/apis/monitoring - github.com/prometheus-operator/prometheus-operator/pkg/client => ./pkg/client + github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring => ./pkg/apis/monitoring + github.com/rhobs/obo-prometheus-operator/pkg/client => ./pkg/client k8s.io/klog/v2 => github.com/simonpasquier/klog-gokit/v3 v3.3.0 ) diff --git a/governance.md b/governance.md index 71ae1e1b8..b95d94517 100644 --- a/governance.md +++ b/governance.md @@ -56,7 +56,7 @@ This email will also be CC'd to the [prometheus-operator mailing list](https://g If they choose to accept, the following steps are taken: -* The new triage team member is added to the [Prometheus Operator project](http://github.com/prometheus-operator/prometheus-operator) with `Member` role and `Triage` permission. +* The new triage team member is added to the [Prometheus Operator project](http://github.com/rhobs/obo-prometheus-operator) with `Member` role and `Triage` permission. * The new triage team member is added to the [prometheus-operator mailing list](https://groups.google.com/forum/#!forum/prometheus-operator-team). * The new triage team member is added to the [MAINTAINERS.md](MAINTAINERS.md) file under the Triage section. * The new triage team member is announced on the [Prometheus Operator Twitter](https://twitter.com/PromOperator) by an existing team member. @@ -70,13 +70,13 @@ Upon death of a member, their Triage team membership ends automatically. ### Technical decisions Smaller technical decisions are made informally and [lazy consensus](#consensus) is assumed. Technical decisions that span multiple parts of the Prometheus Operator project -should be discussed and made on the [GitHub issues](https://github.com/prometheus-operator/prometheus-operator/issues) and in most cases followed by proposal as described [here](https://github.com/prometheus-operator/prometheus-operator/blob/main/CONTRIBUTING.md). +should be discussed and made on the [GitHub issues](https://github.com/rhobs/obo-prometheus-operator/issues) and in most cases followed by proposal as described [here](https://github.com/rhobs/obo-prometheus-operator/blob/main/CONTRIBUTING.md). Decisions are usually made by [lazy consensus](#consensus). If no consensus can be reached, the matter may be resolved by [majority vote](#majority-vote). ### Governance changes -Material changes to this document are discussed publicly on the [Prometheus Operator GitHub](http://github.com/prometheus-operator/prometheus-operator). +Material changes to this document are discussed publicly on the [Prometheus Operator GitHub](http://github.com/rhobs/obo-prometheus-operator). Any change requires a [supermajority](#supermajority-vote) in favor. Editorial changes may be made by [lazy consensus](#consensus) unless challenged. ### Other matters @@ -161,7 +161,7 @@ It's about number of up votes to agree on the decision. ### How do I propose a decision? -See the [Contributing guide](https://github.com/prometheus-operator/prometheus-operator/blob/main/CONTRIBUTING.md). +See the [Contributing guide](https://github.com/rhobs/obo-prometheus-operator/blob/main/CONTRIBUTING.md). ### How do I become a team member? @@ -173,7 +173,7 @@ Should the decision be in favor, your new membership will also be announced on t ### How do I add a project? -As a team member, propose the new project on the [Prometheus Operator GitHub Issue](https://github.com/prometheus-operator/prometheus-operator/issues). However, currently to maintain a project in our organization, you have to become a [Maintainers Team](#maintainers-team) member. +As a team member, propose the new project on the [Prometheus Operator GitHub Issue](https://github.com/rhobs/obo-prometheus-operator/issues). However, currently to maintain a project in our organization, you have to become a [Maintainers Team](#maintainers-team) member. ### How do I remove a Maintainer or Triage member? diff --git a/helm/README.md b/helm/README.md index cb1b27ff7..8ddec5d44 100644 --- a/helm/README.md +++ b/helm/README.md @@ -9,4 +9,4 @@ It is still possible to run multiple prometheus instances on a single cluster - Issues and pull requests should be tracked using the [prometheus-community/helm-charts](https://github.com/prometheus-community/helm-charts) repository. -You can check out the tickets for this change [here](https://github.com/prometheus-operator/prometheus-operator/issues/592) and [here](https://github.com/helm/charts/pull/6765) +You can check out the tickets for this change [here](https://github.com/rhobs/obo-prometheus-operator/issues/592) and [here](https://github.com/helm/charts/pull/6765) diff --git a/jsonnet/prometheus-operator/admission-webhook.libsonnet b/jsonnet/prometheus-operator/admission-webhook.libsonnet index 201a12378..253c9f3e6 100644 --- a/jsonnet/prometheus-operator/admission-webhook.libsonnet +++ b/jsonnet/prometheus-operator/admission-webhook.libsonnet @@ -148,7 +148,7 @@ function(params) { }, serviceMonitor: { - apiVersion: 'monitoring.coreos.com/v1', + apiVersion: 'monitoring.rhobs/v1', kind: 'ServiceMonitor', metadata: aw._metadata, spec: { diff --git a/jsonnet/prometheus-operator/alertmanagerconfigs-crd.json b/jsonnet/prometheus-operator/alertmanagerconfigs-crd.json index 7ffbd9b48..019d07432 100644 --- a/jsonnet/prometheus-operator/alertmanagerconfigs-crd.json +++ b/jsonnet/prometheus-operator/alertmanagerconfigs-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "alertmanagerconfigs.monitoring.coreos.com" + "name": "alertmanagerconfigs.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "AlertmanagerConfig", "listKind": "AlertmanagerConfigList", "plural": "alertmanagerconfigs", - "shortNames": [ - "amcfg" - ], "singular": "alertmanagerconfig" }, "scope": "Namespaced", diff --git a/jsonnet/prometheus-operator/alertmanagers-crd.json b/jsonnet/prometheus-operator/alertmanagers-crd.json index 7c8ddd1ef..dc2827c07 100644 --- a/jsonnet/prometheus-operator/alertmanagers-crd.json +++ b/jsonnet/prometheus-operator/alertmanagers-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "alertmanagers.monitoring.coreos.com" + "name": "alertmanagers.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "Alertmanager", "listKind": "AlertmanagerList", "plural": "alertmanagers", - "shortNames": [ - "am" - ], "singular": "alertmanager" }, "scope": "Namespaced", diff --git a/jsonnet/prometheus-operator/podmonitors-crd.json b/jsonnet/prometheus-operator/podmonitors-crd.json index d8f7762cf..7842a9f2c 100644 --- a/jsonnet/prometheus-operator/podmonitors-crd.json +++ b/jsonnet/prometheus-operator/podmonitors-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "podmonitors.monitoring.coreos.com" + "name": "podmonitors.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "PodMonitor", "listKind": "PodMonitorList", "plural": "podmonitors", - "shortNames": [ - "pmon" - ], "singular": "podmonitor" }, "scope": "Namespaced", diff --git a/jsonnet/prometheus-operator/probes-crd.json b/jsonnet/prometheus-operator/probes-crd.json index 6d85036de..77d3b4073 100644 --- a/jsonnet/prometheus-operator/probes-crd.json +++ b/jsonnet/prometheus-operator/probes-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "probes.monitoring.coreos.com" + "name": "probes.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "Probe", "listKind": "ProbeList", "plural": "probes", - "shortNames": [ - "prb" - ], "singular": "probe" }, "scope": "Namespaced", diff --git a/jsonnet/prometheus-operator/prometheus-operator.libsonnet b/jsonnet/prometheus-operator/prometheus-operator.libsonnet index 1b78c2178..989eb5e0a 100644 --- a/jsonnet/prometheus-operator/prometheus-operator.libsonnet +++ b/jsonnet/prometheus-operator/prometheus-operator.libsonnet @@ -74,7 +74,7 @@ function(params) { }, rules: [ { - apiGroups: ['monitoring.coreos.com'], + apiGroups: ['monitoring.rhobs'], resources: [ 'alertmanagers', 'alertmanagers/finalizers', @@ -235,7 +235,7 @@ function(params) { }, serviceMonitor: { - apiVersion: 'monitoring.coreos.com/v1', + apiVersion: 'monitoring.rhobs/v1', kind: 'ServiceMonitor', metadata: { name: 'prometheus-operator', diff --git a/jsonnet/prometheus-operator/prometheusagents-crd.json b/jsonnet/prometheus-operator/prometheusagents-crd.json index 8b4862aa0..fd30d4d52 100644 --- a/jsonnet/prometheus-operator/prometheusagents-crd.json +++ b/jsonnet/prometheus-operator/prometheusagents-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "prometheusagents.monitoring.coreos.com" + "name": "prometheusagents.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "PrometheusAgent", "listKind": "PrometheusAgentList", "plural": "prometheusagents", - "shortNames": [ - "promagent" - ], "singular": "prometheusagent" }, "scope": "Namespaced", @@ -2298,10 +2295,10 @@ "description": "ObjectReference references a PodMonitor, ServiceMonitor, Probe or PrometheusRule object.", "properties": { "group": { - "default": "monitoring.coreos.com", - "description": "Group of the referent. When not specified, it defaults to `monitoring.coreos.com`", + "default": "monitoring.rhobs", + "description": "Group of the referent. When not specified, it defaults to `monitoring.rhobs`", "enum": [ - "monitoring.coreos.com" + "monitoring.rhobs" ], "type": "string" }, diff --git a/jsonnet/prometheus-operator/prometheuses-crd.json b/jsonnet/prometheus-operator/prometheuses-crd.json index a497b495f..ab7ca952c 100644 --- a/jsonnet/prometheus-operator/prometheuses-crd.json +++ b/jsonnet/prometheus-operator/prometheuses-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "prometheuses.monitoring.coreos.com" + "name": "prometheuses.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "Prometheus", "listKind": "PrometheusList", "plural": "prometheuses", - "shortNames": [ - "prom" - ], "singular": "prometheus" }, "scope": "Namespaced", @@ -2725,10 +2722,10 @@ "description": "ObjectReference references a PodMonitor, ServiceMonitor, Probe or PrometheusRule object.", "properties": { "group": { - "default": "monitoring.coreos.com", - "description": "Group of the referent. When not specified, it defaults to `monitoring.coreos.com`", + "default": "monitoring.rhobs", + "description": "Group of the referent. When not specified, it defaults to `monitoring.rhobs`", "enum": [ - "monitoring.coreos.com" + "monitoring.rhobs" ], "type": "string" }, diff --git a/jsonnet/prometheus-operator/prometheusrules-crd.json b/jsonnet/prometheus-operator/prometheusrules-crd.json index 53fd60233..957238e7f 100644 --- a/jsonnet/prometheus-operator/prometheusrules-crd.json +++ b/jsonnet/prometheus-operator/prometheusrules-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "prometheusrules.monitoring.coreos.com" + "name": "prometheusrules.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "PrometheusRule", "listKind": "PrometheusRuleList", "plural": "prometheusrules", - "shortNames": [ - "promrule" - ], "singular": "prometheusrule" }, "scope": "Namespaced", diff --git a/jsonnet/prometheus-operator/scrapeconfigs-crd.json b/jsonnet/prometheus-operator/scrapeconfigs-crd.json index b5871143f..c8c1a6041 100644 --- a/jsonnet/prometheus-operator/scrapeconfigs-crd.json +++ b/jsonnet/prometheus-operator/scrapeconfigs-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "scrapeconfigs.monitoring.coreos.com" + "name": "scrapeconfigs.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "ScrapeConfig", "listKind": "ScrapeConfigList", "plural": "scrapeconfigs", - "shortNames": [ - "scfg" - ], "singular": "scrapeconfig" }, "scope": "Namespaced", diff --git a/jsonnet/prometheus-operator/servicemonitors-crd.json b/jsonnet/prometheus-operator/servicemonitors-crd.json index c6d92df01..7ab2b6604 100644 --- a/jsonnet/prometheus-operator/servicemonitors-crd.json +++ b/jsonnet/prometheus-operator/servicemonitors-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "servicemonitors.monitoring.coreos.com" + "name": "servicemonitors.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "ServiceMonitor", "listKind": "ServiceMonitorList", "plural": "servicemonitors", - "shortNames": [ - "smon" - ], "singular": "servicemonitor" }, "scope": "Namespaced", diff --git a/jsonnet/prometheus-operator/thanosrulers-crd.json b/jsonnet/prometheus-operator/thanosrulers-crd.json index 704ddcd9a..cd78ae26d 100644 --- a/jsonnet/prometheus-operator/thanosrulers-crd.json +++ b/jsonnet/prometheus-operator/thanosrulers-crd.json @@ -4,23 +4,20 @@ "metadata": { "annotations": { "controller-gen.kubebuilder.io/version": "v0.11.1", - "operator.prometheus.io/version": "0.69.1" + "operator.prometheus.io/version": "0.69.1-rhobs1" }, "creationTimestamp": null, - "name": "thanosrulers.monitoring.coreos.com" + "name": "thanosrulers.monitoring.rhobs" }, "spec": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "names": { "categories": [ - "prometheus-operator" + "rhobs-prometheus-operator" ], "kind": "ThanosRuler", "listKind": "ThanosRulerList", "plural": "thanosrulers", - "shortNames": [ - "ruler" - ], "singular": "thanosruler" }, "scope": "Namespaced", @@ -2026,10 +2023,10 @@ "description": "ObjectReference references a PodMonitor, ServiceMonitor, Probe or PrometheusRule object.", "properties": { "group": { - "default": "monitoring.coreos.com", - "description": "Group of the referent. When not specified, it defaults to `monitoring.coreos.com`", + "default": "monitoring.rhobs", + "description": "Group of the referent. When not specified, it defaults to `monitoring.rhobs`", "enum": [ - "monitoring.coreos.com" + "monitoring.rhobs" ], "type": "string" }, diff --git a/jsonnet/thanos/config.libsonnet b/jsonnet/thanos/config.libsonnet index 9b77e287b..ca469b3da 100644 --- a/jsonnet/thanos/config.libsonnet +++ b/jsonnet/thanos/config.libsonnet @@ -55,7 +55,7 @@ local service(name, namespace, labels, selector, ports) = { thanosRulerName:: $._config.thanosRulerName, thanosSidecarName:: $._config.thanosSidecarName, prometheus+:: { - apiVersion: 'monitoring.coreos.com/v1', + apiVersion: 'monitoring.rhobs/v1', kind: 'Prometheus', metadata: { labels: po.prometheusLabels, @@ -129,7 +129,7 @@ local service(name, namespace, labels, selector, ports) = { ), serviceMonitor: { - apiVersion: 'monitoring.coreos.com/v1', + apiVersion: 'monitoring.rhobs/v1', kind: 'ServiceMonitor', metadata: { name: po.prometheusName, @@ -219,7 +219,7 @@ local service(name, namespace, labels, selector, ports) = { }, thanosRuler: { - apiVersion: 'monitoring.coreos.com/v1', + apiVersion: 'monitoring.rhobs/v1', kind: 'ThanosRuler', metadata: { labels: po.rulerLabels, @@ -238,7 +238,7 @@ local service(name, namespace, labels, selector, ports) = { }, prometheusRule: { - apiVersion: 'monitoring.coreos.com/v1', + apiVersion: 'monitoring.rhobs/v1', kind: 'PrometheusRule', metadata: { labels: { diff --git a/pkg/admission/admission.go b/pkg/admission/admission.go index fa6a0cf2b..8c9b84102 100644 --- a/pkg/admission/admission.go +++ b/pkg/admission/admission.go @@ -29,12 +29,12 @@ import ( kscheme "k8s.io/client-go/kubernetes/scheme" "sigs.k8s.io/controller-runtime/pkg/webhook/conversion" - validationv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager/validation/v1alpha1" - validationv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager/validation/v1beta1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" - promoperator "github.com/prometheus-operator/prometheus-operator/pkg/operator" + validationv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager/validation/v1alpha1" + validationv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager/validation/v1beta1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" + promoperator "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) const ( @@ -44,7 +44,7 @@ const ( errUnmarshalRules = "Cannot unmarshal rules from spec" errUnmarshalConfig = "Cannot unmarhsal config from spec" - group = "monitoring.coreos.com" + group = "monitoring.rhobs" prometheusRuleResource = monitoringv1.PrometheusRuleName prometheusRuleVersion = monitoringv1.Version diff --git a/pkg/admission/admission_test.go b/pkg/admission/admission_test.go index 258d51461..10950bc54 100644 --- a/pkg/admission/admission_test.go +++ b/pkg/admission/admission_test.go @@ -32,8 +32,8 @@ import ( v1 "k8s.io/api/admission/v1" apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" ) func TestMutateRule(t *testing.T) { @@ -385,7 +385,7 @@ func buildAdmissionReviewFromAlertmanagerConfigSpec(t *testing.T, version, spec "kind": "%s" }, "resource": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "%s", "resource": "%s" }, @@ -399,7 +399,7 @@ func buildAdmissionReviewFromAlertmanagerConfigSpec(t *testing.T, version, spec ] }, "object": { - "apiVersion": "monitoring.coreos.com/%s", + "apiVersion": "monitoring.rhobs/%s", "kind": "%s", "metadata": { "creationTimestamp": "2019-03-27T13:02:09Z", @@ -434,9 +434,9 @@ func buildConversionReviewFromAlertmanagerConfigSpec(t *testing.T, from, to, spe "apiVersion": "apiextensions.k8s.io/v1", "request": { "uid": "87c5df7f-5090-11e9-b9b4-02425473f309", - "desiredAPIVersion": "monitoring.coreos.com/%s", + "desiredAPIVersion": "monitoring.rhobs/%s", "objects": [{ - "apiVersion": "monitoring.coreos.com/%s", + "apiVersion": "monitoring.rhobs/%s", "kind": "%s", "metadata": { "creationTimestamp": "2019-03-27T13:02:09Z", diff --git a/pkg/admission/testdata/badRulesNoAnnotations.golden b/pkg/admission/testdata/badRulesNoAnnotations.golden index ec8ff95ca..e5a5d875e 100644 --- a/pkg/admission/testdata/badRulesNoAnnotations.golden +++ b/pkg/admission/testdata/badRulesNoAnnotations.golden @@ -4,12 +4,12 @@ "request": { "uid": "87c5df7f-5090-11e9-b9b4-02425473f309", "kind": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "kind": "PrometheusRule" }, "resource": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "resource": "prometheusrules" }, @@ -23,7 +23,7 @@ ] }, "object": { - "apiVersion": "monitoring.coreos.com/v1", + "apiVersion": "monitoring.rhobs/v1", "kind": "PrometheusRule", "metadata": { "creationTimestamp": "2019-03-27T13:02:09Z", diff --git a/pkg/admission/testdata/badRulesWithBooleanInAnnotations.golden b/pkg/admission/testdata/badRulesWithBooleanInAnnotations.golden index 57c099855..d8dacd1e1 100644 --- a/pkg/admission/testdata/badRulesWithBooleanInAnnotations.golden +++ b/pkg/admission/testdata/badRulesWithBooleanInAnnotations.golden @@ -4,12 +4,12 @@ "request": { "uid": "87c5df7f-5090-11e9-b9b4-02425473f309", "kind": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "kind": "PrometheusRule" }, "resource": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "resource": "prometheusrules" }, @@ -23,11 +23,11 @@ ] }, "object": { - "apiVersion": "monitoring.coreos.com/v1", + "apiVersion": "monitoring.rhobs/v1", "kind": "PrometheusRule", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"monitoring.coreos.com/v1\",\"kind\":\"PrometheusRule\",\"metadata\":{\"annotations\":{},\"name\":\"test\",\"namespace\":\"monitoring\"},\"spec\":{\"groups\":[{\"name\":\"test.rules\",\"rules\":[{\"alert\":\"Test\",\"annotations\":{\"message\":\"Test rule\"},\"expr\":\"vector(1))\",\"for\":\"5m\",\"labels\":{\"severity\":\"critical\"}}]}]}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"monitoring.rhobs/v1\",\"kind\":\"PrometheusRule\",\"metadata\":{\"annotations\":{},\"name\":\"test\",\"namespace\":\"monitoring\"},\"spec\":{\"groups\":[{\"name\":\"test.rules\",\"rules\":[{\"alert\":\"Test\",\"annotations\":{\"message\":\"Test rule\"},\"expr\":\"vector(1))\",\"for\":\"5m\",\"labels\":{\"severity\":\"critical\"}}]}]}}\n" }, "creationTimestamp": "2019-03-27T13:02:09Z", "generation": 1, diff --git a/pkg/admission/testdata/goodRulesWithAnnotations.golden b/pkg/admission/testdata/goodRulesWithAnnotations.golden index fe92c9411..b12ed2f60 100644 --- a/pkg/admission/testdata/goodRulesWithAnnotations.golden +++ b/pkg/admission/testdata/goodRulesWithAnnotations.golden @@ -4,12 +4,12 @@ "request": { "uid": "87c5df7f-5090-11e9-b9b4-02425473f309", "kind": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "kind": "PrometheusRule" }, "resource": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "resource": "prometheusrules" }, @@ -23,11 +23,11 @@ ] }, "object": { - "apiVersion": "monitoring.coreos.com/v1", + "apiVersion": "monitoring.rhobs/v1", "kind": "PrometheusRule", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"monitoring.coreos.com/v1\",\"kind\":\"PrometheusRule\",\"metadata\":{\"annotations\":{},\"name\":\"test\",\"namespace\":\"monitoring\"},\"spec\":{\"groups\":[{\"name\":\"test.rules\",\"rules\":[{\"alert\":\"Test\",\"annotations\":{\"message\":\"Test rule\"},\"expr\":\"vector(1))\",\"for\":\"5m\",\"labels\":{\"severity\":\"critical\"}}]}]}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"monitoring.rhobs/v1\",\"kind\":\"PrometheusRule\",\"metadata\":{\"annotations\":{},\"name\":\"test\",\"namespace\":\"monitoring\"},\"spec\":{\"groups\":[{\"name\":\"test.rules\",\"rules\":[{\"alert\":\"Test\",\"annotations\":{\"message\":\"Test rule\"},\"expr\":\"vector(1))\",\"for\":\"5m\",\"labels\":{\"severity\":\"critical\"}}]}]}}\n" }, "creationTimestamp": "2019-03-27T13:02:09Z", "generation": 1, diff --git a/pkg/admission/testdata/goodRulesWithExternalLabelsInAnnotations.golden b/pkg/admission/testdata/goodRulesWithExternalLabelsInAnnotations.golden index 26cfe43ed..0002eec72 100644 --- a/pkg/admission/testdata/goodRulesWithExternalLabelsInAnnotations.golden +++ b/pkg/admission/testdata/goodRulesWithExternalLabelsInAnnotations.golden @@ -4,12 +4,12 @@ "request": { "uid": "87c5df7f-5090-11e9-b9b4-02425473f309", "kind": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "kind": "PrometheusRule" }, "resource": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "resource": "prometheusrules" }, @@ -23,11 +23,11 @@ ] }, "object": { - "apiVersion": "monitoring.coreos.com/v1", + "apiVersion": "monitoring.rhobs/v1", "kind": "PrometheusRule", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"monitoring.coreos.com/v1\",\"kind\":\"PrometheusRule\",\"metadata\":{\"annotations\":{},\"name\":\"test\",\"namespace\":\"monitoring\"},\"spec\":{\"groups\":[{\"name\":\"test.rules\",\"rules\":[{\"alert\":\"Test\",\"annotations\":{\"message\":\"Test rule\"},\"expr\":\"vector(1))\",\"for\":\"5m\",\"labels\":{\"severity\":\"critical\"}}]}]}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"monitoring.rhobs/v1\",\"kind\":\"PrometheusRule\",\"metadata\":{\"annotations\":{},\"name\":\"test\",\"namespace\":\"monitoring\"},\"spec\":{\"groups\":[{\"name\":\"test.rules\",\"rules\":[{\"alert\":\"Test\",\"annotations\":{\"message\":\"Test rule\"},\"expr\":\"vector(1))\",\"for\":\"5m\",\"labels\":{\"severity\":\"critical\"}}]}]}}\n" }, "creationTimestamp": "2019-03-27T13:02:09Z", "generation": 1, diff --git a/pkg/admission/testdata/nonStringsInLabelsAnnotations.golden b/pkg/admission/testdata/nonStringsInLabelsAnnotations.golden index 4f545ab9d..cd1bbeae8 100644 --- a/pkg/admission/testdata/nonStringsInLabelsAnnotations.golden +++ b/pkg/admission/testdata/nonStringsInLabelsAnnotations.golden @@ -4,12 +4,12 @@ "request": { "uid": "87c5df7f-5090-11e9-b9b4-02425473f309", "kind": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "kind": "PrometheusRule" }, "resource": { - "group": "monitoring.coreos.com", + "group": "monitoring.rhobs", "version": "v1", "resource": "prometheusrules" }, @@ -23,11 +23,11 @@ ] }, "object": { - "apiVersion": "monitoring.coreos.com/v1", + "apiVersion": "monitoring.rhobs/v1", "kind": "PrometheusRule", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"monitoring.coreos.com/v1\",\"kind\":\"PrometheusRule\",\"metadata\":{\"annotations\":{},\"name\":\"test\",\"namespace\":\"monitoring\"},\"spec\":{\"groups\":[{\"name\":\"test.rules\",\"rules\":[{\"alert\":\"Test\",\"annotations\":{\"message\":\"Test rule\"},\"expr\":\"vector(1))\",\"for\":\"5m\",\"labels\":{\"severity\":\"critical\"}}]}]}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"monitoring.rhobs/v1\",\"kind\":\"PrometheusRule\",\"metadata\":{\"annotations\":{},\"name\":\"test\",\"namespace\":\"monitoring\"},\"spec\":{\"groups\":[{\"name\":\"test.rules\",\"rules\":[{\"alert\":\"Test\",\"annotations\":{\"message\":\"Test rule\"},\"expr\":\"vector(1))\",\"for\":\"5m\",\"labels\":{\"severity\":\"critical\"}}]}]}}\n" }, "creationTimestamp": "2019-03-27T13:02:09Z", "generation": 1, diff --git a/pkg/alertmanager/amcfg.go b/pkg/alertmanager/amcfg.go index 61af75697..3517331f8 100644 --- a/pkg/alertmanager/amcfg.go +++ b/pkg/alertmanager/amcfg.go @@ -36,10 +36,10 @@ import ( v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/types" - "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager/validation" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" + "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager/validation" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" ) const inhibitRuleNamespaceKey = "namespace" diff --git a/pkg/alertmanager/amcfg_test.go b/pkg/alertmanager/amcfg_test.go index b1d8824e3..34379a1ac 100644 --- a/pkg/alertmanager/amcfg_test.go +++ b/pkg/alertmanager/amcfg_test.go @@ -36,9 +36,9 @@ import ( "k8s.io/client-go/kubernetes/fake" "k8s.io/utils/ptr" - monitoringingv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" + monitoringingv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" ) func TestInitializeFromAlertmanagerConfig(t *testing.T) { diff --git a/pkg/alertmanager/collector.go b/pkg/alertmanager/collector.go index 33d015505..a9e202b49 100644 --- a/pkg/alertmanager/collector.go +++ b/pkg/alertmanager/collector.go @@ -18,7 +18,7 @@ import ( "github.com/prometheus/client_golang/prometheus" "k8s.io/client-go/tools/cache" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) var ( diff --git a/pkg/alertmanager/operator.go b/pkg/alertmanager/operator.go index e113c35a4..132688595 100644 --- a/pkg/alertmanager/operator.go +++ b/pkg/alertmanager/operator.go @@ -42,18 +42,18 @@ import ( "k8s.io/client-go/rest" "k8s.io/client-go/tools/cache" - "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager/validation" - validationv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager/validation/v1alpha1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" - monitoringv1ac "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - monitoringclient "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" - "github.com/prometheus-operator/prometheus-operator/pkg/informers" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/listwatch" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - "github.com/prometheus-operator/prometheus-operator/pkg/webconfig" + "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager/validation" + validationv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager/validation/v1alpha1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" + monitoringv1ac "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringclient "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" + "github.com/rhobs/obo-prometheus-operator/pkg/informers" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/listwatch" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + "github.com/rhobs/obo-prometheus-operator/pkg/webconfig" ) const ( @@ -827,7 +827,7 @@ func createSSetInputHash(a monitoringv1.Alertmanager, c Config, tlsAssets *opera // The controller should ignore any changes to RevisionHistoryLimit field because // it may be modified by external actors. - // See https://github.com/prometheus-operator/prometheus-operator/issues/5712 + // See https://github.com/rhobs/obo-prometheus-operator/issues/5712 s.RevisionHistoryLimit = nil hash, err := hashstructure.Hash(struct { diff --git a/pkg/alertmanager/operator_test.go b/pkg/alertmanager/operator_test.go index c64dd332e..7e7dfa0e1 100644 --- a/pkg/alertmanager/operator_test.go +++ b/pkg/alertmanager/operator_test.go @@ -33,11 +33,11 @@ import ( "k8s.io/client-go/kubernetes/fake" "k8s.io/utils/ptr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" - monitoringfake "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/fake" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" + monitoringfake "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/fake" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) func TestCreateStatefulSetInputHash(t *testing.T) { diff --git a/pkg/alertmanager/statefulset.go b/pkg/alertmanager/statefulset.go index d0520caad..164f439c8 100644 --- a/pkg/alertmanager/statefulset.go +++ b/pkg/alertmanager/statefulset.go @@ -27,10 +27,10 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - "github.com/prometheus-operator/prometheus-operator/pkg/webconfig" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + "github.com/rhobs/obo-prometheus-operator/pkg/webconfig" ) const ( diff --git a/pkg/alertmanager/statefulset_test.go b/pkg/alertmanager/statefulset_test.go index e5167628d..b8eda860d 100644 --- a/pkg/alertmanager/statefulset_test.go +++ b/pkg/alertmanager/statefulset_test.go @@ -28,8 +28,8 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) var ( diff --git a/pkg/alertmanager/validation/v1alpha1/validation.go b/pkg/alertmanager/validation/v1alpha1/validation.go index f94f05152..a1acd4766 100644 --- a/pkg/alertmanager/validation/v1alpha1/validation.go +++ b/pkg/alertmanager/validation/v1alpha1/validation.go @@ -21,8 +21,8 @@ import ( "regexp" "strings" - "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager/validation" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager/validation" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) var durationRe = regexp.MustCompile(`^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$`) diff --git a/pkg/alertmanager/validation/v1beta1/validation.go b/pkg/alertmanager/validation/v1beta1/validation.go index 0e1ee8c5f..495207189 100644 --- a/pkg/alertmanager/validation/v1beta1/validation.go +++ b/pkg/alertmanager/validation/v1beta1/validation.go @@ -21,8 +21,8 @@ import ( "regexp" "strings" - "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager/validation" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager/validation" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" ) var durationRe = regexp.MustCompile(`^(([0-9]+)y)?(([0-9]+)w)?(([0-9]+)d)?(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?$`) diff --git a/pkg/alertmanager/validation/v1beta1/validation_test.go b/pkg/alertmanager/validation/v1beta1/validation_test.go index 4a1783ff5..e6c5b03eb 100644 --- a/pkg/alertmanager/validation/v1beta1/validation_test.go +++ b/pkg/alertmanager/validation/v1beta1/validation_test.go @@ -19,7 +19,7 @@ import ( "k8s.io/utils/ptr" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" ) func TestValidateAlertmanagerConfig(t *testing.T) { diff --git a/pkg/apis/monitoring/go.mod b/pkg/apis/monitoring/go.mod index 61c380ade..5d99b8f06 100644 --- a/pkg/apis/monitoring/go.mod +++ b/pkg/apis/monitoring/go.mod @@ -1,4 +1,4 @@ -module github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring +module github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring go 1.17 diff --git a/pkg/apis/monitoring/register.go b/pkg/apis/monitoring/register.go index a9914fb1a..26dcc585e 100644 --- a/pkg/apis/monitoring/register.go +++ b/pkg/apis/monitoring/register.go @@ -15,5 +15,5 @@ package monitoring const ( - GroupName = "monitoring.coreos.com" + GroupName = "monitoring.rhobs" ) diff --git a/pkg/apis/monitoring/v1/alertmanager_types.go b/pkg/apis/monitoring/v1/alertmanager_types.go index 78815919f..87ad729b5 100644 --- a/pkg/apis/monitoring/v1/alertmanager_types.go +++ b/pkg/apis/monitoring/v1/alertmanager_types.go @@ -28,7 +28,7 @@ const ( // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="am" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version",description="The version of Alertmanager" // +kubebuilder:printcolumn:name="Replicas",type="integer",JSONPath=".spec.replicas",description="The number of desired replicas" // +kubebuilder:printcolumn:name="Ready",type="integer",JSONPath=".status.availableReplicas",description="The number of ready replicas" diff --git a/pkg/apis/monitoring/v1/doc.go b/pkg/apis/monitoring/v1/doc.go index 64c472527..f63a726a8 100644 --- a/pkg/apis/monitoring/v1/doc.go +++ b/pkg/apis/monitoring/v1/doc.go @@ -13,6 +13,6 @@ // limitations under the License. // +k8s:deepcopy-gen=package -// +groupName=monitoring.coreos.com +// +groupName=monitoring.rhobs package v1 diff --git a/pkg/apis/monitoring/v1/podmonitor_types.go b/pkg/apis/monitoring/v1/podmonitor_types.go index ee03102d0..b2638b97f 100644 --- a/pkg/apis/monitoring/v1/podmonitor_types.go +++ b/pkg/apis/monitoring/v1/podmonitor_types.go @@ -29,7 +29,7 @@ const ( // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="pmon" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // PodMonitor defines monitoring for a set of pods. type PodMonitor struct { diff --git a/pkg/apis/monitoring/v1/probe_types.go b/pkg/apis/monitoring/v1/probe_types.go index 59b85ae6a..871e0882b 100644 --- a/pkg/apis/monitoring/v1/probe_types.go +++ b/pkg/apis/monitoring/v1/probe_types.go @@ -28,7 +28,7 @@ const ( // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="prb" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // Probe defines monitoring for a set of static targets or ingresses. type Probe struct { diff --git a/pkg/apis/monitoring/v1/prometheus_types.go b/pkg/apis/monitoring/v1/prometheus_types.go index fff9bf06d..ad091ec36 100644 --- a/pkg/apis/monitoring/v1/prometheus_types.go +++ b/pkg/apis/monitoring/v1/prometheus_types.go @@ -611,7 +611,7 @@ type CommonPrometheusFields struct { // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="prom" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version",description="The version of Prometheus" // +kubebuilder:printcolumn:name="Desired",type="integer",JSONPath=".spec.replicas",description="The number of desired replicas" // +kubebuilder:printcolumn:name="Ready",type="integer",JSONPath=".status.availableReplicas",description="The number of ready replicas" diff --git a/pkg/apis/monitoring/v1/prometheusrule_types.go b/pkg/apis/monitoring/v1/prometheusrule_types.go index 8c9a4afe6..94e44987a 100644 --- a/pkg/apis/monitoring/v1/prometheusrule_types.go +++ b/pkg/apis/monitoring/v1/prometheusrule_types.go @@ -28,7 +28,7 @@ const ( // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="promrule" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // PrometheusRule defines recording and alerting rules for a Prometheus instance type PrometheusRule struct { diff --git a/pkg/apis/monitoring/v1/register.go b/pkg/apis/monitoring/v1/register.go index 37786147a..17a2532ff 100644 --- a/pkg/apis/monitoring/v1/register.go +++ b/pkg/apis/monitoring/v1/register.go @@ -19,7 +19,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" ) // SchemeGroupVersion is the group version used to register these objects diff --git a/pkg/apis/monitoring/v1/servicemonitor_types.go b/pkg/apis/monitoring/v1/servicemonitor_types.go index 9a0890dc9..be03dfd38 100644 --- a/pkg/apis/monitoring/v1/servicemonitor_types.go +++ b/pkg/apis/monitoring/v1/servicemonitor_types.go @@ -27,7 +27,7 @@ const ( // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="smon" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // ServiceMonitor defines monitoring for a set of services. type ServiceMonitor struct { diff --git a/pkg/apis/monitoring/v1/thanos_types.go b/pkg/apis/monitoring/v1/thanos_types.go index c155df068..4bc769b61 100644 --- a/pkg/apis/monitoring/v1/thanos_types.go +++ b/pkg/apis/monitoring/v1/thanos_types.go @@ -28,7 +28,7 @@ const ( // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="ruler" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version",description="The version of Thanos Ruler" // +kubebuilder:printcolumn:name="Replicas",type="integer",JSONPath=".spec.replicas",description="The number of desired replicas" // +kubebuilder:printcolumn:name="Ready",type="integer",JSONPath=".status.availableReplicas",description="The number of ready replicas" diff --git a/pkg/apis/monitoring/v1/types.go b/pkg/apis/monitoring/v1/types.go index 2d379f64f..2ced83023 100644 --- a/pkg/apis/monitoring/v1/types.go +++ b/pkg/apis/monitoring/v1/types.go @@ -22,7 +22,7 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/util/intstr" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" ) const ( @@ -77,10 +77,10 @@ type PrometheusRuleExcludeConfig struct { // ObjectReference references a PodMonitor, ServiceMonitor, Probe or PrometheusRule object. type ObjectReference struct { - // Group of the referent. When not specified, it defaults to `monitoring.coreos.com` + // Group of the referent. When not specified, it defaults to `monitoring.rhobs` // +optional - // +kubebuilder:default:="monitoring.coreos.com" - // +kubebuilder:validation:Enum=monitoring.coreos.com + // +kubebuilder:default:="monitoring.rhobs" + // +kubebuilder:validation:Enum=monitoring.rhobs Group string `json:"group"` // Resource of the referent. // +kubebuilder:validation:Required diff --git a/pkg/apis/monitoring/v1alpha1/alertmanager_config_types.go b/pkg/apis/monitoring/v1alpha1/alertmanager_config_types.go index 2b10b74dc..0b8122b04 100644 --- a/pkg/apis/monitoring/v1alpha1/alertmanager_config_types.go +++ b/pkg/apis/monitoring/v1alpha1/alertmanager_config_types.go @@ -20,7 +20,7 @@ import ( "fmt" "strings" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" v1 "k8s.io/api/core/v1" apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" @@ -38,7 +38,7 @@ const ( // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="amcfg" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // +kubebuilder:storageversion // AlertmanagerConfig configures the Prometheus Alertmanager, diff --git a/pkg/apis/monitoring/v1alpha1/doc.go b/pkg/apis/monitoring/v1alpha1/doc.go index aca68fd17..07c888280 100644 --- a/pkg/apis/monitoring/v1alpha1/doc.go +++ b/pkg/apis/monitoring/v1alpha1/doc.go @@ -13,6 +13,6 @@ // limitations under the License. // +k8s:deepcopy-gen=package -// +groupName=monitoring.coreos.com +// +groupName=monitoring.rhobs package v1alpha1 diff --git a/pkg/apis/monitoring/v1alpha1/prometheusagent_types.go b/pkg/apis/monitoring/v1alpha1/prometheusagent_types.go index 1495360ff..432ee739a 100644 --- a/pkg/apis/monitoring/v1alpha1/prometheusagent_types.go +++ b/pkg/apis/monitoring/v1alpha1/prometheusagent_types.go @@ -15,7 +15,7 @@ package v1alpha1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" ) @@ -44,7 +44,7 @@ func (l *PrometheusAgent) GetStatus() monitoringv1.PrometheusStatus { // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="promagent" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // +kubebuilder:printcolumn:name="Version",type="string",JSONPath=".spec.version",description="The version of Prometheus agent" // +kubebuilder:printcolumn:name="Desired",type="integer",JSONPath=".spec.replicas",description="The number of desired replicas" // +kubebuilder:printcolumn:name="Ready",type="integer",JSONPath=".status.availableReplicas",description="The number of ready replicas" diff --git a/pkg/apis/monitoring/v1alpha1/register.go b/pkg/apis/monitoring/v1alpha1/register.go index e78380913..b13eb7f63 100644 --- a/pkg/apis/monitoring/v1alpha1/register.go +++ b/pkg/apis/monitoring/v1alpha1/register.go @@ -19,7 +19,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" ) // SchemeGroupVersion is the group version used to register these objects diff --git a/pkg/apis/monitoring/v1alpha1/scrapeconfig_test.go b/pkg/apis/monitoring/v1alpha1/scrapeconfig_test.go index 593f5a23f..703e170d7 100644 --- a/pkg/apis/monitoring/v1alpha1/scrapeconfig_test.go +++ b/pkg/apis/monitoring/v1alpha1/scrapeconfig_test.go @@ -16,7 +16,7 @@ package v1alpha1 import ( "encoding/json" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" "testing" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" diff --git a/pkg/apis/monitoring/v1alpha1/scrapeconfig_types.go b/pkg/apis/monitoring/v1alpha1/scrapeconfig_types.go index 001df7dc1..0b5c4e576 100644 --- a/pkg/apis/monitoring/v1alpha1/scrapeconfig_types.go +++ b/pkg/apis/monitoring/v1alpha1/scrapeconfig_types.go @@ -15,7 +15,7 @@ package v1alpha1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" @@ -55,7 +55,7 @@ type K8SSelectorConfig struct { // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="scfg" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // +kubebuilder:storageversion // ScrapeConfig defines a namespaced Prometheus scrape_config to be aggregated across diff --git a/pkg/apis/monitoring/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/monitoring/v1alpha1/zz_generated.deepcopy.go index fc14a49e3..56a91162d 100644 --- a/pkg/apis/monitoring/v1alpha1/zz_generated.deepcopy.go +++ b/pkg/apis/monitoring/v1alpha1/zz_generated.deepcopy.go @@ -20,7 +20,7 @@ package v1alpha1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" ) diff --git a/pkg/apis/monitoring/v1beta1/alertmanager_config_types.go b/pkg/apis/monitoring/v1beta1/alertmanager_config_types.go index dda3ac08c..ceafd8ca7 100644 --- a/pkg/apis/monitoring/v1beta1/alertmanager_config_types.go +++ b/pkg/apis/monitoring/v1beta1/alertmanager_config_types.go @@ -20,7 +20,7 @@ import ( "fmt" "strings" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" v1 "k8s.io/api/core/v1" apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" @@ -38,7 +38,7 @@ const ( // +genclient // +k8s:openapi-gen=true -// +kubebuilder:resource:categories="prometheus-operator",shortName="amcfg" +// +kubebuilder:resource:categories="rhobs-prometheus-operator" // AlertmanagerConfig configures the Prometheus Alertmanager, // specifying how alerts should be grouped, inhibited and notified to external systems. diff --git a/pkg/apis/monitoring/v1beta1/conversion_from.go b/pkg/apis/monitoring/v1beta1/conversion_from.go index daba52948..c62d1dfee 100644 --- a/pkg/apis/monitoring/v1beta1/conversion_from.go +++ b/pkg/apis/monitoring/v1beta1/conversion_from.go @@ -22,7 +22,7 @@ import ( apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" "sigs.k8s.io/controller-runtime/pkg/conversion" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) func convertRouteFrom(in *v1alpha1.Route) (*Route, error) { diff --git a/pkg/apis/monitoring/v1beta1/conversion_to.go b/pkg/apis/monitoring/v1beta1/conversion_to.go index 1e96af965..4a09757de 100644 --- a/pkg/apis/monitoring/v1beta1/conversion_to.go +++ b/pkg/apis/monitoring/v1beta1/conversion_to.go @@ -22,7 +22,7 @@ import ( apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" "sigs.k8s.io/controller-runtime/pkg/conversion" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) func convertRouteTo(in *Route) (*v1alpha1.Route, error) { diff --git a/pkg/apis/monitoring/v1beta1/doc.go b/pkg/apis/monitoring/v1beta1/doc.go index 5b75b1421..66f6821a6 100644 --- a/pkg/apis/monitoring/v1beta1/doc.go +++ b/pkg/apis/monitoring/v1beta1/doc.go @@ -13,6 +13,6 @@ // limitations under the License. // +k8s:deepcopy-gen=package -// +groupName=monitoring.coreos.com +// +groupName=monitoring.rhobs package v1beta1 diff --git a/pkg/apis/monitoring/v1beta1/register.go b/pkg/apis/monitoring/v1beta1/register.go index 96e40e832..6787b0e81 100644 --- a/pkg/apis/monitoring/v1beta1/register.go +++ b/pkg/apis/monitoring/v1beta1/register.go @@ -19,7 +19,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" ) // SchemeGroupVersion is the group version used to register these objects diff --git a/pkg/apis/monitoring/v1beta1/zz_generated.deepcopy.go b/pkg/apis/monitoring/v1beta1/zz_generated.deepcopy.go index ed2a3b1b9..981199b19 100644 --- a/pkg/apis/monitoring/v1beta1/zz_generated.deepcopy.go +++ b/pkg/apis/monitoring/v1beta1/zz_generated.deepcopy.go @@ -20,7 +20,7 @@ package v1beta1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" ) diff --git a/pkg/assets/store.go b/pkg/assets/store.go index e8bda344a..293e63b02 100644 --- a/pkg/assets/store.go +++ b/pkg/assets/store.go @@ -27,7 +27,7 @@ import ( corev1client "k8s.io/client-go/kubernetes/typed/core/v1" "k8s.io/client-go/tools/cache" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // Store is a store that fetches and caches TLS materials, bearer tokens diff --git a/pkg/assets/store_test.go b/pkg/assets/store_test.go index 702b2d0e9..e1811197b 100644 --- a/pkg/assets/store_test.go +++ b/pkg/assets/store_test.go @@ -24,7 +24,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/client-go/kubernetes/fake" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) var ( diff --git a/pkg/assets/utils.go b/pkg/assets/utils.go index 570e48f92..6b7ac7436 100644 --- a/pkg/assets/utils.go +++ b/pkg/assets/utils.go @@ -19,7 +19,7 @@ import ( v1 "k8s.io/api/core/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // TLSAssetKey is a key for a TLS asset. diff --git a/pkg/client/applyconfiguration/monitoring/v1/alertmanager.go b/pkg/client/applyconfiguration/monitoring/v1/alertmanager.go index 5df19c3b3..1a2a81fca 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/alertmanager.go +++ b/pkg/client/applyconfiguration/monitoring/v1/alertmanager.go @@ -38,7 +38,7 @@ func Alertmanager(name, namespace string) *AlertmanagerApplyConfiguration { b.WithName(name) b.WithNamespace(namespace) b.WithKind("Alertmanager") - b.WithAPIVersion("monitoring.coreos.com/v1") + b.WithAPIVersion("monitoring.rhobs/v1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1/alertmanagerendpoints.go b/pkg/client/applyconfiguration/monitoring/v1/alertmanagerendpoints.go index 9ec7b1a3f..e368b4191 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/alertmanagerendpoints.go +++ b/pkg/client/applyconfiguration/monitoring/v1/alertmanagerendpoints.go @@ -17,7 +17,7 @@ package v1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" intstr "k8s.io/apimachinery/pkg/util/intstr" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/alertmanagerglobalconfig.go b/pkg/client/applyconfiguration/monitoring/v1/alertmanagerglobalconfig.go index 0a9ca6a8e..f5408ffd2 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/alertmanagerglobalconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1/alertmanagerglobalconfig.go @@ -17,7 +17,7 @@ package v1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/alertmanagerspec.go b/pkg/client/applyconfiguration/monitoring/v1/alertmanagerspec.go index f52ff8918..77154cef7 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/alertmanagerspec.go +++ b/pkg/client/applyconfiguration/monitoring/v1/alertmanagerspec.go @@ -17,7 +17,7 @@ package v1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/commonprometheusfields.go b/pkg/client/applyconfiguration/monitoring/v1/commonprometheusfields.go index 742cc1f0e..de446f3a5 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/commonprometheusfields.go +++ b/pkg/client/applyconfiguration/monitoring/v1/commonprometheusfields.go @@ -17,7 +17,7 @@ package v1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/condition.go b/pkg/client/applyconfiguration/monitoring/v1/condition.go index 11f02ee06..21c6038f1 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/condition.go +++ b/pkg/client/applyconfiguration/monitoring/v1/condition.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/embeddedpersistentvolumeclaim.go b/pkg/client/applyconfiguration/monitoring/v1/embeddedpersistentvolumeclaim.go index ff6883a20..00a2bcebe 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/embeddedpersistentvolumeclaim.go +++ b/pkg/client/applyconfiguration/monitoring/v1/embeddedpersistentvolumeclaim.go @@ -35,7 +35,7 @@ type EmbeddedPersistentVolumeClaimApplyConfiguration struct { func EmbeddedPersistentVolumeClaim() *EmbeddedPersistentVolumeClaimApplyConfiguration { b := &EmbeddedPersistentVolumeClaimApplyConfiguration{} b.WithKind("EmbeddedPersistentVolumeClaim") - b.WithAPIVersion("monitoring.coreos.com/v1") + b.WithAPIVersion("monitoring.rhobs/v1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1/endpoint.go b/pkg/client/applyconfiguration/monitoring/v1/endpoint.go index 8cb80ac99..662c7f087 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/endpoint.go +++ b/pkg/client/applyconfiguration/monitoring/v1/endpoint.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" intstr "k8s.io/apimachinery/pkg/util/intstr" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/metadataconfig.go b/pkg/client/applyconfiguration/monitoring/v1/metadataconfig.go index c9ec12704..089836ad1 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/metadataconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1/metadataconfig.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // MetadataConfigApplyConfiguration represents an declarative configuration of the MetadataConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1/podmetricsendpoint.go b/pkg/client/applyconfiguration/monitoring/v1/podmetricsendpoint.go index 1e57161e6..138c7cbcf 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/podmetricsendpoint.go +++ b/pkg/client/applyconfiguration/monitoring/v1/podmetricsendpoint.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" intstr "k8s.io/apimachinery/pkg/util/intstr" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/podmonitor.go b/pkg/client/applyconfiguration/monitoring/v1/podmonitor.go index debd1415a..2a1b3d71e 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/podmonitor.go +++ b/pkg/client/applyconfiguration/monitoring/v1/podmonitor.go @@ -37,7 +37,7 @@ func PodMonitor(name, namespace string) *PodMonitorApplyConfiguration { b.WithName(name) b.WithNamespace(namespace) b.WithKind("PodMonitor") - b.WithAPIVersion("monitoring.coreos.com/v1") + b.WithAPIVersion("monitoring.rhobs/v1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1/probe.go b/pkg/client/applyconfiguration/monitoring/v1/probe.go index 464ab9485..479458ea1 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/probe.go +++ b/pkg/client/applyconfiguration/monitoring/v1/probe.go @@ -37,7 +37,7 @@ func Probe(name, namespace string) *ProbeApplyConfiguration { b.WithName(name) b.WithNamespace(namespace) b.WithKind("Probe") - b.WithAPIVersion("monitoring.coreos.com/v1") + b.WithAPIVersion("monitoring.rhobs/v1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1/probespec.go b/pkg/client/applyconfiguration/monitoring/v1/probespec.go index 73145479d..0031da64a 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/probespec.go +++ b/pkg/client/applyconfiguration/monitoring/v1/probespec.go @@ -17,7 +17,7 @@ package v1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/probetargetingress.go b/pkg/client/applyconfiguration/monitoring/v1/probetargetingress.go index a239b330c..42d6f2fe9 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/probetargetingress.go +++ b/pkg/client/applyconfiguration/monitoring/v1/probetargetingress.go @@ -17,7 +17,7 @@ package v1 import ( - apismonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + apismonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/probetargetstaticconfig.go b/pkg/client/applyconfiguration/monitoring/v1/probetargetstaticconfig.go index 2d29beb8d..f01b37321 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/probetargetstaticconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1/probetargetstaticconfig.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // ProbeTargetStaticConfigApplyConfiguration represents an declarative configuration of the ProbeTargetStaticConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1/prometheus.go b/pkg/client/applyconfiguration/monitoring/v1/prometheus.go index 28a7b0df7..3e1a33ada 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/prometheus.go +++ b/pkg/client/applyconfiguration/monitoring/v1/prometheus.go @@ -38,7 +38,7 @@ func Prometheus(name, namespace string) *PrometheusApplyConfiguration { b.WithName(name) b.WithNamespace(namespace) b.WithKind("Prometheus") - b.WithAPIVersion("monitoring.coreos.com/v1") + b.WithAPIVersion("monitoring.rhobs/v1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1/prometheusrule.go b/pkg/client/applyconfiguration/monitoring/v1/prometheusrule.go index 9b6567f2b..daea1caf4 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/prometheusrule.go +++ b/pkg/client/applyconfiguration/monitoring/v1/prometheusrule.go @@ -37,7 +37,7 @@ func PrometheusRule(name, namespace string) *PrometheusRuleApplyConfiguration { b.WithName(name) b.WithNamespace(namespace) b.WithKind("PrometheusRule") - b.WithAPIVersion("monitoring.coreos.com/v1") + b.WithAPIVersion("monitoring.rhobs/v1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1/prometheusspec.go b/pkg/client/applyconfiguration/monitoring/v1/prometheusspec.go index a7ad3a2c9..a0da2538d 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/prometheusspec.go +++ b/pkg/client/applyconfiguration/monitoring/v1/prometheusspec.go @@ -17,7 +17,7 @@ package v1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/prometheustracingconfig.go b/pkg/client/applyconfiguration/monitoring/v1/prometheustracingconfig.go index b9957a72d..7d1cf0cf7 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/prometheustracingconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1/prometheustracingconfig.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" resource "k8s.io/apimachinery/pkg/api/resource" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/queryspec.go b/pkg/client/applyconfiguration/monitoring/v1/queryspec.go index f3cef0728..a1deb6341 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/queryspec.go +++ b/pkg/client/applyconfiguration/monitoring/v1/queryspec.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // QuerySpecApplyConfiguration represents an declarative configuration of the QuerySpec type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1/relabelconfig.go b/pkg/client/applyconfiguration/monitoring/v1/relabelconfig.go index f52f4a316..3e4980305 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/relabelconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1/relabelconfig.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // RelabelConfigApplyConfiguration represents an declarative configuration of the RelabelConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1/remotereadspec.go b/pkg/client/applyconfiguration/monitoring/v1/remotereadspec.go index 7aa798bbc..84854b457 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/remotereadspec.go +++ b/pkg/client/applyconfiguration/monitoring/v1/remotereadspec.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // RemoteReadSpecApplyConfiguration represents an declarative configuration of the RemoteReadSpec type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1/remotewritespec.go b/pkg/client/applyconfiguration/monitoring/v1/remotewritespec.go index da6385753..34d7432a1 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/remotewritespec.go +++ b/pkg/client/applyconfiguration/monitoring/v1/remotewritespec.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // RemoteWriteSpecApplyConfiguration represents an declarative configuration of the RemoteWriteSpec type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1/rule.go b/pkg/client/applyconfiguration/monitoring/v1/rule.go index 8cbc73c89..abc8080b9 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/rule.go +++ b/pkg/client/applyconfiguration/monitoring/v1/rule.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" intstr "k8s.io/apimachinery/pkg/util/intstr" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/rulegroup.go b/pkg/client/applyconfiguration/monitoring/v1/rulegroup.go index c2b5c5280..2470d6ba6 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/rulegroup.go +++ b/pkg/client/applyconfiguration/monitoring/v1/rulegroup.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // RuleGroupApplyConfiguration represents an declarative configuration of the RuleGroup type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1/servicemonitor.go b/pkg/client/applyconfiguration/monitoring/v1/servicemonitor.go index 6b87ef476..416f858f4 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/servicemonitor.go +++ b/pkg/client/applyconfiguration/monitoring/v1/servicemonitor.go @@ -37,7 +37,7 @@ func ServiceMonitor(name, namespace string) *ServiceMonitorApplyConfiguration { b.WithName(name) b.WithNamespace(namespace) b.WithKind("ServiceMonitor") - b.WithAPIVersion("monitoring.coreos.com/v1") + b.WithAPIVersion("monitoring.rhobs/v1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1/thanosruler.go b/pkg/client/applyconfiguration/monitoring/v1/thanosruler.go index fd80ebd74..3428bff16 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/thanosruler.go +++ b/pkg/client/applyconfiguration/monitoring/v1/thanosruler.go @@ -38,7 +38,7 @@ func ThanosRuler(name, namespace string) *ThanosRulerApplyConfiguration { b.WithName(name) b.WithNamespace(namespace) b.WithKind("ThanosRuler") - b.WithAPIVersion("monitoring.coreos.com/v1") + b.WithAPIVersion("monitoring.rhobs/v1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1/thanosrulerspec.go b/pkg/client/applyconfiguration/monitoring/v1/thanosrulerspec.go index b57ce90f8..48c5237e7 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/thanosrulerspec.go +++ b/pkg/client/applyconfiguration/monitoring/v1/thanosrulerspec.go @@ -17,7 +17,7 @@ package v1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/thanosspec.go b/pkg/client/applyconfiguration/monitoring/v1/thanosspec.go index 91e01109d..93680dad5 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/thanosspec.go +++ b/pkg/client/applyconfiguration/monitoring/v1/thanosspec.go @@ -17,7 +17,7 @@ package v1 import ( - apismonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + apismonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" v1 "k8s.io/api/core/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1/tsdbspec.go b/pkg/client/applyconfiguration/monitoring/v1/tsdbspec.go index fffda73cd..24e27f7a9 100644 --- a/pkg/client/applyconfiguration/monitoring/v1/tsdbspec.go +++ b/pkg/client/applyconfiguration/monitoring/v1/tsdbspec.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // TSDBSpecApplyConfiguration represents an declarative configuration of the TSDBSpec type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/alertmanagerconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/alertmanagerconfig.go index 62eb676c6..67ed1d71f 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/alertmanagerconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/alertmanagerconfig.go @@ -37,7 +37,7 @@ func AlertmanagerConfig(name, namespace string) *AlertmanagerConfigApplyConfigur b.WithName(name) b.WithNamespace(namespace) b.WithKind("AlertmanagerConfig") - b.WithAPIVersion("monitoring.coreos.com/v1alpha1") + b.WithAPIVersion("monitoring.rhobs/v1alpha1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/consulsdconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/consulsdconfig.go index dc71eece0..80d1e4d53 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/consulsdconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/consulsdconfig.go @@ -17,8 +17,8 @@ package v1alpha1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - applyconfigurationmonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + applyconfigurationmonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" v1 "k8s.io/api/core/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/dnssdconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/dnssdconfig.go index a25316865..8fc205025 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/dnssdconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/dnssdconfig.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // DNSSDConfigApplyConfiguration represents an declarative configuration of the DNSSDConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/ec2sdconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/ec2sdconfig.go index 2a838009c..da6f9b87a 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/ec2sdconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/ec2sdconfig.go @@ -17,8 +17,8 @@ package v1alpha1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" v1 "k8s.io/api/core/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/emailconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/emailconfig.go index 9f3e9fa2e..daf38b8d7 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/emailconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/emailconfig.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" v1 "k8s.io/api/core/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/filesdconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/filesdconfig.go index f88ac8b18..8d79351fd 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/filesdconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/filesdconfig.go @@ -17,8 +17,8 @@ package v1alpha1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) // FileSDConfigApplyConfiguration represents an declarative configuration of the FileSDConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/httpconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/httpconfig.go index 0fe4a92a4..3032b5e0d 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/httpconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/httpconfig.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" corev1 "k8s.io/api/core/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/httpsdconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/httpsdconfig.go index 4a606596e..51eab58e7 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/httpsdconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/httpsdconfig.go @@ -17,8 +17,8 @@ package v1alpha1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" ) // HTTPSDConfigApplyConfiguration represents an declarative configuration of the HTTPSDConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/k8sselectorconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/k8sselectorconfig.go index 89402e774..a0ca6c5f2 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/k8sselectorconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/k8sselectorconfig.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) // K8SSelectorConfigApplyConfiguration represents an declarative configuration of the K8SSelectorConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/kubernetessdconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/kubernetessdconfig.go index fd3bb4b4e..d6a4795a4 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/kubernetessdconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/kubernetessdconfig.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) // KubernetesSDConfigApplyConfiguration represents an declarative configuration of the KubernetesSDConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/matcher.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/matcher.go index 4491e98ac..a9737dbae 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/matcher.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/matcher.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) // MatcherApplyConfiguration represents an declarative configuration of the Matcher type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/prometheusagent.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/prometheusagent.go index 1bb14cb7d..d2f2ff832 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/prometheusagent.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/prometheusagent.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" v1 "k8s.io/client-go/applyconfigurations/meta/v1" @@ -39,7 +39,7 @@ func PrometheusAgent(name, namespace string) *PrometheusAgentApplyConfiguration b.WithName(name) b.WithNamespace(namespace) b.WithKind("PrometheusAgent") - b.WithAPIVersion("monitoring.coreos.com/v1alpha1") + b.WithAPIVersion("monitoring.rhobs/v1alpha1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/prometheusagentspec.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/prometheusagentspec.go index 81740fb7e..6816cc200 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/prometheusagentspec.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/prometheusagentspec.go @@ -17,8 +17,8 @@ package v1alpha1 import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/scrapeconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/scrapeconfig.go index 6c5dc1665..759f8d9ee 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/scrapeconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/scrapeconfig.go @@ -37,7 +37,7 @@ func ScrapeConfig(name, namespace string) *ScrapeConfigApplyConfiguration { b.WithName(name) b.WithNamespace(namespace) b.WithKind("ScrapeConfig") - b.WithAPIVersion("monitoring.coreos.com/v1alpha1") + b.WithAPIVersion("monitoring.rhobs/v1alpha1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/scrapeconfigspec.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/scrapeconfigspec.go index e413267d4..9870fcdab 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/scrapeconfigspec.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/scrapeconfigspec.go @@ -17,8 +17,8 @@ package v1alpha1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" ) // ScrapeConfigSpecApplyConfiguration represents an declarative configuration of the ScrapeConfigSpec type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/snsconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/snsconfig.go index 00616e002..a296f57d2 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/snsconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/snsconfig.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" ) // SNSConfigApplyConfiguration represents an declarative configuration of the SNSConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/staticconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/staticconfig.go index 896cbba9b..ba28ff676 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/staticconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/staticconfig.go @@ -17,8 +17,8 @@ package v1alpha1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) // StaticConfigApplyConfiguration represents an declarative configuration of the StaticConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/timeinterval.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/timeinterval.go index cc0eaa780..d42519d35 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/timeinterval.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/timeinterval.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) // TimeIntervalApplyConfiguration represents an declarative configuration of the TimeInterval type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/timerange.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/timerange.go index 0fb7a155f..f0fa6628f 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/timerange.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/timerange.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) // TimeRangeApplyConfiguration represents an declarative configuration of the TimeRange type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1alpha1/webexconfig.go b/pkg/client/applyconfiguration/monitoring/v1alpha1/webexconfig.go index 85689a14e..d2e11ebe8 100644 --- a/pkg/client/applyconfiguration/monitoring/v1alpha1/webexconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1alpha1/webexconfig.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) // WebexConfigApplyConfiguration represents an declarative configuration of the WebexConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1beta1/alertmanagerconfig.go b/pkg/client/applyconfiguration/monitoring/v1beta1/alertmanagerconfig.go index c0c240326..879266904 100644 --- a/pkg/client/applyconfiguration/monitoring/v1beta1/alertmanagerconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1beta1/alertmanagerconfig.go @@ -37,7 +37,7 @@ func AlertmanagerConfig(name, namespace string) *AlertmanagerConfigApplyConfigur b.WithName(name) b.WithNamespace(namespace) b.WithKind("AlertmanagerConfig") - b.WithAPIVersion("monitoring.coreos.com/v1beta1") + b.WithAPIVersion("monitoring.rhobs/v1beta1") return b } diff --git a/pkg/client/applyconfiguration/monitoring/v1beta1/emailconfig.go b/pkg/client/applyconfiguration/monitoring/v1beta1/emailconfig.go index 8b5964bdd..bf3d7f804 100644 --- a/pkg/client/applyconfiguration/monitoring/v1beta1/emailconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1beta1/emailconfig.go @@ -17,7 +17,7 @@ package v1beta1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" ) // EmailConfigApplyConfiguration represents an declarative configuration of the EmailConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1beta1/httpconfig.go b/pkg/client/applyconfiguration/monitoring/v1beta1/httpconfig.go index 581a7a0dc..30e6bd15f 100644 --- a/pkg/client/applyconfiguration/monitoring/v1beta1/httpconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1beta1/httpconfig.go @@ -17,7 +17,7 @@ package v1beta1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" ) // HTTPConfigApplyConfiguration represents an declarative configuration of the HTTPConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1beta1/matcher.go b/pkg/client/applyconfiguration/monitoring/v1beta1/matcher.go index 9f6fb7fb8..9537fd24a 100644 --- a/pkg/client/applyconfiguration/monitoring/v1beta1/matcher.go +++ b/pkg/client/applyconfiguration/monitoring/v1beta1/matcher.go @@ -17,7 +17,7 @@ package v1beta1 import ( - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" ) // MatcherApplyConfiguration represents an declarative configuration of the Matcher type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1beta1/snsconfig.go b/pkg/client/applyconfiguration/monitoring/v1beta1/snsconfig.go index 71c7e5fe3..9a9e1790e 100644 --- a/pkg/client/applyconfiguration/monitoring/v1beta1/snsconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1beta1/snsconfig.go @@ -17,7 +17,7 @@ package v1beta1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" ) // SNSConfigApplyConfiguration represents an declarative configuration of the SNSConfig type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1beta1/timeperiod.go b/pkg/client/applyconfiguration/monitoring/v1beta1/timeperiod.go index b373615af..cff6c3765 100644 --- a/pkg/client/applyconfiguration/monitoring/v1beta1/timeperiod.go +++ b/pkg/client/applyconfiguration/monitoring/v1beta1/timeperiod.go @@ -17,7 +17,7 @@ package v1beta1 import ( - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" ) // TimePeriodApplyConfiguration represents an declarative configuration of the TimePeriod type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1beta1/timerange.go b/pkg/client/applyconfiguration/monitoring/v1beta1/timerange.go index 1f453ea8a..2f51e11c5 100644 --- a/pkg/client/applyconfiguration/monitoring/v1beta1/timerange.go +++ b/pkg/client/applyconfiguration/monitoring/v1beta1/timerange.go @@ -17,7 +17,7 @@ package v1beta1 import ( - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" ) // TimeRangeApplyConfiguration represents an declarative configuration of the TimeRange type for use diff --git a/pkg/client/applyconfiguration/monitoring/v1beta1/webexconfig.go b/pkg/client/applyconfiguration/monitoring/v1beta1/webexconfig.go index 05c020419..0f002d928 100644 --- a/pkg/client/applyconfiguration/monitoring/v1beta1/webexconfig.go +++ b/pkg/client/applyconfiguration/monitoring/v1beta1/webexconfig.go @@ -17,7 +17,7 @@ package v1beta1 import ( - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" ) // WebexConfigApplyConfiguration represents an declarative configuration of the WebexConfig type for use diff --git a/pkg/client/applyconfiguration/utils.go b/pkg/client/applyconfiguration/utils.go index 26091e38a..012309c36 100644 --- a/pkg/client/applyconfiguration/utils.go +++ b/pkg/client/applyconfiguration/utils.go @@ -17,12 +17,12 @@ package applyconfiguration import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1beta1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1beta1" schema "k8s.io/apimachinery/pkg/runtime/schema" ) @@ -30,7 +30,7 @@ import ( // apply configuration type exists for the given GroupVersionKind. func ForKind(kind schema.GroupVersionKind) interface{} { switch kind { - // Group=monitoring.coreos.com, Version=v1 + // Group=monitoring.rhobs, Version=v1 case v1.SchemeGroupVersion.WithKind("AlertingSpec"): return &monitoringv1.AlertingSpecApplyConfiguration{} case v1.SchemeGroupVersion.WithKind("Alertmanager"): @@ -186,7 +186,7 @@ func ForKind(kind schema.GroupVersionKind) interface{} { case v1.SchemeGroupVersion.WithKind("WebTLSConfig"): return &monitoringv1.WebTLSConfigApplyConfiguration{} - // Group=monitoring.coreos.com, Version=v1alpha1 + // Group=monitoring.rhobs, Version=v1alpha1 case v1alpha1.SchemeGroupVersion.WithKind("AlertmanagerConfig"): return &monitoringv1alpha1.AlertmanagerConfigApplyConfiguration{} case v1alpha1.SchemeGroupVersion.WithKind("AlertmanagerConfigSpec"): @@ -276,7 +276,7 @@ func ForKind(kind schema.GroupVersionKind) interface{} { case v1alpha1.SchemeGroupVersion.WithKind("WeChatConfig"): return &monitoringv1alpha1.WeChatConfigApplyConfiguration{} - // Group=monitoring.coreos.com, Version=v1beta1 + // Group=monitoring.rhobs, Version=v1beta1 case v1beta1.SchemeGroupVersion.WithKind("AlertmanagerConfig"): return &monitoringv1beta1.AlertmanagerConfigApplyConfiguration{} case v1beta1.SchemeGroupVersion.WithKind("AlertmanagerConfigSpec"): diff --git a/pkg/client/go.mod b/pkg/client/go.mod index ab3c528f7..851bb90ef 100644 --- a/pkg/client/go.mod +++ b/pkg/client/go.mod @@ -1,9 +1,9 @@ -module github.com/prometheus-operator/prometheus-operator/pkg/client +module github.com/rhobs/obo-prometheus-operator/pkg/client go 1.19 require ( - github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring v0.69.1 + github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.69.1-rhobs1 k8s.io/api v0.28.3 k8s.io/apiextensions-apiserver v0.28.3 k8s.io/apimachinery v0.28.3 @@ -51,4 +51,4 @@ require ( sigs.k8s.io/yaml v1.3.0 // indirect ) -replace github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring => ../apis/monitoring +replace github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring => ../apis/monitoring diff --git a/pkg/client/informers/externalversions/factory.go b/pkg/client/informers/externalversions/factory.go index e5af80e2d..636567ef5 100644 --- a/pkg/client/informers/externalversions/factory.go +++ b/pkg/client/informers/externalversions/factory.go @@ -21,9 +21,9 @@ import ( sync "sync" time "time" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - monitoring "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/monitoring" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + monitoring "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/monitoring" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" schema "k8s.io/apimachinery/pkg/runtime/schema" diff --git a/pkg/client/informers/externalversions/generic.go b/pkg/client/informers/externalversions/generic.go index 9a8cbba2c..545bdc122 100644 --- a/pkg/client/informers/externalversions/generic.go +++ b/pkg/client/informers/externalversions/generic.go @@ -19,9 +19,9 @@ package externalversions import ( "fmt" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" schema "k8s.io/apimachinery/pkg/runtime/schema" cache "k8s.io/client-go/tools/cache" ) @@ -52,7 +52,7 @@ func (f *genericInformer) Lister() cache.GenericLister { // TODO extend this to unknown resources with a client pool func (f *sharedInformerFactory) ForResource(resource schema.GroupVersionResource) (GenericInformer, error) { switch resource { - // Group=monitoring.coreos.com, Version=v1 + // Group=monitoring.rhobs, Version=v1 case v1.SchemeGroupVersion.WithResource("alertmanagers"): return &genericInformer{resource: resource.GroupResource(), informer: f.Monitoring().V1().Alertmanagers().Informer()}, nil case v1.SchemeGroupVersion.WithResource("podmonitors"): @@ -68,7 +68,7 @@ func (f *sharedInformerFactory) ForResource(resource schema.GroupVersionResource case v1.SchemeGroupVersion.WithResource("thanosrulers"): return &genericInformer{resource: resource.GroupResource(), informer: f.Monitoring().V1().ThanosRulers().Informer()}, nil - // Group=monitoring.coreos.com, Version=v1alpha1 + // Group=monitoring.rhobs, Version=v1alpha1 case v1alpha1.SchemeGroupVersion.WithResource("alertmanagerconfigs"): return &genericInformer{resource: resource.GroupResource(), informer: f.Monitoring().V1alpha1().AlertmanagerConfigs().Informer()}, nil case v1alpha1.SchemeGroupVersion.WithResource("prometheusagents"): @@ -76,7 +76,7 @@ func (f *sharedInformerFactory) ForResource(resource schema.GroupVersionResource case v1alpha1.SchemeGroupVersion.WithResource("scrapeconfigs"): return &genericInformer{resource: resource.GroupResource(), informer: f.Monitoring().V1alpha1().ScrapeConfigs().Informer()}, nil - // Group=monitoring.coreos.com, Version=v1beta1 + // Group=monitoring.rhobs, Version=v1beta1 case v1beta1.SchemeGroupVersion.WithResource("alertmanagerconfigs"): return &genericInformer{resource: resource.GroupResource(), informer: f.Monitoring().V1beta1().AlertmanagerConfigs().Informer()}, nil diff --git a/pkg/client/informers/externalversions/internalinterfaces/factory_interfaces.go b/pkg/client/informers/externalversions/internalinterfaces/factory_interfaces.go index 8b7e955df..bf51b7ccf 100644 --- a/pkg/client/informers/externalversions/internalinterfaces/factory_interfaces.go +++ b/pkg/client/informers/externalversions/internalinterfaces/factory_interfaces.go @@ -19,7 +19,7 @@ package internalinterfaces import ( time "time" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" cache "k8s.io/client-go/tools/cache" diff --git a/pkg/client/informers/externalversions/monitoring/interface.go b/pkg/client/informers/externalversions/monitoring/interface.go index bbed304ca..ca4bee50d 100644 --- a/pkg/client/informers/externalversions/monitoring/interface.go +++ b/pkg/client/informers/externalversions/monitoring/interface.go @@ -17,10 +17,10 @@ package monitoring import ( - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/monitoring/v1" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/monitoring/v1alpha1" - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/monitoring/v1beta1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/monitoring/v1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/monitoring/v1alpha1" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/monitoring/v1beta1" ) // Interface provides access to each of this group's versions. diff --git a/pkg/client/informers/externalversions/monitoring/v1/alertmanager.go b/pkg/client/informers/externalversions/monitoring/v1/alertmanager.go index e1776b65b..3011edafe 100644 --- a/pkg/client/informers/externalversions/monitoring/v1/alertmanager.go +++ b/pkg/client/informers/externalversions/monitoring/v1/alertmanager.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1/interface.go b/pkg/client/informers/externalversions/monitoring/v1/interface.go index e990b366f..7f11713ba 100644 --- a/pkg/client/informers/externalversions/monitoring/v1/interface.go +++ b/pkg/client/informers/externalversions/monitoring/v1/interface.go @@ -17,7 +17,7 @@ package v1 import ( - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" ) // Interface provides access to all the informers in this group version. diff --git a/pkg/client/informers/externalversions/monitoring/v1/podmonitor.go b/pkg/client/informers/externalversions/monitoring/v1/podmonitor.go index 5c2e68a26..c6cb7f691 100644 --- a/pkg/client/informers/externalversions/monitoring/v1/podmonitor.go +++ b/pkg/client/informers/externalversions/monitoring/v1/podmonitor.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1/probe.go b/pkg/client/informers/externalversions/monitoring/v1/probe.go index 031607b7e..3980bf5e6 100644 --- a/pkg/client/informers/externalversions/monitoring/v1/probe.go +++ b/pkg/client/informers/externalversions/monitoring/v1/probe.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1/prometheus.go b/pkg/client/informers/externalversions/monitoring/v1/prometheus.go index 54b410401..10e015b95 100644 --- a/pkg/client/informers/externalversions/monitoring/v1/prometheus.go +++ b/pkg/client/informers/externalversions/monitoring/v1/prometheus.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1/prometheusrule.go b/pkg/client/informers/externalversions/monitoring/v1/prometheusrule.go index 1a533ae9b..d1f03b7dc 100644 --- a/pkg/client/informers/externalversions/monitoring/v1/prometheusrule.go +++ b/pkg/client/informers/externalversions/monitoring/v1/prometheusrule.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1/servicemonitor.go b/pkg/client/informers/externalversions/monitoring/v1/servicemonitor.go index 67d3e947f..5a906755b 100644 --- a/pkg/client/informers/externalversions/monitoring/v1/servicemonitor.go +++ b/pkg/client/informers/externalversions/monitoring/v1/servicemonitor.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1/thanosruler.go b/pkg/client/informers/externalversions/monitoring/v1/thanosruler.go index 6b39260ff..17de53685 100644 --- a/pkg/client/informers/externalversions/monitoring/v1/thanosruler.go +++ b/pkg/client/informers/externalversions/monitoring/v1/thanosruler.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1alpha1/alertmanagerconfig.go b/pkg/client/informers/externalversions/monitoring/v1alpha1/alertmanagerconfig.go index f9ac3565a..3b991fef1 100644 --- a/pkg/client/informers/externalversions/monitoring/v1alpha1/alertmanagerconfig.go +++ b/pkg/client/informers/externalversions/monitoring/v1alpha1/alertmanagerconfig.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1alpha1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1alpha1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1alpha1/interface.go b/pkg/client/informers/externalversions/monitoring/v1alpha1/interface.go index 7dd75804d..cbd896069 100644 --- a/pkg/client/informers/externalversions/monitoring/v1alpha1/interface.go +++ b/pkg/client/informers/externalversions/monitoring/v1alpha1/interface.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" ) // Interface provides access to all the informers in this group version. diff --git a/pkg/client/informers/externalversions/monitoring/v1alpha1/prometheusagent.go b/pkg/client/informers/externalversions/monitoring/v1alpha1/prometheusagent.go index 25368e098..49ce59f04 100644 --- a/pkg/client/informers/externalversions/monitoring/v1alpha1/prometheusagent.go +++ b/pkg/client/informers/externalversions/monitoring/v1alpha1/prometheusagent.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1alpha1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1alpha1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1alpha1/scrapeconfig.go b/pkg/client/informers/externalversions/monitoring/v1alpha1/scrapeconfig.go index 4d3de319d..74c53dd20 100644 --- a/pkg/client/informers/externalversions/monitoring/v1alpha1/scrapeconfig.go +++ b/pkg/client/informers/externalversions/monitoring/v1alpha1/scrapeconfig.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1alpha1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1alpha1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1beta1/alertmanagerconfig.go b/pkg/client/informers/externalversions/monitoring/v1beta1/alertmanagerconfig.go index f8c9b519a..934161030 100644 --- a/pkg/client/informers/externalversions/monitoring/v1beta1/alertmanagerconfig.go +++ b/pkg/client/informers/externalversions/monitoring/v1beta1/alertmanagerconfig.go @@ -20,10 +20,10 @@ import ( "context" time "time" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/client/listers/monitoring/v1beta1" - versioned "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/client/listers/monitoring/v1beta1" + versioned "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/informers/externalversions/monitoring/v1beta1/interface.go b/pkg/client/informers/externalversions/monitoring/v1beta1/interface.go index fa4d4e5c2..461ee6f51 100644 --- a/pkg/client/informers/externalversions/monitoring/v1beta1/interface.go +++ b/pkg/client/informers/externalversions/monitoring/v1beta1/interface.go @@ -17,7 +17,7 @@ package v1beta1 import ( - internalinterfaces "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" + internalinterfaces "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions/internalinterfaces" ) // Interface provides access to all the informers in this group version. diff --git a/pkg/client/listers/monitoring/v1/alertmanager.go b/pkg/client/listers/monitoring/v1/alertmanager.go index 6b46f3114..138e28900 100644 --- a/pkg/client/listers/monitoring/v1/alertmanager.go +++ b/pkg/client/listers/monitoring/v1/alertmanager.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1/podmonitor.go b/pkg/client/listers/monitoring/v1/podmonitor.go index 101e86f6c..96314070a 100644 --- a/pkg/client/listers/monitoring/v1/podmonitor.go +++ b/pkg/client/listers/monitoring/v1/podmonitor.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1/probe.go b/pkg/client/listers/monitoring/v1/probe.go index 44f8ccbba..5a3c61706 100644 --- a/pkg/client/listers/monitoring/v1/probe.go +++ b/pkg/client/listers/monitoring/v1/probe.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1/prometheus.go b/pkg/client/listers/monitoring/v1/prometheus.go index 434568340..20fff55d9 100644 --- a/pkg/client/listers/monitoring/v1/prometheus.go +++ b/pkg/client/listers/monitoring/v1/prometheus.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1/prometheusrule.go b/pkg/client/listers/monitoring/v1/prometheusrule.go index 403565d34..8d32eaa3e 100644 --- a/pkg/client/listers/monitoring/v1/prometheusrule.go +++ b/pkg/client/listers/monitoring/v1/prometheusrule.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1/servicemonitor.go b/pkg/client/listers/monitoring/v1/servicemonitor.go index 3f97dcc4d..e7121bdb5 100644 --- a/pkg/client/listers/monitoring/v1/servicemonitor.go +++ b/pkg/client/listers/monitoring/v1/servicemonitor.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1/thanosruler.go b/pkg/client/listers/monitoring/v1/thanosruler.go index 1cd3f31dd..5b26207e1 100644 --- a/pkg/client/listers/monitoring/v1/thanosruler.go +++ b/pkg/client/listers/monitoring/v1/thanosruler.go @@ -17,7 +17,7 @@ package v1 import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1alpha1/alertmanagerconfig.go b/pkg/client/listers/monitoring/v1alpha1/alertmanagerconfig.go index bd1ee147a..7f7045133 100644 --- a/pkg/client/listers/monitoring/v1alpha1/alertmanagerconfig.go +++ b/pkg/client/listers/monitoring/v1alpha1/alertmanagerconfig.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1alpha1/prometheusagent.go b/pkg/client/listers/monitoring/v1alpha1/prometheusagent.go index e0ae30d62..5a719cf1c 100644 --- a/pkg/client/listers/monitoring/v1alpha1/prometheusagent.go +++ b/pkg/client/listers/monitoring/v1alpha1/prometheusagent.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1alpha1/scrapeconfig.go b/pkg/client/listers/monitoring/v1alpha1/scrapeconfig.go index fe3ad861e..caad672ee 100644 --- a/pkg/client/listers/monitoring/v1alpha1/scrapeconfig.go +++ b/pkg/client/listers/monitoring/v1alpha1/scrapeconfig.go @@ -17,7 +17,7 @@ package v1alpha1 import ( - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/listers/monitoring/v1beta1/alertmanagerconfig.go b/pkg/client/listers/monitoring/v1beta1/alertmanagerconfig.go index b446010a5..0abcbaa32 100644 --- a/pkg/client/listers/monitoring/v1beta1/alertmanagerconfig.go +++ b/pkg/client/listers/monitoring/v1beta1/alertmanagerconfig.go @@ -17,7 +17,7 @@ package v1beta1 import ( - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" diff --git a/pkg/client/versioned/clientset.go b/pkg/client/versioned/clientset.go index ef08b5025..2871b7746 100644 --- a/pkg/client/versioned/clientset.go +++ b/pkg/client/versioned/clientset.go @@ -20,9 +20,9 @@ import ( "fmt" "net/http" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1" discovery "k8s.io/client-go/discovery" rest "k8s.io/client-go/rest" flowcontrol "k8s.io/client-go/util/flowcontrol" diff --git a/pkg/client/versioned/fake/clientset_generated.go b/pkg/client/versioned/fake/clientset_generated.go index 7654d62e7..9443502e7 100644 --- a/pkg/client/versioned/fake/clientset_generated.go +++ b/pkg/client/versioned/fake/clientset_generated.go @@ -17,13 +17,13 @@ package fake import ( - clientset "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1" - fakemonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1/fake" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1" - fakemonitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1/fake" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1" - fakemonitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1/fake" + clientset "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1" + fakemonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1/fake" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1" + fakemonitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1/fake" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1" + fakemonitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1/fake" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/watch" "k8s.io/client-go/discovery" diff --git a/pkg/client/versioned/fake/register.go b/pkg/client/versioned/fake/register.go index a0a214d47..d58d423c8 100644 --- a/pkg/client/versioned/fake/register.go +++ b/pkg/client/versioned/fake/register.go @@ -17,9 +17,9 @@ package fake import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" schema "k8s.io/apimachinery/pkg/runtime/schema" diff --git a/pkg/client/versioned/scheme/register.go b/pkg/client/versioned/scheme/register.go index 11a482df8..11f96f7c6 100644 --- a/pkg/client/versioned/scheme/register.go +++ b/pkg/client/versioned/scheme/register.go @@ -17,9 +17,9 @@ package scheme import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" runtime "k8s.io/apimachinery/pkg/runtime" schema "k8s.io/apimachinery/pkg/runtime/schema" diff --git a/pkg/client/versioned/typed/monitoring/v1/alertmanager.go b/pkg/client/versioned/typed/monitoring/v1/alertmanager.go index 919b188f2..fdb2f1a3e 100644 --- a/pkg/client/versioned/typed/monitoring/v1/alertmanager.go +++ b/pkg/client/versioned/typed/monitoring/v1/alertmanager.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1/fake/fake_alertmanager.go b/pkg/client/versioned/typed/monitoring/v1/fake/fake_alertmanager.go index e94e8b678..38825479f 100644 --- a/pkg/client/versioned/typed/monitoring/v1/fake/fake_alertmanager.go +++ b/pkg/client/versioned/typed/monitoring/v1/fake/fake_alertmanager.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - applyconfigurationmonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + applyconfigurationmonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakeAlertmanagers struct { ns string } -var alertmanagersResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1", Resource: "alertmanagers"} +var alertmanagersResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1", Resource: "alertmanagers"} -var alertmanagersKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1", Kind: "Alertmanager"} +var alertmanagersKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1", Kind: "Alertmanager"} // Get takes name of the alertmanager, and returns the corresponding alertmanager object, and an error if there is any. func (c *FakeAlertmanagers) Get(ctx context.Context, name string, options v1.GetOptions) (result *monitoringv1.Alertmanager, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1/fake/fake_monitoring_client.go b/pkg/client/versioned/typed/monitoring/v1/fake/fake_monitoring_client.go index 84234d9d8..03986385e 100644 --- a/pkg/client/versioned/typed/monitoring/v1/fake/fake_monitoring_client.go +++ b/pkg/client/versioned/typed/monitoring/v1/fake/fake_monitoring_client.go @@ -17,7 +17,7 @@ package fake import ( - v1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1" rest "k8s.io/client-go/rest" testing "k8s.io/client-go/testing" ) diff --git a/pkg/client/versioned/typed/monitoring/v1/fake/fake_podmonitor.go b/pkg/client/versioned/typed/monitoring/v1/fake/fake_podmonitor.go index c93cc80f0..4b6361d77 100644 --- a/pkg/client/versioned/typed/monitoring/v1/fake/fake_podmonitor.go +++ b/pkg/client/versioned/typed/monitoring/v1/fake/fake_podmonitor.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - applyconfigurationmonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + applyconfigurationmonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakePodMonitors struct { ns string } -var podmonitorsResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1", Resource: "podmonitors"} +var podmonitorsResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1", Resource: "podmonitors"} -var podmonitorsKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1", Kind: "PodMonitor"} +var podmonitorsKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1", Kind: "PodMonitor"} // Get takes name of the podMonitor, and returns the corresponding podMonitor object, and an error if there is any. func (c *FakePodMonitors) Get(ctx context.Context, name string, options v1.GetOptions) (result *monitoringv1.PodMonitor, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1/fake/fake_probe.go b/pkg/client/versioned/typed/monitoring/v1/fake/fake_probe.go index 570a73743..de33c0733 100644 --- a/pkg/client/versioned/typed/monitoring/v1/fake/fake_probe.go +++ b/pkg/client/versioned/typed/monitoring/v1/fake/fake_probe.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - applyconfigurationmonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + applyconfigurationmonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakeProbes struct { ns string } -var probesResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1", Resource: "probes"} +var probesResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1", Resource: "probes"} -var probesKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1", Kind: "Probe"} +var probesKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1", Kind: "Probe"} // Get takes name of the probe, and returns the corresponding probe object, and an error if there is any. func (c *FakeProbes) Get(ctx context.Context, name string, options v1.GetOptions) (result *monitoringv1.Probe, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1/fake/fake_prometheus.go b/pkg/client/versioned/typed/monitoring/v1/fake/fake_prometheus.go index 22dfcf417..7654fca9b 100644 --- a/pkg/client/versioned/typed/monitoring/v1/fake/fake_prometheus.go +++ b/pkg/client/versioned/typed/monitoring/v1/fake/fake_prometheus.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - applyconfigurationmonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + applyconfigurationmonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakePrometheuses struct { ns string } -var prometheusesResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1", Resource: "prometheuses"} +var prometheusesResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1", Resource: "prometheuses"} -var prometheusesKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1", Kind: "Prometheus"} +var prometheusesKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1", Kind: "Prometheus"} // Get takes name of the prometheus, and returns the corresponding prometheus object, and an error if there is any. func (c *FakePrometheuses) Get(ctx context.Context, name string, options v1.GetOptions) (result *monitoringv1.Prometheus, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1/fake/fake_prometheusrule.go b/pkg/client/versioned/typed/monitoring/v1/fake/fake_prometheusrule.go index 507b37c59..db8cc497c 100644 --- a/pkg/client/versioned/typed/monitoring/v1/fake/fake_prometheusrule.go +++ b/pkg/client/versioned/typed/monitoring/v1/fake/fake_prometheusrule.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - applyconfigurationmonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + applyconfigurationmonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakePrometheusRules struct { ns string } -var prometheusrulesResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1", Resource: "prometheusrules"} +var prometheusrulesResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1", Resource: "prometheusrules"} -var prometheusrulesKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1", Kind: "PrometheusRule"} +var prometheusrulesKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1", Kind: "PrometheusRule"} // Get takes name of the prometheusRule, and returns the corresponding prometheusRule object, and an error if there is any. func (c *FakePrometheusRules) Get(ctx context.Context, name string, options v1.GetOptions) (result *monitoringv1.PrometheusRule, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1/fake/fake_servicemonitor.go b/pkg/client/versioned/typed/monitoring/v1/fake/fake_servicemonitor.go index 40d8a92a3..d8ffafe8c 100644 --- a/pkg/client/versioned/typed/monitoring/v1/fake/fake_servicemonitor.go +++ b/pkg/client/versioned/typed/monitoring/v1/fake/fake_servicemonitor.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - applyconfigurationmonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + applyconfigurationmonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakeServiceMonitors struct { ns string } -var servicemonitorsResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1", Resource: "servicemonitors"} +var servicemonitorsResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1", Resource: "servicemonitors"} -var servicemonitorsKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1", Kind: "ServiceMonitor"} +var servicemonitorsKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1", Kind: "ServiceMonitor"} // Get takes name of the serviceMonitor, and returns the corresponding serviceMonitor object, and an error if there is any. func (c *FakeServiceMonitors) Get(ctx context.Context, name string, options v1.GetOptions) (result *monitoringv1.ServiceMonitor, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1/fake/fake_thanosruler.go b/pkg/client/versioned/typed/monitoring/v1/fake/fake_thanosruler.go index 74807bbf6..05af080ed 100644 --- a/pkg/client/versioned/typed/monitoring/v1/fake/fake_thanosruler.go +++ b/pkg/client/versioned/typed/monitoring/v1/fake/fake_thanosruler.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - applyconfigurationmonitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + applyconfigurationmonitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakeThanosRulers struct { ns string } -var thanosrulersResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1", Resource: "thanosrulers"} +var thanosrulersResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1", Resource: "thanosrulers"} -var thanosrulersKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1", Kind: "ThanosRuler"} +var thanosrulersKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1", Kind: "ThanosRuler"} // Get takes name of the thanosRuler, and returns the corresponding thanosRuler object, and an error if there is any. func (c *FakeThanosRulers) Get(ctx context.Context, name string, options v1.GetOptions) (result *monitoringv1.ThanosRuler, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1/monitoring_client.go b/pkg/client/versioned/typed/monitoring/v1/monitoring_client.go index a6a87a6ed..758e198fb 100644 --- a/pkg/client/versioned/typed/monitoring/v1/monitoring_client.go +++ b/pkg/client/versioned/typed/monitoring/v1/monitoring_client.go @@ -19,8 +19,8 @@ package v1 import ( "net/http" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" rest "k8s.io/client-go/rest" ) @@ -35,7 +35,7 @@ type MonitoringV1Interface interface { ThanosRulersGetter } -// MonitoringV1Client is used to interact with features provided by the monitoring.coreos.com group. +// MonitoringV1Client is used to interact with features provided by the monitoring.rhobs group. type MonitoringV1Client struct { restClient rest.Interface } diff --git a/pkg/client/versioned/typed/monitoring/v1/podmonitor.go b/pkg/client/versioned/typed/monitoring/v1/podmonitor.go index 34a3fdc11..42a366cd0 100644 --- a/pkg/client/versioned/typed/monitoring/v1/podmonitor.go +++ b/pkg/client/versioned/typed/monitoring/v1/podmonitor.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1/probe.go b/pkg/client/versioned/typed/monitoring/v1/probe.go index 96e0e434d..71e703ecf 100644 --- a/pkg/client/versioned/typed/monitoring/v1/probe.go +++ b/pkg/client/versioned/typed/monitoring/v1/probe.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1/prometheus.go b/pkg/client/versioned/typed/monitoring/v1/prometheus.go index be623df4d..cb25a4e8c 100644 --- a/pkg/client/versioned/typed/monitoring/v1/prometheus.go +++ b/pkg/client/versioned/typed/monitoring/v1/prometheus.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1/prometheusrule.go b/pkg/client/versioned/typed/monitoring/v1/prometheusrule.go index 69fbeffc5..1b5ad4163 100644 --- a/pkg/client/versioned/typed/monitoring/v1/prometheusrule.go +++ b/pkg/client/versioned/typed/monitoring/v1/prometheusrule.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1/servicemonitor.go b/pkg/client/versioned/typed/monitoring/v1/servicemonitor.go index 02f5e5e4d..3735dedf5 100644 --- a/pkg/client/versioned/typed/monitoring/v1/servicemonitor.go +++ b/pkg/client/versioned/typed/monitoring/v1/servicemonitor.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1/thanosruler.go b/pkg/client/versioned/typed/monitoring/v1/thanosruler.go index af077f470..aece406dd 100644 --- a/pkg/client/versioned/typed/monitoring/v1/thanosruler.go +++ b/pkg/client/versioned/typed/monitoring/v1/thanosruler.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1alpha1/alertmanagerconfig.go b/pkg/client/versioned/typed/monitoring/v1alpha1/alertmanagerconfig.go index f84155940..485c85ad7 100644 --- a/pkg/client/versioned/typed/monitoring/v1alpha1/alertmanagerconfig.go +++ b/pkg/client/versioned/typed/monitoring/v1alpha1/alertmanagerconfig.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_alertmanagerconfig.go b/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_alertmanagerconfig.go index 9f628f13f..ca4e71620 100644 --- a/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_alertmanagerconfig.go +++ b/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_alertmanagerconfig.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakeAlertmanagerConfigs struct { ns string } -var alertmanagerconfigsResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1alpha1", Resource: "alertmanagerconfigs"} +var alertmanagerconfigsResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1alpha1", Resource: "alertmanagerconfigs"} -var alertmanagerconfigsKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1alpha1", Kind: "AlertmanagerConfig"} +var alertmanagerconfigsKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1alpha1", Kind: "AlertmanagerConfig"} // Get takes name of the alertmanagerConfig, and returns the corresponding alertmanagerConfig object, and an error if there is any. func (c *FakeAlertmanagerConfigs) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1alpha1.AlertmanagerConfig, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_monitoring_client.go b/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_monitoring_client.go index 22abe542a..ae05225fb 100644 --- a/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_monitoring_client.go +++ b/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_monitoring_client.go @@ -17,7 +17,7 @@ package fake import ( - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1" rest "k8s.io/client-go/rest" testing "k8s.io/client-go/testing" ) diff --git a/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_prometheusagent.go b/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_prometheusagent.go index 320ab1739..c204b23b8 100644 --- a/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_prometheusagent.go +++ b/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_prometheusagent.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakePrometheusAgents struct { ns string } -var prometheusagentsResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1alpha1", Resource: "prometheusagents"} +var prometheusagentsResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1alpha1", Resource: "prometheusagents"} -var prometheusagentsKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1alpha1", Kind: "PrometheusAgent"} +var prometheusagentsKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1alpha1", Kind: "PrometheusAgent"} // Get takes name of the prometheusAgent, and returns the corresponding prometheusAgent object, and an error if there is any. func (c *FakePrometheusAgents) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1alpha1.PrometheusAgent, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_scrapeconfig.go b/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_scrapeconfig.go index 5acf77043..3422a43a9 100644 --- a/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_scrapeconfig.go +++ b/pkg/client/versioned/typed/monitoring/v1alpha1/fake/fake_scrapeconfig.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakeScrapeConfigs struct { ns string } -var scrapeconfigsResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1alpha1", Resource: "scrapeconfigs"} +var scrapeconfigsResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1alpha1", Resource: "scrapeconfigs"} -var scrapeconfigsKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1alpha1", Kind: "ScrapeConfig"} +var scrapeconfigsKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1alpha1", Kind: "ScrapeConfig"} // Get takes name of the scrapeConfig, and returns the corresponding scrapeConfig object, and an error if there is any. func (c *FakeScrapeConfigs) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1alpha1.ScrapeConfig, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1alpha1/monitoring_client.go b/pkg/client/versioned/typed/monitoring/v1alpha1/monitoring_client.go index 930729b44..d31ff26cc 100644 --- a/pkg/client/versioned/typed/monitoring/v1alpha1/monitoring_client.go +++ b/pkg/client/versioned/typed/monitoring/v1alpha1/monitoring_client.go @@ -19,8 +19,8 @@ package v1alpha1 import ( "net/http" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" rest "k8s.io/client-go/rest" ) @@ -31,7 +31,7 @@ type MonitoringV1alpha1Interface interface { ScrapeConfigsGetter } -// MonitoringV1alpha1Client is used to interact with features provided by the monitoring.coreos.com group. +// MonitoringV1alpha1Client is used to interact with features provided by the monitoring.rhobs group. type MonitoringV1alpha1Client struct { restClient rest.Interface } diff --git a/pkg/client/versioned/typed/monitoring/v1alpha1/prometheusagent.go b/pkg/client/versioned/typed/monitoring/v1alpha1/prometheusagent.go index fc0426451..7f1c22b05 100644 --- a/pkg/client/versioned/typed/monitoring/v1alpha1/prometheusagent.go +++ b/pkg/client/versioned/typed/monitoring/v1alpha1/prometheusagent.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1alpha1/scrapeconfig.go b/pkg/client/versioned/typed/monitoring/v1alpha1/scrapeconfig.go index 64e5d4320..070e132de 100644 --- a/pkg/client/versioned/typed/monitoring/v1alpha1/scrapeconfig.go +++ b/pkg/client/versioned/typed/monitoring/v1alpha1/scrapeconfig.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1beta1/alertmanagerconfig.go b/pkg/client/versioned/typed/monitoring/v1beta1/alertmanagerconfig.go index c807dfb3e..29cfb4f3f 100644 --- a/pkg/client/versioned/typed/monitoring/v1beta1/alertmanagerconfig.go +++ b/pkg/client/versioned/typed/monitoring/v1beta1/alertmanagerconfig.go @@ -22,9 +22,9 @@ import ( "fmt" "time" - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1beta1" - scheme "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1beta1" + scheme "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" watch "k8s.io/apimachinery/pkg/watch" diff --git a/pkg/client/versioned/typed/monitoring/v1beta1/fake/fake_alertmanagerconfig.go b/pkg/client/versioned/typed/monitoring/v1beta1/fake/fake_alertmanagerconfig.go index ccddead84..033fdec53 100644 --- a/pkg/client/versioned/typed/monitoring/v1beta1/fake/fake_alertmanagerconfig.go +++ b/pkg/client/versioned/typed/monitoring/v1beta1/fake/fake_alertmanagerconfig.go @@ -21,8 +21,8 @@ import ( json "encoding/json" "fmt" - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1beta1" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1beta1" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" labels "k8s.io/apimachinery/pkg/labels" schema "k8s.io/apimachinery/pkg/runtime/schema" @@ -37,9 +37,9 @@ type FakeAlertmanagerConfigs struct { ns string } -var alertmanagerconfigsResource = schema.GroupVersionResource{Group: "monitoring.coreos.com", Version: "v1beta1", Resource: "alertmanagerconfigs"} +var alertmanagerconfigsResource = schema.GroupVersionResource{Group: "monitoring.rhobs", Version: "v1beta1", Resource: "alertmanagerconfigs"} -var alertmanagerconfigsKind = schema.GroupVersionKind{Group: "monitoring.coreos.com", Version: "v1beta1", Kind: "AlertmanagerConfig"} +var alertmanagerconfigsKind = schema.GroupVersionKind{Group: "monitoring.rhobs", Version: "v1beta1", Kind: "AlertmanagerConfig"} // Get takes name of the alertmanagerConfig, and returns the corresponding alertmanagerConfig object, and an error if there is any. func (c *FakeAlertmanagerConfigs) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1beta1.AlertmanagerConfig, err error) { diff --git a/pkg/client/versioned/typed/monitoring/v1beta1/fake/fake_monitoring_client.go b/pkg/client/versioned/typed/monitoring/v1beta1/fake/fake_monitoring_client.go index 3f58eb3e3..06b9435db 100644 --- a/pkg/client/versioned/typed/monitoring/v1beta1/fake/fake_monitoring_client.go +++ b/pkg/client/versioned/typed/monitoring/v1beta1/fake/fake_monitoring_client.go @@ -17,7 +17,7 @@ package fake import ( - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1" rest "k8s.io/client-go/rest" testing "k8s.io/client-go/testing" ) diff --git a/pkg/client/versioned/typed/monitoring/v1beta1/monitoring_client.go b/pkg/client/versioned/typed/monitoring/v1beta1/monitoring_client.go index 3d1e1d182..47b25672e 100644 --- a/pkg/client/versioned/typed/monitoring/v1beta1/monitoring_client.go +++ b/pkg/client/versioned/typed/monitoring/v1beta1/monitoring_client.go @@ -19,8 +19,8 @@ package v1beta1 import ( "net/http" - v1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" - "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/scheme" + v1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" + "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/scheme" rest "k8s.io/client-go/rest" ) @@ -29,7 +29,7 @@ type MonitoringV1beta1Interface interface { AlertmanagerConfigsGetter } -// MonitoringV1beta1Client is used to interact with features provided by the monitoring.coreos.com group. +// MonitoringV1beta1Client is used to interact with features provided by the monitoring.rhobs group. type MonitoringV1beta1Client struct { restClient rest.Interface } diff --git a/pkg/informers/informers.go b/pkg/informers/informers.go index 736834782..d074bb727 100644 --- a/pkg/informers/informers.go +++ b/pkg/informers/informers.go @@ -26,7 +26,7 @@ import ( "k8s.io/apimachinery/pkg/util/sets" "k8s.io/client-go/tools/cache" - "github.com/prometheus-operator/prometheus-operator/pkg/listwatch" + "github.com/rhobs/obo-prometheus-operator/pkg/listwatch" ) // InformLister is the interface that both exposes a shared index informer diff --git a/pkg/informers/informers_test.go b/pkg/informers/informers_test.go index efd6330df..99fe9d6ff 100644 --- a/pkg/informers/informers_test.go +++ b/pkg/informers/informers_test.go @@ -29,7 +29,7 @@ import ( "k8s.io/apimachinery/pkg/util/sets" "k8s.io/client-go/tools/cache" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) type mockFactory struct { diff --git a/pkg/informers/monitoring.go b/pkg/informers/monitoring.go index 33bc399fb..a100effa9 100644 --- a/pkg/informers/monitoring.go +++ b/pkg/informers/monitoring.go @@ -21,8 +21,8 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/util/sets" - informers "github.com/prometheus-operator/prometheus-operator/pkg/client/informers/externalversions" - monitoring "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" + informers "github.com/rhobs/obo-prometheus-operator/pkg/client/informers/externalversions" + monitoring "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" ) // NewMonitoringInformerFactories creates factories for monitoring resources diff --git a/pkg/k8sutil/k8sutil.go b/pkg/k8sutil/k8sutil.go index 14b903900..6e6ece54e 100644 --- a/pkg/k8sutil/k8sutil.go +++ b/pkg/k8sutil/k8sutil.go @@ -43,9 +43,9 @@ import ( "k8s.io/client-go/tools/clientcmd" "k8s.io/client-go/util/retry" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" ) // KubeConfigEnv (optionally) specify the location of kubeconfig file diff --git a/pkg/listwatch/listwatch.go b/pkg/listwatch/listwatch.go index 3ebb3f19a..cfcc03de3 100644 --- a/pkg/listwatch/listwatch.go +++ b/pkg/listwatch/listwatch.go @@ -37,7 +37,7 @@ import ( corev1 "k8s.io/client-go/kubernetes/typed/core/v1" "k8s.io/client-go/tools/cache" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" ) const ( diff --git a/pkg/namespacelabeler/labeler.go b/pkg/namespacelabeler/labeler.go index c1fb38211..b0cf39312 100644 --- a/pkg/namespacelabeler/labeler.go +++ b/pkg/namespacelabeler/labeler.go @@ -23,7 +23,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // Labeler enables to enforce adding namespace labels to PrometheusRules and to metrics used in them diff --git a/pkg/namespacelabeler/labeler_test.go b/pkg/namespacelabeler/labeler_test.go index 8923781d2..fbbba5743 100644 --- a/pkg/namespacelabeler/labeler_test.go +++ b/pkg/namespacelabeler/labeler_test.go @@ -20,8 +20,8 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func TestEnforceNamespaceLabelOnPrometheusRules(t *testing.T) { @@ -148,7 +148,7 @@ func TestEnforceNamespaceLabelOnPrometheusRules(t *testing.T) { ExcludedFromEnforcement: []monitoringv1.ObjectReference{ { Namespace: "foo", - Group: "monitoring.coreos.com", + Group: "monitoring.rhobs", Resource: monitoringv1.PrometheusRuleName, }, }, diff --git a/pkg/operator/argument.go b/pkg/operator/argument.go index fc75e9b1b..c5d250b73 100644 --- a/pkg/operator/argument.go +++ b/pkg/operator/argument.go @@ -18,7 +18,7 @@ import ( "fmt" "strings" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func intersection(a, b []string) (i []string) { diff --git a/pkg/operator/argument_test.go b/pkg/operator/argument_test.go index 08a31888c..36bca1411 100644 --- a/pkg/operator/argument_test.go +++ b/pkg/operator/argument_test.go @@ -20,7 +20,7 @@ import ( "golang.org/x/exp/slices" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func TestBuildArgs(t *testing.T) { diff --git a/pkg/operator/conditions.go b/pkg/operator/conditions.go index b9ad43c55..c9b3b56f4 100644 --- a/pkg/operator/conditions.go +++ b/pkg/operator/conditions.go @@ -15,7 +15,7 @@ package operator import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // FindStatusCondition returns the condition matching the given type. diff --git a/pkg/operator/config.go b/pkg/operator/config.go index 5113de164..85526e301 100644 --- a/pkg/operator/config.go +++ b/pkg/operator/config.go @@ -25,7 +25,7 @@ import ( "k8s.io/apimachinery/pkg/version" "k8s.io/client-go/rest" - "github.com/prometheus-operator/prometheus-operator/pkg/server" + "github.com/rhobs/obo-prometheus-operator/pkg/server" ) // Config defines configuration parameters for the Operator. diff --git a/pkg/operator/config_reloader_test.go b/pkg/operator/config_reloader_test.go index 583a5afe1..6cafa64c3 100644 --- a/pkg/operator/config_reloader_test.go +++ b/pkg/operator/config_reloader_test.go @@ -29,7 +29,7 @@ var reloaderConfig = ContainerConfig{ CPULimits: Quantity{q: resource.MustParse("100m")}, MemoryRequests: Quantity{q: resource.MustParse("50Mi")}, MemoryLimits: Quantity{q: resource.MustParse("50Mi")}, - Image: "quay.io/prometheus-operator/prometheus-config-reloader:latest", + Image: "quay.io/rhobs/obo-prometheus-config-reloader:latest", } func TestCreateConfigReloaderEnableProbes(t *testing.T) { diff --git a/pkg/operator/config_reloader_test_lib.go b/pkg/operator/config_reloader_test_lib.go index 2aa2e3dd2..13e6a3d78 100644 --- a/pkg/operator/config_reloader_test_lib.go +++ b/pkg/operator/config_reloader_test_lib.go @@ -31,7 +31,7 @@ var ( CPULimits: Quantity{q: resource.MustParse("100m")}, MemoryRequests: Quantity{q: resource.MustParse("50Mi")}, MemoryLimits: Quantity{q: resource.MustParse("50Mi")}, - Image: "quay.io/prometheus-operator/prometheus-config-reloader:latest", + Image: "quay.io/rhobs/obo-prometheus-config-reloader:latest", }, } ) diff --git a/pkg/operator/defaults.go b/pkg/operator/defaults.go index 0d0b552b3..69787141b 100644 --- a/pkg/operator/defaults.go +++ b/pkg/operator/defaults.go @@ -43,7 +43,7 @@ var ( // DefaultPrometheusConfigReloaderImage is an image that will be used as a sidecar to provide dynamic prometheus // configuration reloading - DefaultPrometheusConfigReloaderImage = "quay.io/prometheus-operator/prometheus-config-reloader:v" + version.Version + DefaultPrometheusConfigReloaderImage = "quay.io/rhobs/obo-prometheus-config-reloader:v" + version.Version // PrometheusCompatibilityMatrix is a list of supported prometheus versions. // prometheus-operator end-to-end tests verify that the operator can deploy from LTS n-1 to the latest stable. diff --git a/pkg/operator/operator.go b/pkg/operator/operator.go index 490d14ae1..99de0283d 100644 --- a/pkg/operator/operator.go +++ b/pkg/operator/operator.go @@ -29,7 +29,7 @@ import ( "k8s.io/apimachinery/pkg/watch" "k8s.io/client-go/tools/cache" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) const PrometheusOperatorFieldManager = "PrometheusOperator" @@ -406,7 +406,7 @@ func SanitizeSTS(sts *appsv1.StatefulSet) { // Under normal circumstances, the cache sync should be fast. If it takes more // than 1 minute, it means that something is stuck and the message will // indicate to the admin which informer is the culprit. -// See https://github.com/prometheus-operator/prometheus-operator/issues/3347. +// See https://github.com/rhobs/obo-prometheus-operator/issues/3347. func WaitForNamedCacheSync(ctx context.Context, controllerName string, logger log.Logger, inf cache.SharedIndexInformer) bool { ctx, cancel := context.WithTimeout(ctx, 10*time.Minute) defer cancel() diff --git a/pkg/operator/rules.go b/pkg/operator/rules.go index af77810d7..34c0cd6ea 100644 --- a/pkg/operator/rules.go +++ b/pkg/operator/rules.go @@ -27,10 +27,10 @@ import ( "k8s.io/apimachinery/pkg/labels" "sigs.k8s.io/yaml" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/informers" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - namespacelabeler "github.com/prometheus-operator/prometheus-operator/pkg/namespacelabeler" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/informers" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + namespacelabeler "github.com/rhobs/obo-prometheus-operator/pkg/namespacelabeler" ) type RuleConfigurationFormat int diff --git a/pkg/operator/rules_test.go b/pkg/operator/rules_test.go index 9c9f8a444..3cad9edd4 100644 --- a/pkg/operator/rules_test.go +++ b/pkg/operator/rules_test.go @@ -23,7 +23,7 @@ import ( "github.com/go-kit/log" "k8s.io/apimachinery/pkg/util/intstr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func TestMakeRulesConfigMaps(t *testing.T) { diff --git a/pkg/operator/sharded_secret.go b/pkg/operator/sharded_secret.go index 8de165ee2..901228c75 100644 --- a/pkg/operator/sharded_secret.go +++ b/pkg/operator/sharded_secret.go @@ -24,7 +24,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" corev1 "k8s.io/client-go/kubernetes/typed/core/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" ) // MaxSecretDataSizeBytes is the maximum data size that a single secret shard diff --git a/pkg/operator/statefulset_reporter.go b/pkg/operator/statefulset_reporter.go index 19db7b83b..d0eb0ed3d 100644 --- a/pkg/operator/statefulset_reporter.go +++ b/pkg/operator/statefulset_reporter.go @@ -26,7 +26,7 @@ import ( "k8s.io/client-go/kubernetes" "k8s.io/utils/ptr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) // Pod is an alias for the Kubernetes v1.Pod type. diff --git a/pkg/operator/status.go b/pkg/operator/status.go index 34d2ac6da..8cb8a9ebf 100644 --- a/pkg/operator/status.go +++ b/pkg/operator/status.go @@ -20,7 +20,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) type StatusReconciler interface { diff --git a/pkg/operator/storageclass.go b/pkg/operator/storageclass.go index a2e18e126..51ca2fce3 100644 --- a/pkg/operator/storageclass.go +++ b/pkg/operator/storageclass.go @@ -22,7 +22,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/client-go/kubernetes" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func CheckStorageClass(ctx context.Context, canReadStorageClass bool, kclient kubernetes.Interface, storage *monitoringv1.StorageSpec) error { diff --git a/pkg/operator/types.go b/pkg/operator/types.go index 29dcd6b57..7822c7f48 100644 --- a/pkg/operator/types.go +++ b/pkg/operator/types.go @@ -18,7 +18,7 @@ import ( v1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func MakeVolumeClaimTemplate(e monitoringv1.EmbeddedPersistentVolumeClaim) *v1.PersistentVolumeClaim { diff --git a/pkg/operator/types_test.go b/pkg/operator/types_test.go index 57486454a..a4d9ccda9 100644 --- a/pkg/operator/types_test.go +++ b/pkg/operator/types_test.go @@ -20,7 +20,7 @@ import ( v1 "k8s.io/api/core/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func TestMakeHostAliases(t *testing.T) { diff --git a/pkg/prometheus/agent/operator.go b/pkg/prometheus/agent/operator.go index a10c958c5..daed15322 100644 --- a/pkg/prometheus/agent/operator.go +++ b/pkg/prometheus/agent/operator.go @@ -36,16 +36,16 @@ import ( "k8s.io/client-go/rest" "k8s.io/client-go/tools/cache" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" - monitoringclient "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" - "github.com/prometheus-operator/prometheus-operator/pkg/informers" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/listwatch" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prompkg "github.com/prometheus-operator/prometheus-operator/pkg/prometheus" - "github.com/prometheus-operator/prometheus-operator/pkg/webconfig" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" + monitoringclient "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" + "github.com/rhobs/obo-prometheus-operator/pkg/informers" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/listwatch" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prompkg "github.com/rhobs/obo-prometheus-operator/pkg/prometheus" + "github.com/rhobs/obo-prometheus-operator/pkg/webconfig" ) const ( @@ -307,7 +307,7 @@ func New(ctx context.Context, restConfig *rest.Config, conf operator.Config, log } level.Info(c.logger).Log("msg", "Kubernetes API capabilities", "endpointslices", endpointSliceSupported) // The operator doesn't yet support the endpointslices API. - // See https://github.com/prometheus-operator/prometheus-operator/issues/3862 + // See https://github.com/rhobs/obo-prometheus-operator/issues/3862 // for details. c.endpointSliceSupported = false @@ -758,7 +758,7 @@ func createSSetInputHash(p monitoringv1alpha1.PrometheusAgent, c operator.Config // The controller should ignore any changes to RevisionHistoryLimit field because // it may be modified by external actors. - // See https://github.com/prometheus-operator/prometheus-operator/issues/5712 + // See https://github.com/rhobs/obo-prometheus-operator/issues/5712 ssSpec.RevisionHistoryLimit = nil hash, err := hashstructure.Hash(struct { diff --git a/pkg/prometheus/agent/statefulset.go b/pkg/prometheus/agent/statefulset.go index 7d79eba88..409da269d 100644 --- a/pkg/prometheus/agent/statefulset.go +++ b/pkg/prometheus/agent/statefulset.go @@ -25,12 +25,12 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prompkg "github.com/prometheus-operator/prometheus-operator/pkg/prometheus" - "github.com/prometheus-operator/prometheus-operator/pkg/webconfig" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prompkg "github.com/rhobs/obo-prometheus-operator/pkg/prometheus" + "github.com/rhobs/obo-prometheus-operator/pkg/webconfig" ) const ( diff --git a/pkg/prometheus/agent/statefulset_test.go b/pkg/prometheus/agent/statefulset_test.go index f0d606633..79b450b5e 100644 --- a/pkg/prometheus/agent/statefulset_test.go +++ b/pkg/prometheus/agent/statefulset_test.go @@ -26,10 +26,10 @@ import ( v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/util/intstr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prompkg "github.com/prometheus-operator/prometheus-operator/pkg/prometheus" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prompkg "github.com/rhobs/obo-prometheus-operator/pkg/prometheus" ) var ( diff --git a/pkg/prometheus/applyconfiguration.go b/pkg/prometheus/applyconfiguration.go index a1c3618a6..96ceed12c 100644 --- a/pkg/prometheus/applyconfiguration.go +++ b/pkg/prometheus/applyconfiguration.go @@ -15,10 +15,10 @@ package prometheus import ( - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1ac "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - monitoringv1alpha1ac "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1ac "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1alpha1ac "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1alpha1" ) func ApplyConfigurationFromPrometheusAgent(p *monitoringv1alpha1.PrometheusAgent) *monitoringv1alpha1ac.PrometheusAgentApplyConfiguration { diff --git a/pkg/prometheus/collector.go b/pkg/prometheus/collector.go index 92706dea3..e4f9cf09f 100644 --- a/pkg/prometheus/collector.go +++ b/pkg/prometheus/collector.go @@ -18,7 +18,7 @@ import ( "github.com/prometheus/client_golang/prometheus" "k8s.io/client-go/tools/cache" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) var ( diff --git a/pkg/prometheus/operator.go b/pkg/prometheus/operator.go index f37bcd34b..6ae94b978 100644 --- a/pkg/prometheus/operator.go +++ b/pkg/prometheus/operator.go @@ -29,9 +29,9 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/client-go/kubernetes" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/informers" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/informers" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) var prometheusKeyInShardStatefulSet = regexp.MustCompile("^(.+)/prometheus-(.+)-shard-[1-9][0-9]*$") diff --git a/pkg/prometheus/operator_test.go b/pkg/prometheus/operator_test.go index e0f6a03e5..2330b8a8a 100644 --- a/pkg/prometheus/operator_test.go +++ b/pkg/prometheus/operator_test.go @@ -17,8 +17,8 @@ package prometheus import ( "testing" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) func TestStatefulSetKeyToPrometheusKey(t *testing.T) { diff --git a/pkg/prometheus/promcfg.go b/pkg/prometheus/promcfg.go index d2809f38f..30929e72d 100644 --- a/pkg/prometheus/promcfg.go +++ b/pkg/prometheus/promcfg.go @@ -29,11 +29,11 @@ import ( "gopkg.in/yaml.v2" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" - namespacelabeler "github.com/prometheus-operator/prometheus-operator/pkg/namespacelabeler" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" + namespacelabeler "github.com/rhobs/obo-prometheus-operator/pkg/namespacelabeler" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) const ( diff --git a/pkg/prometheus/promcfg_test.go b/pkg/prometheus/promcfg_test.go index febdc604b..7e80fb4e8 100644 --- a/pkg/prometheus/promcfg_test.go +++ b/pkg/prometheus/promcfg_test.go @@ -33,11 +33,11 @@ import ( "k8s.io/client-go/kubernetes/fake" "k8s.io/utils/ptr" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) func defaultPrometheus() *monitoringv1.Prometheus { diff --git a/pkg/prometheus/resource_selector.go b/pkg/prometheus/resource_selector.go index aa076b224..239076bb2 100644 --- a/pkg/prometheus/resource_selector.go +++ b/pkg/prometheus/resource_selector.go @@ -32,11 +32,11 @@ import ( "k8s.io/apimachinery/pkg/labels" "k8s.io/client-go/tools/cache" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) type ResourceSelector struct { diff --git a/pkg/prometheus/resource_selector_test.go b/pkg/prometheus/resource_selector_test.go index 04c19253a..1b5d04d43 100644 --- a/pkg/prometheus/resource_selector_test.go +++ b/pkg/prometheus/resource_selector_test.go @@ -31,10 +31,10 @@ import ( "k8s.io/client-go/tools/cache" "k8s.io/utils/ptr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) func newLogger() log.Logger { diff --git a/pkg/prometheus/server/operator.go b/pkg/prometheus/server/operator.go index 101e06a3c..2cd400d1c 100644 --- a/pkg/prometheus/server/operator.go +++ b/pkg/prometheus/server/operator.go @@ -36,16 +36,16 @@ import ( "k8s.io/client-go/rest" "k8s.io/client-go/tools/cache" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" - monitoringclient "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" - "github.com/prometheus-operator/prometheus-operator/pkg/informers" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/listwatch" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prompkg "github.com/prometheus-operator/prometheus-operator/pkg/prometheus" - "github.com/prometheus-operator/prometheus-operator/pkg/webconfig" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" + monitoringclient "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" + "github.com/rhobs/obo-prometheus-operator/pkg/informers" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/listwatch" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prompkg "github.com/rhobs/obo-prometheus-operator/pkg/prometheus" + "github.com/rhobs/obo-prometheus-operator/pkg/webconfig" ) const ( @@ -359,7 +359,7 @@ func New(ctx context.Context, restConfig *rest.Config, conf operator.Config, log } level.Info(c.logger).Log("msg", "Kubernetes API capabilities", "endpointslices", endpointSliceSupported) // The operator doesn't yet support the endpointslices API. - // See https://github.com/prometheus-operator/prometheus-operator/issues/3862 + // See https://github.com/rhobs/obo-prometheus-operator/issues/3862 // for details. c.endpointSliceSupported = false @@ -1413,7 +1413,7 @@ func createSSetInputHash(p monitoringv1.Prometheus, c operator.Config, ruleConfi // The controller should ignore any changes to RevisionHistoryLimit field because // it may be modified by external actors. - // See https://github.com/prometheus-operator/prometheus-operator/issues/5712 + // See https://github.com/rhobs/obo-prometheus-operator/issues/5712 ssSpec.RevisionHistoryLimit = nil hash, err := hashstructure.Hash(struct { diff --git a/pkg/prometheus/server/operator_test.go b/pkg/prometheus/server/operator_test.go index 25cc3222f..c5ff65c2c 100644 --- a/pkg/prometheus/server/operator_test.go +++ b/pkg/prometheus/server/operator_test.go @@ -25,8 +25,8 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/utils/ptr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) func TestListOptions(t *testing.T) { diff --git a/pkg/prometheus/server/rules.go b/pkg/prometheus/server/rules.go index 013a0ca8d..228310245 100644 --- a/pkg/prometheus/server/rules.go +++ b/pkg/prometheus/server/rules.go @@ -27,11 +27,11 @@ import ( v1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - namespacelabeler "github.com/prometheus-operator/prometheus-operator/pkg/namespacelabeler" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prompkg "github.com/prometheus-operator/prometheus-operator/pkg/prometheus" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + namespacelabeler "github.com/rhobs/obo-prometheus-operator/pkg/namespacelabeler" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prompkg "github.com/rhobs/obo-prometheus-operator/pkg/prometheus" ) // The maximum `Data` size of a ConfigMap seems to differ between diff --git a/pkg/prometheus/server/rules_test.go b/pkg/prometheus/server/rules_test.go index fd25761f9..c964c71a3 100644 --- a/pkg/prometheus/server/rules_test.go +++ b/pkg/prometheus/server/rules_test.go @@ -20,7 +20,7 @@ import ( v1 "k8s.io/api/core/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func TestMakeRulesConfigMaps(t *testing.T) { diff --git a/pkg/prometheus/server/statefulset.go b/pkg/prometheus/server/statefulset.go index c1e6bbd61..881bd8cc0 100644 --- a/pkg/prometheus/server/statefulset.go +++ b/pkg/prometheus/server/statefulset.go @@ -26,11 +26,11 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prompkg "github.com/prometheus-operator/prometheus-operator/pkg/prometheus" - "github.com/prometheus-operator/prometheus-operator/pkg/webconfig" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prompkg "github.com/rhobs/obo-prometheus-operator/pkg/prometheus" + "github.com/rhobs/obo-prometheus-operator/pkg/webconfig" ) const ( diff --git a/pkg/prometheus/server/statefulset_test.go b/pkg/prometheus/server/statefulset_test.go index 897ecfbac..255af394e 100644 --- a/pkg/prometheus/server/statefulset_test.go +++ b/pkg/prometheus/server/statefulset_test.go @@ -33,9 +33,9 @@ import ( "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/utils/ptr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prompkg "github.com/prometheus-operator/prometheus-operator/pkg/prometheus" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prompkg "github.com/rhobs/obo-prometheus-operator/pkg/prometheus" ) var ( diff --git a/pkg/prometheus/statefulset.go b/pkg/prometheus/statefulset.go index 163437ad2..8c8c5efb5 100644 --- a/pkg/prometheus/statefulset.go +++ b/pkg/prometheus/statefulset.go @@ -27,10 +27,10 @@ import ( "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/utils/ptr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) const ( diff --git a/pkg/prometheus/store.go b/pkg/prometheus/store.go index 347ea19c5..b7978d68f 100644 --- a/pkg/prometheus/store.go +++ b/pkg/prometheus/store.go @@ -18,8 +18,8 @@ import ( "context" "fmt" - monv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/assets" + monv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/assets" ) func AddRemoteWritesToStore(ctx context.Context, store *assets.Store, namespace string, remotes []monv1.RemoteWriteSpec) error { diff --git a/pkg/thanos/collector.go b/pkg/thanos/collector.go index e347b64e9..1c2fd01e2 100644 --- a/pkg/thanos/collector.go +++ b/pkg/thanos/collector.go @@ -18,7 +18,7 @@ import ( "github.com/prometheus/client_golang/prometheus" "k8s.io/client-go/tools/cache" - v1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + v1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) var ( diff --git a/pkg/thanos/operator.go b/pkg/thanos/operator.go index 53570cbb6..250b90f5e 100644 --- a/pkg/thanos/operator.go +++ b/pkg/thanos/operator.go @@ -36,13 +36,13 @@ import ( "k8s.io/client-go/rest" "k8s.io/client-go/tools/cache" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1ac "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" - monitoringclient "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned" - "github.com/prometheus-operator/prometheus-operator/pkg/informers" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/listwatch" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1ac "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringclient "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" + "github.com/rhobs/obo-prometheus-operator/pkg/informers" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/listwatch" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) const ( @@ -703,7 +703,7 @@ func createSSetInputHash(tr monitoringv1.ThanosRuler, c Config, ruleConfigMapNam // The controller should ignore any changes to RevisionHistoryLimit field because // it may be modified by external actors. - // See https://github.com/prometheus-operator/prometheus-operator/issues/5712 + // See https://github.com/rhobs/obo-prometheus-operator/issues/5712 ss.RevisionHistoryLimit = nil hash, err := hashstructure.Hash(struct { diff --git a/pkg/thanos/rules.go b/pkg/thanos/rules.go index 0bb0b0910..35ee1fff1 100644 --- a/pkg/thanos/rules.go +++ b/pkg/thanos/rules.go @@ -27,10 +27,10 @@ import ( v1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - namespacelabeler "github.com/prometheus-operator/prometheus-operator/pkg/namespacelabeler" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + namespacelabeler "github.com/rhobs/obo-prometheus-operator/pkg/namespacelabeler" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) const labelThanosRulerName = "thanos-ruler-name" diff --git a/pkg/thanos/statefulset.go b/pkg/thanos/statefulset.go index c937587b9..a3eed1aa3 100644 --- a/pkg/thanos/statefulset.go +++ b/pkg/thanos/statefulset.go @@ -28,9 +28,9 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) const ( diff --git a/pkg/thanos/statefulset_test.go b/pkg/thanos/statefulset_test.go index 10a2e04c7..a3e73dae0 100644 --- a/pkg/thanos/statefulset_test.go +++ b/pkg/thanos/statefulset_test.go @@ -26,8 +26,8 @@ import ( v1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" ) const ( diff --git a/pkg/versionutil/cli_test.go b/pkg/versionutil/cli_test.go index 6761aac60..320ff7aac 100644 --- a/pkg/versionutil/cli_test.go +++ b/pkg/versionutil/cli_test.go @@ -25,7 +25,7 @@ import ( "github.com/prometheus/common/version" "github.com/stretchr/testify/assert" - "github.com/prometheus-operator/prometheus-operator/pkg/versionutil" + "github.com/rhobs/obo-prometheus-operator/pkg/versionutil" ) func TestShouldPrintVersion(t *testing.T) { diff --git a/pkg/webconfig/config.go b/pkg/webconfig/config.go index 636c8aa1a..e491556ba 100644 --- a/pkg/webconfig/config.go +++ b/pkg/webconfig/config.go @@ -25,8 +25,8 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" clientv1 "k8s.io/client-go/kubernetes/typed/core/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" ) var ( diff --git a/pkg/webconfig/config_test.go b/pkg/webconfig/config_test.go index e1145aa60..7260d7eec 100644 --- a/pkg/webconfig/config_test.go +++ b/pkg/webconfig/config_test.go @@ -25,8 +25,8 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/client-go/kubernetes/fake" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/webconfig" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/webconfig" ) var falseVal = false diff --git a/pkg/webconfig/tls_credentials.go b/pkg/webconfig/tls_credentials.go index 5eb2c5a0a..2eab3435b 100644 --- a/pkg/webconfig/tls_credentials.go +++ b/pkg/webconfig/tls_credentials.go @@ -20,8 +20,8 @@ import ( corev1 "k8s.io/api/core/v1" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" ) const ( @@ -129,8 +129,8 @@ func (a tlsCredentials) mountParamsForSecret( // // References: // * https://kubernetes.io/docs/concepts/configuration/secret/#using-secrets-as-files-from-a-pod - // * https://github.com/prometheus-operator/prometheus-operator/issues/5527 - // * https://github.com/prometheus-operator/prometheus-operator/pull/5535#discussion_r1194940482 + // * https://github.com/rhobs/obo-prometheus-operator/issues/5527 + // * https://github.com/rhobs/obo-prometheus-operator/pull/5535#discussion_r1194940482 mounts = append(mounts, corev1.VolumeMount{ Name: volumeName, ReadOnly: true, @@ -170,8 +170,8 @@ func (a tlsCredentials) mountParamsForConfigmap( // // References: // * https://kubernetes.io/docs/concepts/configuration/secret/#using-secrets-as-files-from-a-pod - // * https://github.com/prometheus-operator/prometheus-operator/issues/5527 - // * https://github.com/prometheus-operator/prometheus-operator/pull/5535#discussion_r1194940482 + // * https://github.com/rhobs/obo-prometheus-operator/issues/5527 + // * https://github.com/rhobs/obo-prometheus-operator/pull/5535#discussion_r1194940482 mounts = append(mounts, corev1.VolumeMount{ Name: volumeName, ReadOnly: true, diff --git a/rhobs/README.md b/rhobs/README.md new file mode 100644 index 000000000..ab141d25b --- /dev/null +++ b/rhobs/README.md @@ -0,0 +1,77 @@ +# RHOBS Scripts + +This directory hosts scripts that helps with creation of forked Prometheus +Operator with only differs from the [upstream +repository](https://github.com/prometheus-operator/prometheus-operator) by the +API Group being `monitoring.rhobs` instead of `monitoring.coreos.com`. + +## Making a Release + +In this example we have our local Git repository setup with 3 remotes. Note +that the `make-release-commit.sh` script assumes the following remote names to +be present. + + 1. `upstream` -> `github.com/prometheus-operator/prometheus-operator` + 2. `downstream` -> `github.com/rhobs/obo-prometheus-operator` + 3. `origin `-> `github.com//obo-prometheus-operator` + +### Create New Release Branch + +We start by pushing an already released version of upstream prometheus-operator +to our `downstream` fork (under the [rhobs](https://github.com/rhobs) +organization). Note that the downstream release branches follow a nomenclature +which is different to upstream so that the upstream github worflows don't +trigger accidently. + +The naming convention used is `rhobs-rel--rhobs` + +In this example, we are making a downstream release of `v0.60.0`. Start by +creating a release branch as follows: + +```bash +export UPSTREAM_VERSION=0.60.0 +export CURRENT_DOWNSTREAM_VERSION=0.59.2-rhobs1 +git fetch upstream --tags +git push downstream "+v${UPSTREAM_VERSION}^{commit}:refs/heads/rhobs-rel-${UPSTREAM_VERSION}-rhobs1" +``` + +### Make Release Commit + +Start by creating a local branch for the release (e.g. `pr-for-release`) and reseting it to +the upstream release version/tag. + +```bash +git checkout -b pr-for-release +git reset --hard "v${UPSTREAM_VERSION}" +``` + +Merge the `rhobs-scripts` branch, squashing all its commits into one. + +```bash +git merge --squash --allow-unrelated-histories downstream/rhobs-scripts +git commit -m "git: merge rhobs-scripts" +``` + +Run the `make-release-commit.sh` script which creates a Git commit that +contains all changes required to create the forked prometheus operator for +Observabilty Operator (ObO). The `make-release-commit.sh` takes a mandatory +argument `--previous-version` which should point to the last stable release of +the fork. This stable version is used in `e2e` tests that are run in CI which +validates if the newer version is upgradable from the `previous-version` + +```bash +./rhobs/make-release-commit.sh --previous-version ${CURRENT_DOWNSTREAM_VERSION} +git push -u origin HEAD +``` + +### Create Pull Request + +Create a pull request against the `rhobs-rel-0.60.0-rhobs1` branch and ensure +that the title says `chore(release): v${UPSTREAM_VERSION}-rhobs1`. This is +important since the rhobs-release (GitHub) workflow makes release if and only +if the commit message starts with `chore(release)`. + +### Automatic release once the PR merges + +Check `.github/workflows/rhobs-release.yaml` for details of how the release is +made. diff --git a/rhobs/make-release-commit.sh b/rhobs/make-release-commit.sh new file mode 100755 index 000000000..797314644 --- /dev/null +++ b/rhobs/make-release-commit.sh @@ -0,0 +1,457 @@ +#!/usr/bin/env bash +set -e -u -o pipefail + +PROJECT_ROOT="$(git rev-parse --show-toplevel)" +declare -r PROJECT_ROOT +declare -r IMG_REPO="quay.io/rhobs" +declare -r IMG_PREFIX="obo-" + +# config vars +declare SHOW_USAGE=false +declare IGNORE_REPO_STATE=false +declare RUN_MAKE_CHECKS=true +declare PREVIOUS_VERSION="" + +# NOTE: this var is computed in `bumpup_version` +declare RHOBS_VERSION="" + +header() { + echo -e "\n 🔆 $*" + echo -e "─────────────────────────────────────────────────────\n" +} + +info() { + echo " 🔔 $*" +} + +ok() { + echo " ✔ $*" +} + +warn() { + echo " ⚠️ $*" +} + +die() { + echo -e "\n ✋ $* " + echo -e "──────────────────── ⛔️⛔️⛔️ ────────────────────────\n" + exit 1 +} + +# bumps up VERSION file to -rhobs +# e.g. upstream 1.2.3 will be bumped to 1.2.3-rhobs1 +# and if git tag 1.2.3-rhobs1 already exists, it will be bumped to 1.2.3-rhobs2 +bumpup_version() { + # get all tags with + header "Bumping up the version" + + git fetch downstream --tags + + local version + version="$(head -n1 VERSION)" + + # remove any trailing rhobs + local upstream_version="${version//-rhobs*/}" + echo "found upstream version: $upstream_version" + + local patch + # git tag | grep "^v$upstream_version-rhobs" | wc -l + # NOTE: grep || true prevents grep from setting non-zero exit code + # if there are no -rhobs tag + + patch="$(git tag | { grep "^v$upstream_version-rhobs" || true; } | wc -l)" + ((patch += 1)) + + local rhobs_version="$upstream_version-rhobs$patch" + + echo "Updating version to $rhobs_version" + echo "$rhobs_version" >VERSION + + ok "version set to $rhobs_version" +} + +generate_stripped_down_crds() { + header "Generating stripped-down CRDs" + + mkdir -p example/stripped-down-crds + make stripped-down-crds.yaml + mv stripped-down-crds.yaml example/stripped-down-crds/all.yaml +} + +change_api_group() { + header "Changing api group to monitoring.rhobs" + + rm -f example/prometheus-operator-crd-full/monitoring.coreos.com* + rm -f example/prometheus-operator-crd/monitoring.coreos.com* + + # NOTE: find command changes + # * kubebuilder group to monitoring.rhobs + # * the category to rhobs-prometheus-operator + # * removes all shortnames + + find \( -path "./.git" \ + -o -path "./Documentation" \ + -o -path "./rhobs" \) -prune -o \ + -type f -exec \ + sed -i \ + -e 's|monitoring.coreos.com|monitoring.rhobs|g' \ + -e 's|+kubebuilder:resource:categories="prometheus-operator".*|+kubebuilder:resource:categories="rhobs-prometheus-operator"|g' \ + -e 's|github.com/prometheus-operator/prometheus-operator|github.com/rhobs/obo-prometheus-operator|g' \ + {} \; + + # replace only the api group in docs and not the links + find ./Documentation \ + -type f -exec \ + sed -i -e 's|monitoring.coreos.com|monitoring.rhobs|g' \ + {} \; + + sed -e 's|monitoring\\.coreos\\.com|monitoring\\.rhobs|g' -i .mdox.validate.yaml + + ok "Changed api group to monitoring.rhobs" + + change_go_mod +} + +# fix version of downstream imports in go.mod files +# e.g. replace +# require ( +# github.com/rhobs/obo-prometheus-operator v0.64.0 +# github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.64.0 +# github.com/rhobs/obo-prometheus-operator/pkg/client v0.64.0 +# ) +# with +# require ( +# github.com/rhobs/obo-prometheus-operator v0.64.0-rhobs1 +# github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.64.0-rhobs1 +# github.com/rhobs/obo-prometheus-operator/pkg/client v0.64.0-rhobs1 +# ) +change_go_mod() { + + header "Updating go.mod files to require obo-prometheus-operator version $RHOBS_VERSION" + + # remove trailing rhobs + local upstream_version="v${RHOBS_VERSION//-rhobs*/}" + local rhobs_version="v${RHOBS_VERSION}" + + # fix import paths + # NOTE: this step is run after running change_api_group which already changes + # github.com/prometheus-operator to github.com/rhobs + find \( -path "./.git" \ + -o -path "./Documentation" \ + -o -path "./rhobs" \) -prune -o \ + -type f -name go.mod -exec \ + sed -i \ + -e "s|github.com/rhobs/obo-prometheus-operator ${upstream_version}$|github.com/rhobs/obo-prometheus-operator ${rhobs_version}|g" \ + -e "s|github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring ${upstream_version}$|github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring ${rhobs_version}|g" \ + -e "s|github.com/rhobs/obo-prometheus-operator/pkg/client ${upstream_version}$|github.com/rhobs/obo-prometheus-operator/pkg/client ${rhobs_version}|g" \ + {} \; + + # tidy up + find \( -path "./.git" \ + -o -path "./Documentation" \ + -o -path "./rhobs" \) -prune -o \ + -type f -name go.mod -execdir go mod tidy \; || { + warn "go mod tidy failed" + return 1 + } + + # update import test case go.mod + ( + cd rhobs/test/import + go mod edit -require github.com/rhobs/obo-prometheus-operator@"${rhobs_version}" + go mod edit -require github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring@"${rhobs_version}" + go mod edit -require github.com/rhobs/obo-prometheus-operator/pkg/client@"${rhobs_version}" + ) + + ok "go.mod files updated" + + return 0 +} + +change_container_image_repo() { + local to_repo="$1" + shift + + header "Changing container repo from quay.io/prometheus -> $to_repo" + + find \( -path "./.git" \ + -o -path "./Documentation" \ + -o -path "./rhobs" \) -prune -o \ + -type f -exec sed -i \ + -e "s|quay.io/prometheus-operator/|${to_repo}|g" \ + {} \; + + # reset reference to alert manager webhook test images used in tests + # back to use prometheus-images itself + + info "reset images used for testing" + + find ./test -type f -exec sed -i \ + -e "s|${to_repo}prometheus-alertmanager-test-webhook|quay.io/prometheus-operator/prometheus-alertmanager-test-webhook|g" \ + -e "s|${to_repo}instrumented-sample-app|quay.io/prometheus-operator/instrumented-sample-app|g" \ + {} \; + + ok "Changed container repo to $to_repo" + +} + +remove_upstream_release_workflows() { + header "Removing upstream only release workflows" + + git rm -f .github/workflows/release.yaml \ + .github/workflows/stale.yaml \ + .github/workflows/publish.yaml +} + +validate_git_repos() { + header "Validating git remotes" + + local num_remotes + num_remotes=$(git remote | wc -l) + + local failed=false + + [[ "$num_remotes" -ge 3 ]] || { + warn "expected to find more than 3 remotes but found only $num_remotes" + failed=true + } + + assert_repo_url upstream "prometheus-operator/prometheus-operator" || ((fails++)) + assert_repo_url downstream "rhobs/obo-prometheus-operator" || ((fails++)) + + local rhobs_rel_branch="rhobs-rel-${PREVIOUS_VERSION}" + + git ls-remote --exit-code --heads downstream "$rhobs_rel_branch" || { + warn "invalid previous release version - $PREVIOUS_VERSION " + failed=true + } + + if $failed; then + return 1 + fi + + ok "git remotes looks fine" + ok "$PREVIOUS_VERSION exists" + + return 0 +} + +validate_args() { + header "Validating args ..." + + [[ "$PREVIOUS_VERSION" == "" ]] && { + warn "wrong usage: must pass --previous-version " + return 1 + } + return 0 +} + +validate_repo_state() { + $IGNORE_REPO_STATE && { + info "skipping validation of repo state" + return 0 + } + + [[ -z "$(git status --porcelain)" ]] || { + warn "git: repo has local changes; ensure git status is clean" + return 1 + } + + ok "Repo state looks fine" + return 0 +} + +print_usage() { + local app + app="$(basename "$0")" + + read -r -d '' help <<-EOF_HELP || true + Usage: + $app --previous-version VERSION + $app -h|--help + + Example: + # To upgrade from 0.59.2-rhobs1 version to 0.60.0, run + ❯ $app --previous-version 0.59.2-rhobs1 + + Options: + -h|--help show this help + --no-check skip make checks + --ignore-repo-state run script even if the local repo's state isn't clean + +EOF_HELP + + echo -e "$help" + return 0 +} + +validate() { + local failed=false + + validate_args || failed=true + validate_git_repos || failed=true + validate_repo_state || failed=true + + if $failed; then + return 1 + fi + return 0 +} + +make_required_targets() { + header "Running format and generate" + make --always-make format generate + make --always-make docs +} + +git_release_commit() { + + header "Adding release commit" + + git add . + + local version + version="$(head -n1 VERSION)" + + git commit -s -F- <<-EOF_COMMIT_MSG + chore(release): v${version} + + NOTE: This commit was auto-generated by + running rhobs/$(basename "$0") script +EOF_COMMIT_MSG + +} + +run_checks() { + header "Running checks" + if ! $RUN_MAKE_CHECKS; then + warn "Skipping make checks" + return 0 + fi + + make check-docs check-golang check-license check-metrics + make test-unit +} + +parse_args() { + ### while there are args parse them + while [[ -n "${1+xxx}" ]]; do + case $1 in + -h | --help) + SHOW_USAGE=true + break + ;; # exit the loop + --no-checks) + RUN_MAKE_CHECKS=false + shift + ;; + --ignore-repo-state) + IGNORE_REPO_STATE=true + shift + ;; + --previous-version) + shift + # only accept the args match VERSION format + if [[ -n "${1+xxx}" ]] && [[ "$1" =~ [0-9]+.*-rhobs[0-9].* ]]; then + PREVIOUS_VERSION="$1" + shift + fi + ;; + *) + warn "unknown arg $1" + return 1 + ;; + esac + done + + return 0 +} + +assert_repo_url() { + local remote="$1" + shift + local expected_url="$1" + shift + + local actual_url + actual_url=$(git remote get-url "$remote") + + [[ "$actual_url" =~ $expected_url ]] || { + warn "git remote '$remote' must point to $expected_url instead of $actual_url" + return 1 + } + + return 0 +} + +change_po_gh_urls() { + local rhobs_rel_branch="rhobs-rel-${PREVIOUS_VERSION}" + local prev_release_git_branch="https://raw.githubusercontent.com/rhobs/obo-prometheus-operator/${rhobs_rel_branch}" + local prev_stable_version="${prev_release_git_branch}/VERSION" + local prev_example_dir="${prev_release_git_branch}/example" + local prev_resource_dir="${prev_release_git_branch}/test/framework/resources" + + sed \ + -e "s|\(prometheusOperatorGithubBranchURL := .*$\)|// \1|g" \ + -e "s|prevStableVersionURL := .*|prevStableVersionURL := \"${prev_stable_version}\"|g" \ + -e "s|prevExampleDir := .*|prevExampleDir := \"${prev_example_dir}\"|g" \ + -e "s|prevResourcesDir := .*|prevResourcesDir := \"${prev_resource_dir}\"|g" \ + -i test/e2e/main_test.go +} + +make_olm_bundle() { + local image_repo="$1" + shift + # + ( + cd rhobs/olm + make tools + rm -rf bundle && make bundle IMAGE_REPO="$image_repo" + ) +} + +hack_reset_changelog() { + # HACK: Change logs refer to upstream repo links which aren't copied to the + # downstream repo and mdox validation can often fail hence, + # reset CHANGELOG.md so that mdox is happy + git checkout -- CHANGELOG.md +} + +main() { + # all files references must be relative to the root of the project + cd "$PROJECT_ROOT" + + parse_args "$@" || { + print_usage + exit 1 + } + + if $SHOW_USAGE; then + print_usage + return 0 + fi + + validate || { + die "Please fix failures ☝️ (indicated by ⚠️ ) and run the script again " + } + + bumpup_version + RHOBS_VERSION="$(head -n1 VERSION)" + + change_po_gh_urls + change_api_group || { + die "Please fix failures ☝️ (indicated by ⚠️ ) and run the script again " + } + change_container_image_repo "$IMG_REPO/$IMG_PREFIX" + hack_reset_changelog + make_required_targets + generate_stripped_down_crds + remove_upstream_release_workflows + make_olm_bundle "$IMG_REPO" + git_release_commit + run_checks + + git diff --shortstat --exit-code +} + +main "$@" diff --git a/rhobs/olm/.gitignore b/rhobs/olm/.gitignore new file mode 100644 index 000000000..90c978b36 --- /dev/null +++ b/rhobs/olm/.gitignore @@ -0,0 +1 @@ +example/ diff --git a/rhobs/olm/Makefile b/rhobs/olm/Makefile new file mode 100644 index 000000000..dda46a0ce --- /dev/null +++ b/rhobs/olm/Makefile @@ -0,0 +1,204 @@ +SHELL=/usr/bin/env bash -o pipefail + +PRJ_DIR = $(shell git rev-parse --show-toplevel) +OLM_DIR = $(PRJ_DIR)/rhobs/olm + +CONTAINER_RUNTIME := $(shell command -v podman 2> /dev/null || echo docker) + +IMAGE_REPO ?= "local-registry" +# IMAGE_BASE defines the registry/namespace and part of the image name +# This variable is used to construct full image tags for bundle and catalog images. +IMAGE_BASE = $(IMAGE_REPO)/obo + +VERSION ?= $(shell cat $(PRJ_DIR)/VERSION) +RELEASE_SHA ?= $(shell git rev-parse downstream/main) +OPERATOR_IMG = $(IMAGE_BASE)-prometheus-operator:v$(VERSION) +CONFIG_RELOADER_IMG = $(IMAGE_BASE)-prometheus-config-reloader:v$(VERSION) +ADMISSION_WEBHOOK_IMG = $(IMAGE_BASE)-admission-webhook:v$(VERSION) +OPERATOR_NAME = rhobs-prometheus-operator + +# tools +TOOLS_DIR = $(PRJ_DIR)/tmp/bin + +KUSTOMIZE=$(TOOLS_DIR)/kustomize +KUSTOMIZE_VERSION= v5.0.1 + +OPERATOR_SDK = $(TOOLS_DIR)/operator-sdk +OPERATOR_SDK_VERSION = v1.28.1 + +OPM=$(TOOLS_DIR)/opm +OPM_VERSION = v1.26.5 + +$(TOOLS_DIR): + @mkdir -p $(TOOLS_DIR) + +.PHONY: kustomize +$(KUSTOMIZE) kustomize: $(TOOLS_DIR) + @{ \ + set -ex ;\ + [[ -f $(KUSTOMIZE) ]] && exit 0 ;\ + GOBIN=$(TOOLS_DIR) go install sigs.k8s.io/kustomize/kustomize/v5@$(KUSTOMIZE_VERSION) ;\ + } + +.PHONY: operator-sdk +$(OPERATOR_SDK) operator-sdk: $(TOOLS_DIR) + @{ \ + set -ex ;\ + [[ -f $(OPERATOR_SDK) ]] && \ + [[ "$$( $(OPERATOR_SDK) version | awk '{print $$3}' | tr -d ,)" == \"$(OPERATOR_SDK_VERSION)\" ]] && { \ + echo "operator-sdk up to date" ;\ + exit 0 ;\ + } ;\ + OS=$(shell go env GOOS) && ARCH=$(shell go env GOARCH) && \ + curl -sSLo $(OPERATOR_SDK) https://github.com/operator-framework/operator-sdk/releases/download/$(OPERATOR_SDK_VERSION)/operator-sdk_$${OS}_$${ARCH} ;\ + chmod +x $(OPERATOR_SDK) ;\ + } + +.PHONY: opm +$(OPM) opm: $(TOOLS_DIR) + @{ \ + [[ -f $(OPM) ]] && exit 0 ;\ + set -ex ;\ + OS=$(shell go env GOOS) && ARCH=$(shell go env GOARCH) && \ + curl -sSLo $(OPM) https://github.com/operator-framework/operator-registry/releases/download/$(OPM_VERSION)/$${OS}-$${ARCH}-opm ;\ + chmod +x $(OPM) ;\ + } + +tools: kustomize operator-sdk opm + + +## OLM - Bundle + +# BUNDLE_IMG defines the image:tag used for the bundle. +# You can use it as an arg. (E.g make bundle-build BUNDLE_IMG=/:) +BUNDLE_IMG ?= $(IMAGE_BASE)-prometheus-operator-bundle:v$(VERSION) + +# CHANNELS define the bundle channels used in the bundle. +# To re-generate a bundle for other specific channels without changing the standard setup, you can: +# - use the CHANNELS as arg of the bundle target (e.g make bundle CHANNELS=candidate,fast,stable) +# - use environment variables to overwrite this value (e.g export CHANNELS="candidate,fast,stable") +CHANNELS ?= stable +ifneq ($(origin CHANNELS), undefined) +BUNDLE_CHANNELS := --channels=$(CHANNELS) +endif + +# DEFAULT_CHANNEL defines the default channel used in the bundle. +# To re-generate a bundle for any other default channel without changing the default setup, use: +# - DEFAULT_CHANNEL as arg of the bundle target (e.g make bundle DEFAULT_CHANNEL=stable) +# - environment variables to overwrite this value (e.g export DEFAULT_CHANNEL="stable") +DEFAULT_CHANNEL ?= stable + +ifneq ($(origin DEFAULT_CHANNEL), undefined) +BUNDLE_DEFAULT_CHANNEL := --default-channel=$(DEFAULT_CHANNEL) +endif +BUNDLE_METADATA_OPTS ?= $(BUNDLE_CHANNELS) $(BUNDLE_DEFAULT_CHANNEL) + + +# copy-examples copies examples required to create the olm bundle to +# appropriate component's dir +copy-examples: + @{ \ + set -x ;\ + mkdir -p \ + $(OLM_DIR)/manifests/operator/example \ + $(OLM_DIR)/manifests/admission-webhook/example \ + $(OLM_DIR)/manifests/crds/example ;\ + \ + cp -r $(PRJ_DIR)/example/stripped-down-crds/ $(OLM_DIR)/manifests/crds/example/ ;\ + cp -r $(PRJ_DIR)/example/rbac/ $(OLM_DIR)/manifests/operator/example/ ;\ + cp -r $(PRJ_DIR)/example/admission-webhook/ $(OLM_DIR)/manifests/admission-webhook/example/ ;\ + } + +clean-examples: + @{ \ + set -x ;\ + cd $(OLM_DIR) ;\ + rm -rf \ + $(PRJ_DIR)/manifests/operator/example \ + $(PRJ_DIR)/manifests/admission-webhook/example \ + $(PRJ_DIR)/manifests/crds/example ;\ + } + +.PHONY: bundle +bundle: copy-examples + @{ \ + set -x ;\ + cd $(OLM_DIR) ;\ + \ + $(KUSTOMIZE) build manifests | \ + sed \ + -e "s||$(OPERATOR_IMG)|g" \ + -e "s||$(CONFIG_RELOADER_IMG)|g" \ + -e "s||$(ADMISSION_WEBHOOK_IMG)|g" | \ + tee $(PRJ_DIR)/tmp/pre-bundle.yaml | \ + $(OPERATOR_SDK) generate bundle \ + --overwrite \ + --version $(VERSION) \ + --package=$(OPERATOR_NAME) \ + $(BUNDLE_METADATA_OPTS) ;\ + \ + $(OPERATOR_SDK) bundle validate ./bundle ;\ + } + +.PHONY: bundle-image +bundle-image: bundle ## Build the bundle image. + $(CONTAINER_RUNTIME) build -f $(OLM_DIR)/bundle.Dockerfile -t $(BUNDLE_IMG) . + +.PHONY: bundle-push +bundle-push: ## Build the bundle image. + $(CONTAINER_RUNTIME) push $(PUSH_OPTIONS) $(BUNDLE_IMG) + +# Catalog + +OPERATOR_BUNDLE=$(OPERATOR_NAME).v$(VERSION) + +# The image tag given to the resulting catalog image +CATALOG_IMG_BASE ?= $(IMAGE_BASE)-prometheus-operator-catalog +CATALOG_IMG ?= $(CATALOG_IMG_BASE):v$(VERSION) + +# The tag is used as latest since it allows a CatalogSubscription to point to +# a single image which keeps updating there by allowing auto upgrades +CATALOG_IMG_LATEST ?= $(CATALOG_IMG_BASE):latest +CATALOG_INDEX_DIR = $(OLM_DIR)/catalog/config +CATALOG_INDEX_FILE = $(CATALOG_INDEX_DIR)/index.yaml +CATALOG_INDEX_CONTAINER_FILE = $(OLM_DIR)/catalog/index.Dockerfile + +# Build a catalog image by adding bundle images to an empty catalog using the +# operator package manager tool, 'opm'. +.PHONY: catalog-image +catalog-image: $(OPM) + # add bundle to catalog index only if it doesn't exist + grep -q $(BUNDLE_IMG) $(CATALOG_INDEX_FILE) || { \ + $(OPM) render $(BUNDLE_IMG) --output=yaml >> $(CATALOG_INDEX_FILE) ;\ + ./catalog/update-channels.sh $(CATALOG_INDEX_FILE) $(CHANNELS) $(OPERATOR_BUNDLE) ;\ + } + $(OPM) validate $(CATALOG_INDEX_DIR) + + $(CONTAINER_RUNTIME) build \ + -f $(CATALOG_INDEX_CONTAINER_FILE) -t $(CATALOG_IMG) + + # tag the catalog img:version as latest so that continious release + # is possible by refering to latest tag instead of a version + $(CONTAINER_RUNTIME) tag $(CATALOG_IMG) $(CATALOG_IMG_LATEST) + +# NOTE: This is required to enable continuous deployment to +# staging/integration environments via app-interface (OSD-13603) +# +# The git short-hash of the most recent commit in the main branch. +# This will be used to associate the catalog image with the operator code that +# was used to build the imate. +CATALOG_IMG_SHA = $(CATALOG_IMG_BASE):$(shell git rev-parse --short=8 $(RELEASE_SHA)) + +# NOTE: This target ensures that the catalog image points to the +# commit in the main branch that was used to build the catalog image +# In a prior version we used the commit on the olm-catalog branch to tag this. +.PHONY: catalog-tag-sha +catalog-tag-sha: ## Push a catalog image. + $(CONTAINER_RUNTIME) tag $(CATALOG_IMG) $(CATALOG_IMG_SHA) + +# Push the catalog image. +.PHONY: catalog-push +catalog-push: catalog-tag-sha ## Push a catalog image. + $(CONTAINER_RUNTIME) push $(PUSH_OPTIONS) $(CATALOG_IMG) + $(CONTAINER_RUNTIME) push $(PUSH_OPTIONS) $(CATALOG_IMG_LATEST) + $(CONTAINER_RUNTIME) push $(PUSH_OPTIONS) $(CATALOG_IMG_SHA) diff --git a/rhobs/olm/README.md b/rhobs/olm/README.md new file mode 100644 index 000000000..e4eed91eb --- /dev/null +++ b/rhobs/olm/README.md @@ -0,0 +1,39 @@ +# Explanation of olm dir + + +``` +├── bundle # bundle and its subdir is generated from make bundle +├── catalog # contains all files to build olm catalog +│ └── config config contains the catalog index.yaml file +│ +├── manifests # manifests is the source for building bundle +│ │ # it is split into subdirs which contains each of the PO's +│ │ # components - admission-webhook, operator +│ │ +│ ├── admission-webhook +│ │ ├── additional +│ │ │ +│ │ │ # example directory is a copy of the example from PO, that is used +│ │ │ # to build the component - admission-webhook in this case +│ │ └── example +│ │ └── admission-webhook +│ │ +│ ├── crds +│ │ └── example +│ │ └── stripped-down-crds +│ │ +│ ├── csv # contains the base rhobs-prometheus-operator CSV +│ │ +│ ├── operator # the operator component +│ │ └── example +│ │ └── rbac +│ │ ├── prometheus +│ │ ├── prometheus-operator +│ │ └── prometheus-operator-crd +│ └── scorecard +│ ├── bases +│ └── patches +│ +└── subscription # contains olm subscription and catalog-source yaml +``` + diff --git a/rhobs/olm/bundle.Dockerfile b/rhobs/olm/bundle.Dockerfile new file mode 100644 index 000000000..ddb3485ac --- /dev/null +++ b/rhobs/olm/bundle.Dockerfile @@ -0,0 +1,21 @@ +FROM scratch + +# Core bundle labels. +LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1 +LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/ +LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/ +LABEL operators.operatorframework.io.bundle.package.v1=rhobs-prometheus-operator +LABEL operators.operatorframework.io.bundle.channels.v1=stable +LABEL operators.operatorframework.io.bundle.channel.default.v1=stable +LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.28.1 +LABEL operators.operatorframework.io.metrics.mediatype.v1=metrics+v1 +LABEL operators.operatorframework.io.metrics.project_layout=unknown + +# Labels for testing. +LABEL operators.operatorframework.io.test.mediatype.v1=scorecard+v1 +LABEL operators.operatorframework.io.test.config.v1=tests/scorecard/ + +# Copy files to locations specified by labels. +COPY bundle/manifests /manifests/ +COPY bundle/metadata /metadata/ +COPY bundle/tests/scorecard /tests/scorecard/ diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_alertmanagerconfigs.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_alertmanagerconfigs.yaml new file mode 100644 index 000000000..b91979b06 --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_alertmanagerconfigs.yaml @@ -0,0 +1,3211 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: alertmanagerconfigs.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: AlertmanagerConfig + listKind: AlertmanagerConfigList + plural: alertmanagerconfigs + singular: alertmanagerconfig + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + inhibitRules: + items: + properties: + equal: + items: + type: string + type: array + sourceMatch: + items: + properties: + matchType: + enum: + - '!=' + - = + - =~ + - '!~' + type: string + name: + minLength: 1 + type: string + regex: + type: boolean + value: + type: string + required: + - name + type: object + type: array + targetMatch: + items: + properties: + matchType: + enum: + - '!=' + - = + - =~ + - '!~' + type: string + name: + minLength: 1 + type: string + regex: + type: boolean + value: + type: string + required: + - name + type: object + type: array + type: object + type: array + muteTimeIntervals: + items: + properties: + name: + type: string + timeIntervals: + items: + properties: + daysOfMonth: + items: + properties: + end: + maximum: 31 + minimum: -31 + type: integer + start: + maximum: 31 + minimum: -31 + type: integer + type: object + type: array + months: + items: + 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: + items: + properties: + endTime: + pattern: ^((([01][0-9])|(2[0-3])):[0-5][0-9])$|(^24:00$) + type: string + startTime: + pattern: ^((([01][0-9])|(2[0-3])):[0-5][0-9])$|(^24:00$) + type: string + type: object + type: array + weekdays: + items: + pattern: ^((?i)sun|mon|tues|wednes|thurs|fri|satur)day(?:((:(sun|mon|tues|wednes|thurs|fri|satur)day)$)|$) + type: string + type: array + years: + items: + pattern: ^2\d{3}(?::2\d{3}|$) + type: string + type: array + type: object + type: array + type: object + type: array + receivers: + items: + properties: + discordConfigs: + items: + properties: + apiURL: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + sendResolved: + type: boolean + title: + type: string + required: + - apiURL + type: object + type: array + emailConfigs: + items: + properties: + authIdentity: + type: string + authPassword: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + authSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + authUsername: + type: string + from: + type: string + headers: + items: + properties: + key: + minLength: 1 + type: string + value: + type: string + required: + - key + - value + type: object + type: array + hello: + type: string + html: + type: string + requireTLS: + type: boolean + sendResolved: + type: boolean + smarthost: + type: string + text: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + to: + type: string + type: object + type: array + msteamsConfigs: + items: + properties: + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + sendResolved: + type: boolean + text: + type: string + title: + type: string + webhookUrl: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + required: + - webhookUrl + type: object + type: array + name: + minLength: 1 + type: string + opsgenieConfigs: + items: + properties: + actions: + type: string + apiKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + apiURL: + type: string + description: + type: string + details: + items: + properties: + key: + minLength: 1 + type: string + value: + type: string + required: + - key + - value + type: object + type: array + entity: + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + note: + type: string + priority: + type: string + responders: + items: + properties: + id: + type: string + name: + type: string + type: + enum: + - team + - teams + - user + - escalation + - schedule + minLength: 1 + type: string + username: + type: string + required: + - type + type: object + type: array + sendResolved: + type: boolean + source: + type: string + tags: + type: string + updateAlerts: + type: boolean + type: object + type: array + pagerdutyConfigs: + items: + properties: + class: + type: string + client: + type: string + clientURL: + type: string + component: + type: string + description: + type: string + details: + items: + properties: + key: + minLength: 1 + type: string + value: + type: string + required: + - key + - value + type: object + type: array + group: + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + pagerDutyImageConfigs: + items: + properties: + alt: + type: string + href: + type: string + src: + type: string + type: object + type: array + pagerDutyLinkConfigs: + items: + properties: + alt: + type: string + href: + type: string + type: object + type: array + routingKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + sendResolved: + type: boolean + serviceKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + severity: + type: string + url: + type: string + type: object + type: array + pushoverConfigs: + items: + properties: + expire: + 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: + type: boolean + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + priority: + type: string + retry: + 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: + type: boolean + sound: + type: string + title: + type: string + token: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + tokenFile: + type: string + url: + type: string + urlTitle: + type: string + userKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + userKeyFile: + type: string + type: object + type: array + slackConfigs: + items: + properties: + actions: + items: + properties: + confirm: + 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: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + callbackId: + type: string + channel: + type: string + color: + type: string + fallback: + type: string + fields: + items: + 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: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + 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: + 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: + items: + properties: + apiURL: + type: string + attributes: + additionalProperties: + type: string + type: object + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + phoneNumber: + type: string + sendResolved: + type: boolean + sigv4: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + profile: + type: string + region: + type: string + roleArn: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + subject: + type: string + targetARN: + type: string + topicARN: + type: string + type: object + type: array + telegramConfigs: + items: + properties: + apiURL: + type: string + botToken: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + botTokenFile: + type: string + chatID: + format: int64 + type: integer + disableNotifications: + type: boolean + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + parseMode: + enum: + - MarkdownV2 + - Markdown + - HTML + type: string + sendResolved: + type: boolean + type: object + type: array + victoropsConfigs: + items: + properties: + apiKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + apiUrl: + type: string + customFields: + items: + properties: + key: + minLength: 1 + type: string + value: + type: string + required: + - key + - value + type: object + type: array + entityDisplayName: + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + messageType: + type: string + monitoringTool: + type: string + routingKey: + type: string + sendResolved: + type: boolean + stateMessage: + type: string + type: object + type: array + webexConfigs: + items: + properties: + apiURL: + pattern: ^https?://.+$ + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + roomID: + minLength: 1 + type: string + sendResolved: + type: boolean + required: + - roomID + type: object + type: array + webhookConfigs: + items: + properties: + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + maxAlerts: + format: int32 + minimum: 0 + type: integer + sendResolved: + type: boolean + url: + type: string + urlSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: array + wechatConfigs: + items: + properties: + agentID: + type: string + apiSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + apiURL: + type: string + corpID: + type: string + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + message: + type: string + messageType: + type: string + sendResolved: + type: boolean + toParty: + type: string + toTag: + type: string + toUser: + type: string + type: object + type: array + required: + - name + type: object + type: array + route: + properties: + activeTimeIntervals: + items: + type: string + type: array + continue: + type: boolean + groupBy: + items: + type: string + type: array + groupInterval: + type: string + groupWait: + type: string + matchers: + items: + properties: + matchType: + enum: + - '!=' + - = + - =~ + - '!~' + type: string + name: + minLength: 1 + type: string + regex: + type: boolean + value: + type: string + required: + - name + type: object + type: array + muteTimeIntervals: + items: + type: string + type: array + receiver: + type: string + repeatInterval: + type: string + routes: + items: + x-kubernetes-preserve-unknown-fields: true + type: array + type: object + type: object + required: + - spec + type: object + served: true + storage: true +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_alertmanagers.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_alertmanagers.yaml new file mode 100644 index 000000000..d49aece49 --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_alertmanagers.yaml @@ -0,0 +1,3533 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: alertmanagers.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: Alertmanager + listKind: AlertmanagerList + plural: alertmanagers + singular: alertmanager + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.replicas + name: Replicas + type: integer + - jsonPath: .status.availableReplicas + name: Ready + type: integer + - jsonPath: .status.conditions[?(@.type == 'Reconciled')].status + name: Reconciled + type: string + - jsonPath: .status.conditions[?(@.type == 'Available')].status + name: Available + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.paused + name: Paused + priority: 1 + type: boolean + name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + additionalPeers: + items: + type: string + type: array + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + 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: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + alertmanagerConfigMatcherStrategy: + properties: + type: + default: OnNamespace + enum: + - OnNamespace + - None + type: string + type: object + alertmanagerConfigNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + alertmanagerConfigSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + alertmanagerConfiguration: + properties: + global: + properties: + httpConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + followRedirects: + type: boolean + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyURL: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + opsGenieApiKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + opsGenieApiUrl: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + pagerdutyUrl: + type: string + resolveTimeout: + 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 + slackApiUrl: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + smtp: + properties: + authIdentity: + type: string + authPassword: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + authSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + authUsername: + type: string + from: + type: string + hello: + type: string + requireTLS: + type: boolean + smartHost: + properties: + host: + minLength: 1 + type: string + port: + minLength: 1 + type: string + required: + - host + - port + type: object + type: object + type: object + name: + minLength: 1 + type: string + templates: + items: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + type: array + type: object + automountServiceAccountToken: + type: boolean + baseImage: + type: string + clusterAdvertiseAddress: + type: string + clusterGossipInterval: + pattern: ^(0|(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + clusterPeerTimeout: + pattern: ^(0|(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + clusterPushpullInterval: + pattern: ^(0|(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + configMaps: + items: + type: string + type: array + configSecret: + type: string + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + externalUrl: + type: string + forceEnableClusterMode: + type: boolean + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + required: + - hostnames + - ip + type: object + type: array + x-kubernetes-list-map-keys: + - ip + x-kubernetes-list-type: map + image: + type: string + imagePullPolicy: + enum: + - "" + - Always + - Never + - IfNotPresent + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minReadySeconds: + format: int32 + type: integer + nodeSelector: + additionalProperties: + type: string + type: object + paused: + type: boolean + podMetadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + portName: + default: web + type: string + priorityClassName: + type: string + replicas: + format: int32 + type: integer + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + retention: + default: 120h + pattern: ^(0|(([0-9]+)h)?(([0-9]+)m)?(([0-9]+)s)?(([0-9]+)ms)?)$ + type: string + routePrefix: + type: string + secrets: + items: + type: string + type: array + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + serviceAccountName: + type: string + sha: + type: string + storage: + properties: + disableMountSubPath: + type: boolean + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + volumeClaimTemplate: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + status: + properties: + accessModes: + items: + type: string + type: array + allocatedResourceStatuses: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: granular + allocatedResources: + additionalProperties: + 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 + type: object + capacity: + additionalProperties: + 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 + type: object + conditions: + items: + properties: + lastProbeTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + phase: + type: string + type: object + type: object + type: object + tag: + type: string + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + maxSkew: + format: int32 + type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + web: + properties: + getConcurrency: + format: int32 + type: integer + httpConfig: + properties: + headers: + properties: + contentSecurityPolicy: + type: string + strictTransportSecurity: + type: string + xContentTypeOptions: + enum: + - "" + - NoSniff + type: string + xFrameOptions: + enum: + - "" + - Deny + - SameOrigin + type: string + xXSSProtection: + type: string + type: object + http2: + type: boolean + type: object + timeout: + format: int32 + type: integer + tlsConfig: + properties: + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cipherSuites: + items: + type: string + type: array + client_ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientAuthType: + type: string + curvePreferences: + items: + type: string + type: array + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + maxVersion: + type: string + minVersion: + type: string + preferServerCipherSuites: + type: boolean + required: + - cert + - keySecret + type: object + type: object + type: object + status: + properties: + availableReplicas: + format: int32 + type: integer + conditions: + items: + properties: + lastTransitionTime: + format: date-time + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + reason: + type: string + status: + type: string + type: + type: string + required: + - lastTransitionTime + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + paused: + type: boolean + replicas: + format: int32 + type: integer + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_podmonitors.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_podmonitors.yaml new file mode 100644 index 000000000..06fa5451f --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_podmonitors.yaml @@ -0,0 +1,433 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: podmonitors.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: PodMonitor + listKind: PodMonitorList + plural: podmonitors + singular: podmonitor + scope: Namespaced + versions: + - name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + attachMetadata: + properties: + node: + type: boolean + type: object + jobLabel: + type: string + keepDroppedTargets: + format: int64 + type: integer + labelLimit: + format: int64 + type: integer + labelNameLengthLimit: + format: int64 + type: integer + labelValueLengthLimit: + format: int64 + type: integer + namespaceSelector: + properties: + any: + type: boolean + matchNames: + items: + type: string + type: array + type: object + podMetricsEndpoints: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + enableHttp2: + type: boolean + filterRunning: + type: boolean + followRedirects: + type: boolean + honorLabels: + type: boolean + honorTimestamps: + type: boolean + 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 + 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 + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + params: + additionalProperties: + items: + type: string + type: array + type: object + path: + type: string + port: + type: string + proxyUrl: + type: string + relabelings: + 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 + scheme: + enum: + - http + - https + type: string + 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 + targetPort: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + type: array + podTargetLabels: + items: + type: string + type: array + sampleLimit: + format: int64 + type: integer + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + targetLimit: + format: int64 + type: integer + required: + - podMetricsEndpoints + - selector + type: object + required: + - spec + type: object + served: true + storage: true +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_probes.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_probes.yaml new file mode 100644 index 000000000..679fc6ce5 --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_probes.yaml @@ -0,0 +1,467 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: probes.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: Probe + listKind: ProbeList + plural: probes + 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: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + 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 + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + 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 + 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 + required: + - key + - operator + type: object + type: array + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + required: + - spec + type: object + served: true + storage: true +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_prometheusagents.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_prometheusagents.yaml new file mode 100644 index 000000000..50077ffcd --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_prometheusagents.yaml @@ -0,0 +1,4065 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: prometheusagents.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: PrometheusAgent + listKind: PrometheusAgentList + plural: prometheusagents + singular: prometheusagent + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.replicas + name: Desired + type: integer + - jsonPath: .status.availableReplicas + name: Ready + type: integer + - jsonPath: .status.conditions[?(@.type == 'Reconciled')].status + name: Reconciled + type: string + - jsonPath: .status.conditions[?(@.type == 'Available')].status + name: Available + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.paused + name: Paused + priority: 1 + type: boolean + name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + additionalArgs: + items: + properties: + name: + minLength: 1 + type: string + value: + type: string + required: + - name + type: object + type: array + additionalScrapeConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + 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: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + apiserverConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + host: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - host + type: object + arbitraryFSAccessThroughSMs: + properties: + deny: + type: boolean + type: object + bodySizeLimit: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + configMaps: + items: + type: string + type: array + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + enableFeatures: + items: + type: string + type: array + enableRemoteWriteReceiver: + type: boolean + enforcedBodySizeLimit: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + enforcedKeepDroppedTargets: + format: int64 + type: integer + enforcedLabelLimit: + format: int64 + type: integer + enforcedLabelNameLengthLimit: + format: int64 + type: integer + enforcedLabelValueLengthLimit: + format: int64 + type: integer + enforcedNamespaceLabel: + type: string + enforcedSampleLimit: + format: int64 + type: integer + enforcedTargetLimit: + format: int64 + type: integer + excludedFromEnforcement: + items: + properties: + group: + default: monitoring.rhobs + enum: + - monitoring.rhobs + type: string + name: + type: string + namespace: + minLength: 1 + type: string + resource: + enum: + - prometheusrules + - servicemonitors + - podmonitors + - probes + - scrapeconfigs + type: string + required: + - namespace + - resource + type: object + type: array + externalLabels: + additionalProperties: + type: string + type: object + externalUrl: + type: string + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + required: + - hostnames + - ip + type: object + type: array + x-kubernetes-list-map-keys: + - ip + x-kubernetes-list-type: map + hostNetwork: + type: boolean + ignoreNamespaceSelectors: + type: boolean + image: + type: string + imagePullPolicy: + enum: + - "" + - Always + - Never + - IfNotPresent + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + keepDroppedTargets: + format: int64 + type: integer + labelLimit: + format: int64 + type: integer + labelNameLengthLimit: + format: int64 + type: integer + labelValueLengthLimit: + format: int64 + type: integer + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minReadySeconds: + format: int32 + type: integer + nodeSelector: + additionalProperties: + type: string + type: object + overrideHonorLabels: + type: boolean + overrideHonorTimestamps: + type: boolean + paused: + type: boolean + podMetadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + podMonitorNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + podMonitorSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + podTargetLabels: + items: + type: string + type: array + portName: + default: web + type: string + priorityClassName: + type: string + probeNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + probeSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + prometheusExternalLabelName: + type: string + remoteWrite: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + azureAd: + properties: + cloud: + enum: + - AzureChina + - AzureGovernment + - AzurePublic + type: string + managedIdentity: + properties: + clientId: + type: string + required: + - clientId + type: object + required: + - managedIdentity + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + headers: + additionalProperties: + type: string + type: object + metadataConfig: + properties: + send: + type: boolean + sendInterval: + 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 + type: object + name: + type: string + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyUrl: + type: string + queueConfig: + properties: + batchSendDeadline: + type: string + capacity: + type: integer + maxBackoff: + type: string + maxRetries: + type: integer + maxSamplesPerSend: + type: integer + maxShards: + type: integer + minBackoff: + type: string + minShards: + type: integer + retryOnRateLimit: + type: boolean + type: object + remoteTimeout: + 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 + sendExemplars: + type: boolean + sendNativeHistograms: + type: boolean + sigv4: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + profile: + type: string + region: + type: string + roleArn: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + url: + type: string + writeRelabelConfigs: + 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 + required: + - url + type: object + type: array + replicaExternalLabelName: + type: string + replicas: + format: int32 + type: integer + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + routePrefix: + type: string + sampleLimit: + format: int64 + type: integer + scrapeConfigNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + scrapeConfigSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + scrapeInterval: + default: 30s + 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 + 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 + secrets: + items: + type: string + type: array + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + serviceAccountName: + type: string + serviceMonitorNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + serviceMonitorSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + shards: + format: int32 + type: integer + storage: + properties: + disableMountSubPath: + type: boolean + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + volumeClaimTemplate: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + status: + properties: + accessModes: + items: + type: string + type: array + allocatedResourceStatuses: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: granular + allocatedResources: + additionalProperties: + 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 + type: object + capacity: + additionalProperties: + 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 + type: object + conditions: + items: + properties: + lastProbeTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + phase: + type: string + type: object + type: object + type: object + targetLimit: + format: int64 + type: integer + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + maxSkew: + format: int32 + type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + tracingConfig: + properties: + clientType: + enum: + - http + - grpc + type: string + compression: + enum: + - gzip + type: string + endpoint: + minLength: 1 + type: string + headers: + additionalProperties: + type: string + type: object + insecure: + type: boolean + samplingFraction: + 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 + timeout: + 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 + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - endpoint + type: object + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + walCompression: + type: boolean + web: + properties: + httpConfig: + properties: + headers: + properties: + contentSecurityPolicy: + type: string + strictTransportSecurity: + type: string + xContentTypeOptions: + enum: + - "" + - NoSniff + type: string + xFrameOptions: + enum: + - "" + - Deny + - SameOrigin + type: string + xXSSProtection: + type: string + type: object + http2: + type: boolean + type: object + maxConnections: + format: int32 + minimum: 0 + type: integer + pageTitle: + type: string + tlsConfig: + properties: + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cipherSuites: + items: + type: string + type: array + client_ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientAuthType: + type: string + curvePreferences: + items: + type: string + type: array + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + maxVersion: + type: string + minVersion: + type: string + preferServerCipherSuites: + type: boolean + required: + - cert + - keySecret + type: object + type: object + type: object + status: + properties: + availableReplicas: + format: int32 + type: integer + conditions: + items: + properties: + lastTransitionTime: + format: date-time + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + reason: + type: string + status: + type: string + type: + type: string + required: + - lastTransitionTime + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + paused: + type: boolean + replicas: + format: int32 + type: integer + shardStatuses: + items: + properties: + availableReplicas: + format: int32 + type: integer + replicas: + format: int32 + type: integer + shardID: + type: string + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - replicas + - shardID + - unavailableReplicas + - updatedReplicas + type: object + type: array + x-kubernetes-list-map-keys: + - shardID + x-kubernetes-list-type: map + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_prometheuses.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_prometheuses.yaml new file mode 100644 index 000000000..13d9bc4c2 --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_prometheuses.yaml @@ -0,0 +1,4838 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: prometheuses.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: Prometheus + listKind: PrometheusList + plural: prometheuses + singular: prometheus + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.replicas + name: Desired + type: integer + - jsonPath: .status.availableReplicas + name: Ready + type: integer + - jsonPath: .status.conditions[?(@.type == 'Reconciled')].status + name: Reconciled + type: string + - jsonPath: .status.conditions[?(@.type == 'Available')].status + name: Available + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.paused + name: Paused + priority: 1 + type: boolean + name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + additionalAlertManagerConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + additionalAlertRelabelConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + additionalArgs: + items: + properties: + name: + minLength: 1 + type: string + value: + type: string + required: + - name + type: object + type: array + additionalScrapeConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + 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: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + alerting: + properties: + alertmanagers: + items: + properties: + apiVersion: + type: string + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenFile: + type: string + enableHttp2: + type: boolean + name: + type: string + namespace: + type: string + pathPrefix: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + sigv4: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + profile: + type: string + region: + type: string + roleArn: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + timeout: + 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 + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - name + - namespace + - port + type: object + type: array + required: + - alertmanagers + type: object + allowOverlappingBlocks: + type: boolean + apiserverConfig: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + host: + type: string + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - host + type: object + arbitraryFSAccessThroughSMs: + properties: + deny: + type: boolean + type: object + baseImage: + type: string + bodySizeLimit: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + configMaps: + items: + type: string + type: array + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + disableCompaction: + type: boolean + enableAdminAPI: + type: boolean + enableFeatures: + items: + type: string + type: array + enableRemoteWriteReceiver: + type: boolean + enforcedBodySizeLimit: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + enforcedKeepDroppedTargets: + format: int64 + type: integer + enforcedLabelLimit: + format: int64 + type: integer + enforcedLabelNameLengthLimit: + format: int64 + type: integer + enforcedLabelValueLengthLimit: + format: int64 + type: integer + enforcedNamespaceLabel: + type: string + enforcedSampleLimit: + format: int64 + type: integer + enforcedTargetLimit: + format: int64 + type: integer + evaluationInterval: + default: 30s + 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 + excludedFromEnforcement: + items: + properties: + group: + default: monitoring.rhobs + enum: + - monitoring.rhobs + type: string + name: + type: string + namespace: + minLength: 1 + type: string + resource: + enum: + - prometheusrules + - servicemonitors + - podmonitors + - probes + - scrapeconfigs + type: string + required: + - namespace + - resource + type: object + type: array + exemplars: + properties: + maxSize: + format: int64 + type: integer + type: object + externalLabels: + additionalProperties: + type: string + type: object + externalUrl: + type: string + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + required: + - hostnames + - ip + type: object + type: array + x-kubernetes-list-map-keys: + - ip + x-kubernetes-list-type: map + hostNetwork: + type: boolean + ignoreNamespaceSelectors: + type: boolean + image: + type: string + imagePullPolicy: + enum: + - "" + - Always + - Never + - IfNotPresent + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + keepDroppedTargets: + format: int64 + type: integer + labelLimit: + format: int64 + type: integer + labelNameLengthLimit: + format: int64 + type: integer + labelValueLengthLimit: + format: int64 + type: integer + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minReadySeconds: + format: int32 + type: integer + nodeSelector: + additionalProperties: + type: string + type: object + overrideHonorLabels: + type: boolean + overrideHonorTimestamps: + type: boolean + paused: + type: boolean + podMetadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + podMonitorNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + podMonitorSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + podTargetLabels: + items: + type: string + type: array + portName: + default: web + type: string + priorityClassName: + type: string + probeNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + probeSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + prometheusExternalLabelName: + type: string + prometheusRulesExcludedFromEnforce: + items: + properties: + ruleName: + type: string + ruleNamespace: + type: string + required: + - ruleName + - ruleNamespace + type: object + type: array + query: + properties: + lookbackDelta: + type: string + maxConcurrency: + format: int32 + minimum: 1 + type: integer + maxSamples: + format: int32 + type: integer + timeout: + 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 + type: object + queryLogFile: + type: string + remoteRead: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + filterExternalLabels: + type: boolean + followRedirects: + type: boolean + headers: + additionalProperties: + type: string + type: object + name: + type: string + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyUrl: + type: string + readRecent: + type: boolean + remoteTimeout: + 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 + requiredMatchers: + additionalProperties: + type: string + type: object + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + url: + type: string + required: + - url + type: object + type: array + remoteWrite: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + credentialsFile: + type: string + type: + type: string + type: object + azureAd: + properties: + cloud: + enum: + - AzureChina + - AzureGovernment + - AzurePublic + type: string + managedIdentity: + properties: + clientId: + type: string + required: + - clientId + type: object + required: + - managedIdentity + type: object + basicAuth: + properties: + password: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerToken: + type: string + bearerTokenFile: + type: string + headers: + additionalProperties: + type: string + type: object + metadataConfig: + properties: + send: + type: boolean + sendInterval: + 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 + type: object + name: + type: string + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + proxyUrl: + type: string + queueConfig: + properties: + batchSendDeadline: + type: string + capacity: + type: integer + maxBackoff: + type: string + maxRetries: + type: integer + maxSamplesPerSend: + type: integer + maxShards: + type: integer + minBackoff: + type: string + minShards: + type: integer + retryOnRateLimit: + type: boolean + type: object + remoteTimeout: + 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 + sendExemplars: + type: boolean + sendNativeHistograms: + type: boolean + sigv4: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + profile: + type: string + region: + type: string + roleArn: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + url: + type: string + writeRelabelConfigs: + 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 + required: + - url + type: object + type: array + replicaExternalLabelName: + type: string + replicas: + format: int32 + type: integer + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + retention: + 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 + retentionSize: + pattern: (^0|([0-9]*[.])?[0-9]+((K|M|G|T|E|P)i?)?B)$ + type: string + routePrefix: + type: string + ruleNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + ruleSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + rules: + properties: + alert: + properties: + forGracePeriod: + type: string + forOutageTolerance: + type: string + resendDelay: + type: string + type: object + type: object + sampleLimit: + format: int64 + type: integer + scrapeConfigNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + scrapeConfigSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + scrapeInterval: + default: 30s + 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 + 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 + secrets: + items: + type: string + type: array + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + serviceAccountName: + type: string + serviceMonitorNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + serviceMonitorSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + sha: + type: string + shards: + format: int32 + type: integer + storage: + properties: + disableMountSubPath: + type: boolean + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + volumeClaimTemplate: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + status: + properties: + accessModes: + items: + type: string + type: array + allocatedResourceStatuses: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: granular + allocatedResources: + additionalProperties: + 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 + type: object + capacity: + additionalProperties: + 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 + type: object + conditions: + items: + properties: + lastProbeTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + phase: + type: string + type: object + type: object + type: object + tag: + type: string + targetLimit: + format: int64 + type: integer + thanos: + properties: + additionalArgs: + items: + properties: + name: + minLength: 1 + type: string + value: + type: string + required: + - name + type: object + type: array + baseImage: + type: string + blockSize: + default: 2h + 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 + getConfigInterval: + 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 + getConfigTimeout: + 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 + grpcListenLocal: + type: boolean + grpcServerTlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + httpListenLocal: + type: boolean + image: + type: string + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minTime: + type: string + objectStorageConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + objectStorageConfigFile: + type: string + readyTimeout: + 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 + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + sha: + type: string + tag: + type: string + tracingConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + tracingConfigFile: + type: string + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + type: object + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + maxSkew: + format: int32 + type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + tracingConfig: + properties: + clientType: + enum: + - http + - grpc + type: string + compression: + enum: + - gzip + type: string + endpoint: + minLength: 1 + type: string + headers: + additionalProperties: + type: string + type: object + insecure: + type: boolean + samplingFraction: + 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 + timeout: + 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 + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + required: + - endpoint + type: object + tsdb: + properties: + outOfOrderTimeWindow: + 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 + type: object + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + walCompression: + type: boolean + web: + properties: + httpConfig: + properties: + headers: + properties: + contentSecurityPolicy: + type: string + strictTransportSecurity: + type: string + xContentTypeOptions: + enum: + - "" + - NoSniff + type: string + xFrameOptions: + enum: + - "" + - Deny + - SameOrigin + type: string + xXSSProtection: + type: string + type: object + http2: + type: boolean + type: object + maxConnections: + format: int32 + minimum: 0 + type: integer + pageTitle: + type: string + tlsConfig: + properties: + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cipherSuites: + items: + type: string + type: array + client_ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientAuthType: + type: string + curvePreferences: + items: + type: string + type: array + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + maxVersion: + type: string + minVersion: + type: string + preferServerCipherSuites: + type: boolean + required: + - cert + - keySecret + type: object + type: object + type: object + status: + properties: + availableReplicas: + format: int32 + type: integer + conditions: + items: + properties: + lastTransitionTime: + format: date-time + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + reason: + type: string + status: + type: string + type: + type: string + required: + - lastTransitionTime + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + paused: + type: boolean + replicas: + format: int32 + type: integer + shardStatuses: + items: + properties: + availableReplicas: + format: int32 + type: integer + replicas: + format: int32 + type: integer + shardID: + type: string + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - replicas + - shardID + - unavailableReplicas + - updatedReplicas + type: object + type: array + x-kubernetes-list-map-keys: + - shardID + x-kubernetes-list-type: map + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_prometheusrules.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_prometheusrules.yaml new file mode 100644 index 000000000..dd43ee455 --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_prometheusrules.yaml @@ -0,0 +1,97 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: prometheusrules.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: PrometheusRule + listKind: PrometheusRuleList + plural: prometheusrules + singular: prometheusrule + scope: Namespaced + versions: + - name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + groups: + items: + properties: + 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 + limit: + type: integer + name: + minLength: 1 + type: string + partial_response_strategy: + pattern: ^(?i)(abort|warn)?$ + type: string + rules: + items: + properties: + alert: + type: string + annotations: + additionalProperties: + type: string + type: object + expr: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + for: + 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 + keep_firing_for: + minLength: 1 + 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 + labels: + additionalProperties: + type: string + type: object + record: + type: string + required: + - expr + type: object + type: array + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + type: object + required: + - spec + type: object + served: true + storage: true +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_scrapeconfigs.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_scrapeconfigs.yaml new file mode 100644 index 000000000..28a81dcbb --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_scrapeconfigs.yaml @@ -0,0 +1,816 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: scrapeconfigs.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: ScrapeConfig + listKind: ScrapeConfigList + plural: scrapeconfigs + singular: scrapeconfig + scope: Namespaced + versions: + - name: v1alpha1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + consulSDConfigs: + items: + properties: + allow_stale: + type: boolean + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + datacenter: + type: string + enable_http2: + type: boolean + follow_redirects: + type: boolean + namespace: + type: string + no_proxy: + type: string + node_meta: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: atomic + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + partition: + type: string + proxy_connect_header: + additionalProperties: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + x-kubernetes-map-type: atomic + proxy_from_environment: + type: boolean + proxy_url: + type: string + refresh_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 + scheme: + enum: + - HTTP + - HTTPS + type: string + server: + minLength: 1 + type: string + services: + items: + type: string + type: array + x-kubernetes-list-type: atomic + tag_separator: + type: string + tags: + items: + type: string + type: array + x-kubernetes-list-type: atomic + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + tokenRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + required: + - server + type: object + type: array + dnsSDConfigs: + items: + properties: + names: + items: + type: string + minItems: 1 + type: array + port: + type: integer + refreshInterval: + 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 + type: + enum: + - SRV + - A + - AAAA + - MX + type: string + required: + - names + type: object + type: array + ec2SDConfigs: + items: + properties: + accessKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + filters: + items: + properties: + name: + type: string + values: + items: + type: string + type: array + required: + - name + - values + type: object + type: array + port: + type: integer + refreshInterval: + 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 + region: + type: string + roleARN: + type: string + secretKey: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + type: object + type: array + fileSDConfigs: + items: + properties: + files: + items: + pattern: ^[^*]*(\*[^/]*)?\.(json|yml|yaml|JSON|YML|YAML)$ + type: string + minItems: 1 + type: array + refreshInterval: + 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 + required: + - files + type: object + type: array + honorLabels: + type: boolean + honorTimestamps: + type: boolean + httpSDConfigs: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + refreshInterval: + 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 + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + url: + minLength: 1 + pattern: ^http(s)?://.+$ + type: string + required: + - url + type: object + type: array + keepDroppedTargets: + format: int64 + type: integer + kubernetesSDConfigs: + items: + properties: + role: + enum: + - Node + - node + type: string + selectors: + items: + properties: + field: + type: string + label: + type: string + role: + enum: + - Node + - node + type: string + required: + - role + type: object + type: array + x-kubernetes-list-map-keys: + - role + x-kubernetes-list-type: map + required: + - role + type: object + type: array + 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 + metricsPath: + type: string + params: + additionalProperties: + items: + type: string + type: array + type: object + x-kubernetes-map-type: atomic + relabelings: + 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 + sampleLimit: + format: int64 + type: integer + scheme: + enum: + - HTTP + - HTTPS + type: string + scrapeInterval: + 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 + 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 + staticConfigs: + items: + properties: + labels: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: atomic + targets: + items: + type: string + type: array + type: object + type: array + targetLimit: + format: int64 + type: integer + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + required: + - spec + type: object + served: true + storage: true +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_servicemonitors.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_servicemonitors.yaml new file mode 100644 index 000000000..79326e441 --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_servicemonitors.yaml @@ -0,0 +1,445 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: servicemonitors.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: ServiceMonitor + listKind: ServiceMonitorList + plural: servicemonitors + singular: servicemonitor + scope: Namespaced + versions: + - name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + attachMetadata: + properties: + node: + type: boolean + type: object + endpoints: + items: + properties: + authorization: + properties: + credentials: + properties: + key: + type: string + name: + 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: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + username: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + bearerTokenFile: + type: string + bearerTokenSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + enableHttp2: + type: boolean + filterRunning: + type: boolean + followRedirects: + type: boolean + honorLabels: + type: boolean + honorTimestamps: + type: boolean + 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 + 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 + oauth2: + properties: + clientId: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + clientSecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + endpointParams: + additionalProperties: + type: string + type: object + scopes: + items: + type: string + type: array + tokenUrl: + minLength: 1 + type: string + required: + - clientId + - clientSecret + - tokenUrl + type: object + params: + additionalProperties: + items: + type: string + type: array + type: object + path: + type: string + port: + type: string + proxyUrl: + type: string + relabelings: + 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 + scheme: + enum: + - http + - https + type: string + 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 + targetPort: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + tlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + type: object + type: array + jobLabel: + type: string + keepDroppedTargets: + format: int64 + type: integer + labelLimit: + format: int64 + type: integer + labelNameLengthLimit: + format: int64 + type: integer + labelValueLengthLimit: + format: int64 + type: integer + namespaceSelector: + properties: + any: + type: boolean + matchNames: + items: + type: string + type: array + type: object + podTargetLabels: + items: + type: string + type: array + sampleLimit: + format: int64 + type: integer + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + targetLabels: + items: + type: string + type: array + targetLimit: + format: int64 + type: integer + required: + - endpoints + - selector + type: object + required: + - spec + type: object + served: true + storage: true +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/monitoring.rhobs_thanosrulers.yaml b/rhobs/olm/bundle/manifests/monitoring.rhobs_thanosrulers.yaml new file mode 100644 index 000000000..497025525 --- /dev/null +++ b/rhobs/olm/bundle/manifests/monitoring.rhobs_thanosrulers.yaml @@ -0,0 +1,3265 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.11.1 + operator.prometheus.io/version: 0.69.1-rhobs1 + creationTimestamp: null + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: thanosrulers.monitoring.rhobs +spec: + group: monitoring.rhobs + names: + categories: + - rhobs-prometheus-operator + kind: ThanosRuler + listKind: ThanosRulerList + plural: thanosrulers + singular: thanosruler + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .spec.version + name: Version + type: string + - jsonPath: .spec.replicas + name: Replicas + type: integer + - jsonPath: .status.availableReplicas + name: Ready + type: integer + - jsonPath: .status.conditions[?(@.type == 'Reconciled')].status + name: Reconciled + type: string + - jsonPath: .status.conditions[?(@.type == 'Available')].status + name: Available + type: string + - jsonPath: .metadata.creationTimestamp + name: Age + type: date + - jsonPath: .status.paused + name: Paused + priority: 1 + type: boolean + name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + type: object + spec: + properties: + additionalArgs: + items: + properties: + name: + minLength: 1 + type: string + value: + type: string + required: + - name + type: object + type: array + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + x-kubernetes-map-type: atomic + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + 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: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + alertDropLabels: + items: + type: string + type: array + alertQueryUrl: + type: string + alertRelabelConfigFile: + type: string + alertRelabelConfigs: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + alertmanagersConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + alertmanagersUrl: + items: + type: string + type: array + containers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + enforcedNamespaceLabel: + type: string + evaluationInterval: + default: 15s + 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 + excludedFromEnforcement: + items: + properties: + group: + default: monitoring.rhobs + enum: + - monitoring.rhobs + type: string + name: + type: string + namespace: + minLength: 1 + type: string + resource: + enum: + - prometheusrules + - servicemonitors + - podmonitors + - probes + - scrapeconfigs + type: string + required: + - namespace + - resource + type: object + type: array + externalPrefix: + type: string + grpcServerTlsConfig: + properties: + ca: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + caFile: + type: string + cert: + properties: + configMap: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + secret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + certFile: + type: string + insecureSkipVerify: + type: boolean + keyFile: + type: string + keySecret: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + serverName: + type: string + type: object + hostAliases: + items: + properties: + hostnames: + items: + type: string + type: array + ip: + type: string + required: + - hostnames + - ip + type: object + type: array + x-kubernetes-list-map-keys: + - ip + x-kubernetes-list-type: map + image: + type: string + imagePullPolicy: + enum: + - "" + - Always + - Never + - IfNotPresent + type: string + imagePullSecrets: + items: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + type: array + initContainers: + items: + properties: + args: + items: + type: string + type: array + command: + items: + type: string + type: array + env: + items: + properties: + name: + type: string + value: + type: string + valueFrom: + properties: + configMapKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + envFrom: + items: + properties: + configMapRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + prefix: + type: string + secretRef: + properties: + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + type: object + type: array + image: + type: string + imagePullPolicy: + type: string + lifecycle: + properties: + postStart: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + name: + type: string + ports: + items: + properties: + containerPort: + format: int32 + type: integer + hostIP: + type: string + hostPort: + format: int32 + type: integer + name: + type: string + protocol: + default: TCP + type: string + required: + - containerPort + type: object + type: array + x-kubernetes-list-map-keys: + - containerPort + - protocol + x-kubernetes-list-type: map + readinessProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + resizePolicy: + items: + properties: + resourceName: + type: string + restartPolicy: + type: string + required: + - resourceName + - restartPolicy + type: object + type: array + x-kubernetes-list-type: atomic + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + restartPolicy: + type: string + securityContext: + properties: + allowPrivilegeEscalation: + type: boolean + capabilities: + properties: + add: + items: + type: string + type: array + drop: + items: + type: string + type: array + type: object + privileged: + type: boolean + procMount: + type: string + readOnlyRootFilesystem: + type: boolean + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + startupProbe: + properties: + exec: + properties: + command: + items: + type: string + type: array + type: object + failureThreshold: + format: int32 + type: integer + grpc: + properties: + port: + format: int32 + type: integer + service: + type: string + required: + - port + type: object + httpGet: + properties: + host: + type: string + httpHeaders: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + path: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + scheme: + type: string + required: + - port + type: object + initialDelaySeconds: + format: int32 + type: integer + periodSeconds: + format: int32 + type: integer + successThreshold: + format: int32 + type: integer + tcpSocket: + properties: + host: + type: string + port: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + required: + - port + type: object + terminationGracePeriodSeconds: + format: int64 + type: integer + timeoutSeconds: + format: int32 + type: integer + type: object + stdin: + type: boolean + stdinOnce: + type: boolean + terminationMessagePath: + type: string + terminationMessagePolicy: + type: string + tty: + type: boolean + volumeDevices: + items: + properties: + devicePath: + type: string + name: + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + type: string + required: + - name + type: object + type: array + labels: + additionalProperties: + type: string + type: object + listenLocal: + type: boolean + logFormat: + enum: + - "" + - logfmt + - json + type: string + logLevel: + enum: + - "" + - debug + - info + - warn + - error + type: string + minReadySeconds: + format: int32 + type: integer + nodeSelector: + additionalProperties: + type: string + type: object + objectStorageConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + objectStorageConfigFile: + type: string + paused: + type: boolean + podMetadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + portName: + default: web + type: string + priorityClassName: + type: string + prometheusRulesExcludedFromEnforce: + items: + properties: + ruleName: + type: string + ruleNamespace: + type: string + required: + - ruleName + - ruleNamespace + type: object + type: array + queryConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + queryEndpoints: + items: + type: string + type: array + replicas: + format: int32 + type: integer + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + retention: + default: 24h + 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 + routePrefix: + type: string + ruleNamespaceSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + ruleSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 + type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + hostProcess: + type: boolean + runAsUserName: + type: string + type: object + type: object + serviceAccountName: + type: string + storage: + properties: + disableMountSubPath: + type: boolean + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + volumeClaimTemplate: + properties: + apiVersion: + type: string + kind: + type: string + metadata: + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + name: + type: string + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + status: + properties: + accessModes: + items: + type: string + type: array + allocatedResourceStatuses: + additionalProperties: + type: string + type: object + x-kubernetes-map-type: granular + allocatedResources: + additionalProperties: + 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 + type: object + capacity: + additionalProperties: + 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 + type: object + conditions: + items: + properties: + lastProbeTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + phase: + type: string + type: object + type: object + type: object + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + topologySpreadConstraints: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + matchLabelKeys: + items: + type: string + type: array + x-kubernetes-list-type: atomic + maxSkew: + format: int32 + type: integer + minDomains: + format: int32 + type: integer + nodeAffinityPolicy: + type: string + nodeTaintsPolicy: + type: string + topologyKey: + type: string + whenUnsatisfiable: + type: string + required: + - maxSkew + - topologyKey + - whenUnsatisfiable + type: object + type: array + tracingConfig: + properties: + key: + type: string + name: + type: string + optional: + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + tracingConfigFile: + type: string + version: + type: string + volumeMounts: + items: + properties: + mountPath: + type: string + mountPropagation: + type: string + name: + type: string + readOnly: + type: boolean + subPath: + type: string + subPathExpr: + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + items: + properties: + awsElasticBlockStore: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + azureDisk: + properties: + cachingMode: + type: string + diskName: + type: string + diskURI: + type: string + fsType: + type: string + kind: + type: string + readOnly: + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + properties: + readOnly: + type: boolean + secretName: + type: string + shareName: + type: string + required: + - secretName + - shareName + type: object + cephfs: + properties: + monitors: + items: + type: string + type: array + path: + type: string + readOnly: + type: boolean + secretFile: + type: string + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - monitors + type: object + cinder: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeID: + type: string + required: + - volumeID + type: object + configMap: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + csi: + properties: + driver: + type: string + fsType: + type: string + nodePublishSecretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + readOnly: + type: boolean + volumeAttributes: + additionalProperties: + type: string + type: object + required: + - driver + type: object + downwardAPI: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + emptyDir: + properties: + medium: + type: string + sizeLimit: + 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 + type: object + ephemeral: + properties: + volumeClaimTemplate: + properties: + metadata: + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + x-kubernetes-map-type: atomic + dataSourceRef: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + namespace: + type: string + required: + - kind + - name + type: object + resources: + properties: + claims: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map + limits: + additionalProperties: + 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 + type: object + requests: + additionalProperties: + 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 + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + x-kubernetes-map-type: atomic + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + required: + - spec + type: object + type: object + fc: + properties: + fsType: + type: string + lun: + format: int32 + type: integer + readOnly: + type: boolean + targetWWNs: + items: + type: string + type: array + wwids: + items: + type: string + type: array + type: object + flexVolume: + properties: + driver: + type: string + fsType: + type: string + options: + additionalProperties: + type: string + type: object + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + required: + - driver + type: object + flocker: + properties: + datasetName: + type: string + datasetUUID: + type: string + type: object + gcePersistentDisk: + properties: + fsType: + type: string + partition: + format: int32 + type: integer + pdName: + type: string + readOnly: + type: boolean + required: + - pdName + type: object + gitRepo: + properties: + directory: + type: string + repository: + type: string + revision: + type: string + required: + - repository + type: object + glusterfs: + properties: + endpoints: + type: string + path: + type: string + readOnly: + type: boolean + required: + - endpoints + - path + type: object + hostPath: + properties: + path: + type: string + type: + type: string + required: + - path + type: object + iscsi: + properties: + chapAuthDiscovery: + type: boolean + chapAuthSession: + type: boolean + fsType: + type: string + initiatorName: + type: string + iqn: + type: string + iscsiInterface: + type: string + lun: + format: int32 + type: integer + portals: + items: + type: string + type: array + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + targetPortal: + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + type: string + nfs: + properties: + path: + type: string + readOnly: + type: boolean + server: + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + properties: + claimName: + type: string + readOnly: + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + properties: + fsType: + type: string + pdID: + type: string + required: + - pdID + type: object + portworxVolume: + properties: + fsType: + type: string + readOnly: + type: boolean + volumeID: + type: string + required: + - volumeID + type: object + projected: + properties: + defaultMode: + format: int32 + type: integer + sources: + items: + properties: + configMap: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + downwardAPI: + properties: + items: + items: + properties: + fieldRef: + properties: + apiVersion: + type: string + fieldPath: + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + mode: + format: int32 + type: integer + path: + type: string + resourceFieldRef: + properties: + containerName: + type: string + divisor: + 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 + resource: + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + required: + - path + type: object + type: array + type: object + secret: + properties: + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + name: + type: string + optional: + type: boolean + type: object + x-kubernetes-map-type: atomic + serviceAccountToken: + properties: + audience: + type: string + expirationSeconds: + format: int64 + type: integer + path: + type: string + required: + - path + type: object + type: object + type: array + type: object + quobyte: + properties: + group: + type: string + readOnly: + type: boolean + registry: + type: string + tenant: + type: string + user: + type: string + volume: + type: string + required: + - registry + - volume + type: object + rbd: + properties: + fsType: + type: string + image: + type: string + keyring: + type: string + monitors: + items: + type: string + type: array + pool: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + user: + type: string + required: + - image + - monitors + type: object + scaleIO: + properties: + fsType: + type: string + gateway: + type: string + protectionDomain: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + sslEnabled: + type: boolean + storageMode: + type: string + storagePool: + type: string + system: + type: string + volumeName: + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + properties: + defaultMode: + format: int32 + type: integer + items: + items: + properties: + key: + type: string + mode: + format: int32 + type: integer + path: + type: string + required: + - key + - path + type: object + type: array + optional: + type: boolean + secretName: + type: string + type: object + storageos: + properties: + fsType: + type: string + readOnly: + type: boolean + secretRef: + properties: + name: + type: string + type: object + x-kubernetes-map-type: atomic + volumeName: + type: string + volumeNamespace: + type: string + type: object + vsphereVolume: + properties: + fsType: + type: string + storagePolicyID: + type: string + storagePolicyName: + type: string + volumePath: + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + type: object + status: + properties: + availableReplicas: + format: int32 + type: integer + conditions: + items: + properties: + lastTransitionTime: + format: date-time + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + reason: + type: string + status: + type: string + type: + type: string + required: + - lastTransitionTime + - status + - type + type: object + type: array + x-kubernetes-list-map-keys: + - type + x-kubernetes-list-type: map + paused: + type: boolean + replicas: + format: int32 + type: integer + unavailableReplicas: + format: int32 + type: integer + updatedReplicas: + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/rhobs/olm/bundle/manifests/rhobs-prometheus-operator-admission-webhook_policy_v1_poddisruptionbudget.yaml b/rhobs/olm/bundle/manifests/rhobs-prometheus-operator-admission-webhook_policy_v1_poddisruptionbudget.yaml new file mode 100644 index 000000000..05809deaf --- /dev/null +++ b/rhobs/olm/bundle/manifests/rhobs-prometheus-operator-admission-webhook_policy_v1_poddisruptionbudget.yaml @@ -0,0 +1,14 @@ +apiVersion: policy/v1 +kind: PodDisruptionBudget +metadata: + labels: + app.kubernetes.io/name: prometheus-operator-admission-webhook + app.kubernetes.io/part-of: rhobs-prometheus-operator + app.kubernetes.io/version: 0.69.1-rhobs1 + name: rhobs-prometheus-operator-admission-webhook +spec: + minAvailable: 1 + selector: + matchLabels: + app.kubernetes.io/name: prometheus-operator-admission-webhook + app.kubernetes.io/part-of: rhobs-prometheus-operator diff --git a/rhobs/olm/bundle/manifests/rhobs-prometheus-operator-admission-webhook_v1_service.yaml b/rhobs/olm/bundle/manifests/rhobs-prometheus-operator-admission-webhook_v1_service.yaml new file mode 100644 index 000000000..613314c28 --- /dev/null +++ b/rhobs/olm/bundle/manifests/rhobs-prometheus-operator-admission-webhook_v1_service.yaml @@ -0,0 +1,19 @@ +apiVersion: v1 +kind: Service +metadata: + creationTimestamp: null + labels: + app.kubernetes.io/name: prometheus-operator-admission-webhook + app.kubernetes.io/part-of: rhobs-prometheus-operator + app.kubernetes.io/version: 0.69.1-rhobs1 + name: rhobs-prometheus-operator-admission-webhook +spec: + ports: + - name: https + port: 443 + targetPort: https + selector: + app.kubernetes.io/name: prometheus-operator-admission-webhook + app.kubernetes.io/part-of: rhobs-prometheus-operator +status: + loadBalancer: {} diff --git a/rhobs/olm/bundle/manifests/rhobs-prometheus-operator.clusterserviceversion.yaml b/rhobs/olm/bundle/manifests/rhobs-prometheus-operator.clusterserviceversion.yaml new file mode 100644 index 000000000..532fb3b08 --- /dev/null +++ b/rhobs/olm/bundle/manifests/rhobs-prometheus-operator.clusterserviceversion.yaml @@ -0,0 +1,357 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: '[]' + capabilities: Basic Install + createdAt: "2023-11-09T14:30:23Z" + operators.operatorframework.io/builder: operator-sdk-v1.28.1 + operators.operatorframework.io/project_layout: unknown + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + name: rhobs-prometheus-operator.v0.69.1-rhobs1 + namespace: openshift-operators +spec: + apiservicedefinitions: {} + customresourcedefinitions: + owned: + - kind: AlertmanagerConfig + name: alertmanagerconfigs.monitoring.rhobs + version: v1alpha1 + - kind: Alertmanager + name: alertmanagers.monitoring.rhobs + version: v1 + - kind: PodMonitor + name: podmonitors.monitoring.rhobs + version: v1 + - kind: Probe + name: probes.monitoring.rhobs + version: v1 + - kind: PrometheusAgent + name: prometheusagents.monitoring.rhobs + version: v1alpha1 + - kind: Prometheus + name: prometheuses.monitoring.rhobs + version: v1 + - kind: PrometheusRule + name: prometheusrules.monitoring.rhobs + version: v1 + - kind: ScrapeConfig + name: scrapeconfigs.monitoring.rhobs + version: v1alpha1 + - kind: ServiceMonitor + name: servicemonitors.monitoring.rhobs + version: v1 + - kind: ThanosRuler + name: thanosrulers.monitoring.rhobs + version: v1 + description: |- + RHOBS Prometheus Operator - A fork of Prometheus Operator to run monitoring + Stack on Openshift. + + See detailed information about this fork in the project's README + https://github.com/rhobs/obo-prometheus-operator#readme + displayName: RHOBS Prometheus Operator + icon: + - base64data: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iODI3cHgiIGhlaWdodD0iNjg2cHgiIHZpZXdCb3g9IjAgMCA4MjcgNjg2IiBjb2xvcj0iIzJCMzg4RiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDx0aXRsZT5PYnNlcnZhdG9yaXVtRmluYWxfQmx1ZV9JY29uT25seTwvdGl0bGU+CiAgICA8ZyBpZD0iT2JzZXJ2YXRvcml1bUZpbmFsX0JsdWVfSWNvbk9ubHkiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxwYXRoIGQ9Ik03MTYuMTcsNTczLjg3IEw3MTYuMTcsNDk0LjQ5IEw3MTYuMDksMzg0LjU4IEM3MTYuMTM4NjYsMzY4Ljc4MDIzOSA3MTQuNjA3NzE1LDM1My4wMTUxODcgNzExLjUyLDMzNy41MiBMNzExLjUyLDMzNy40NiBDNzExLjUyLDMzNy4zIDcxMS40NSwzMzcuMTQgNzExLjQyLDMzNi45OCBDNzA5Ljg3MzMzMywzMjkuMjkzMzMzIDcwNy45NDY2NjcsMzIxLjY4IDcwNS42NCwzMTQuMTQgQzcwNS41OTc4OTEsMzE0LjAwNzMxIDcwNS41NDA4NTksMzEzLjg3OTgyOCA3MDUuNDcsMzEzLjc2IEM3MDIuNzM2MjQ4LDMwNC45ODE3IDY5OS41MDA5MjgsMjk2LjM2NzUzNSA2OTUuNzgsMjg3Ljk2IEw2OTIuODcsMjg3LjEgQzY3OS42OSwyOTUuNzcgNjYwLjE3LDMwOC40NiA2NTQuODcsMzExLjg3IEM2NTQuMTAzNDczLDMxMi4zOTI3MjcgNjUzLjc5NzA4OCwzMTMuMzczOTg4IDY1NC4xMywzMTQuMjQgQzY2Mi44Nzg4NjYsMzM2LjM4NDYzOCA2NjcuNDEwMDU3LDM1OS45Njk4OTIgNjY3LjQ5LDM4My43OCBDNjY3Ljk1LDQ4OC43OCA1ODIuNzMsNTc1LjIgNDc3LjcxLDU3Ni4xMiBDNDA2LjU1MzMyLDU3Ni43ODEyNjkgMzQwLjkwMTM1Nyw1MzcuOTIwMDUyIDMwNy4yNSw0NzUuMjIgQzMwNi44MTQ0NTUsNDc0LjM5MjE0OCAzMDUuODYzMjYyLDQ3My45NzY3NzkgMzA0Ljk2LDQ3NC4yMiBMMjM3LjczLDQ5My43MiBDMjM2Ljg3NzA2NCw0OTMuOTczNTg0IDIzNi4yOTQyNDYsNDk0Ljc2MDE4NSAyMzYuMjk5OTU4LDQ5NS42NSBDMjM2LjQ0LDUzNy4yOCAyMzYuNTgsNTczLjg0IDIzNi41OCw1NzMuODQgQzIzNi41OCw2NDEuOTEgMzMzLjMsNjc5LjQgNDM5Ljg2LDY4Ni4zMyBDNDQwLjQxNDI0NCw2ODYuMzY0OTExIDQ0MC45NTk2ODksNjg2LjE3NTQ3OSA0NDEuMzY1NjE1LDY4NS43OTYxMDggQzQ0MS43NzE1NDIsNjg1LjQxNjczOCA0NDIuMDAxMzYzLDY4NC44ODU2MDUgNDQyLDY4NC4zMyBMNDQyLDYyMS43IEM0NDEuOTk5MTY3LDYyMS4xNDk5NDYgNDQyLjIyNDkxMyw2MjAuNjIzODMxIDQ0Mi42MjQxMjcsNjIwLjI0NTQyOSBDNDQzLjAyMzM0MSw2MTkuODY3MDI3IDQ0My41NjA3NzgsNjE5LjY2OTc0NiA0NDQuMTEsNjE5LjcgQzQ2NS41ODkwNzIsNjIwLjkzMDAxMyA0ODcuMTIwOTI4LDYyMC45MzAwMTMgNTA4LjYsNjE5LjcgQzUwOS4xNDkyMjIsNjE5LjY2OTc0NiA1MDkuNjg2NjU5LDYxOS44NjcwMjcgNTEwLjA4NTg3Myw2MjAuMjQ1NDI5IEM1MTAuNDg1MDg3LDYyMC42MjM4MzEgNTEwLjcxMDgzMyw2MjEuMTQ5OTQ2IDUxMC43MSw2MjEuNyBMNTEwLjcxLDY4NC4zNiBDNTEwLjcwODYzNyw2ODQuOTE1NjA1IDUxMC45Mzg0NTgsNjg1LjQ0NjczOCA1MTEuMzQ0Mzg1LDY4NS44MjYxMDggQzUxMS43NTAzMTEsNjg2LjIwNTQ3OSA1MTIuMjk1NzU2LDY4Ni4zOTg4OTQgNTEyLjg1LDY4Ni4zNiBDNjE5LjQ1LDY3OS40MyA3MTYuMTcsNjQxLjk0IDcxNi4xNyw1NzMuODcgWiBNMzAyLjMzMDA0OSw2MjkuNDggQzMwMi4zMzQ4NjYsNjMwLjE3Njc0NCAzMDEuOTc2NzcsNjMwLjgyNTgwMiAzMDEuMzg0Nzc0LDYzMS4xOTMyNDggQzMwMC43OTI3NzksNjMxLjU2MDY5NCAzMDAuMDUyMjE5LDYzMS41OTM1NTkgMjk5LjQzLDYzMS4yOCBDMjc3LjgxLDYyMC40MSAyNTIuNjUsNjAwLjggMjUyLjY1LDU3OS40NSBMMjUyLjY1LDU1NC43MSBDMjUyLjY1NzUxOCw1NTMuODczMDk5IDI1My4xODUzNCw1NTMuMTI5MzgyIDI1My45NzI4NTgsNTUyLjg0NjA1NCBDMjU0Ljc2MDM3Niw1NTIuNTYyNzI2IDI1NS42NDEwMjksNTUyLjc5OTcxMSAyNTYuMTgsNTUzLjQ0IEMyNjcuMTMsNTY2LjggMjgxLjc2LDU3OC4xNyAzMDEuMTgsNTg3LjU0IEMzMDEuODc0NTY4LDU4Ny44NzA4MDUgMzAyLjMxNzgyMiw1ODguNTcwNjgxIDMwMi4zMiw1ODkuMzQgTDMwMi4zMzAwNDksNjI5LjQ4IFogTTM5NC4wNyw2NTkuMDYgQzM3NS41ODE2NDEsNjU2LjI0Nzg3MyAzNTcuMzEwOTg4LDY1Mi4xNTQ2ODUgMzM5LjM5LDY0Ni44MSBDMzM4LjU0ODU1Miw2NDYuNTUwMjIxIDMzNy45NzYwMzcsNjQ1Ljc3MDYyNyAzMzcuOTc5OTgsNjQ0Ljg5IEwzMzcuOTc5OTgsNjA0LjQ2IEMzMzcuOTgyMjIyLDYwMy44Mjk4OTMgMzM4LjI4MTI1OCw2MDMuMjM3Njc5IDMzOC43ODY5OTUsNjAyLjg2MTgyIEMzMzkuMjkyNzMxLDYwMi40ODU5NjEgMzM5Ljk0NjAyMyw2MDIuMzcwNDE1IDM0MC41NSw2MDIuNTUgQzM1OC4zMDA2MTksNjA3Ljc4NDkwNyAzNzYuMzg5ODYxLDYxMS43OTQzNDMgMzk0LjY5LDYxNC41NSBDMzk1LjY3NjA3Niw2MTQuNjk5NTM5IDM5Ni40MDEyNzQsNjE1LjU1MjcxMyAzOTYuMzkwMTMsNjE2LjU1IEwzOTYuMzkwMTMsNjU3LjExIEMzOTYuMzgyOTUzLDY1Ny42OTIxMDEgMzk2LjEyMjYzMiw2NTguMjQyMjQ0IDM5NS42NzY5OTUsNjU4LjYxNjgwOSBDMzk1LjIzMTM1OCw2NTguOTkxMzc1IDM5NC42NDQ2MzcsNjU5LjE1MzE4NiAzOTQuMDcsNjU5LjA2IEwzOTQuMDcsNjU5LjA2IFogTTY1MS42LDU4Ny41NCBDNjcxLjAzLDU3OC4xNyA2ODUuNjYsNTY2LjggNjk2LjYsNTUzLjQ0IEM2OTcuMTM4OTcxLDU1Mi43OTk3MTEgNjk4LjAxOTYyNCw1NTIuNTYyNzI2IDY5OC44MDcxNDIsNTUyLjg0NjA1NCBDNjk5LjU5NDY2LDU1My4xMjkzODIgNzAwLjEyMjQ4Miw1NTMuODczMDk5IDcwMC4xMyw1NTQuNzEgTDcwMC4xMyw1NzkuNDUgQzcwMC4xMyw2MDAuOCA2NzQuOTcsNjIwLjQ1IDY1My4zNSw2MzEuMjggQzY1Mi43Mjc3ODEsNjMxLjU5MzU1OSA2NTEuOTg3MjIxLDYzMS41NjA2OTQgNjUxLjM5NTIyNiw2MzEuMTkzMjQ4IEM2NTAuODAzMjMsNjMwLjgyNTgwMiA2NTAuNDQ1MTM0LDYzMC4xNzY3NDQgNjUwLjQ0OTk1MSw2MjkuNDggTDY1MC40NDk5NTEsNTg5LjM0IEM2NTAuNDU0MDEyLDU4OC41NjgzOTcgNjUwLjkwMTUzNiw1ODcuODY3OTI1IDY1MS42LDU4Ny41NCBMNjUxLjYsNTg3LjU0IFogTTU1OC4xLDYxNC41NCBDNTc2LjQwMDEzOSw2MTEuNzg0MzQzIDU5NC40ODkzODEsNjA3Ljc3NDkwNyA2MTIuMjQsNjAyLjU0IEM2MTIuODQzOTc3LDYwMi4zNjA0MTUgNjEzLjQ5NzI2OSw2MDIuNDc1OTYxIDYxNC4wMDMwMDUsNjAyLjg1MTgyIEM2MTQuNTA4NzQyLDYwMy4yMjc2NzkgNjE0LjgwNzc3OCw2MDMuODE5ODkzIDYxNC44MTAwMiw2MDQuNDUgTDYxNC44MTAwMiw2NDQuODggQzYxNC44MTM5NjMsNjQ1Ljc2MDYyNyA2MTQuMjQxNDQ4LDY0Ni41NDAyMjEgNjEzLjQsNjQ2LjggQzU5NS40NzkwMTIsNjUyLjE0NDY4NSA1NzcuMjA4MzU5LDY1Ni4yMzc4NzMgNTU4LjcyLDY1OS4wNSBDNTU4LjEzNjczNiw2NTkuMTQ0NTkxIDU1Ny41NDE0OTYsNjU4Ljk3NjQyNSA1NTcuMDkzOTU0LDY1OC41OTA2MTMgQzU1Ni42NDY0MTMsNjU4LjIwNDgwMSA1NTYuMzkyMzgsNjU3LjY0MDgzNSA1NTYuMzk5ODMzLDY1Ny4wNSBMNTU2LjM5OTgzMyw2MTYuNTEgQzU1Ni40MDM2MzUsNjE1LjUyNDA3NyA1NTcuMTI1MjI0LDYxNC42ODc4ODMgNTU4LjEsNjE0LjU0IFogTTQ3Ni40LDQ0Ny45IEM1MTEuMzcwNjcsNDQ3LjkgNTM5LjcyLDQxOS41NTA2NyA1MzkuNzIsMzg0LjU4IEM1MzkuNzIsMzQ5LjYwOTMzIDUxMS4zNzA2NywzMjEuMjYgNDc2LjQsMzIxLjI2IEM0NDEuNDI5MzMsMzIxLjI2IDQxMy4wOCwzNDkuNjA5MzMgNDEzLjA4LDM4NC41OCBDNDEzLjA4LDQxOS41NTA2NyA0NDEuNDI5MzMsNDQ3LjkgNDc2LjQsNDQ3LjkgTDQ3Ni40LDQ0Ny45IFogTTQ3NS44NSwzMjcuNjMgQzQ4Ny40OSwzMjcuNjMgNDk2LjkzLDMzNC41MyA0OTYuOTMsMzQzLjAzIEM0OTYuOTMsMzUxLjUzIDQ4Ny40OSwzNTguNDMgNDc1Ljg1LDM1OC40MyBDNDY0LjIxLDM1OC40MyA0NTQuNzgsMzUxLjU0IDQ1NC43OCwzNDMuMDMgQzQ1NC43OCwzMzQuNTIgNDY0LjIxLDMyNy42MyA0NzUuODUsMzI3LjYzIFogTTU0LjQzLDQ3NS42MyBDNTcuNjg0NDYzNSw0ODIuNzA3NDQ5IDYxLjYxMjU3NDgsNDg5LjQ1NTIyOCA2Ni4xNiw0OTUuNzggQzc3LjMwMjE4NDMsNTEwLjgxMDE0MSA5Ni40OTYzMTU5LDUxNy41MDY4NzUgMTE0LjU3LDUxMi42NyBDMTE3LjM4LDUxMi4wMyAyNDkuMzcsNDczLjczIDI5Ny42Myw0NTkuNzMgQzI5OC4xNzI3NTYsNDU5LjU2ODk2MiAyOTguNjIxODMzLDQ1OS4xODU0NCAyOTguODY1ODI4LDQ1OC42NzQ1NzUgQzI5OS4xMDk4MjQsNDU4LjE2MzcxIDI5OS4xMjU4NzUsNDU3LjU3MzM2OSAyOTguOTEsNDU3LjA1IEMyODAuMzcyNTE1LDQxMS40NjM2MjMgMjgwLjA0Njc2MywzNjAuNDk5NjE4IDI5OCwzMTQuNjggQzI5OC4yMTUyNTYsMzE0LjE1MzkzNCAyOTguMTk2NTA1LDMxMy41NjExMjYgMjk3Ljk0ODQzMywzMTMuMDQ5NzE1IEMyOTcuNzAwMzYsMzEyLjUzODMwNSAyOTcuMjQ2NDAzLDMxMi4xNTY2MDUgMjk2LjcsMzEyIEMyNTAuNDcsMjk5Ljg5IDExOC4xOSwyNjUuMjQgMTE1LjMzLDI2NC42IEM5Ny41OTQwNzc5LDI1OS44NzMyMjQgNzguNzM3MzE1NywyNjYuMDI0Mjk3IDY3LjIsMjgwLjMgQzY2Ljc5NzQ0NDMsMjgwLjc5NTUzMSA2Ni43NTI2NjA4LDI4MS40OTE1NyA2Ny4wODgzOTQ4LDI4Mi4wMzQ2MDIgQzY3LjQyNDEyODgsMjgyLjU3NzYzNSA2OC4wNjY4MDAxLDI4Mi44NDg2NSA2OC42OSwyODIuNzEgQzc0Ljg1LDI4MS4yNyA4Ni42NCwyNzguNzEgOTIuOTgsMjc4LjcxIEMxMTcuMjMsMjc4LjcxIDEzNy44MSwyOTIuOTUgMTUwLjk4LDMxOC43MSBDMTYwLjc1LDMzNy44NCAxNjYuMTIsMzYyLjcxIDE2Ni4xLDM4OC44OSBDMTY2LjA4LDQxNS4wNyAxNjAuNjgsNDM5Ljg5IDE1MC45LDQ1OC45OSBDMTQyLjQsNDc1LjYgMTMwLjgzLDQ4Ny40MSAxMTcuMiw0OTMuNzEgQzExMC4zMiw0OTYuODkgMTA1LjIsNDg2LjY2IDExMS45Miw0ODMuMTIgTDExMi41Niw0ODIuOCBDMTIzLjcsNDc3LjUxIDEzMy4yNiw0NjcuNiAxNDAuNDIsNDUzLjYyIEMxNDkuMzYsNDM2LjE1IDE1NC4zLDQxMy4xNiAxNTQuMzIsMzg4Ljg4IEMxNTQuMzQsMzY0LjYgMTQ5LjQzLDM0MS41NiAxNDAuNDksMzI0LjA3IEMxMjkuNDIsMzAyLjQxIDExMi41NywyOTAuNDggOTMuMDMsMjkwLjQ2IEw5My4wMywyOTAuNDYgQzgzLjY0LDI5MC40NiA2OS43OCwyOTMuMTcgNTUuNDYsMjk5Ljk4IEw1NS4yOCwzMDAuMzcgQzQ4LjQ1MTY0NDcsMzAzLjY2MjU2OCA0Mi4wMDA1ODE0LDMwNy42ODYxMDEgMzYuMDQsMzEyLjM3IEMxOS43NCwzMjUuMTggMC4zLDM0OC44NiAwLjI3LDM4OC45IEMwLjI3LDQyOC40NSAyMC45MSw0NTIuMzcgMzguMjcsNDY1LjQ3IEM0My4zNzQ3MTYsNDY5LjMxMTk5MSA0OC43OTM4NTczLDQ3Mi43MTczNTIgNTQuNDcsNDc1LjY1IEw1NC40Myw0NzUuNjMgWiBNMTcuNTYsMzUwLjg0IEMxNy41NiwzNTAuODQgMjAuNDIsMzQwLjg0IDI3LjY5LDM0MC44NCBDMzUuMjMsMzQwLjg0IDQxLjM0LDM0NS4yOCA0MS4zNTAwMTIzLDM1MC43OSBDNDEuMzYsMzU2LjMgMzUuMjYsMzYwLjc5IDI3LjczLDM2MC43OSBDMjAuMiwzNjAuNzkgMTUuNzUsMzU3LjYzIDE3LjU2LDM1MC44NCBaIE0yNy4xNCw0MzguMDggQzI2LjcyMzI2NzQsNDM3LjQzNzQ2OSAyNi43MTAwNDExLDQzNi42MTMzODEgMjcuMTA1OTM5NSw0MzUuOTU3ODA4IEMyNy41MDE4MzgsNDM1LjMwMjIzNCAyOC4yMzczMzc0LDQzNC45MzAyOTkgMjksNDM1IEMzMC40ODA5NDI2LDQzNS4yNTE2ODggMzEuOTc4MjIwOCw0MzUuMzk1NCAzMy40OCw0MzUuNDMgQzU3LjEzLDQzNS40MyA3Ni4yNiw0MTMuMTQgNzYuMjIsMzg1LjczIEM3Ni4xOCwzNTguMzIgNTYuOTcsMzM2LjE0IDMzLjMyLDMzNi4xOCBMMzIuNjEsMzM2LjE4IEMzMS44NTI0NDI0LDMzNi4xNzUyOTUgMzEuMTYyNTY3MiwzMzUuNzQyOTY2IDMwLjgyODAxMjEsMzM1LjA2MzI2OCBDMzAuNDkzNDU3LDMzNC4zODM1NzEgMzAuNTcxNjU0MiwzMzMuNTczMTg3IDMxLjAzLDMzMi45NyBDMzQuNjU0MTYzLDMyOC43MDg4MTUgMzguNjk0MTQzNCwzMjQuODE5NTggNDMuMDksMzIxLjM2IEM1OS45MiwzMDguMTQgODAuMjYsMzAyLjI3IDkzLjAxLDMwMi4yNCBDMTI1LjU2LDMwMi4yNCAxNDIuNTYsMzQ1Ljg0IDE0Mi41MzAwNCwzODguODcgQzE0Mi41LDQzMS45IDEyNS40Niw0NzUuMzcgOTIuOTYsNDc1LjQzIEw5Mi44Nyw0NzUuNDMgQzg0LjIzLDQ3NS40MyA2My42Miw0NzAuMjEgNDUuMTQsNDU2LjI2IEMzOC4yODI4NDU3LDQ1MS4xMTMzMDEgMzIuMjE4MjE1MSw0NDQuOTg4MDI1IDI3LjE0LDQzOC4wOCBaIE02NDYuODcsMjk4IEM2ODcuMTIsMjcxLjMzIDgwNS4xMywxOTMuMTMgODA3LjQ3LDE5MS4zNiBDODIyLjg1MjM4NSwxODAuNzA5Njc3IDgzMC4xNTc3NzMsMTYxLjczNjI5MSA4MjUuODksMTQzLjUyIEM4MjQuMDA1NzcyLDEzNS45NTM1NDQgODIxLjM5NzA1OCwxMjguNTg2MTg2IDgxOC4xLDEyMS41MiBMODE4LjEsMTIxLjUyIEM4MTkuNTQwMzM1LDExNS4yOTUyMjcgODIwLjQ0Njk1NiwxMDguOTU4OTE1IDgyMC44MSwxMDIuNTggQzgyMiw4MC45MyA4MTcuMTYsNDkuNjkgNzg3LDI0LjE0IEM3NTYuNDEsLTEuNzMgNzI1Ljc3LC0yLjIxIDcwNS40NiwxLjk0IEM2OTguMDQzMjIxLDMuNDY1NzYwMzcgNjkwLjgxNDE0NSw1Ljc5Mjc0NTAxIDY4My45LDguODggTDY4My40OCw4Ljc4IEM2NjksMTUuMjkgNjU4LDI0LjEyIDY1MS45MywzMS4yOCBMNjUxLjkzLDMxLjI4IEM2MzkuMyw0Ni4yIDYzNy41MSw2Ni43OCA2NDYuODcsODkuMjIgQzY1NC40NCwxMDcuMzUgNjY4LjgyLDEyNS45OCA2ODcuMzcsMTQxLjY4IEM3MDUuOTIsMTU3LjM4IDcyNi42MywxNjguNDYgNzQ1Ljc1LDE3Mi45NCBDNzYxLjAzLDE3Ni41MSA3NzQuNzUsMTc1LjYzIDc4Ni4wMSwxNzAuNTUgQzc4Ni4yMiwxNzAuNDYgNzg2LjQ0LDE3MC4zNiA3ODYuNjgsMTcwLjI3IEM3OTMuNjgsMTY3LjQ1IDc5OC4yMSwxNzcuOTYgNzkxLjM0LDE4MS4xNCBDNzc3LjczLDE4Ny40NyA3NjEuMjMsMTg4LjY2IDc0My4wNiwxODQuNDEgQzcyMi4xNywxNzkuNTIgNjk5LjY5LDE2Ny41NCA2NzkuNzYsMTUwLjY3IEM2NTkuODMsMTMzLjggNjQ0LjI1LDExMy42IDYzNiw5My43OCBDNjI0Ljg1LDY3LjA1IDYyNy4zMSw0Mi4xNiA2NDMsMjMuNjQgQzY0Ny4xMSwxOC44MSA2NTYuNjgsMTEuNDcgNjYxLjc2LDcuNzEgQzY2Mi4yNzEwOCw3LjMyNzE0NzQ5IDY2Mi40ODM3NDEsNi42NjI2OTc5IDY2Mi4yODk5MzcsNi4wNTQyNDIzIEM2NjIuMDk2MTMzLDUuNDQ1Nzg2NyA2NjEuNTM4MzU2LDUuMDI2NzM2MDMgNjYwLjksNS4wMSBDNjQyLjU0ODIzNCw0LjU4MzAyMDY1IDYyNS42NjI3NjksMTQuOTkyNDU5MyA2MTcuOCwzMS41OCBDNjE2LjQyLDM0LjIzIDU1NS40MSwxNjEuNTIgNTM1LjcxLDIwMi41OCBDNTgzLjkxODMyLDIxOC40NDUwMDQgNjIzLjg4NDI0NCwyNTIuNzUxODQ1IDY0Ni44NywyOTggWiBNNzMyLjU4LDE0IEM3MzcuMjgsOC40NSA3NDYuNzUsMTIuNzMgNzQ2Ljc1LDEyLjczIEM3NTMuMSwxNS43MyA3NTIuNjUsMjEuMTggNzQ3Ljc1LDI2LjkyIEM3NDIuODUsMzIuNjYgNzM1LjUxLDM0LjQxIDczMS4zMiwzMC44NSBDNzI3LjEzLDI3LjI5IDcyNy43MiwxOS43OCA3MzIuNTgsMTQgWiBNNzkzLjEsMTUwLjggTDc5My4wNCwxNTAuODcgQzc3MiwxNzUuNjIgNzI3Ljc4LDE2MC40OCA2OTUsMTMyLjcxIEM2NjIuMjIsMTA0Ljk0IDYzOS45MSw2My43MSA2NjAuOTQsMzguOTEgQzY2OS4yLDI5LjIxIDY4Ni44MywxNy40OSA3MDcuOCwxMy4yIEM3MTMuMjc5NjQzLDEyLjA4MjEwMTIgNzE4Ljg1NzQ5MSwxMS41MTU5NDEzIDcyNC40NSwxMS41MSBDNzI1LjIwODQ5NCwxMS41NDYwMjA0IDcyNS44ODExNjYsMTIuMDA4NDc1MSA3MjYuMTg2NDE2LDEyLjcwMzc2ODQgQzcyNi40OTE2NjcsMTMuMzk5MDYxOCA3MjYuMzc2ODM4LDE0LjIwNzI0ODMgNzI1Ljg5LDE0Ljc5IEM3MjUuNzEsMTQuOTcgNzI1LjU1LDE1LjE1IDcyNS40MSwxNS4zMiBDNzEwLjA5LDMzLjMyIDcxNC42LDYyLjMyIDczNS40OCw4MC4wOSBDNzU2LjM2LDk3Ljg2IDc4NS43LDk3LjY0IDgwMS4wMiw3OS42MiBDODAxLjk2ODY0NSw3OC40NTU0MTAzIDgwMi44MjQ1OTcsNzcuMjE4MjkyMiA4MDMuNTgsNzUuOTIgQzgwNC4wMTUyODgsNzUuMjgxOTk4OSA4MDQuNzc5MDI3LDc0Ljk1MTY1MjYgODA1LjU0MjA0NCw3NS4wNzEzNDE1IEM4MDYuMzA1MDYyLDc1LjE5MTAzMDUgODA2LjkzMDk3LDc1LjczOTM2MDkgODA3LjE1LDc2LjQ4IEM4MDkuMTI0NzA5LDg0LjgzMzY5NDMgODA5Ljg2MjU3Myw5My40MzIwMDEyIDgwOS4zNCwxMDIgQzgwOCwxMjUuMTEgNzk4LjY4LDE0NC4yIDc5My4xLDE1MC44IFogTTEwMi4yMSwxMzQuNDggQzk1LjY0NDY2MTEsMTUwLjQ3MzY4IDEwMS43MTQ1NjYsMTY4Ljg2NTkxNyAxMTYuNTEsMTc3LjgxIEwyNTEuNTEsMjYwLjAyIEMyNTEuOTQwNTQyLDI2MC4yNzkzMjEgMjUyLjQ1NzcwNSwyNjAuMzUzMzY1IDI1Mi45NDM3MTQsMjYwLjIyNTI2OSBDMjUzLjQyOTcyNCwyNjAuMDk3MTc0IDI1My44NDMyMDcsMjU5Ljc3Nzg0NCAyNTQuMDksMjU5LjM0IEMyNjkuMTM3ODgzLDIzMi42NjM2ODUgMjg4Ljg0MjM2MywyMDguODk4NDE2IDMxMi4yNywxODkuMTcgQzMxMy4wNDEyODYsMTg4LjUzMjEyOCAzMTMuMTYxMjQ0LDE4Ny4zOTQ3NDEgMzEyLjU0LDE4Ni42MSBMMjE4LjQsNjUuODcgQzIxNS4wNDMwMTcsNjEuNjU2NjkxNCAyMDkuMjg5NjU4LDYwLjE5Njg4MzkgMjA0LjMzLDYyLjMgQzIwMy4xNTI2NjUsNjIuODA2MDk5OCAyMDEuODE3NTc4LDYyLjc5ODEzMTggMjAwLjY0NjM2Nyw2Mi4yNzgwMTU2IEMxOTkuNDc1MTU3LDYxLjc1Nzg5OTQgMTk4LjU3NDAwNCw2MC43NzI3ODg0IDE5OC4xNiw1OS41NiBDMTk3LjQyNzMxLDU3LjE3NDg5NTcgMTk4LjY2OTA3OCw1NC42MzAxNDU5IDIwMSw1My43NCBDMjA5LjczNjE0NCw1MC4xNDM3NzE1IDIxOS43OTc3ODksNTIuNzcxMzg2NyAyMjUuNjYsNjAuMTggTDMxOS43NiwxODAuODIgQzMyMC4wNTY4OCwxODEuMjA3OTkgMzIwLjQ5NjU3MywxODEuNDYxMTY0IDMyMC45ODExNjcsMTgxLjUyMzE0NyBDMzIxLjQ2NTc2MiwxODEuNTg1MTMgMzIxLjk1NTAyMiwxODEuNDUwNzc1IDMyMi4zNCwxODEuMTUgQzMyMy43MywxODAuMTUgMzI1LjEyLDE3OS4wNyAzMjYuNTMsMTc4LjA1IEMzMjYuOTM1Nzk4LDE3Ny43NTY1NDIgMzI3LjIwNTI5LDE3Ny4zMTExMDcgMzI3LjI3NjkwNCwxNzYuODE1NDY1IEMzMjcuMzQ4NTE4LDE3Ni4zMTk4MjMgMzI3LjIxNjEzNCwxNzUuODE2MzIyIDMyNi45MSwxNzUuNDIgTDIzNS43MSw1Ni40MiBDMjI2LjE2NDMzNiw0My45OTQ2NjgzIDIwOS42NzgxMDIsMzkuMTcwNTE0IDE5NC45NCw0NC40OSBDMTc0LjE4LDI3LjQ0IDE0MC43NCwyOS45OCAxMTcuMTEsNTEuNDkgQzEwNC44Miw2Mi42OCA5Ni45NSw3Ny4zMiA5NC45Niw5Mi42OSBDOTMuMTUsMTA2LjY5IDk2LjQsMTE5LjggMTA0LjEyLDEzMC4xMiBDMTAzLjQyLDEzMS42IDEwMi43OCwxMzMuMDggMTAyLjIxLDEzNC40OCBaIE0xMDQuMDUsOTMuODMgQzEwNS43Niw4MC42MSAxMTIuNTksNjcuOTggMTIzLjI3LDU4LjI1IEMxNDIuMDQsNDEuMTcgMTY3Ljc2LDM3Ljc5IDE4NS4xOCw0OC43NCBDMTY4Ljg2MDMwMiw1Ni43MzE3MjM1IDE1My43ODY1OSw2Ny4wNDkyMTYzIDE0MC40Myw3OS4zNyBDMTI3LjYxMzkzNCw5MS4xNjc4MTI2IDExNi45MDY3MDMsMTA1LjA2NzU5OCAxMDguNzcsMTIwLjQ3IEMxMDQuMzU2OTA1LDExMi4zMzQxOCAxMDIuNzAwNzU4LDEwMi45ODY3NzQgMTA0LjA1LDkzLjgzIEwxMDQuMDUsOTMuODMgWiBNNDE0LjcsNTI5LjQ5IEM0NTQuMDUzNzk4LDU0NS43Mjk2OTQgNDk4LjIzNjIwMiw1NDUuNzI5Njk0IDUzNy41OSw1MjkuNDkgQzU5NS42NDA5NzksNTA0LjQyMDk1MyA2MzMuMDQ2MDg3LDQ0Ny4wMzczMDcgNjMyLjU1MjY5MiwzODMuODA2NTQgQzYzMi4wNTkyOTcsMzIwLjU3NTc3NCA1OTMuNzYzMjU5LDI2My43ODI4MyA1MzUuMzI4MTQxLDIzOS42MjI3MzQgQzQ3Ni44OTMwMjMsMjE1LjQ2MjYzOCA0MDkuNjcyMDMzLDIyOC42MjkzOTMgMzY0LjY3LDI3My4wNSBDMzUwLjQyMTg3MSwyODcuMzg0NjE3IDMzOS4xMTkxMzcsMzA0LjM3MDk5MiAzMzEuNCwzMjMuMDUgQzMxNS4xNjAyODksMzYyLjQ3NjU0MSAzMTUuMTYwMjg5LDQwNi43MjM0NTkgMzMxLjQsNDQ2LjE1IEMzNDYuODcyNjI2LDQ4My45NjYwNTEgMzc2Ljg4NTgwNyw1MTMuOTgyODM1IDQxNC43LDUyOS40NiBMNDE0LjcsNTI5LjQ5IFogTTM1My4xNSwzODQuNjMgQzM1My4wMjY4NDYsMzY3LjU1ODI4NiAzNTYuMjc5MTY5LDM1MC42MzA1NzUgMzYyLjcyLDMzNC44MiBDMzY4LjY4Nzc0MywzMTkuOTQzMTYgMzc3LjQ3NTY5NiwzMDYuMzYwNTQ1IDM4OC42LDI5NC44MiBDNDExLjcwMzQxLDI3MS40Njk3NzkgNDQzLjE4Njg1OSwyNTguMzMwODEzIDQ3Ni4wMzUsMjU4LjMzMDgxMyBDNTA4Ljg4MzE0MSwyNTguMzMwODEzIDU0MC4zNjY1OSwyNzEuNDY5Nzc5IDU2My40NywyOTQuODIgQzU3NC41ODc1ODksMzA2LjM2NTg3MSA1ODMuMzc0NjQ2LDMxOS45NDcxMDMgNTg5LjM1LDMzNC44MiBDNTk1Ljc4NjAyMywzNTAuNjMyMDAxIDU5OS4wMzgxNiwzNjcuNTU4NzQzIDU5OC45MiwzODQuNjMgQzU5OS4xNDI2ODgsNDE3Ljk2MTYyNyA1ODYuNDM1ODM2LDQ1MC4wODE4MjYgNTYzLjQ3LDQ3NC4yNCBDNTUyLjQxNTAyNyw0ODUuNjc1NTA1IDUzOS4xNzY4MSw0OTQuNzc1MjkyIDUyNC41NCw1MDEgQzQ5My41MjM2NjIsNTE0LjA1MTEwNyA0NTguNTU2MzM4LDUxNC4wNTExMDcgNDI3LjU0LDUwMSBDNDEyLjkwMTI4NSw0OTQuNzgzMjgyIDM5OS42NjIxODcsNDg1LjY4NjI5IDM4OC42MSw0NzQuMjUgQzM2NS42NDQxNjQsNDUwLjA5MTgyNiAzNTIuOTM3MzEyLDQxNy45NzE2MjcgMzUzLjE2LDM4NC42NCBMMzUzLjE1LDM4NC42MyBaIE00NzYsMTQ0LjYyOTc0MyBDNDk3LjM0ODMyNCwxNDQuNTk4NzUyIDUxOC42MDU1NDksMTQ3LjQxMzU0MyA1MzkuMjEsMTUzIEM1MzkuNzg1NTI5LDE1My4xNTY4MjkgNTQwLjI2MTAxNCwxNTMuNTYyMzcxIDU0MC41MDY2ODYsMTU0LjEwNTk0NiBDNTQwLjc1MjM1OSwxNTQuNjQ5NTIxIDU0MC43NDI1NzMsMTU1LjI3NDM4NCA1NDAuNDgsMTU1LjgxIEw1MjAuMTQsMTk4LjIgTDUyMC4xNCwxOTguMiBDNDM0Ljc0OTQwMywxNzguMDgyODEzIDM0Ni41OTQ2NDYsMjE4LjQ3MjQ5MiAzMDYuMDcsMjk2LjI4IEMzMDUuNjM2MzgsMjk3LjA5ODk3MyAzMDQuNjk2OTYyLDI5Ny41MTI4MTMgMzAzLjgsMjk3LjI4IEwyNTkuODUsMjg1Ljc3IEMyNTkuMjcyNzIxLDI4NS42MjEzMDYgMjU4Ljc5MTg2MiwyODUuMjIyODUgMjU4LjUzODUwMSwyODQuNjgzMjQ5IEMyNTguMjg1MTM5LDI4NC4xNDM2NDggMjU4LjI4NTY4OSwyODMuNTE5MTU0IDI1OC41NCwyODIuOTggQzI5Ni44LDIwMS4yOCAzNzkuOCwxNDQuNjI5NzQzIDQ3NiwxNDQuNjI5NzQzIFogTTM0OS4xLDE2MSBDMzQ5LjMxNzQyLDE2MS40NjYxMjIgMzQ5LjcyMDAxMiwxNjEuODE5OTY2IDM1MC4yMTAxODYsMTYxLjk3NTc1NyBDMzUwLjcwMDM1OSwxNjIuMTMxNTQ5IDM1MS4yMzMzNjUsMTYyLjA3NTA2NiAzNTEuNjgsMTYxLjgyIEMzNzQuOTI5OTE1LDE0OC44MDAzNjUgNDAwLjA3OTI4NiwxMzkuNTEwNjU0IDQyNi4yMSwxMzQuMjkgTDQzNS4yMSwxMzIuNjYgQzQ2Mi4xODc5NzYsMTI4LjIwMzI1NyA0ODkuNzA4MzU3LDEyOC4xMjg5NjkgNTE2LjcxLDEzMi40NCBDNTE3LjIxODA2MywxMzIuNTIyNTYxIDUxNy43Mzc2MjQsMTMyLjM5MDg5MSA1MTguMTQ1MDQ1LDEzMi4wNzYzMjQgQzUxOC41NTI0NjcsMTMxLjc2MTc1NyA1MTguODExMzE3LDEzMS4yOTI0MiA1MTguODYsMTMwLjc4IEw1MjEuNDksMTAyLjI0IEM1MjIuODgwMjQxLDg3LjEzNDkwODIgNTE0LjUzNTYxNiw3Mi44MTA5MDU4IDUwMC43MSw2Ni41NyBDNDk2LjA5NTM1NCw2NC41MDQxNDE4IDQ5MS4zMjM2MjUsNjIuODA4NzkwNSA0ODYuNDQsNjEuNSBDNDgzLjE3NjA1Myw1Ny4wMTc0NDE3IDQ3OS40NTI0ODcsNTIuODg4MzM5MyA0NzUuMzMsNDkuMTggQzQ2My42NCwzOC43MyA0NDMuNDQsMjcuMzcgNDEzLjYxLDMyLjYyIEw0MTMuNDEsMzIuNjIgQzM4NC4xMiwzNy45MyAzNjkuMDksNTYuNDMgMzYxLjYzLDcxIEMzNTkuNTI2MzA0LDc1LjE0NzcyMTMgMzU3Ljc2MDU3OSw3OS40NTgzNjQyIDM1Ni4zNSw4My44OSBDMzUxLjQxNDM4Nyw4Ny4yODczMSAzNDYuODI1NTQ5LDkxLjE2MjcwMDYgMzQyLjY1LDk1LjQ2IEMzMzIuNzI5Mjc1LDEwNS45MDEzMDEgMzMwLjI2ODEwMSwxMjEuMzc2MDggMzM2LjQ2LDEzNC4zOCBMMzQ5LjEsMTYxIFogTTM2OS44Myw3NS4xOCBDMzc2LjMzLDYyLjQyIDM4OS40Niw0Ni4yOCA0MTUuMDcsNDEuNzEgTDQxNS4yNSw0MS43MSBDNDQxLjQ0LDM3LjEgNDU5LjA2LDQ2Ljk4IDQ2OS4yNSw1Ni4wOCBDNDcwLjE1LDU2Ljg5IDQ3MS4wMiw1Ny43MyA0NzEuODcsNTguNTggQzQ1Ny43MSw1Ni41OCA0MzkuODcsNTYuNTEgNDE4LjA1LDYwLjQxIEMzOTcuNDcsNjQuMDkgMzgxLjU5LDY5LjgyIDM2OS40LDc2LjExIEMzNjkuNTQsNzUuODEgMzY5LjY3LDc1LjUyIDM2OS44Myw3NS4yMiBMMzY5LjgzLDc1LjE4IFogTTM0NS4xNSwxMDkuNjIgQzM0OC43MSwxMDAuMjEgMzYzLjE1LDgzLjEyIDQxOS45Myw3Mi45OSBDNDc5LjYsNjIuMzMgNTAwLjI5LDc0LjUxIDUwNy4wMiw4MS41OCBDNTA3Ljg2ODIxNCw4Mi40NTAzNDg0IDUwOC4yMzkyMyw4My42NzkzNTcgNTA4LjAxNDMwMSw4NC44NzM2Njg0IEM1MDcuNzg5MzczLDg2LjA2Nzk3OTggNTA2Ljk5NjcwNSw4Ny4wNzc4Mjc5IDUwNS44OSw4Ny41OCBMNTA1LjI5LDg3Ljg1IEM1MDMuMzEwMjYxLDg4Ljc4MDg0NiA1MDAuOTcwNTM5LDg4LjQ4MDU4MTcgNDk5LjI5LDg3LjA4IEM0OTMuNzEsODIuMzMgNDc1LjkyLDczLjA4IDQyNi4wNyw4MS4zMSBMNDE3LDgyLjkyIEMzNjguMSw5Mi4zNSAzNTYuNjcsMTA2LjM4IDM1NCwxMTIuMzEgQzM1My4xODc2NSwxMTQuMDcxOTI5IDM1MS41MTY5OTcsMTE1LjI4NDE5NCAzNDkuNTksMTE1LjUxIEMzNDguMDk5NTYsMTE1LjY1NjgyIDM0Ni42Mzk3NTIsMTE1LjAxOTQwMSAzNDUuNzM0MzIzLDExMy44MjY0MzcgQzM0NC44Mjg4OTQsMTEyLjYzMzQ3MyAzNDQuNjA3NjYyLDExMS4wNTYwMDcgMzQ1LjE1LDEwOS42NiBMMzQ1LjE1LDEwOS42MiBaIiBpZD0iU2hhcGUiIGZpbGw9ImN1cnJlbnRDb2xvciIgZmlsbC1ydWxlPSJub256ZXJvIj48L3BhdGg+CiAgICA8L2c+Cjwvc3ZnPgo= + mediatype: image/svg+xml + install: + spec: + clusterPermissions: + - rules: + - apiGroups: + - monitoring.rhobs + resources: + - alertmanagers + - alertmanagers/finalizers + - alertmanagers/status + - alertmanagerconfigs + - prometheuses + - prometheuses/finalizers + - prometheuses/status + - prometheusagents + - prometheusagents/finalizers + - prometheusagents/status + - thanosrulers + - thanosrulers/finalizers + - thanosrulers/status + - scrapeconfigs + - servicemonitors + - podmonitors + - probes + - prometheusrules + verbs: + - '*' + - apiGroups: + - apps + resources: + - statefulsets + verbs: + - '*' + - apiGroups: + - "" + resources: + - configmaps + - secrets + verbs: + - '*' + - apiGroups: + - "" + resources: + - pods + verbs: + - list + - delete + - apiGroups: + - "" + resources: + - services + - services/finalizers + - endpoints + verbs: + - get + - create + - update + - delete + - apiGroups: + - "" + resources: + - nodes + verbs: + - list + - watch + - apiGroups: + - "" + resources: + - namespaces + verbs: + - get + - list + - watch + - apiGroups: + - networking.k8s.io + resources: + - ingresses + verbs: + - get + - list + - watch + - apiGroups: + - storage.k8s.io + resources: + - storageclasses + verbs: + - get + - apiGroups: + - security.openshift.io + resourceNames: + - nonroot-v2 + - nonroot + resources: + - securitycontextconstraints + verbs: + - use + serviceAccountName: rhobs-prometheus-operator + - rules: + - apiGroups: + - security.openshift.io + resourceNames: + - nonroot-v2 + - nonroot + resources: + - securitycontextconstraints + verbs: + - use + serviceAccountName: rhobs-prometheus-operator-admission-webhook + deployments: + - label: + app.kubernetes.io/component: controller + app.kubernetes.io/name: prometheus-operator + app.kubernetes.io/part-of: rhobs-prometheus-operator + app.kubernetes.io/version: 0.69.1-rhobs1 + name: rhobs-prometheus-operator + spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/component: controller + app.kubernetes.io/name: prometheus-operator + app.kubernetes.io/part-of: rhobs-prometheus-operator + strategy: {} + template: + metadata: + annotations: + kubectl.kubernetes.io/default-container: prometheus-operator + target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}' + labels: + app.kubernetes.io/component: controller + app.kubernetes.io/name: prometheus-operator + app.kubernetes.io/part-of: rhobs-prometheus-operator + app.kubernetes.io/version: 0.69.1-rhobs1 + spec: + automountServiceAccountToken: true + containers: + - args: + - --prometheus-config-reloader=quay.io/rhobs/obo-prometheus-config-reloader:v0.69.1-rhobs1 + image: quay.io/rhobs/obo-prometheus-operator:v0.69.1-rhobs1 + name: prometheus-operator + ports: + - containerPort: 8080 + name: http + resources: + limits: + cpu: 100m + memory: 500Mi + requests: + cpu: 5m + memory: 250Mi + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - ALL + readOnlyRootFilesystem: true + terminationMessagePolicy: FallbackToLogsOnError + securityContext: + runAsNonRoot: true + runAsUser: 65534 + seccompProfile: + type: RuntimeDefault + serviceAccountName: rhobs-prometheus-operator + - label: + app.kubernetes.io/name: prometheus-operator-admission-webhook + app.kubernetes.io/part-of: rhobs-prometheus-operator + app.kubernetes.io/version: 0.69.1-rhobs1 + name: rhobs-prometheus-operator-admission-webhook + spec: + replicas: 2 + selector: + matchLabels: + app.kubernetes.io/name: prometheus-operator-admission-webhook + app.kubernetes.io/part-of: rhobs-prometheus-operator + strategy: + rollingUpdate: + maxUnavailable: 1 + template: + metadata: + annotations: + kubectl.kubernetes.io/default-container: prometheus-operator-admission-webhook + labels: + app.kubernetes.io/name: prometheus-operator-admission-webhook + app.kubernetes.io/part-of: rhobs-prometheus-operator + app.kubernetes.io/version: 0.69.1-rhobs1 + spec: + affinity: + podAntiAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + - labelSelector: + matchLabels: + app.kubernetes.io/name: prometheus-operator-admission-webhook + app.kubernetes.io/part-of: rhobs-prometheus-operator + namespaces: + - default + topologyKey: kubernetes.io/hostname + automountServiceAccountToken: false + containers: + - args: + - --web.enable-tls=true + - --web.cert-file=/tmp/k8s-webhook-server/serving-certs/tls.crt + - --web.key-file=/tmp/k8s-webhook-server/serving-certs/tls.key + image: quay.io/rhobs/obo-admission-webhook:v0.69.1-rhobs1 + name: prometheus-operator-admission-webhook + ports: + - containerPort: 8443 + name: https + resources: + limits: + cpu: 200m + memory: 200Mi + requests: + cpu: 50m + memory: 50Mi + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - ALL + readOnlyRootFilesystem: true + terminationMessagePolicy: FallbackToLogsOnError + securityContext: + runAsNonRoot: true + runAsUser: 65534 + seccompProfile: + type: RuntimeDefault + serviceAccountName: rhobs-prometheus-operator-admission-webhook + strategy: deployment + installModes: + - supported: false + type: OwnNamespace + - supported: false + type: SingleNamespace + - supported: false + type: MultiNamespace + - supported: true + type: AllNamespaces + keywords: + - monitoring + - prometheus + - thanos + links: + - name: RHOBS Prometheus Operator + url: https://observability-operator.rhobs.io + maintainers: + - email: spasquie@redhat.com + name: Simon Pasquier + - email: sthaha@redhat.com + name: Sunil Thaha + - email: jfajersk@redhat.com + name: Jan Fajerski + maturity: alpha + provider: + name: Red Hat + version: 0.69.1-rhobs1 + webhookdefinitions: + - admissionReviewVersions: + - v1 + containerPort: 443 + deploymentName: rhobs-prometheus-operator-admission-webhook + failurePolicy: Ignore + generateName: alertmanagerconfigs.monitoring.rhobs + rules: + - apiGroups: + - monitoring.rhobs + apiVersions: + - '*' + operations: + - CREATE + - UPDATE + resources: + - alertmanagerconfigs + scope: Namespaced + sideEffects: None + targetPort: https + timeoutSeconds: 5 + type: ValidatingAdmissionWebhook + webhookPath: /admission-alertmanagerconfigs/validate + - admissionReviewVersions: + - v1 + containerPort: 443 + deploymentName: rhobs-prometheus-operator-admission-webhook + failurePolicy: Ignore + generateName: prometheusrules.monitoring.rhobs + rules: + - apiGroups: + - monitoring.rhobs + apiVersions: + - '*' + operations: + - CREATE + - UPDATE + resources: + - prometheusrules + scope: Namespaced + sideEffects: None + targetPort: https + timeoutSeconds: 5 + type: ValidatingAdmissionWebhook + webhookPath: /admission-prometheusrules/validate diff --git a/rhobs/olm/bundle/metadata/annotations.yaml b/rhobs/olm/bundle/metadata/annotations.yaml new file mode 100644 index 000000000..831c6b36b --- /dev/null +++ b/rhobs/olm/bundle/metadata/annotations.yaml @@ -0,0 +1,15 @@ +annotations: + # Core bundle annotations. + operators.operatorframework.io.bundle.mediatype.v1: registry+v1 + operators.operatorframework.io.bundle.manifests.v1: manifests/ + operators.operatorframework.io.bundle.metadata.v1: metadata/ + operators.operatorframework.io.bundle.package.v1: rhobs-prometheus-operator + operators.operatorframework.io.bundle.channels.v1: stable + operators.operatorframework.io.bundle.channel.default.v1: stable + operators.operatorframework.io.metrics.builder: operator-sdk-v1.28.1 + operators.operatorframework.io.metrics.mediatype.v1: metrics+v1 + operators.operatorframework.io.metrics.project_layout: unknown + + # Annotations for testing. + operators.operatorframework.io.test.mediatype.v1: scorecard+v1 + operators.operatorframework.io.test.config.v1: tests/scorecard/ diff --git a/rhobs/olm/bundle/tests/scorecard/config.yaml b/rhobs/olm/bundle/tests/scorecard/config.yaml new file mode 100644 index 000000000..566572f7c --- /dev/null +++ b/rhobs/olm/bundle/tests/scorecard/config.yaml @@ -0,0 +1,70 @@ +apiVersion: scorecard.operatorframework.io/v1alpha3 +kind: Configuration +metadata: + name: config +stages: +- parallel: true + tests: + - entrypoint: + - scorecard-test + - basic-check-spec + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: basic + test: basic-check-spec-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-bundle-validation + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-bundle-validation-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-crds-have-validation + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-crds-have-validation-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-crds-have-resources + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-crds-have-resources-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-spec-descriptors + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-spec-descriptors-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-status-descriptors + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-status-descriptors-test + storage: + spec: + mountPath: {} +storage: + spec: + mountPath: {} diff --git a/rhobs/olm/catalog/config/index.yaml b/rhobs/olm/catalog/config/index.yaml new file mode 100644 index 000000000..15ff7a11a --- /dev/null +++ b/rhobs/olm/catalog/config/index.yaml @@ -0,0 +1,17 @@ +--- +schema: olm.package +name: rhobs-prometheus-operator +defaultChannel: stable +description: | + RHOBS fork of Prometheus operator to manage Monitoring +icon: + # TODO: find an icon + base64data: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iODI3cHgiIGhlaWdodD0iNjg2cHgiIHZpZXdCb3g9IjAgMCA4MjcgNjg2IiBjb2xvcj0iIzJCMzg4RiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDx0aXRsZT5PYnNlcnZhdG9yaXVtRmluYWxfQmx1ZV9JY29uT25seTwvdGl0bGU+CiAgICA8ZyBpZD0iT2JzZXJ2YXRvcml1bUZpbmFsX0JsdWVfSWNvbk9ubHkiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxwYXRoIGQ9Ik03MTYuMTcsNTczLjg3IEw3MTYuMTcsNDk0LjQ5IEw3MTYuMDksMzg0LjU4IEM3MTYuMTM4NjYsMzY4Ljc4MDIzOSA3MTQuNjA3NzE1LDM1My4wMTUxODcgNzExLjUyLDMzNy41MiBMNzExLjUyLDMzNy40NiBDNzExLjUyLDMzNy4zIDcxMS40NSwzMzcuMTQgNzExLjQyLDMzNi45OCBDNzA5Ljg3MzMzMywzMjkuMjkzMzMzIDcwNy45NDY2NjcsMzIxLjY4IDcwNS42NCwzMTQuMTQgQzcwNS41OTc4OTEsMzE0LjAwNzMxIDcwNS41NDA4NTksMzEzLjg3OTgyOCA3MDUuNDcsMzEzLjc2IEM3MDIuNzM2MjQ4LDMwNC45ODE3IDY5OS41MDA5MjgsMjk2LjM2NzUzNSA2OTUuNzgsMjg3Ljk2IEw2OTIuODcsMjg3LjEgQzY3OS42OSwyOTUuNzcgNjYwLjE3LDMwOC40NiA2NTQuODcsMzExLjg3IEM2NTQuMTAzNDczLDMxMi4zOTI3MjcgNjUzLjc5NzA4OCwzMTMuMzczOTg4IDY1NC4xMywzMTQuMjQgQzY2Mi44Nzg4NjYsMzM2LjM4NDYzOCA2NjcuNDEwMDU3LDM1OS45Njk4OTIgNjY3LjQ5LDM4My43OCBDNjY3Ljk1LDQ4OC43OCA1ODIuNzMsNTc1LjIgNDc3LjcxLDU3Ni4xMiBDNDA2LjU1MzMyLDU3Ni43ODEyNjkgMzQwLjkwMTM1Nyw1MzcuOTIwMDUyIDMwNy4yNSw0NzUuMjIgQzMwNi44MTQ0NTUsNDc0LjM5MjE0OCAzMDUuODYzMjYyLDQ3My45NzY3NzkgMzA0Ljk2LDQ3NC4yMiBMMjM3LjczLDQ5My43MiBDMjM2Ljg3NzA2NCw0OTMuOTczNTg0IDIzNi4yOTQyNDYsNDk0Ljc2MDE4NSAyMzYuMjk5OTU4LDQ5NS42NSBDMjM2LjQ0LDUzNy4yOCAyMzYuNTgsNTczLjg0IDIzNi41OCw1NzMuODQgQzIzNi41OCw2NDEuOTEgMzMzLjMsNjc5LjQgNDM5Ljg2LDY4Ni4zMyBDNDQwLjQxNDI0NCw2ODYuMzY0OTExIDQ0MC45NTk2ODksNjg2LjE3NTQ3OSA0NDEuMzY1NjE1LDY4NS43OTYxMDggQzQ0MS43NzE1NDIsNjg1LjQxNjczOCA0NDIuMDAxMzYzLDY4NC44ODU2MDUgNDQyLDY4NC4zMyBMNDQyLDYyMS43IEM0NDEuOTk5MTY3LDYyMS4xNDk5NDYgNDQyLjIyNDkxMyw2MjAuNjIzODMxIDQ0Mi42MjQxMjcsNjIwLjI0NTQyOSBDNDQzLjAyMzM0MSw2MTkuODY3MDI3IDQ0My41NjA3NzgsNjE5LjY2OTc0NiA0NDQuMTEsNjE5LjcgQzQ2NS41ODkwNzIsNjIwLjkzMDAxMyA0ODcuMTIwOTI4LDYyMC45MzAwMTMgNTA4LjYsNjE5LjcgQzUwOS4xNDkyMjIsNjE5LjY2OTc0NiA1MDkuNjg2NjU5LDYxOS44NjcwMjcgNTEwLjA4NTg3Myw2MjAuMjQ1NDI5IEM1MTAuNDg1MDg3LDYyMC42MjM4MzEgNTEwLjcxMDgzMyw2MjEuMTQ5OTQ2IDUxMC43MSw2MjEuNyBMNTEwLjcxLDY4NC4zNiBDNTEwLjcwODYzNyw2ODQuOTE1NjA1IDUxMC45Mzg0NTgsNjg1LjQ0NjczOCA1MTEuMzQ0Mzg1LDY4NS44MjYxMDggQzUxMS43NTAzMTEsNjg2LjIwNTQ3OSA1MTIuMjk1NzU2LDY4Ni4zOTg4OTQgNTEyLjg1LDY4Ni4zNiBDNjE5LjQ1LDY3OS40MyA3MTYuMTcsNjQxLjk0IDcxNi4xNyw1NzMuODcgWiBNMzAyLjMzMDA0OSw2MjkuNDggQzMwMi4zMzQ4NjYsNjMwLjE3Njc0NCAzMDEuOTc2NzcsNjMwLjgyNTgwMiAzMDEuMzg0Nzc0LDYzMS4xOTMyNDggQzMwMC43OTI3NzksNjMxLjU2MDY5NCAzMDAuMDUyMjE5LDYzMS41OTM1NTkgMjk5LjQzLDYzMS4yOCBDMjc3LjgxLDYyMC40MSAyNTIuNjUsNjAwLjggMjUyLjY1LDU3OS40NSBMMjUyLjY1LDU1NC43MSBDMjUyLjY1NzUxOCw1NTMuODczMDk5IDI1My4xODUzNCw1NTMuMTI5MzgyIDI1My45NzI4NTgsNTUyLjg0NjA1NCBDMjU0Ljc2MDM3Niw1NTIuNTYyNzI2IDI1NS42NDEwMjksNTUyLjc5OTcxMSAyNTYuMTgsNTUzLjQ0IEMyNjcuMTMsNTY2LjggMjgxLjc2LDU3OC4xNyAzMDEuMTgsNTg3LjU0IEMzMDEuODc0NTY4LDU4Ny44NzA4MDUgMzAyLjMxNzgyMiw1ODguNTcwNjgxIDMwMi4zMiw1ODkuMzQgTDMwMi4zMzAwNDksNjI5LjQ4IFogTTM5NC4wNyw2NTkuMDYgQzM3NS41ODE2NDEsNjU2LjI0Nzg3MyAzNTcuMzEwOTg4LDY1Mi4xNTQ2ODUgMzM5LjM5LDY0Ni44MSBDMzM4LjU0ODU1Miw2NDYuNTUwMjIxIDMzNy45NzYwMzcsNjQ1Ljc3MDYyNyAzMzcuOTc5OTgsNjQ0Ljg5IEwzMzcuOTc5OTgsNjA0LjQ2IEMzMzcuOTgyMjIyLDYwMy44Mjk4OTMgMzM4LjI4MTI1OCw2MDMuMjM3Njc5IDMzOC43ODY5OTUsNjAyLjg2MTgyIEMzMzkuMjkyNzMxLDYwMi40ODU5NjEgMzM5Ljk0NjAyMyw2MDIuMzcwNDE1IDM0MC41NSw2MDIuNTUgQzM1OC4zMDA2MTksNjA3Ljc4NDkwNyAzNzYuMzg5ODYxLDYxMS43OTQzNDMgMzk0LjY5LDYxNC41NSBDMzk1LjY3NjA3Niw2MTQuNjk5NTM5IDM5Ni40MDEyNzQsNjE1LjU1MjcxMyAzOTYuMzkwMTMsNjE2LjU1IEwzOTYuMzkwMTMsNjU3LjExIEMzOTYuMzgyOTUzLDY1Ny42OTIxMDEgMzk2LjEyMjYzMiw2NTguMjQyMjQ0IDM5NS42NzY5OTUsNjU4LjYxNjgwOSBDMzk1LjIzMTM1OCw2NTguOTkxMzc1IDM5NC42NDQ2MzcsNjU5LjE1MzE4NiAzOTQuMDcsNjU5LjA2IEwzOTQuMDcsNjU5LjA2IFogTTY1MS42LDU4Ny41NCBDNjcxLjAzLDU3OC4xNyA2ODUuNjYsNTY2LjggNjk2LjYsNTUzLjQ0IEM2OTcuMTM4OTcxLDU1Mi43OTk3MTEgNjk4LjAxOTYyNCw1NTIuNTYyNzI2IDY5OC44MDcxNDIsNTUyLjg0NjA1NCBDNjk5LjU5NDY2LDU1My4xMjkzODIgNzAwLjEyMjQ4Miw1NTMuODczMDk5IDcwMC4xMyw1NTQuNzEgTDcwMC4xMyw1NzkuNDUgQzcwMC4xMyw2MDAuOCA2NzQuOTcsNjIwLjQ1IDY1My4zNSw2MzEuMjggQzY1Mi43Mjc3ODEsNjMxLjU5MzU1OSA2NTEuOTg3MjIxLDYzMS41NjA2OTQgNjUxLjM5NTIyNiw2MzEuMTkzMjQ4IEM2NTAuODAzMjMsNjMwLjgyNTgwMiA2NTAuNDQ1MTM0LDYzMC4xNzY3NDQgNjUwLjQ0OTk1MSw2MjkuNDggTDY1MC40NDk5NTEsNTg5LjM0IEM2NTAuNDU0MDEyLDU4OC41NjgzOTcgNjUwLjkwMTUzNiw1ODcuODY3OTI1IDY1MS42LDU4Ny41NCBMNjUxLjYsNTg3LjU0IFogTTU1OC4xLDYxNC41NCBDNTc2LjQwMDEzOSw2MTEuNzg0MzQzIDU5NC40ODkzODEsNjA3Ljc3NDkwNyA2MTIuMjQsNjAyLjU0IEM2MTIuODQzOTc3LDYwMi4zNjA0MTUgNjEzLjQ5NzI2OSw2MDIuNDc1OTYxIDYxNC4wMDMwMDUsNjAyLjg1MTgyIEM2MTQuNTA4NzQyLDYwMy4yMjc2NzkgNjE0LjgwNzc3OCw2MDMuODE5ODkzIDYxNC44MTAwMiw2MDQuNDUgTDYxNC44MTAwMiw2NDQuODggQzYxNC44MTM5NjMsNjQ1Ljc2MDYyNyA2MTQuMjQxNDQ4LDY0Ni41NDAyMjEgNjEzLjQsNjQ2LjggQzU5NS40NzkwMTIsNjUyLjE0NDY4NSA1NzcuMjA4MzU5LDY1Ni4yMzc4NzMgNTU4LjcyLDY1OS4wNSBDNTU4LjEzNjczNiw2NTkuMTQ0NTkxIDU1Ny41NDE0OTYsNjU4Ljk3NjQyNSA1NTcuMDkzOTU0LDY1OC41OTA2MTMgQzU1Ni42NDY0MTMsNjU4LjIwNDgwMSA1NTYuMzkyMzgsNjU3LjY0MDgzNSA1NTYuMzk5ODMzLDY1Ny4wNSBMNTU2LjM5OTgzMyw2MTYuNTEgQzU1Ni40MDM2MzUsNjE1LjUyNDA3NyA1NTcuMTI1MjI0LDYxNC42ODc4ODMgNTU4LjEsNjE0LjU0IFogTTQ3Ni40LDQ0Ny45IEM1MTEuMzcwNjcsNDQ3LjkgNTM5LjcyLDQxOS41NTA2NyA1MzkuNzIsMzg0LjU4IEM1MzkuNzIsMzQ5LjYwOTMzIDUxMS4zNzA2NywzMjEuMjYgNDc2LjQsMzIxLjI2IEM0NDEuNDI5MzMsMzIxLjI2IDQxMy4wOCwzNDkuNjA5MzMgNDEzLjA4LDM4NC41OCBDNDEzLjA4LDQxOS41NTA2NyA0NDEuNDI5MzMsNDQ3LjkgNDc2LjQsNDQ3LjkgTDQ3Ni40LDQ0Ny45IFogTTQ3NS44NSwzMjcuNjMgQzQ4Ny40OSwzMjcuNjMgNDk2LjkzLDMzNC41MyA0OTYuOTMsMzQzLjAzIEM0OTYuOTMsMzUxLjUzIDQ4Ny40OSwzNTguNDMgNDc1Ljg1LDM1OC40MyBDNDY0LjIxLDM1OC40MyA0NTQuNzgsMzUxLjU0IDQ1NC43OCwzNDMuMDMgQzQ1NC43OCwzMzQuNTIgNDY0LjIxLDMyNy42MyA0NzUuODUsMzI3LjYzIFogTTU0LjQzLDQ3NS42MyBDNTcuNjg0NDYzNSw0ODIuNzA3NDQ5IDYxLjYxMjU3NDgsNDg5LjQ1NTIyOCA2Ni4xNiw0OTUuNzggQzc3LjMwMjE4NDMsNTEwLjgxMDE0MSA5Ni40OTYzMTU5LDUxNy41MDY4NzUgMTE0LjU3LDUxMi42NyBDMTE3LjM4LDUxMi4wMyAyNDkuMzcsNDczLjczIDI5Ny42Myw0NTkuNzMgQzI5OC4xNzI3NTYsNDU5LjU2ODk2MiAyOTguNjIxODMzLDQ1OS4xODU0NCAyOTguODY1ODI4LDQ1OC42NzQ1NzUgQzI5OS4xMDk4MjQsNDU4LjE2MzcxIDI5OS4xMjU4NzUsNDU3LjU3MzM2OSAyOTguOTEsNDU3LjA1IEMyODAuMzcyNTE1LDQxMS40NjM2MjMgMjgwLjA0Njc2MywzNjAuNDk5NjE4IDI5OCwzMTQuNjggQzI5OC4yMTUyNTYsMzE0LjE1MzkzNCAyOTguMTk2NTA1LDMxMy41NjExMjYgMjk3Ljk0ODQzMywzMTMuMDQ5NzE1IEMyOTcuNzAwMzYsMzEyLjUzODMwNSAyOTcuMjQ2NDAzLDMxMi4xNTY2MDUgMjk2LjcsMzEyIEMyNTAuNDcsMjk5Ljg5IDExOC4xOSwyNjUuMjQgMTE1LjMzLDI2NC42IEM5Ny41OTQwNzc5LDI1OS44NzMyMjQgNzguNzM3MzE1NywyNjYuMDI0Mjk3IDY3LjIsMjgwLjMgQzY2Ljc5NzQ0NDMsMjgwLjc5NTUzMSA2Ni43NTI2NjA4LDI4MS40OTE1NyA2Ny4wODgzOTQ4LDI4Mi4wMzQ2MDIgQzY3LjQyNDEyODgsMjgyLjU3NzYzNSA2OC4wNjY4MDAxLDI4Mi44NDg2NSA2OC42OSwyODIuNzEgQzc0Ljg1LDI4MS4yNyA4Ni42NCwyNzguNzEgOTIuOTgsMjc4LjcxIEMxMTcuMjMsMjc4LjcxIDEzNy44MSwyOTIuOTUgMTUwLjk4LDMxOC43MSBDMTYwLjc1LDMzNy44NCAxNjYuMTIsMzYyLjcxIDE2Ni4xLDM4OC44OSBDMTY2LjA4LDQxNS4wNyAxNjAuNjgsNDM5Ljg5IDE1MC45LDQ1OC45OSBDMTQyLjQsNDc1LjYgMTMwLjgzLDQ4Ny40MSAxMTcuMiw0OTMuNzEgQzExMC4zMiw0OTYuODkgMTA1LjIsNDg2LjY2IDExMS45Miw0ODMuMTIgTDExMi41Niw0ODIuOCBDMTIzLjcsNDc3LjUxIDEzMy4yNiw0NjcuNiAxNDAuNDIsNDUzLjYyIEMxNDkuMzYsNDM2LjE1IDE1NC4zLDQxMy4xNiAxNTQuMzIsMzg4Ljg4IEMxNTQuMzQsMzY0LjYgMTQ5LjQzLDM0MS41NiAxNDAuNDksMzI0LjA3IEMxMjkuNDIsMzAyLjQxIDExMi41NywyOTAuNDggOTMuMDMsMjkwLjQ2IEw5My4wMywyOTAuNDYgQzgzLjY0LDI5MC40NiA2OS43OCwyOTMuMTcgNTUuNDYsMjk5Ljk4IEw1NS4yOCwzMDAuMzcgQzQ4LjQ1MTY0NDcsMzAzLjY2MjU2OCA0Mi4wMDA1ODE0LDMwNy42ODYxMDEgMzYuMDQsMzEyLjM3IEMxOS43NCwzMjUuMTggMC4zLDM0OC44NiAwLjI3LDM4OC45IEMwLjI3LDQyOC40NSAyMC45MSw0NTIuMzcgMzguMjcsNDY1LjQ3IEM0My4zNzQ3MTYsNDY5LjMxMTk5MSA0OC43OTM4NTczLDQ3Mi43MTczNTIgNTQuNDcsNDc1LjY1IEw1NC40Myw0NzUuNjMgWiBNMTcuNTYsMzUwLjg0IEMxNy41NiwzNTAuODQgMjAuNDIsMzQwLjg0IDI3LjY5LDM0MC44NCBDMzUuMjMsMzQwLjg0IDQxLjM0LDM0NS4yOCA0MS4zNTAwMTIzLDM1MC43OSBDNDEuMzYsMzU2LjMgMzUuMjYsMzYwLjc5IDI3LjczLDM2MC43OSBDMjAuMiwzNjAuNzkgMTUuNzUsMzU3LjYzIDE3LjU2LDM1MC44NCBaIE0yNy4xNCw0MzguMDggQzI2LjcyMzI2NzQsNDM3LjQzNzQ2OSAyNi43MTAwNDExLDQzNi42MTMzODEgMjcuMTA1OTM5NSw0MzUuOTU3ODA4IEMyNy41MDE4MzgsNDM1LjMwMjIzNCAyOC4yMzczMzc0LDQzNC45MzAyOTkgMjksNDM1IEMzMC40ODA5NDI2LDQzNS4yNTE2ODggMzEuOTc4MjIwOCw0MzUuMzk1NCAzMy40OCw0MzUuNDMgQzU3LjEzLDQzNS40MyA3Ni4yNiw0MTMuMTQgNzYuMjIsMzg1LjczIEM3Ni4xOCwzNTguMzIgNTYuOTcsMzM2LjE0IDMzLjMyLDMzNi4xOCBMMzIuNjEsMzM2LjE4IEMzMS44NTI0NDI0LDMzNi4xNzUyOTUgMzEuMTYyNTY3MiwzMzUuNzQyOTY2IDMwLjgyODAxMjEsMzM1LjA2MzI2OCBDMzAuNDkzNDU3LDMzNC4zODM1NzEgMzAuNTcxNjU0MiwzMzMuNTczMTg3IDMxLjAzLDMzMi45NyBDMzQuNjU0MTYzLDMyOC43MDg4MTUgMzguNjk0MTQzNCwzMjQuODE5NTggNDMuMDksMzIxLjM2IEM1OS45MiwzMDguMTQgODAuMjYsMzAyLjI3IDkzLjAxLDMwMi4yNCBDMTI1LjU2LDMwMi4yNCAxNDIuNTYsMzQ1Ljg0IDE0Mi41MzAwNCwzODguODcgQzE0Mi41LDQzMS45IDEyNS40Niw0NzUuMzcgOTIuOTYsNDc1LjQzIEw5Mi44Nyw0NzUuNDMgQzg0LjIzLDQ3NS40MyA2My42Miw0NzAuMjEgNDUuMTQsNDU2LjI2IEMzOC4yODI4NDU3LDQ1MS4xMTMzMDEgMzIuMjE4MjE1MSw0NDQuOTg4MDI1IDI3LjE0LDQzOC4wOCBaIE02NDYuODcsMjk4IEM2ODcuMTIsMjcxLjMzIDgwNS4xMywxOTMuMTMgODA3LjQ3LDE5MS4zNiBDODIyLjg1MjM4NSwxODAuNzA5Njc3IDgzMC4xNTc3NzMsMTYxLjczNjI5MSA4MjUuODksMTQzLjUyIEM4MjQuMDA1NzcyLDEzNS45NTM1NDQgODIxLjM5NzA1OCwxMjguNTg2MTg2IDgxOC4xLDEyMS41MiBMODE4LjEsMTIxLjUyIEM4MTkuNTQwMzM1LDExNS4yOTUyMjcgODIwLjQ0Njk1NiwxMDguOTU4OTE1IDgyMC44MSwxMDIuNTggQzgyMiw4MC45MyA4MTcuMTYsNDkuNjkgNzg3LDI0LjE0IEM3NTYuNDEsLTEuNzMgNzI1Ljc3LC0yLjIxIDcwNS40NiwxLjk0IEM2OTguMDQzMjIxLDMuNDY1NzYwMzcgNjkwLjgxNDE0NSw1Ljc5Mjc0NTAxIDY4My45LDguODggTDY4My40OCw4Ljc4IEM2NjksMTUuMjkgNjU4LDI0LjEyIDY1MS45MywzMS4yOCBMNjUxLjkzLDMxLjI4IEM2MzkuMyw0Ni4yIDYzNy41MSw2Ni43OCA2NDYuODcsODkuMjIgQzY1NC40NCwxMDcuMzUgNjY4LjgyLDEyNS45OCA2ODcuMzcsMTQxLjY4IEM3MDUuOTIsMTU3LjM4IDcyNi42MywxNjguNDYgNzQ1Ljc1LDE3Mi45NCBDNzYxLjAzLDE3Ni41MSA3NzQuNzUsMTc1LjYzIDc4Ni4wMSwxNzAuNTUgQzc4Ni4yMiwxNzAuNDYgNzg2LjQ0LDE3MC4zNiA3ODYuNjgsMTcwLjI3IEM3OTMuNjgsMTY3LjQ1IDc5OC4yMSwxNzcuOTYgNzkxLjM0LDE4MS4xNCBDNzc3LjczLDE4Ny40NyA3NjEuMjMsMTg4LjY2IDc0My4wNiwxODQuNDEgQzcyMi4xNywxNzkuNTIgNjk5LjY5LDE2Ny41NCA2NzkuNzYsMTUwLjY3IEM2NTkuODMsMTMzLjggNjQ0LjI1LDExMy42IDYzNiw5My43OCBDNjI0Ljg1LDY3LjA1IDYyNy4zMSw0Mi4xNiA2NDMsMjMuNjQgQzY0Ny4xMSwxOC44MSA2NTYuNjgsMTEuNDcgNjYxLjc2LDcuNzEgQzY2Mi4yNzEwOCw3LjMyNzE0NzQ5IDY2Mi40ODM3NDEsNi42NjI2OTc5IDY2Mi4yODk5MzcsNi4wNTQyNDIzIEM2NjIuMDk2MTMzLDUuNDQ1Nzg2NyA2NjEuNTM4MzU2LDUuMDI2NzM2MDMgNjYwLjksNS4wMSBDNjQyLjU0ODIzNCw0LjU4MzAyMDY1IDYyNS42NjI3NjksMTQuOTkyNDU5MyA2MTcuOCwzMS41OCBDNjE2LjQyLDM0LjIzIDU1NS40MSwxNjEuNTIgNTM1LjcxLDIwMi41OCBDNTgzLjkxODMyLDIxOC40NDUwMDQgNjIzLjg4NDI0NCwyNTIuNzUxODQ1IDY0Ni44NywyOTggWiBNNzMyLjU4LDE0IEM3MzcuMjgsOC40NSA3NDYuNzUsMTIuNzMgNzQ2Ljc1LDEyLjczIEM3NTMuMSwxNS43MyA3NTIuNjUsMjEuMTggNzQ3Ljc1LDI2LjkyIEM3NDIuODUsMzIuNjYgNzM1LjUxLDM0LjQxIDczMS4zMiwzMC44NSBDNzI3LjEzLDI3LjI5IDcyNy43MiwxOS43OCA3MzIuNTgsMTQgWiBNNzkzLjEsMTUwLjggTDc5My4wNCwxNTAuODcgQzc3MiwxNzUuNjIgNzI3Ljc4LDE2MC40OCA2OTUsMTMyLjcxIEM2NjIuMjIsMTA0Ljk0IDYzOS45MSw2My43MSA2NjAuOTQsMzguOTEgQzY2OS4yLDI5LjIxIDY4Ni44MywxNy40OSA3MDcuOCwxMy4yIEM3MTMuMjc5NjQzLDEyLjA4MjEwMTIgNzE4Ljg1NzQ5MSwxMS41MTU5NDEzIDcyNC40NSwxMS41MSBDNzI1LjIwODQ5NCwxMS41NDYwMjA0IDcyNS44ODExNjYsMTIuMDA4NDc1MSA3MjYuMTg2NDE2LDEyLjcwMzc2ODQgQzcyNi40OTE2NjcsMTMuMzk5MDYxOCA3MjYuMzc2ODM4LDE0LjIwNzI0ODMgNzI1Ljg5LDE0Ljc5IEM3MjUuNzEsMTQuOTcgNzI1LjU1LDE1LjE1IDcyNS40MSwxNS4zMiBDNzEwLjA5LDMzLjMyIDcxNC42LDYyLjMyIDczNS40OCw4MC4wOSBDNzU2LjM2LDk3Ljg2IDc4NS43LDk3LjY0IDgwMS4wMiw3OS42MiBDODAxLjk2ODY0NSw3OC40NTU0MTAzIDgwMi44MjQ1OTcsNzcuMjE4MjkyMiA4MDMuNTgsNzUuOTIgQzgwNC4wMTUyODgsNzUuMjgxOTk4OSA4MDQuNzc5MDI3LDc0Ljk1MTY1MjYgODA1LjU0MjA0NCw3NS4wNzEzNDE1IEM4MDYuMzA1MDYyLDc1LjE5MTAzMDUgODA2LjkzMDk3LDc1LjczOTM2MDkgODA3LjE1LDc2LjQ4IEM4MDkuMTI0NzA5LDg0LjgzMzY5NDMgODA5Ljg2MjU3Myw5My40MzIwMDEyIDgwOS4zNCwxMDIgQzgwOCwxMjUuMTEgNzk4LjY4LDE0NC4yIDc5My4xLDE1MC44IFogTTEwMi4yMSwxMzQuNDggQzk1LjY0NDY2MTEsMTUwLjQ3MzY4IDEwMS43MTQ1NjYsMTY4Ljg2NTkxNyAxMTYuNTEsMTc3LjgxIEwyNTEuNTEsMjYwLjAyIEMyNTEuOTQwNTQyLDI2MC4yNzkzMjEgMjUyLjQ1NzcwNSwyNjAuMzUzMzY1IDI1Mi45NDM3MTQsMjYwLjIyNTI2OSBDMjUzLjQyOTcyNCwyNjAuMDk3MTc0IDI1My44NDMyMDcsMjU5Ljc3Nzg0NCAyNTQuMDksMjU5LjM0IEMyNjkuMTM3ODgzLDIzMi42NjM2ODUgMjg4Ljg0MjM2MywyMDguODk4NDE2IDMxMi4yNywxODkuMTcgQzMxMy4wNDEyODYsMTg4LjUzMjEyOCAzMTMuMTYxMjQ0LDE4Ny4zOTQ3NDEgMzEyLjU0LDE4Ni42MSBMMjE4LjQsNjUuODcgQzIxNS4wNDMwMTcsNjEuNjU2NjkxNCAyMDkuMjg5NjU4LDYwLjE5Njg4MzkgMjA0LjMzLDYyLjMgQzIwMy4xNTI2NjUsNjIuODA2MDk5OCAyMDEuODE3NTc4LDYyLjc5ODEzMTggMjAwLjY0NjM2Nyw2Mi4yNzgwMTU2IEMxOTkuNDc1MTU3LDYxLjc1Nzg5OTQgMTk4LjU3NDAwNCw2MC43NzI3ODg0IDE5OC4xNiw1OS41NiBDMTk3LjQyNzMxLDU3LjE3NDg5NTcgMTk4LjY2OTA3OCw1NC42MzAxNDU5IDIwMSw1My43NCBDMjA5LjczNjE0NCw1MC4xNDM3NzE1IDIxOS43OTc3ODksNTIuNzcxMzg2NyAyMjUuNjYsNjAuMTggTDMxOS43NiwxODAuODIgQzMyMC4wNTY4OCwxODEuMjA3OTkgMzIwLjQ5NjU3MywxODEuNDYxMTY0IDMyMC45ODExNjcsMTgxLjUyMzE0NyBDMzIxLjQ2NTc2MiwxODEuNTg1MTMgMzIxLjk1NTAyMiwxODEuNDUwNzc1IDMyMi4zNCwxODEuMTUgQzMyMy43MywxODAuMTUgMzI1LjEyLDE3OS4wNyAzMjYuNTMsMTc4LjA1IEMzMjYuOTM1Nzk4LDE3Ny43NTY1NDIgMzI3LjIwNTI5LDE3Ny4zMTExMDcgMzI3LjI3NjkwNCwxNzYuODE1NDY1IEMzMjcuMzQ4NTE4LDE3Ni4zMTk4MjMgMzI3LjIxNjEzNCwxNzUuODE2MzIyIDMyNi45MSwxNzUuNDIgTDIzNS43MSw1Ni40MiBDMjI2LjE2NDMzNiw0My45OTQ2NjgzIDIwOS42NzgxMDIsMzkuMTcwNTE0IDE5NC45NCw0NC40OSBDMTc0LjE4LDI3LjQ0IDE0MC43NCwyOS45OCAxMTcuMTEsNTEuNDkgQzEwNC44Miw2Mi42OCA5Ni45NSw3Ny4zMiA5NC45Niw5Mi42OSBDOTMuMTUsMTA2LjY5IDk2LjQsMTE5LjggMTA0LjEyLDEzMC4xMiBDMTAzLjQyLDEzMS42IDEwMi43OCwxMzMuMDggMTAyLjIxLDEzNC40OCBaIE0xMDQuMDUsOTMuODMgQzEwNS43Niw4MC42MSAxMTIuNTksNjcuOTggMTIzLjI3LDU4LjI1IEMxNDIuMDQsNDEuMTcgMTY3Ljc2LDM3Ljc5IDE4NS4xOCw0OC43NCBDMTY4Ljg2MDMwMiw1Ni43MzE3MjM1IDE1My43ODY1OSw2Ny4wNDkyMTYzIDE0MC40Myw3OS4zNyBDMTI3LjYxMzkzNCw5MS4xNjc4MTI2IDExNi45MDY3MDMsMTA1LjA2NzU5OCAxMDguNzcsMTIwLjQ3IEMxMDQuMzU2OTA1LDExMi4zMzQxOCAxMDIuNzAwNzU4LDEwMi45ODY3NzQgMTA0LjA1LDkzLjgzIEwxMDQuMDUsOTMuODMgWiBNNDE0LjcsNTI5LjQ5IEM0NTQuMDUzNzk4LDU0NS43Mjk2OTQgNDk4LjIzNjIwMiw1NDUuNzI5Njk0IDUzNy41OSw1MjkuNDkgQzU5NS42NDA5NzksNTA0LjQyMDk1MyA2MzMuMDQ2MDg3LDQ0Ny4wMzczMDcgNjMyLjU1MjY5MiwzODMuODA2NTQgQzYzMi4wNTkyOTcsMzIwLjU3NTc3NCA1OTMuNzYzMjU5LDI2My43ODI4MyA1MzUuMzI4MTQxLDIzOS42MjI3MzQgQzQ3Ni44OTMwMjMsMjE1LjQ2MjYzOCA0MDkuNjcyMDMzLDIyOC42MjkzOTMgMzY0LjY3LDI3My4wNSBDMzUwLjQyMTg3MSwyODcuMzg0NjE3IDMzOS4xMTkxMzcsMzA0LjM3MDk5MiAzMzEuNCwzMjMuMDUgQzMxNS4xNjAyODksMzYyLjQ3NjU0MSAzMTUuMTYwMjg5LDQwNi43MjM0NTkgMzMxLjQsNDQ2LjE1IEMzNDYuODcyNjI2LDQ4My45NjYwNTEgMzc2Ljg4NTgwNyw1MTMuOTgyODM1IDQxNC43LDUyOS40NiBMNDE0LjcsNTI5LjQ5IFogTTM1My4xNSwzODQuNjMgQzM1My4wMjY4NDYsMzY3LjU1ODI4NiAzNTYuMjc5MTY5LDM1MC42MzA1NzUgMzYyLjcyLDMzNC44MiBDMzY4LjY4Nzc0MywzMTkuOTQzMTYgMzc3LjQ3NTY5NiwzMDYuMzYwNTQ1IDM4OC42LDI5NC44MiBDNDExLjcwMzQxLDI3MS40Njk3NzkgNDQzLjE4Njg1OSwyNTguMzMwODEzIDQ3Ni4wMzUsMjU4LjMzMDgxMyBDNTA4Ljg4MzE0MSwyNTguMzMwODEzIDU0MC4zNjY1OSwyNzEuNDY5Nzc5IDU2My40NywyOTQuODIgQzU3NC41ODc1ODksMzA2LjM2NTg3MSA1ODMuMzc0NjQ2LDMxOS45NDcxMDMgNTg5LjM1LDMzNC44MiBDNTk1Ljc4NjAyMywzNTAuNjMyMDAxIDU5OS4wMzgxNiwzNjcuNTU4NzQzIDU5OC45MiwzODQuNjMgQzU5OS4xNDI2ODgsNDE3Ljk2MTYyNyA1ODYuNDM1ODM2LDQ1MC4wODE4MjYgNTYzLjQ3LDQ3NC4yNCBDNTUyLjQxNTAyNyw0ODUuNjc1NTA1IDUzOS4xNzY4MSw0OTQuNzc1MjkyIDUyNC41NCw1MDEgQzQ5My41MjM2NjIsNTE0LjA1MTEwNyA0NTguNTU2MzM4LDUxNC4wNTExMDcgNDI3LjU0LDUwMSBDNDEyLjkwMTI4NSw0OTQuNzgzMjgyIDM5OS42NjIxODcsNDg1LjY4NjI5IDM4OC42MSw0NzQuMjUgQzM2NS42NDQxNjQsNDUwLjA5MTgyNiAzNTIuOTM3MzEyLDQxNy45NzE2MjcgMzUzLjE2LDM4NC42NCBMMzUzLjE1LDM4NC42MyBaIE00NzYsMTQ0LjYyOTc0MyBDNDk3LjM0ODMyNCwxNDQuNTk4NzUyIDUxOC42MDU1NDksMTQ3LjQxMzU0MyA1MzkuMjEsMTUzIEM1MzkuNzg1NTI5LDE1My4xNTY4MjkgNTQwLjI2MTAxNCwxNTMuNTYyMzcxIDU0MC41MDY2ODYsMTU0LjEwNTk0NiBDNTQwLjc1MjM1OSwxNTQuNjQ5NTIxIDU0MC43NDI1NzMsMTU1LjI3NDM4NCA1NDAuNDgsMTU1LjgxIEw1MjAuMTQsMTk4LjIgTDUyMC4xNCwxOTguMiBDNDM0Ljc0OTQwMywxNzguMDgyODEzIDM0Ni41OTQ2NDYsMjE4LjQ3MjQ5MiAzMDYuMDcsMjk2LjI4IEMzMDUuNjM2MzgsMjk3LjA5ODk3MyAzMDQuNjk2OTYyLDI5Ny41MTI4MTMgMzAzLjgsMjk3LjI4IEwyNTkuODUsMjg1Ljc3IEMyNTkuMjcyNzIxLDI4NS42MjEzMDYgMjU4Ljc5MTg2MiwyODUuMjIyODUgMjU4LjUzODUwMSwyODQuNjgzMjQ5IEMyNTguMjg1MTM5LDI4NC4xNDM2NDggMjU4LjI4NTY4OSwyODMuNTE5MTU0IDI1OC41NCwyODIuOTggQzI5Ni44LDIwMS4yOCAzNzkuOCwxNDQuNjI5NzQzIDQ3NiwxNDQuNjI5NzQzIFogTTM0OS4xLDE2MSBDMzQ5LjMxNzQyLDE2MS40NjYxMjIgMzQ5LjcyMDAxMiwxNjEuODE5OTY2IDM1MC4yMTAxODYsMTYxLjk3NTc1NyBDMzUwLjcwMDM1OSwxNjIuMTMxNTQ5IDM1MS4yMzMzNjUsMTYyLjA3NTA2NiAzNTEuNjgsMTYxLjgyIEMzNzQuOTI5OTE1LDE0OC44MDAzNjUgNDAwLjA3OTI4NiwxMzkuNTEwNjU0IDQyNi4yMSwxMzQuMjkgTDQzNS4yMSwxMzIuNjYgQzQ2Mi4xODc5NzYsMTI4LjIwMzI1NyA0ODkuNzA4MzU3LDEyOC4xMjg5NjkgNTE2LjcxLDEzMi40NCBDNTE3LjIxODA2MywxMzIuNTIyNTYxIDUxNy43Mzc2MjQsMTMyLjM5MDg5MSA1MTguMTQ1MDQ1LDEzMi4wNzYzMjQgQzUxOC41NTI0NjcsMTMxLjc2MTc1NyA1MTguODExMzE3LDEzMS4yOTI0MiA1MTguODYsMTMwLjc4IEw1MjEuNDksMTAyLjI0IEM1MjIuODgwMjQxLDg3LjEzNDkwODIgNTE0LjUzNTYxNiw3Mi44MTA5MDU4IDUwMC43MSw2Ni41NyBDNDk2LjA5NTM1NCw2NC41MDQxNDE4IDQ5MS4zMjM2MjUsNjIuODA4NzkwNSA0ODYuNDQsNjEuNSBDNDgzLjE3NjA1Myw1Ny4wMTc0NDE3IDQ3OS40NTI0ODcsNTIuODg4MzM5MyA0NzUuMzMsNDkuMTggQzQ2My42NCwzOC43MyA0NDMuNDQsMjcuMzcgNDEzLjYxLDMyLjYyIEw0MTMuNDEsMzIuNjIgQzM4NC4xMiwzNy45MyAzNjkuMDksNTYuNDMgMzYxLjYzLDcxIEMzNTkuNTI2MzA0LDc1LjE0NzcyMTMgMzU3Ljc2MDU3OSw3OS40NTgzNjQyIDM1Ni4zNSw4My44OSBDMzUxLjQxNDM4Nyw4Ny4yODczMSAzNDYuODI1NTQ5LDkxLjE2MjcwMDYgMzQyLjY1LDk1LjQ2IEMzMzIuNzI5Mjc1LDEwNS45MDEzMDEgMzMwLjI2ODEwMSwxMjEuMzc2MDggMzM2LjQ2LDEzNC4zOCBMMzQ5LjEsMTYxIFogTTM2OS44Myw3NS4xOCBDMzc2LjMzLDYyLjQyIDM4OS40Niw0Ni4yOCA0MTUuMDcsNDEuNzEgTDQxNS4yNSw0MS43MSBDNDQxLjQ0LDM3LjEgNDU5LjA2LDQ2Ljk4IDQ2OS4yNSw1Ni4wOCBDNDcwLjE1LDU2Ljg5IDQ3MS4wMiw1Ny43MyA0NzEuODcsNTguNTggQzQ1Ny43MSw1Ni41OCA0MzkuODcsNTYuNTEgNDE4LjA1LDYwLjQxIEMzOTcuNDcsNjQuMDkgMzgxLjU5LDY5LjgyIDM2OS40LDc2LjExIEMzNjkuNTQsNzUuODEgMzY5LjY3LDc1LjUyIDM2OS44Myw3NS4yMiBMMzY5LjgzLDc1LjE4IFogTTM0NS4xNSwxMDkuNjIgQzM0OC43MSwxMDAuMjEgMzYzLjE1LDgzLjEyIDQxOS45Myw3Mi45OSBDNDc5LjYsNjIuMzMgNTAwLjI5LDc0LjUxIDUwNy4wMiw4MS41OCBDNTA3Ljg2ODIxNCw4Mi40NTAzNDg0IDUwOC4yMzkyMyw4My42NzkzNTcgNTA4LjAxNDMwMSw4NC44NzM2Njg0IEM1MDcuNzg5MzczLDg2LjA2Nzk3OTggNTA2Ljk5NjcwNSw4Ny4wNzc4Mjc5IDUwNS44OSw4Ny41OCBMNTA1LjI5LDg3Ljg1IEM1MDMuMzEwMjYxLDg4Ljc4MDg0NiA1MDAuOTcwNTM5LDg4LjQ4MDU4MTcgNDk5LjI5LDg3LjA4IEM0OTMuNzEsODIuMzMgNDc1LjkyLDczLjA4IDQyNi4wNyw4MS4zMSBMNDE3LDgyLjkyIEMzNjguMSw5Mi4zNSAzNTYuNjcsMTA2LjM4IDM1NCwxMTIuMzEgQzM1My4xODc2NSwxMTQuMDcxOTI5IDM1MS41MTY5OTcsMTE1LjI4NDE5NCAzNDkuNTksMTE1LjUxIEMzNDguMDk5NTYsMTE1LjY1NjgyIDM0Ni42Mzk3NTIsMTE1LjAxOTQwMSAzNDUuNzM0MzIzLDExMy44MjY0MzcgQzM0NC44Mjg4OTQsMTEyLjYzMzQ3MyAzNDQuNjA3NjYyLDExMS4wNTYwMDcgMzQ1LjE1LDEwOS42NiBMMzQ1LjE1LDEwOS42MiBaIiBpZD0iU2hhcGUiIGZpbGw9ImN1cnJlbnRDb2xvciIgZmlsbC1ydWxlPSJub256ZXJvIj48L3BhdGg+CiAgICA8L2c+Cjwvc3ZnPgo= + mediatype: image/svg+xml +--- +schema: olm.channel +package: rhobs-prometheus-operator +name: stable +entries: +### STABLE_CHANNEL_MARKER ### +--- diff --git a/rhobs/olm/catalog/icon.svg b/rhobs/olm/catalog/icon.svg new file mode 100644 index 000000000..fa510df0e --- /dev/null +++ b/rhobs/olm/catalog/icon.svg @@ -0,0 +1,7 @@ + + + ObservatoriumFinal_Blue_IconOnly + + + + diff --git a/rhobs/olm/catalog/index.Dockerfile b/rhobs/olm/catalog/index.Dockerfile new file mode 100644 index 000000000..3542ce377 --- /dev/null +++ b/rhobs/olm/catalog/index.Dockerfile @@ -0,0 +1,14 @@ +# The base image is expected to contain +# /bin/opm (with a serve subcommand) and /bin/grpc_health_probe +FROM quay.io/operator-framework/opm:latest + +# Configure the entrypoint and command +ENTRYPOINT ["/bin/opm"] +CMD ["serve", "/configs"] + +# Copy declarative config root into image at /configs +ADD config /configs + +# Set DC-specific label for the location of the DC root directory +# in the image +LABEL operators.operatorframework.io.index.configs.v1=/configs diff --git a/rhobs/olm/catalog/update-channels.sh b/rhobs/olm/catalog/update-channels.sh new file mode 100755 index 000000000..b8cebebf2 --- /dev/null +++ b/rhobs/olm/catalog/update-channels.sh @@ -0,0 +1,81 @@ +#!/usr/bin/env bash +set -e -u -o pipefail + +#usage $0 channel1[,channel2,...] bundle + +to_upper() { + echo "$@" | tr '[:lower:]' '[:upper:]' +} + +err() { + echo "ERROR: $*" +} + +update_channel() { + local index_file="$1" + shift + local channel="$1" + shift + local bundle="$1" + shift + + echo "updating index-file: $index_file | channel: $channel | bundle: $bundle" + local marker + marker="### $(to_upper "$channel")_CHANNEL_MARKER ###" + + if ! grep -q "$marker" "$index_file"; then + err "No marker '$marker' found in $index_file" + return 1 + fi + + # find the entry before that + local previous_entry + previous_entry=$(grep "$marker" -B2 "$index_file" | grep 'name:' | cut -f2 -d: | tr -d ' ') + echo " -> found previous entry: $previous_entry" + + # + ### handle first entry and first entry is when the previous entry + # is the same as the channel passed based on the yaml index file + # name: stable + # entries: + # ### STABLE_CHANNEL_MARKER ### + if [[ "$previous_entry" == "$channel" ]]; then + echo " -> adding first entry to $bundle to $channel channel" + sed -e \ + "s|^\($marker\)| - name: $bundle\n\1|" \ + -i "$index_file" + return 0 + fi + + echo " -> adding $bundle replaces $previous_entry to $channel channel" + sed -e \ + "s|^\($marker\)| - name: $bundle\n replaces: $previous_entry\n\1|" \ + -i "$index_file" + +} + +main() { + cd "$(git rev-parse --show-toplevel)" + local index_file="$1" + shift + local channels="$1" + shift + local bundle="$1" + shift + + echo "index-file: $index_file | channels: $channels | bundle: $bundle" + + # convert comma seperated list to an array + local -a channel_list + readarray -t -d, channel_list <<<"$channels," + # remove the last one to get rid of the trailing \n + channel_list=("${channel_list[@]::${#channel_list[@]}-1}") + + for ch in "${channel_list[@]}"; do + update_channel "$index_file" "$ch" "$bundle" + done + + return $? +} + +main "$@" diff --git a/rhobs/olm/manifests/admission-webhook/alertmanager-config-validating-webhook.yaml b/rhobs/olm/manifests/admission-webhook/alertmanager-config-validating-webhook.yaml new file mode 100644 index 000000000..b89bd3644 --- /dev/null +++ b/rhobs/olm/manifests/admission-webhook/alertmanager-config-validating-webhook.yaml @@ -0,0 +1,34 @@ +apiVersion: admissionregistration.k8s.io/v1 +kind: ValidatingWebhookConfiguration +metadata: + labels: + app.kubernetes.io/component: admission-webhook + app.kubernetes.io/name: prometheus-operator-admission-webhook + name: alertmanagerconfigs.monitoring.rhobs +webhooks: +- admissionReviewVersions: + - v1 + clientConfig: + # NOTE: the caBundle get automatically injected by OLM + caBundle: Cg== + service: + # NOTE: when changing the service, ensure the same changes are applied + # to prometheus-rule-validating-webhook + name: rhobs-prometheus-operator-admission-webhook + namespace: openshift-operators + path: /admission-alertmanagerconfigs/validate + name: alertmanagerconfigs.monitoring.rhobs + failurePolicy: Ignore + rules: + - apiGroups: + - monitoring.rhobs + apiVersions: + - '*' + operations: + - CREATE + - UPDATE + resources: + - alertmanagerconfigs + scope: Namespaced + sideEffects: None + timeoutSeconds: 5 diff --git a/rhobs/olm/manifests/admission-webhook/cluster-role-binding.yaml b/rhobs/olm/manifests/admission-webhook/cluster-role-binding.yaml new file mode 100644 index 000000000..feb935d88 --- /dev/null +++ b/rhobs/olm/manifests/admission-webhook/cluster-role-binding.yaml @@ -0,0 +1,15 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + labels: + app.kubernetes.io/component: admission-webhook + app.kubernetes.io/name: prometheus-operator-admission-webhook + name: prometheus-operator-admission-webhook +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: prometheus-operator-admission-webhook +subjects: +- kind: ServiceAccount + name: prometheus-operator-admission-webhook + namespace: default diff --git a/rhobs/olm/manifests/admission-webhook/cluster-role.yaml b/rhobs/olm/manifests/admission-webhook/cluster-role.yaml new file mode 100644 index 000000000..3bde66962 --- /dev/null +++ b/rhobs/olm/manifests/admission-webhook/cluster-role.yaml @@ -0,0 +1,17 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + labels: + app.kubernetes.io/component: admission-webhook + app.kubernetes.io/name: prometheus-operator-admission-webhook + name: prometheus-operator-admission-webhook +rules: +- apiGroups: + - security.openshift.io + resourceNames: + - nonroot-v2 + - nonroot + resources: + - securitycontextconstraints + verbs: + - use diff --git a/rhobs/olm/manifests/admission-webhook/kustomization.yaml b/rhobs/olm/manifests/admission-webhook/kustomization.yaml new file mode 100644 index 000000000..92c2df780 --- /dev/null +++ b/rhobs/olm/manifests/admission-webhook/kustomization.yaml @@ -0,0 +1,65 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +namePrefix: rhobs- + +resources: +- example/admission-webhook/deployment.yaml +- example/admission-webhook/service-account.yaml + +# NOTE: a service although automatically created by OLM for webhooks still +# requires admission-webhook/service as the port generated by OLM uses 443 +# but assumes targetPort to be 443 as opposed to "https" port of webhook - 8443 + +- example/admission-webhook/service.yaml +- example/admission-webhook/pod-disruption-budget.yaml + +# additional files required for webhook deployment that are absent in examples +- cluster-role.yaml +- cluster-role-binding.yaml +- alertmanager-config-validating-webhook.yaml +- prometheus-rule-validating-webhook.yaml + +patches: + - patch: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: prometheus-operator-admission-webhook + spec: + template: + spec: + containers: + - name: prometheus-operator-admission-webhook + image: + args: + - --web.enable-tls=true + - --web.cert-file=/tmp/k8s-webhook-server/serving-certs/tls.crt + - --web.key-file=/tmp/k8s-webhook-server/serving-certs/tls.key + + # rely on tls-certificates injected by OLM instead of mounting empty files + - patch: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: prometheus-operator-admission-webhook + spec: + template: + spec: + volumes: + - name: tls-certificates + $patch: delete + + - patch: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: prometheus-operator-admission-webhook + spec: + template: + spec: + containers: + - name: prometheus-operator-admission-webhook + volumeMounts: + - name: tls-certificates + $patch: delete diff --git a/rhobs/olm/manifests/admission-webhook/prometheus-rule-validating-webhook.yaml b/rhobs/olm/manifests/admission-webhook/prometheus-rule-validating-webhook.yaml new file mode 100644 index 000000000..fbb6a925f --- /dev/null +++ b/rhobs/olm/manifests/admission-webhook/prometheus-rule-validating-webhook.yaml @@ -0,0 +1,34 @@ +apiVersion: admissionregistration.k8s.io/v1 +kind: ValidatingWebhookConfiguration +metadata: + labels: + app.kubernetes.io/component: admission-webhook + app.kubernetes.io/name: rhobs-prometheus-operator-admission-webhook + name: prometheusrules.monitoring.rhobs +webhooks: +- admissionReviewVersions: + - v1 + clientConfig: + # NOTE: the caBundle get automatically injected by OLM + caBundle: Cg== + service: + # NOTE: when changing the service, ensure the same changes are applied + # to alertmanager-config-validating-webhook as well + name: rhobs-prometheus-operator-admission-webhook + namespace: operators + path: /admission-prometheusrules/validate + failurePolicy: Ignore + name: prometheusrules.monitoring.rhobs + rules: + - apiGroups: + - monitoring.rhobs + apiVersions: + - '*' + operations: + - CREATE + - UPDATE + resources: + - prometheusrules + scope: Namespaced + sideEffects: None + timeoutSeconds: 5 diff --git a/rhobs/olm/manifests/crds/kustomization.yaml b/rhobs/olm/manifests/crds/kustomization.yaml new file mode 100644 index 000000000..8b27994db --- /dev/null +++ b/rhobs/olm/manifests/crds/kustomization.yaml @@ -0,0 +1,32 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: + +# CRDs + +# HACK: This hack to use stripped-down-crds works around the following operator-sdk +# limitation when running a catalog (FBC) image. +# +# ❯ ./tmp/bin/operator-sdk run bundle --install-mode AllNamespaces --namespace operators --skip-tls + +# INFO[0016] Creating a File-Based Catalog of the bundle +# INFO[0020] Generated a valid File-Based Catalog +# FATA[0020] Failed to run bundle +# : create catalog +# : error creating registry pod: error building registry pod definition +# : configMap error: error updating ConfigMap +# : error creating ConfigMap +# : ConfigMap "operator-sdk-run-bundle-config" is invalid +# : []: Too long: must have at most 1048576 bytes + +- example/stripped-down-crds/all.yaml + +# NOTE: enable this when the bug above is solved +# - example/prometheus-operator-crd/monitoring.rhobs_alertmanagers.yaml +# - example/prometheus-operator-crd/monitoring.rhobs_podmonitors.yaml +# - example/prometheus-operator-crd/monitoring.rhobs_probes.yaml +# - example/prometheus-operator-crd/monitoring.rhobs_prometheuses.yaml +# - example/prometheus-operator-crd/monitoring.rhobs_prometheusrules.yaml +# - example/prometheus-operator-crd/monitoring.rhobs_servicemonitors.yaml +# - example/prometheus-operator-crd/monitoring.rhobs_thanosrulers.yaml diff --git a/rhobs/olm/manifests/csv/rhobs-prometheus-operator.clusterserviceversion.yaml b/rhobs/olm/manifests/csv/rhobs-prometheus-operator.clusterserviceversion.yaml new file mode 100644 index 000000000..099f80e0d --- /dev/null +++ b/rhobs/olm/manifests/csv/rhobs-prometheus-operator.clusterserviceversion.yaml @@ -0,0 +1,53 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: '[]' + capabilities: Basic Install + name: rhobs-prometheus-operator.v0.0.0 + namespace: placeholder +spec: + apiservicedefinitions: {} + description: |- + RHOBS Prometheus Operator - A fork of Prometheus Operator to run monitoring + Stack on Openshift. + + See detailed information about this fork in the project's README + https://github.com/rhobs/obo-prometheus-operator#readme + + displayName: RHOBS Prometheus Operator + icon: + - base64data: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iODI3cHgiIGhlaWdodD0iNjg2cHgiIHZpZXdCb3g9IjAgMCA4MjcgNjg2IiBjb2xvcj0iIzJCMzg4RiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KICAgIDx0aXRsZT5PYnNlcnZhdG9yaXVtRmluYWxfQmx1ZV9JY29uT25seTwvdGl0bGU+CiAgICA8ZyBpZD0iT2JzZXJ2YXRvcml1bUZpbmFsX0JsdWVfSWNvbk9ubHkiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPgogICAgICAgIDxwYXRoIGQ9Ik03MTYuMTcsNTczLjg3IEw3MTYuMTcsNDk0LjQ5IEw3MTYuMDksMzg0LjU4IEM3MTYuMTM4NjYsMzY4Ljc4MDIzOSA3MTQuNjA3NzE1LDM1My4wMTUxODcgNzExLjUyLDMzNy41MiBMNzExLjUyLDMzNy40NiBDNzExLjUyLDMzNy4zIDcxMS40NSwzMzcuMTQgNzExLjQyLDMzNi45OCBDNzA5Ljg3MzMzMywzMjkuMjkzMzMzIDcwNy45NDY2NjcsMzIxLjY4IDcwNS42NCwzMTQuMTQgQzcwNS41OTc4OTEsMzE0LjAwNzMxIDcwNS41NDA4NTksMzEzLjg3OTgyOCA3MDUuNDcsMzEzLjc2IEM3MDIuNzM2MjQ4LDMwNC45ODE3IDY5OS41MDA5MjgsMjk2LjM2NzUzNSA2OTUuNzgsMjg3Ljk2IEw2OTIuODcsMjg3LjEgQzY3OS42OSwyOTUuNzcgNjYwLjE3LDMwOC40NiA2NTQuODcsMzExLjg3IEM2NTQuMTAzNDczLDMxMi4zOTI3MjcgNjUzLjc5NzA4OCwzMTMuMzczOTg4IDY1NC4xMywzMTQuMjQgQzY2Mi44Nzg4NjYsMzM2LjM4NDYzOCA2NjcuNDEwMDU3LDM1OS45Njk4OTIgNjY3LjQ5LDM4My43OCBDNjY3Ljk1LDQ4OC43OCA1ODIuNzMsNTc1LjIgNDc3LjcxLDU3Ni4xMiBDNDA2LjU1MzMyLDU3Ni43ODEyNjkgMzQwLjkwMTM1Nyw1MzcuOTIwMDUyIDMwNy4yNSw0NzUuMjIgQzMwNi44MTQ0NTUsNDc0LjM5MjE0OCAzMDUuODYzMjYyLDQ3My45NzY3NzkgMzA0Ljk2LDQ3NC4yMiBMMjM3LjczLDQ5My43MiBDMjM2Ljg3NzA2NCw0OTMuOTczNTg0IDIzNi4yOTQyNDYsNDk0Ljc2MDE4NSAyMzYuMjk5OTU4LDQ5NS42NSBDMjM2LjQ0LDUzNy4yOCAyMzYuNTgsNTczLjg0IDIzNi41OCw1NzMuODQgQzIzNi41OCw2NDEuOTEgMzMzLjMsNjc5LjQgNDM5Ljg2LDY4Ni4zMyBDNDQwLjQxNDI0NCw2ODYuMzY0OTExIDQ0MC45NTk2ODksNjg2LjE3NTQ3OSA0NDEuMzY1NjE1LDY4NS43OTYxMDggQzQ0MS43NzE1NDIsNjg1LjQxNjczOCA0NDIuMDAxMzYzLDY4NC44ODU2MDUgNDQyLDY4NC4zMyBMNDQyLDYyMS43IEM0NDEuOTk5MTY3LDYyMS4xNDk5NDYgNDQyLjIyNDkxMyw2MjAuNjIzODMxIDQ0Mi42MjQxMjcsNjIwLjI0NTQyOSBDNDQzLjAyMzM0MSw2MTkuODY3MDI3IDQ0My41NjA3NzgsNjE5LjY2OTc0NiA0NDQuMTEsNjE5LjcgQzQ2NS41ODkwNzIsNjIwLjkzMDAxMyA0ODcuMTIwOTI4LDYyMC45MzAwMTMgNTA4LjYsNjE5LjcgQzUwOS4xNDkyMjIsNjE5LjY2OTc0NiA1MDkuNjg2NjU5LDYxOS44NjcwMjcgNTEwLjA4NTg3Myw2MjAuMjQ1NDI5IEM1MTAuNDg1MDg3LDYyMC42MjM4MzEgNTEwLjcxMDgzMyw2MjEuMTQ5OTQ2IDUxMC43MSw2MjEuNyBMNTEwLjcxLDY4NC4zNiBDNTEwLjcwODYzNyw2ODQuOTE1NjA1IDUxMC45Mzg0NTgsNjg1LjQ0NjczOCA1MTEuMzQ0Mzg1LDY4NS44MjYxMDggQzUxMS43NTAzMTEsNjg2LjIwNTQ3OSA1MTIuMjk1NzU2LDY4Ni4zOTg4OTQgNTEyLjg1LDY4Ni4zNiBDNjE5LjQ1LDY3OS40MyA3MTYuMTcsNjQxLjk0IDcxNi4xNyw1NzMuODcgWiBNMzAyLjMzMDA0OSw2MjkuNDggQzMwMi4zMzQ4NjYsNjMwLjE3Njc0NCAzMDEuOTc2NzcsNjMwLjgyNTgwMiAzMDEuMzg0Nzc0LDYzMS4xOTMyNDggQzMwMC43OTI3NzksNjMxLjU2MDY5NCAzMDAuMDUyMjE5LDYzMS41OTM1NTkgMjk5LjQzLDYzMS4yOCBDMjc3LjgxLDYyMC40MSAyNTIuNjUsNjAwLjggMjUyLjY1LDU3OS40NSBMMjUyLjY1LDU1NC43MSBDMjUyLjY1NzUxOCw1NTMuODczMDk5IDI1My4xODUzNCw1NTMuMTI5MzgyIDI1My45NzI4NTgsNTUyLjg0NjA1NCBDMjU0Ljc2MDM3Niw1NTIuNTYyNzI2IDI1NS42NDEwMjksNTUyLjc5OTcxMSAyNTYuMTgsNTUzLjQ0IEMyNjcuMTMsNTY2LjggMjgxLjc2LDU3OC4xNyAzMDEuMTgsNTg3LjU0IEMzMDEuODc0NTY4LDU4Ny44NzA4MDUgMzAyLjMxNzgyMiw1ODguNTcwNjgxIDMwMi4zMiw1ODkuMzQgTDMwMi4zMzAwNDksNjI5LjQ4IFogTTM5NC4wNyw2NTkuMDYgQzM3NS41ODE2NDEsNjU2LjI0Nzg3MyAzNTcuMzEwOTg4LDY1Mi4xNTQ2ODUgMzM5LjM5LDY0Ni44MSBDMzM4LjU0ODU1Miw2NDYuNTUwMjIxIDMzNy45NzYwMzcsNjQ1Ljc3MDYyNyAzMzcuOTc5OTgsNjQ0Ljg5IEwzMzcuOTc5OTgsNjA0LjQ2IEMzMzcuOTgyMjIyLDYwMy44Mjk4OTMgMzM4LjI4MTI1OCw2MDMuMjM3Njc5IDMzOC43ODY5OTUsNjAyLjg2MTgyIEMzMzkuMjkyNzMxLDYwMi40ODU5NjEgMzM5Ljk0NjAyMyw2MDIuMzcwNDE1IDM0MC41NSw2MDIuNTUgQzM1OC4zMDA2MTksNjA3Ljc4NDkwNyAzNzYuMzg5ODYxLDYxMS43OTQzNDMgMzk0LjY5LDYxNC41NSBDMzk1LjY3NjA3Niw2MTQuNjk5NTM5IDM5Ni40MDEyNzQsNjE1LjU1MjcxMyAzOTYuMzkwMTMsNjE2LjU1IEwzOTYuMzkwMTMsNjU3LjExIEMzOTYuMzgyOTUzLDY1Ny42OTIxMDEgMzk2LjEyMjYzMiw2NTguMjQyMjQ0IDM5NS42NzY5OTUsNjU4LjYxNjgwOSBDMzk1LjIzMTM1OCw2NTguOTkxMzc1IDM5NC42NDQ2MzcsNjU5LjE1MzE4NiAzOTQuMDcsNjU5LjA2IEwzOTQuMDcsNjU5LjA2IFogTTY1MS42LDU4Ny41NCBDNjcxLjAzLDU3OC4xNyA2ODUuNjYsNTY2LjggNjk2LjYsNTUzLjQ0IEM2OTcuMTM4OTcxLDU1Mi43OTk3MTEgNjk4LjAxOTYyNCw1NTIuNTYyNzI2IDY5OC44MDcxNDIsNTUyLjg0NjA1NCBDNjk5LjU5NDY2LDU1My4xMjkzODIgNzAwLjEyMjQ4Miw1NTMuODczMDk5IDcwMC4xMyw1NTQuNzEgTDcwMC4xMyw1NzkuNDUgQzcwMC4xMyw2MDAuOCA2NzQuOTcsNjIwLjQ1IDY1My4zNSw2MzEuMjggQzY1Mi43Mjc3ODEsNjMxLjU5MzU1OSA2NTEuOTg3MjIxLDYzMS41NjA2OTQgNjUxLjM5NTIyNiw2MzEuMTkzMjQ4IEM2NTAuODAzMjMsNjMwLjgyNTgwMiA2NTAuNDQ1MTM0LDYzMC4xNzY3NDQgNjUwLjQ0OTk1MSw2MjkuNDggTDY1MC40NDk5NTEsNTg5LjM0IEM2NTAuNDU0MDEyLDU4OC41NjgzOTcgNjUwLjkwMTUzNiw1ODcuODY3OTI1IDY1MS42LDU4Ny41NCBMNjUxLjYsNTg3LjU0IFogTTU1OC4xLDYxNC41NCBDNTc2LjQwMDEzOSw2MTEuNzg0MzQzIDU5NC40ODkzODEsNjA3Ljc3NDkwNyA2MTIuMjQsNjAyLjU0IEM2MTIuODQzOTc3LDYwMi4zNjA0MTUgNjEzLjQ5NzI2OSw2MDIuNDc1OTYxIDYxNC4wMDMwMDUsNjAyLjg1MTgyIEM2MTQuNTA4NzQyLDYwMy4yMjc2NzkgNjE0LjgwNzc3OCw2MDMuODE5ODkzIDYxNC44MTAwMiw2MDQuNDUgTDYxNC44MTAwMiw2NDQuODggQzYxNC44MTM5NjMsNjQ1Ljc2MDYyNyA2MTQuMjQxNDQ4LDY0Ni41NDAyMjEgNjEzLjQsNjQ2LjggQzU5NS40NzkwMTIsNjUyLjE0NDY4NSA1NzcuMjA4MzU5LDY1Ni4yMzc4NzMgNTU4LjcyLDY1OS4wNSBDNTU4LjEzNjczNiw2NTkuMTQ0NTkxIDU1Ny41NDE0OTYsNjU4Ljk3NjQyNSA1NTcuMDkzOTU0LDY1OC41OTA2MTMgQzU1Ni42NDY0MTMsNjU4LjIwNDgwMSA1NTYuMzkyMzgsNjU3LjY0MDgzNSA1NTYuMzk5ODMzLDY1Ny4wNSBMNTU2LjM5OTgzMyw2MTYuNTEgQzU1Ni40MDM2MzUsNjE1LjUyNDA3NyA1NTcuMTI1MjI0LDYxNC42ODc4ODMgNTU4LjEsNjE0LjU0IFogTTQ3Ni40LDQ0Ny45IEM1MTEuMzcwNjcsNDQ3LjkgNTM5LjcyLDQxOS41NTA2NyA1MzkuNzIsMzg0LjU4IEM1MzkuNzIsMzQ5LjYwOTMzIDUxMS4zNzA2NywzMjEuMjYgNDc2LjQsMzIxLjI2IEM0NDEuNDI5MzMsMzIxLjI2IDQxMy4wOCwzNDkuNjA5MzMgNDEzLjA4LDM4NC41OCBDNDEzLjA4LDQxOS41NTA2NyA0NDEuNDI5MzMsNDQ3LjkgNDc2LjQsNDQ3LjkgTDQ3Ni40LDQ0Ny45IFogTTQ3NS44NSwzMjcuNjMgQzQ4Ny40OSwzMjcuNjMgNDk2LjkzLDMzNC41MyA0OTYuOTMsMzQzLjAzIEM0OTYuOTMsMzUxLjUzIDQ4Ny40OSwzNTguNDMgNDc1Ljg1LDM1OC40MyBDNDY0LjIxLDM1OC40MyA0NTQuNzgsMzUxLjU0IDQ1NC43OCwzNDMuMDMgQzQ1NC43OCwzMzQuNTIgNDY0LjIxLDMyNy42MyA0NzUuODUsMzI3LjYzIFogTTU0LjQzLDQ3NS42MyBDNTcuNjg0NDYzNSw0ODIuNzA3NDQ5IDYxLjYxMjU3NDgsNDg5LjQ1NTIyOCA2Ni4xNiw0OTUuNzggQzc3LjMwMjE4NDMsNTEwLjgxMDE0MSA5Ni40OTYzMTU5LDUxNy41MDY4NzUgMTE0LjU3LDUxMi42NyBDMTE3LjM4LDUxMi4wMyAyNDkuMzcsNDczLjczIDI5Ny42Myw0NTkuNzMgQzI5OC4xNzI3NTYsNDU5LjU2ODk2MiAyOTguNjIxODMzLDQ1OS4xODU0NCAyOTguODY1ODI4LDQ1OC42NzQ1NzUgQzI5OS4xMDk4MjQsNDU4LjE2MzcxIDI5OS4xMjU4NzUsNDU3LjU3MzM2OSAyOTguOTEsNDU3LjA1IEMyODAuMzcyNTE1LDQxMS40NjM2MjMgMjgwLjA0Njc2MywzNjAuNDk5NjE4IDI5OCwzMTQuNjggQzI5OC4yMTUyNTYsMzE0LjE1MzkzNCAyOTguMTk2NTA1LDMxMy41NjExMjYgMjk3Ljk0ODQzMywzMTMuMDQ5NzE1IEMyOTcuNzAwMzYsMzEyLjUzODMwNSAyOTcuMjQ2NDAzLDMxMi4xNTY2MDUgMjk2LjcsMzEyIEMyNTAuNDcsMjk5Ljg5IDExOC4xOSwyNjUuMjQgMTE1LjMzLDI2NC42IEM5Ny41OTQwNzc5LDI1OS44NzMyMjQgNzguNzM3MzE1NywyNjYuMDI0Mjk3IDY3LjIsMjgwLjMgQzY2Ljc5NzQ0NDMsMjgwLjc5NTUzMSA2Ni43NTI2NjA4LDI4MS40OTE1NyA2Ny4wODgzOTQ4LDI4Mi4wMzQ2MDIgQzY3LjQyNDEyODgsMjgyLjU3NzYzNSA2OC4wNjY4MDAxLDI4Mi44NDg2NSA2OC42OSwyODIuNzEgQzc0Ljg1LDI4MS4yNyA4Ni42NCwyNzguNzEgOTIuOTgsMjc4LjcxIEMxMTcuMjMsMjc4LjcxIDEzNy44MSwyOTIuOTUgMTUwLjk4LDMxOC43MSBDMTYwLjc1LDMzNy44NCAxNjYuMTIsMzYyLjcxIDE2Ni4xLDM4OC44OSBDMTY2LjA4LDQxNS4wNyAxNjAuNjgsNDM5Ljg5IDE1MC45LDQ1OC45OSBDMTQyLjQsNDc1LjYgMTMwLjgzLDQ4Ny40MSAxMTcuMiw0OTMuNzEgQzExMC4zMiw0OTYuODkgMTA1LjIsNDg2LjY2IDExMS45Miw0ODMuMTIgTDExMi41Niw0ODIuOCBDMTIzLjcsNDc3LjUxIDEzMy4yNiw0NjcuNiAxNDAuNDIsNDUzLjYyIEMxNDkuMzYsNDM2LjE1IDE1NC4zLDQxMy4xNiAxNTQuMzIsMzg4Ljg4IEMxNTQuMzQsMzY0LjYgMTQ5LjQzLDM0MS41NiAxNDAuNDksMzI0LjA3IEMxMjkuNDIsMzAyLjQxIDExMi41NywyOTAuNDggOTMuMDMsMjkwLjQ2IEw5My4wMywyOTAuNDYgQzgzLjY0LDI5MC40NiA2OS43OCwyOTMuMTcgNTUuNDYsMjk5Ljk4IEw1NS4yOCwzMDAuMzcgQzQ4LjQ1MTY0NDcsMzAzLjY2MjU2OCA0Mi4wMDA1ODE0LDMwNy42ODYxMDEgMzYuMDQsMzEyLjM3IEMxOS43NCwzMjUuMTggMC4zLDM0OC44NiAwLjI3LDM4OC45IEMwLjI3LDQyOC40NSAyMC45MSw0NTIuMzcgMzguMjcsNDY1LjQ3IEM0My4zNzQ3MTYsNDY5LjMxMTk5MSA0OC43OTM4NTczLDQ3Mi43MTczNTIgNTQuNDcsNDc1LjY1IEw1NC40Myw0NzUuNjMgWiBNMTcuNTYsMzUwLjg0IEMxNy41NiwzNTAuODQgMjAuNDIsMzQwLjg0IDI3LjY5LDM0MC44NCBDMzUuMjMsMzQwLjg0IDQxLjM0LDM0NS4yOCA0MS4zNTAwMTIzLDM1MC43OSBDNDEuMzYsMzU2LjMgMzUuMjYsMzYwLjc5IDI3LjczLDM2MC43OSBDMjAuMiwzNjAuNzkgMTUuNzUsMzU3LjYzIDE3LjU2LDM1MC44NCBaIE0yNy4xNCw0MzguMDggQzI2LjcyMzI2NzQsNDM3LjQzNzQ2OSAyNi43MTAwNDExLDQzNi42MTMzODEgMjcuMTA1OTM5NSw0MzUuOTU3ODA4IEMyNy41MDE4MzgsNDM1LjMwMjIzNCAyOC4yMzczMzc0LDQzNC45MzAyOTkgMjksNDM1IEMzMC40ODA5NDI2LDQzNS4yNTE2ODggMzEuOTc4MjIwOCw0MzUuMzk1NCAzMy40OCw0MzUuNDMgQzU3LjEzLDQzNS40MyA3Ni4yNiw0MTMuMTQgNzYuMjIsMzg1LjczIEM3Ni4xOCwzNTguMzIgNTYuOTcsMzM2LjE0IDMzLjMyLDMzNi4xOCBMMzIuNjEsMzM2LjE4IEMzMS44NTI0NDI0LDMzNi4xNzUyOTUgMzEuMTYyNTY3MiwzMzUuNzQyOTY2IDMwLjgyODAxMjEsMzM1LjA2MzI2OCBDMzAuNDkzNDU3LDMzNC4zODM1NzEgMzAuNTcxNjU0MiwzMzMuNTczMTg3IDMxLjAzLDMzMi45NyBDMzQuNjU0MTYzLDMyOC43MDg4MTUgMzguNjk0MTQzNCwzMjQuODE5NTggNDMuMDksMzIxLjM2IEM1OS45MiwzMDguMTQgODAuMjYsMzAyLjI3IDkzLjAxLDMwMi4yNCBDMTI1LjU2LDMwMi4yNCAxNDIuNTYsMzQ1Ljg0IDE0Mi41MzAwNCwzODguODcgQzE0Mi41LDQzMS45IDEyNS40Niw0NzUuMzcgOTIuOTYsNDc1LjQzIEw5Mi44Nyw0NzUuNDMgQzg0LjIzLDQ3NS40MyA2My42Miw0NzAuMjEgNDUuMTQsNDU2LjI2IEMzOC4yODI4NDU3LDQ1MS4xMTMzMDEgMzIuMjE4MjE1MSw0NDQuOTg4MDI1IDI3LjE0LDQzOC4wOCBaIE02NDYuODcsMjk4IEM2ODcuMTIsMjcxLjMzIDgwNS4xMywxOTMuMTMgODA3LjQ3LDE5MS4zNiBDODIyLjg1MjM4NSwxODAuNzA5Njc3IDgzMC4xNTc3NzMsMTYxLjczNjI5MSA4MjUuODksMTQzLjUyIEM4MjQuMDA1NzcyLDEzNS45NTM1NDQgODIxLjM5NzA1OCwxMjguNTg2MTg2IDgxOC4xLDEyMS41MiBMODE4LjEsMTIxLjUyIEM4MTkuNTQwMzM1LDExNS4yOTUyMjcgODIwLjQ0Njk1NiwxMDguOTU4OTE1IDgyMC44MSwxMDIuNTggQzgyMiw4MC45MyA4MTcuMTYsNDkuNjkgNzg3LDI0LjE0IEM3NTYuNDEsLTEuNzMgNzI1Ljc3LC0yLjIxIDcwNS40NiwxLjk0IEM2OTguMDQzMjIxLDMuNDY1NzYwMzcgNjkwLjgxNDE0NSw1Ljc5Mjc0NTAxIDY4My45LDguODggTDY4My40OCw4Ljc4IEM2NjksMTUuMjkgNjU4LDI0LjEyIDY1MS45MywzMS4yOCBMNjUxLjkzLDMxLjI4IEM2MzkuMyw0Ni4yIDYzNy41MSw2Ni43OCA2NDYuODcsODkuMjIgQzY1NC40NCwxMDcuMzUgNjY4LjgyLDEyNS45OCA2ODcuMzcsMTQxLjY4IEM3MDUuOTIsMTU3LjM4IDcyNi42MywxNjguNDYgNzQ1Ljc1LDE3Mi45NCBDNzYxLjAzLDE3Ni41MSA3NzQuNzUsMTc1LjYzIDc4Ni4wMSwxNzAuNTUgQzc4Ni4yMiwxNzAuNDYgNzg2LjQ0LDE3MC4zNiA3ODYuNjgsMTcwLjI3IEM3OTMuNjgsMTY3LjQ1IDc5OC4yMSwxNzcuOTYgNzkxLjM0LDE4MS4xNCBDNzc3LjczLDE4Ny40NyA3NjEuMjMsMTg4LjY2IDc0My4wNiwxODQuNDEgQzcyMi4xNywxNzkuNTIgNjk5LjY5LDE2Ny41NCA2NzkuNzYsMTUwLjY3IEM2NTkuODMsMTMzLjggNjQ0LjI1LDExMy42IDYzNiw5My43OCBDNjI0Ljg1LDY3LjA1IDYyNy4zMSw0Mi4xNiA2NDMsMjMuNjQgQzY0Ny4xMSwxOC44MSA2NTYuNjgsMTEuNDcgNjYxLjc2LDcuNzEgQzY2Mi4yNzEwOCw3LjMyNzE0NzQ5IDY2Mi40ODM3NDEsNi42NjI2OTc5IDY2Mi4yODk5MzcsNi4wNTQyNDIzIEM2NjIuMDk2MTMzLDUuNDQ1Nzg2NyA2NjEuNTM4MzU2LDUuMDI2NzM2MDMgNjYwLjksNS4wMSBDNjQyLjU0ODIzNCw0LjU4MzAyMDY1IDYyNS42NjI3NjksMTQuOTkyNDU5MyA2MTcuOCwzMS41OCBDNjE2LjQyLDM0LjIzIDU1NS40MSwxNjEuNTIgNTM1LjcxLDIwMi41OCBDNTgzLjkxODMyLDIxOC40NDUwMDQgNjIzLjg4NDI0NCwyNTIuNzUxODQ1IDY0Ni44NywyOTggWiBNNzMyLjU4LDE0IEM3MzcuMjgsOC40NSA3NDYuNzUsMTIuNzMgNzQ2Ljc1LDEyLjczIEM3NTMuMSwxNS43MyA3NTIuNjUsMjEuMTggNzQ3Ljc1LDI2LjkyIEM3NDIuODUsMzIuNjYgNzM1LjUxLDM0LjQxIDczMS4zMiwzMC44NSBDNzI3LjEzLDI3LjI5IDcyNy43MiwxOS43OCA3MzIuNTgsMTQgWiBNNzkzLjEsMTUwLjggTDc5My4wNCwxNTAuODcgQzc3MiwxNzUuNjIgNzI3Ljc4LDE2MC40OCA2OTUsMTMyLjcxIEM2NjIuMjIsMTA0Ljk0IDYzOS45MSw2My43MSA2NjAuOTQsMzguOTEgQzY2OS4yLDI5LjIxIDY4Ni44MywxNy40OSA3MDcuOCwxMy4yIEM3MTMuMjc5NjQzLDEyLjA4MjEwMTIgNzE4Ljg1NzQ5MSwxMS41MTU5NDEzIDcyNC40NSwxMS41MSBDNzI1LjIwODQ5NCwxMS41NDYwMjA0IDcyNS44ODExNjYsMTIuMDA4NDc1MSA3MjYuMTg2NDE2LDEyLjcwMzc2ODQgQzcyNi40OTE2NjcsMTMuMzk5MDYxOCA3MjYuMzc2ODM4LDE0LjIwNzI0ODMgNzI1Ljg5LDE0Ljc5IEM3MjUuNzEsMTQuOTcgNzI1LjU1LDE1LjE1IDcyNS40MSwxNS4zMiBDNzEwLjA5LDMzLjMyIDcxNC42LDYyLjMyIDczNS40OCw4MC4wOSBDNzU2LjM2LDk3Ljg2IDc4NS43LDk3LjY0IDgwMS4wMiw3OS42MiBDODAxLjk2ODY0NSw3OC40NTU0MTAzIDgwMi44MjQ1OTcsNzcuMjE4MjkyMiA4MDMuNTgsNzUuOTIgQzgwNC4wMTUyODgsNzUuMjgxOTk4OSA4MDQuNzc5MDI3LDc0Ljk1MTY1MjYgODA1LjU0MjA0NCw3NS4wNzEzNDE1IEM4MDYuMzA1MDYyLDc1LjE5MTAzMDUgODA2LjkzMDk3LDc1LjczOTM2MDkgODA3LjE1LDc2LjQ4IEM4MDkuMTI0NzA5LDg0LjgzMzY5NDMgODA5Ljg2MjU3Myw5My40MzIwMDEyIDgwOS4zNCwxMDIgQzgwOCwxMjUuMTEgNzk4LjY4LDE0NC4yIDc5My4xLDE1MC44IFogTTEwMi4yMSwxMzQuNDggQzk1LjY0NDY2MTEsMTUwLjQ3MzY4IDEwMS43MTQ1NjYsMTY4Ljg2NTkxNyAxMTYuNTEsMTc3LjgxIEwyNTEuNTEsMjYwLjAyIEMyNTEuOTQwNTQyLDI2MC4yNzkzMjEgMjUyLjQ1NzcwNSwyNjAuMzUzMzY1IDI1Mi45NDM3MTQsMjYwLjIyNTI2OSBDMjUzLjQyOTcyNCwyNjAuMDk3MTc0IDI1My44NDMyMDcsMjU5Ljc3Nzg0NCAyNTQuMDksMjU5LjM0IEMyNjkuMTM3ODgzLDIzMi42NjM2ODUgMjg4Ljg0MjM2MywyMDguODk4NDE2IDMxMi4yNywxODkuMTcgQzMxMy4wNDEyODYsMTg4LjUzMjEyOCAzMTMuMTYxMjQ0LDE4Ny4zOTQ3NDEgMzEyLjU0LDE4Ni42MSBMMjE4LjQsNjUuODcgQzIxNS4wNDMwMTcsNjEuNjU2NjkxNCAyMDkuMjg5NjU4LDYwLjE5Njg4MzkgMjA0LjMzLDYyLjMgQzIwMy4xNTI2NjUsNjIuODA2MDk5OCAyMDEuODE3NTc4LDYyLjc5ODEzMTggMjAwLjY0NjM2Nyw2Mi4yNzgwMTU2IEMxOTkuNDc1MTU3LDYxLjc1Nzg5OTQgMTk4LjU3NDAwNCw2MC43NzI3ODg0IDE5OC4xNiw1OS41NiBDMTk3LjQyNzMxLDU3LjE3NDg5NTcgMTk4LjY2OTA3OCw1NC42MzAxNDU5IDIwMSw1My43NCBDMjA5LjczNjE0NCw1MC4xNDM3NzE1IDIxOS43OTc3ODksNTIuNzcxMzg2NyAyMjUuNjYsNjAuMTggTDMxOS43NiwxODAuODIgQzMyMC4wNTY4OCwxODEuMjA3OTkgMzIwLjQ5NjU3MywxODEuNDYxMTY0IDMyMC45ODExNjcsMTgxLjUyMzE0NyBDMzIxLjQ2NTc2MiwxODEuNTg1MTMgMzIxLjk1NTAyMiwxODEuNDUwNzc1IDMyMi4zNCwxODEuMTUgQzMyMy43MywxODAuMTUgMzI1LjEyLDE3OS4wNyAzMjYuNTMsMTc4LjA1IEMzMjYuOTM1Nzk4LDE3Ny43NTY1NDIgMzI3LjIwNTI5LDE3Ny4zMTExMDcgMzI3LjI3NjkwNCwxNzYuODE1NDY1IEMzMjcuMzQ4NTE4LDE3Ni4zMTk4MjMgMzI3LjIxNjEzNCwxNzUuODE2MzIyIDMyNi45MSwxNzUuNDIgTDIzNS43MSw1Ni40MiBDMjI2LjE2NDMzNiw0My45OTQ2NjgzIDIwOS42NzgxMDIsMzkuMTcwNTE0IDE5NC45NCw0NC40OSBDMTc0LjE4LDI3LjQ0IDE0MC43NCwyOS45OCAxMTcuMTEsNTEuNDkgQzEwNC44Miw2Mi42OCA5Ni45NSw3Ny4zMiA5NC45Niw5Mi42OSBDOTMuMTUsMTA2LjY5IDk2LjQsMTE5LjggMTA0LjEyLDEzMC4xMiBDMTAzLjQyLDEzMS42IDEwMi43OCwxMzMuMDggMTAyLjIxLDEzNC40OCBaIE0xMDQuMDUsOTMuODMgQzEwNS43Niw4MC42MSAxMTIuNTksNjcuOTggMTIzLjI3LDU4LjI1IEMxNDIuMDQsNDEuMTcgMTY3Ljc2LDM3Ljc5IDE4NS4xOCw0OC43NCBDMTY4Ljg2MDMwMiw1Ni43MzE3MjM1IDE1My43ODY1OSw2Ny4wNDkyMTYzIDE0MC40Myw3OS4zNyBDMTI3LjYxMzkzNCw5MS4xNjc4MTI2IDExNi45MDY3MDMsMTA1LjA2NzU5OCAxMDguNzcsMTIwLjQ3IEMxMDQuMzU2OTA1LDExMi4zMzQxOCAxMDIuNzAwNzU4LDEwMi45ODY3NzQgMTA0LjA1LDkzLjgzIEwxMDQuMDUsOTMuODMgWiBNNDE0LjcsNTI5LjQ5IEM0NTQuMDUzNzk4LDU0NS43Mjk2OTQgNDk4LjIzNjIwMiw1NDUuNzI5Njk0IDUzNy41OSw1MjkuNDkgQzU5NS42NDA5NzksNTA0LjQyMDk1MyA2MzMuMDQ2MDg3LDQ0Ny4wMzczMDcgNjMyLjU1MjY5MiwzODMuODA2NTQgQzYzMi4wNTkyOTcsMzIwLjU3NTc3NCA1OTMuNzYzMjU5LDI2My43ODI4MyA1MzUuMzI4MTQxLDIzOS42MjI3MzQgQzQ3Ni44OTMwMjMsMjE1LjQ2MjYzOCA0MDkuNjcyMDMzLDIyOC42MjkzOTMgMzY0LjY3LDI3My4wNSBDMzUwLjQyMTg3MSwyODcuMzg0NjE3IDMzOS4xMTkxMzcsMzA0LjM3MDk5MiAzMzEuNCwzMjMuMDUgQzMxNS4xNjAyODksMzYyLjQ3NjU0MSAzMTUuMTYwMjg5LDQwNi43MjM0NTkgMzMxLjQsNDQ2LjE1IEMzNDYuODcyNjI2LDQ4My45NjYwNTEgMzc2Ljg4NTgwNyw1MTMuOTgyODM1IDQxNC43LDUyOS40NiBMNDE0LjcsNTI5LjQ5IFogTTM1My4xNSwzODQuNjMgQzM1My4wMjY4NDYsMzY3LjU1ODI4NiAzNTYuMjc5MTY5LDM1MC42MzA1NzUgMzYyLjcyLDMzNC44MiBDMzY4LjY4Nzc0MywzMTkuOTQzMTYgMzc3LjQ3NTY5NiwzMDYuMzYwNTQ1IDM4OC42LDI5NC44MiBDNDExLjcwMzQxLDI3MS40Njk3NzkgNDQzLjE4Njg1OSwyNTguMzMwODEzIDQ3Ni4wMzUsMjU4LjMzMDgxMyBDNTA4Ljg4MzE0MSwyNTguMzMwODEzIDU0MC4zNjY1OSwyNzEuNDY5Nzc5IDU2My40NywyOTQuODIgQzU3NC41ODc1ODksMzA2LjM2NTg3MSA1ODMuMzc0NjQ2LDMxOS45NDcxMDMgNTg5LjM1LDMzNC44MiBDNTk1Ljc4NjAyMywzNTAuNjMyMDAxIDU5OS4wMzgxNiwzNjcuNTU4NzQzIDU5OC45MiwzODQuNjMgQzU5OS4xNDI2ODgsNDE3Ljk2MTYyNyA1ODYuNDM1ODM2LDQ1MC4wODE4MjYgNTYzLjQ3LDQ3NC4yNCBDNTUyLjQxNTAyNyw0ODUuNjc1NTA1IDUzOS4xNzY4MSw0OTQuNzc1MjkyIDUyNC41NCw1MDEgQzQ5My41MjM2NjIsNTE0LjA1MTEwNyA0NTguNTU2MzM4LDUxNC4wNTExMDcgNDI3LjU0LDUwMSBDNDEyLjkwMTI4NSw0OTQuNzgzMjgyIDM5OS42NjIxODcsNDg1LjY4NjI5IDM4OC42MSw0NzQuMjUgQzM2NS42NDQxNjQsNDUwLjA5MTgyNiAzNTIuOTM3MzEyLDQxNy45NzE2MjcgMzUzLjE2LDM4NC42NCBMMzUzLjE1LDM4NC42MyBaIE00NzYsMTQ0LjYyOTc0MyBDNDk3LjM0ODMyNCwxNDQuNTk4NzUyIDUxOC42MDU1NDksMTQ3LjQxMzU0MyA1MzkuMjEsMTUzIEM1MzkuNzg1NTI5LDE1My4xNTY4MjkgNTQwLjI2MTAxNCwxNTMuNTYyMzcxIDU0MC41MDY2ODYsMTU0LjEwNTk0NiBDNTQwLjc1MjM1OSwxNTQuNjQ5NTIxIDU0MC43NDI1NzMsMTU1LjI3NDM4NCA1NDAuNDgsMTU1LjgxIEw1MjAuMTQsMTk4LjIgTDUyMC4xNCwxOTguMiBDNDM0Ljc0OTQwMywxNzguMDgyODEzIDM0Ni41OTQ2NDYsMjE4LjQ3MjQ5MiAzMDYuMDcsMjk2LjI4IEMzMDUuNjM2MzgsMjk3LjA5ODk3MyAzMDQuNjk2OTYyLDI5Ny41MTI4MTMgMzAzLjgsMjk3LjI4IEwyNTkuODUsMjg1Ljc3IEMyNTkuMjcyNzIxLDI4NS42MjEzMDYgMjU4Ljc5MTg2MiwyODUuMjIyODUgMjU4LjUzODUwMSwyODQuNjgzMjQ5IEMyNTguMjg1MTM5LDI4NC4xNDM2NDggMjU4LjI4NTY4OSwyODMuNTE5MTU0IDI1OC41NCwyODIuOTggQzI5Ni44LDIwMS4yOCAzNzkuOCwxNDQuNjI5NzQzIDQ3NiwxNDQuNjI5NzQzIFogTTM0OS4xLDE2MSBDMzQ5LjMxNzQyLDE2MS40NjYxMjIgMzQ5LjcyMDAxMiwxNjEuODE5OTY2IDM1MC4yMTAxODYsMTYxLjk3NTc1NyBDMzUwLjcwMDM1OSwxNjIuMTMxNTQ5IDM1MS4yMzMzNjUsMTYyLjA3NTA2NiAzNTEuNjgsMTYxLjgyIEMzNzQuOTI5OTE1LDE0OC44MDAzNjUgNDAwLjA3OTI4NiwxMzkuNTEwNjU0IDQyNi4yMSwxMzQuMjkgTDQzNS4yMSwxMzIuNjYgQzQ2Mi4xODc5NzYsMTI4LjIwMzI1NyA0ODkuNzA4MzU3LDEyOC4xMjg5NjkgNTE2LjcxLDEzMi40NCBDNTE3LjIxODA2MywxMzIuNTIyNTYxIDUxNy43Mzc2MjQsMTMyLjM5MDg5MSA1MTguMTQ1MDQ1LDEzMi4wNzYzMjQgQzUxOC41NTI0NjcsMTMxLjc2MTc1NyA1MTguODExMzE3LDEzMS4yOTI0MiA1MTguODYsMTMwLjc4IEw1MjEuNDksMTAyLjI0IEM1MjIuODgwMjQxLDg3LjEzNDkwODIgNTE0LjUzNTYxNiw3Mi44MTA5MDU4IDUwMC43MSw2Ni41NyBDNDk2LjA5NTM1NCw2NC41MDQxNDE4IDQ5MS4zMjM2MjUsNjIuODA4NzkwNSA0ODYuNDQsNjEuNSBDNDgzLjE3NjA1Myw1Ny4wMTc0NDE3IDQ3OS40NTI0ODcsNTIuODg4MzM5MyA0NzUuMzMsNDkuMTggQzQ2My42NCwzOC43MyA0NDMuNDQsMjcuMzcgNDEzLjYxLDMyLjYyIEw0MTMuNDEsMzIuNjIgQzM4NC4xMiwzNy45MyAzNjkuMDksNTYuNDMgMzYxLjYzLDcxIEMzNTkuNTI2MzA0LDc1LjE0NzcyMTMgMzU3Ljc2MDU3OSw3OS40NTgzNjQyIDM1Ni4zNSw4My44OSBDMzUxLjQxNDM4Nyw4Ny4yODczMSAzNDYuODI1NTQ5LDkxLjE2MjcwMDYgMzQyLjY1LDk1LjQ2IEMzMzIuNzI5Mjc1LDEwNS45MDEzMDEgMzMwLjI2ODEwMSwxMjEuMzc2MDggMzM2LjQ2LDEzNC4zOCBMMzQ5LjEsMTYxIFogTTM2OS44Myw3NS4xOCBDMzc2LjMzLDYyLjQyIDM4OS40Niw0Ni4yOCA0MTUuMDcsNDEuNzEgTDQxNS4yNSw0MS43MSBDNDQxLjQ0LDM3LjEgNDU5LjA2LDQ2Ljk4IDQ2OS4yNSw1Ni4wOCBDNDcwLjE1LDU2Ljg5IDQ3MS4wMiw1Ny43MyA0NzEuODcsNTguNTggQzQ1Ny43MSw1Ni41OCA0MzkuODcsNTYuNTEgNDE4LjA1LDYwLjQxIEMzOTcuNDcsNjQuMDkgMzgxLjU5LDY5LjgyIDM2OS40LDc2LjExIEMzNjkuNTQsNzUuODEgMzY5LjY3LDc1LjUyIDM2OS44Myw3NS4yMiBMMzY5LjgzLDc1LjE4IFogTTM0NS4xNSwxMDkuNjIgQzM0OC43MSwxMDAuMjEgMzYzLjE1LDgzLjEyIDQxOS45Myw3Mi45OSBDNDc5LjYsNjIuMzMgNTAwLjI5LDc0LjUxIDUwNy4wMiw4MS41OCBDNTA3Ljg2ODIxNCw4Mi40NTAzNDg0IDUwOC4yMzkyMyw4My42NzkzNTcgNTA4LjAxNDMwMSw4NC44NzM2Njg0IEM1MDcuNzg5MzczLDg2LjA2Nzk3OTggNTA2Ljk5NjcwNSw4Ny4wNzc4Mjc5IDUwNS44OSw4Ny41OCBMNTA1LjI5LDg3Ljg1IEM1MDMuMzEwMjYxLDg4Ljc4MDg0NiA1MDAuOTcwNTM5LDg4LjQ4MDU4MTcgNDk5LjI5LDg3LjA4IEM0OTMuNzEsODIuMzMgNDc1LjkyLDczLjA4IDQyNi4wNyw4MS4zMSBMNDE3LDgyLjkyIEMzNjguMSw5Mi4zNSAzNTYuNjcsMTA2LjM4IDM1NCwxMTIuMzEgQzM1My4xODc2NSwxMTQuMDcxOTI5IDM1MS41MTY5OTcsMTE1LjI4NDE5NCAzNDkuNTksMTE1LjUxIEMzNDguMDk5NTYsMTE1LjY1NjgyIDM0Ni42Mzk3NTIsMTE1LjAxOTQwMSAzNDUuNzM0MzIzLDExMy44MjY0MzcgQzM0NC44Mjg4OTQsMTEyLjYzMzQ3MyAzNDQuNjA3NjYyLDExMS4wNTYwMDcgMzQ1LjE1LDEwOS42NiBMMzQ1LjE1LDEwOS42MiBaIiBpZD0iU2hhcGUiIGZpbGw9ImN1cnJlbnRDb2xvciIgZmlsbC1ydWxlPSJub256ZXJvIj48L3BhdGg+CiAgICA8L2c+Cjwvc3ZnPgo= + mediatype: "image/svg+xml" + install: + spec: + deployments: null + strategy: "" + installModes: + - supported: false + type: OwnNamespace + - supported: false + type: SingleNamespace + - supported: false + type: MultiNamespace + - supported: true + type: AllNamespaces + keywords: + - monitoring + - prometheus + - thanos + links: + - name: RHOBS Prometheus Operator + # TODO: need an url for the operator + url: https://observability-operator.rhobs.io + maintainers: + - name: Simon Pasquier + email: spasquie@redhat.com + - name: Sunil Thaha + email: sthaha@redhat.com + - name: Jan Fajerski + email: jfajersk@redhat.com + maturity: alpha + provider: + name: Red Hat + version: 0.0.0 diff --git a/rhobs/olm/manifests/kustomization.yaml b/rhobs/olm/manifests/kustomization.yaml new file mode 100644 index 000000000..2f14e604b --- /dev/null +++ b/rhobs/olm/manifests/kustomization.yaml @@ -0,0 +1,26 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +# bases: +# - bases + +resources: +- csv/rhobs-prometheus-operator.clusterserviceversion.yaml +- crds +- operator +- admission-webhook +- scorecard + +# TODO: add samples to the bundle +# - ./samples + +namespace: openshift-operators + +images: +- name: rhobs-prometheus-operator + newName: rhobs-prometheus-operator + newTag: 0.64.1 +labels: +- includeSelectors: true + pairs: + app.kubernetes.io/part-of: rhobs-prometheus-operator diff --git a/rhobs/olm/manifests/operator/kustomization.yaml b/rhobs/olm/manifests/operator/kustomization.yaml new file mode 100644 index 000000000..34b7ccec8 --- /dev/null +++ b/rhobs/olm/manifests/operator/kustomization.yaml @@ -0,0 +1,70 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization + +resources: +- example/rbac/prometheus-operator/prometheus-operator-deployment.yaml +- example/rbac/prometheus-operator/prometheus-operator-cluster-role-binding.yaml +- example/rbac/prometheus-operator/prometheus-operator-cluster-role.yaml +- example/rbac/prometheus-operator/prometheus-operator-service-account.yaml + +namePrefix: rhobs- + +patches: + - patch: |- + apiVersion: apps/v1 + kind: Deployment + metadata: + name: prometheus-operator + spec: + selector: + matchLabels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + template: + metadata: + annotations: + target.workload.openshift.io/management: '{"effect": "PreferredDuringScheduling"}' + labels: + app.kubernetes.io/part-of: rhobs-prometheus-operator + spec: + containers: + - name: prometheus-operator + image: + args: + - --prometheus-config-reloader= + resources: + requests: + cpu: 5m + memory: 250Mi + limits: + cpu: 100m + memory: 500Mi + terminationMessagePolicy: FallbackToLogsOnError + securityContext: + runAsNonRoot: true + - patch: |- + - op: remove + path: /spec/template/spec/nodeSelector + target: + group: apps + version: v1 + kind: Deployment + name: prometheus-operator + + - patch: |- + - op: add + path: /rules/- + value: + apiGroups: + - security.openshift.io + resourceNames: + - nonroot-v2 + - nonroot + resources: + - securitycontextconstraints + verbs: + - use + target: + group: rbac.authorization.k8s.io + version: v1 + kind: ClusterRole + name: prometheus-operator diff --git a/rhobs/olm/manifests/scorecard/bases/config.yaml b/rhobs/olm/manifests/scorecard/bases/config.yaml new file mode 100644 index 000000000..c77047841 --- /dev/null +++ b/rhobs/olm/manifests/scorecard/bases/config.yaml @@ -0,0 +1,7 @@ +apiVersion: scorecard.operatorframework.io/v1alpha3 +kind: Configuration +metadata: + name: config +stages: +- parallel: true + tests: [] diff --git a/rhobs/olm/manifests/scorecard/kustomization.yaml b/rhobs/olm/manifests/scorecard/kustomization.yaml new file mode 100644 index 000000000..fff539408 --- /dev/null +++ b/rhobs/olm/manifests/scorecard/kustomization.yaml @@ -0,0 +1,19 @@ +--- +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: +- bases/config.yaml +patchesJson6902: +- path: patches/basic.config.yaml + target: + group: scorecard.operatorframework.io + version: v1alpha3 + kind: Configuration + name: config +- path: patches/olm.config.yaml + target: + group: scorecard.operatorframework.io + version: v1alpha3 + kind: Configuration + name: config +#+kubebuilder:scaffold:patchesJson6902 diff --git a/rhobs/olm/manifests/scorecard/patches/basic.config.yaml b/rhobs/olm/manifests/scorecard/patches/basic.config.yaml new file mode 100644 index 000000000..e175a560c --- /dev/null +++ b/rhobs/olm/manifests/scorecard/patches/basic.config.yaml @@ -0,0 +1,10 @@ +- op: add + path: /stages/0/tests/- + value: + entrypoint: + - scorecard-test + - basic-check-spec + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: basic + test: basic-check-spec-test diff --git a/rhobs/olm/manifests/scorecard/patches/olm.config.yaml b/rhobs/olm/manifests/scorecard/patches/olm.config.yaml new file mode 100644 index 000000000..45f8a9bde --- /dev/null +++ b/rhobs/olm/manifests/scorecard/patches/olm.config.yaml @@ -0,0 +1,50 @@ +- op: add + path: /stages/0/tests/- + value: + entrypoint: + - scorecard-test + - olm-bundle-validation + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-bundle-validation-test +- op: add + path: /stages/0/tests/- + value: + entrypoint: + - scorecard-test + - olm-crds-have-validation + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-crds-have-validation-test +- op: add + path: /stages/0/tests/- + value: + entrypoint: + - scorecard-test + - olm-crds-have-resources + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-crds-have-resources-test +- op: add + path: /stages/0/tests/- + value: + entrypoint: + - scorecard-test + - olm-spec-descriptors + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-spec-descriptors-test +- op: add + path: /stages/0/tests/- + value: + entrypoint: + - scorecard-test + - olm-status-descriptors + image: quay.io/operator-framework/scorecard-test:v1.13.0 + labels: + suite: olm + test: olm-status-descriptors-test diff --git a/rhobs/olm/subscription/catalog-src.yaml b/rhobs/olm/subscription/catalog-src.yaml new file mode 100644 index 000000000..406f3cf8f --- /dev/null +++ b/rhobs/olm/subscription/catalog-src.yaml @@ -0,0 +1,19 @@ +# Apply this to add a new catalog to OLM +--- +apiVersion: operators.coreos.com/v1alpha1 +kind: CatalogSource +metadata: + annotations: + name: rhobs-prometheus-operator + namespace: openshift-marketplace +spec: + displayName: RHOBS Prometheus Operator - Test + icon: + base64data: "" + mediatype: "" + image: quay.io/rhobs/rhobs-prometheus-operator-catalog:latest + publisher: Sunil Thaha + sourceType: grpc + updateStrategy: + registryPoll: + interval: 1m0s diff --git a/rhobs/olm/subscription/subscription.yaml b/rhobs/olm/subscription/subscription.yaml new file mode 100644 index 000000000..e8c1b3287 --- /dev/null +++ b/rhobs/olm/subscription/subscription.yaml @@ -0,0 +1,12 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: Subscription +metadata: + name: rhobs-prometheus-operator + namespace: openshift-operators +spec: + channel: stable + installPlanApproval: Automatic + name: rhobs-prometheus-operator + source: rhobs-prometheus-operator + sourceNamespace: openshift-marketplace + startingCSV: rhobs-prometheus-operator.v0.64.0-rhobs1 diff --git a/rhobs/push-container-images.sh b/rhobs/push-container-images.sh new file mode 100755 index 000000000..49895d437 --- /dev/null +++ b/rhobs/push-container-images.sh @@ -0,0 +1,110 @@ +#!/usr/bin/env bash +# +# NOTE: this is a modified version of /scripts/push-docker-image.sh +# Modifications: +# * allow CPU_ARCHS to be passed +# * set registries to just quay.io +# * for IMAGE_* set local/name as default +# * allow TAG to be passed instead of relying on GITHUB_REF + + +# This script builds multi-arch container images and publish them to multiple container registries. +# +# The script figures out: +# - if an image is a development one (by default suffixed with `-dev` in image name) +# - the image tag (aka version) based on GITHUB_REF value +# +# The script does not: +# - directly execute `docker build`. This is done via the Makefile. +# - Authenticate to the container registries +# + +# exit immediately when a command fails +set -e +# only exit with zero if all commands of the pipeline exit successfully +set -o pipefail + +set -x + +REGISTRIES="${REGISTRIES:-"quay.io"}" +IMAGE_ORG="${IMAGE_ORG:-local}" + +CPU_ARCHS="${CPU_ARCHS:-"amd64 arm64 arm ppc64le s390x"}" + + +# IMAGE_OPERATOR, IMAGER_RELOADER and IMAGE_WEBHOOK need to be exported to be used by `make` +export IMAGE_OPERATOR="${IMAGE_OPERATOR:-"$IMAGE_ORG/obo-prometheus-operator"}" +export IMAGE_RELOADER="${IMAGE_RELOADER:-"$IMAGE_ORG/obo-prometheus-config-reloader"}" +export IMAGE_WEBHOOK="${IMAGE_WEBHOOK:="$IMAGE_ORG/obo-admission-webhook"}" + +# Figure out if current commit is tagged +export TAG="${TAG:-"${GITHUB_REF##*/}"}" + +# Push `-dev` images unless commit is tagged +IMAGE_SUFFIX="-dev" + +# Use the main image repository if TAG is a semver tag or it is a main or master branch. +# Otherwise assemble the image tag from VERSION file + short commit SHA and +# push them to the dev image repository. +if [[ "$TAG" =~ ^v[0-9]+\.[0-9]+ ]] || [ "${TAG}" == "master" ] || [ "${TAG}" == "main" ]; then + # Reset suffixes as images are not development ones + IMAGE_SUFFIX="" +else + TAG="v$(cat "$(git rev-parse --show-toplevel)/VERSION")-$(git rev-parse --short HEAD)" +fi + +# Compose full image names for retagging and publishing to remote container registries +OPERATORS="" +RELOADERS="" +WEBHOOKS="" +for i in ${REGISTRIES}; do + OPERATORS="$i/${IMAGE_OPERATOR}${IMAGE_SUFFIX} ${OPERATORS}" + RELOADERS="$i/${IMAGE_RELOADER}${IMAGE_SUFFIX} ${RELOADERS}" + WEBHOOKS="$i/${IMAGE_WEBHOOK}${IMAGE_SUFFIX} ${WEBHOOKS}" +done + +for img in ${OPERATORS} ${RELOADERS} ${WEBHOOKS}; do + echo "Building multi-arch image: $img:$TAG" +done + +# Build images and rename them for each remote registry +for arch in ${CPU_ARCHS}; do + make --always-make image GOARCH="$arch" TAG="${TAG}-$arch" + # Retag operator image + for i in ${OPERATORS}; do + docker tag "${IMAGE_OPERATOR}:${TAG}-$arch" "${i}:${TAG}-$arch" + done + # Retag reloader image + for i in ${RELOADERS}; do + docker tag "${IMAGE_RELOADER}:${TAG}-$arch" "${i}:${TAG}-$arch" + done + # Retag webhook image + for i in ${WEBHOOKS}; do + docker tag "${IMAGE_WEBHOOK}:${TAG}-$arch" "${i}:${TAG}-$arch" + done +done + +# Compose multi-arch images and push them to remote repositories +export DOCKER_CLI_EXPERIMENTAL=enabled +for r in ${OPERATORS} ${RELOADERS} ${WEBHOOKS}; do + # Images need to be on remote registry before creating manifests + for arch in $CPU_ARCHS; do + docker push "${r}:${TAG}-$arch" + done + + arches=( ) + for arch in $CPU_ARCHS; do + arches+=("${r}:${TAG}-$arch") + docker push "${r}:${TAG}-$arch" + done + + + # Create manifest to join all images under one virtual tag + docker manifest create -a "${r}:${TAG}" "${arches[@]}" + + # Annotate to set which image is build for which CPU architecture + for arch in $CPU_ARCHS; do + docker manifest annotate --arch "$arch" "${r}:${TAG}" "${r}:${TAG}-$arch" + done + docker manifest push "${r}:${TAG}" +done diff --git a/rhobs/test/import/README.md b/rhobs/test/import/README.md new file mode 100644 index 000000000..400464754 --- /dev/null +++ b/rhobs/test/import/README.md @@ -0,0 +1,4 @@ + +This test checks if the packages exported by rhobs/obo-prometheus-operator are self sufficient, and do not pull any upstream dependency. + +During the release process, the `go.mod` in this test is updated by `rhobs/make-release-commit.sh` script to the released version. The test is configured to be run by CI in `.github/workflows/rhobs-release.yaml`. diff --git a/rhobs/test/import/go.mod b/rhobs/test/import/go.mod new file mode 100644 index 000000000..811a82dac --- /dev/null +++ b/rhobs/test/import/go.mod @@ -0,0 +1,116 @@ +module rhobs + +go 1.20 + +require ( + github.com/rhobs/obo-prometheus-operator v0.69.1-rhobs1 + github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring v0.69.1-rhobs1 + github.com/rhobs/obo-prometheus-operator/pkg/client v0.69.1-rhobs1 +) + +require ( + github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 // indirect + github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect + github.com/aws/aws-sdk-go v1.44.217 // indirect + github.com/beorn7/perks v1.0.1 // indirect + github.com/cespare/xxhash/v2 v2.2.0 // indirect + github.com/davecgh/go-spew v1.1.1 // indirect + github.com/dennwc/varint v1.0.0 // indirect + github.com/docker/distribution v2.8.1+incompatible // indirect + github.com/edsrzf/mmap-go v1.1.0 // indirect + github.com/efficientgo/tools/core v0.0.0-20220817170617-6c25e3b627dd // indirect + github.com/emicklei/go-restful/v3 v3.10.1 // indirect + github.com/go-kit/log v0.2.1 // indirect + github.com/go-logfmt/logfmt v0.6.0 // indirect + github.com/go-logr/logr v1.2.3 // indirect + github.com/go-logr/stdr v1.2.2 // indirect + github.com/go-openapi/analysis v0.21.4 // indirect + github.com/go-openapi/errors v0.20.3 // indirect + github.com/go-openapi/jsonpointer v0.19.6 // indirect + github.com/go-openapi/jsonreference v0.20.2 // indirect + github.com/go-openapi/loads v0.21.2 // indirect + github.com/go-openapi/runtime v0.25.0 // indirect + github.com/go-openapi/spec v0.20.8 // indirect + github.com/go-openapi/strfmt v0.21.3 // indirect + github.com/go-openapi/swag v0.22.3 // indirect + github.com/go-openapi/validate v0.22.1 // indirect + github.com/gogo/protobuf v1.3.2 // indirect + github.com/golang/protobuf v1.5.3 // indirect + github.com/golang/snappy v0.0.4 // indirect + github.com/google/gnostic v0.6.9 // indirect + github.com/google/go-cmp v0.5.9 // indirect + github.com/google/gofuzz v1.2.0 // indirect + github.com/grafana/regexp v0.0.0-20221122212121-6b5c0a4cb7fd // indirect + github.com/imdario/mergo v0.3.13 // indirect + github.com/inconshreveable/mousetrap v1.0.1 // indirect + github.com/jmespath/go-jmespath v0.4.0 // indirect + github.com/josharian/intern v1.0.0 // indirect + github.com/jpillora/backoff v1.0.0 // indirect + github.com/json-iterator/go v1.1.12 // indirect + github.com/mailru/easyjson v0.7.7 // indirect + github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect + github.com/metalmatze/signal v0.0.0-20210307161603-1c9aa721a97a // indirect + github.com/mitchellh/mapstructure v1.5.0 // indirect + github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect + github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect + github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f // indirect + github.com/oklog/ulid v1.3.1 // indirect + github.com/opencontainers/go-digest v1.0.0 // indirect + github.com/opentracing/opentracing-go v1.2.0 // indirect + github.com/pkg/errors v0.9.1 // indirect + github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect + github.com/prometheus-community/prom-label-proxy v0.6.0 // indirect + github.com/prometheus/alertmanager v0.25.0 // indirect + github.com/prometheus/client_golang v1.14.0 // indirect + github.com/prometheus/client_model v0.3.0 // indirect + github.com/prometheus/common v0.42.0 // indirect + github.com/prometheus/common/sigv4 v0.1.0 // indirect + github.com/prometheus/procfs v0.9.0 // indirect + github.com/prometheus/prometheus v0.43.0 // indirect + github.com/spf13/cobra v1.6.1 // indirect + github.com/spf13/pflag v1.0.5 // indirect + github.com/stretchr/testify v1.8.2 // indirect + github.com/thanos-io/thanos v0.31.0 // indirect + go.mongodb.org/mongo-driver v1.11.5 // indirect + go.opentelemetry.io/otel v1.14.0 // indirect + go.opentelemetry.io/otel/trace v1.14.0 // indirect + go.uber.org/atomic v1.10.0 // indirect + go.uber.org/goleak v1.2.1 // indirect + go4.org/intern v0.0.0-20220617035311-6925f38cc365 // indirect + go4.org/unsafe/assume-no-moving-gc v0.0.0-20230221090011-e4bae7ad2296 // indirect + golang.org/x/exp v0.0.0-20230307190834-24139beb5833 // indirect + golang.org/x/net v0.8.0 // indirect + golang.org/x/oauth2 v0.6.0 // indirect + golang.org/x/sync v0.1.0 // indirect + golang.org/x/sys v0.6.0 // indirect + golang.org/x/term v0.6.0 // indirect + golang.org/x/text v0.8.0 // indirect + golang.org/x/time v0.3.0 // indirect + google.golang.org/appengine v1.6.7 // indirect + google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4 // indirect + google.golang.org/grpc v1.53.0 // indirect + google.golang.org/protobuf v1.30.0 // indirect + gopkg.in/inf.v0 v0.9.1 // indirect + gopkg.in/yaml.v2 v2.4.0 // indirect + gopkg.in/yaml.v3 v3.0.1 // indirect + k8s.io/api v0.26.3 // indirect + k8s.io/apiextensions-apiserver v0.26.3 // indirect + k8s.io/apimachinery v0.26.3 // indirect + k8s.io/client-go v0.26.3 // indirect + k8s.io/component-base v0.26.3 // indirect + k8s.io/klog/v2 v2.90.1 // indirect + k8s.io/kube-openapi v0.0.0-20230303024457-afdc3dddf62d // indirect + k8s.io/utils v0.0.0-20230308161112-d77c459e9343 // indirect + sigs.k8s.io/controller-runtime v0.14.5 // indirect + sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect + sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect + sigs.k8s.io/yaml v1.3.0 // indirect +) + +// NOTE: to test local changes, uncomment below +// replace ( +// github.com/rhobs/obo-prometheus-operator => ../../.. +// github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring => ../../../pkg/apis/monitoring/ +// github.com/rhobs/obo-prometheus-operator/pkg/client => ../../../pkg/client +// ) diff --git a/rhobs/test/import/go.sum b/rhobs/test/import/go.sum new file mode 100644 index 000000000..a348641ca --- /dev/null +++ b/rhobs/test/import/go.sum @@ -0,0 +1,882 @@ +cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= +cloud.google.com/go v0.38.0/go.mod h1:990N+gfupTy94rShfmMCWGDn0LpTmnzTp2qbd1dvSRU= +cloud.google.com/go v0.44.1/go.mod h1:iSa0KzasP4Uvy3f1mN/7PiObzGgflwredwwASm/v6AU= +cloud.google.com/go v0.44.2/go.mod h1:60680Gw3Yr4ikxnPRS/oxxkBccT6SA1yMk63TGekxKY= +cloud.google.com/go v0.45.1/go.mod h1:RpBamKRgapWJb87xiFSdk4g1CME7QZg3uwTez+TSTjc= +cloud.google.com/go v0.46.3/go.mod h1:a6bKKbmY7er1mI7TEI4lsAkts/mkhTSZK8w33B4RAg0= +cloud.google.com/go v0.50.0/go.mod h1:r9sluTvynVuxRIOHXQEHMFffphuXHOMZMycpNR5e6To= +cloud.google.com/go v0.52.0/go.mod h1:pXajvRH/6o3+F9jDHZWQ5PbGhn+o8w9qiu/CffaVdO4= +cloud.google.com/go v0.53.0/go.mod h1:fp/UouUEsRkN6ryDKNW/Upv/JBKnv6WDthjR6+vze6M= +cloud.google.com/go v0.54.0/go.mod h1:1rq2OEkV3YMf6n/9ZvGWI3GWw0VoqH/1x2nd8Is/bPc= +cloud.google.com/go v0.56.0/go.mod h1:jr7tqZxxKOVYizybht9+26Z/gUq7tiRzu+ACVAMbKVk= +cloud.google.com/go v0.57.0/go.mod h1:oXiQ6Rzq3RAkkY7N6t3TcE6jE+CIBBbA36lwQ1JyzZs= +cloud.google.com/go v0.62.0/go.mod h1:jmCYTdRCQuc1PHIIJ/maLInMho30T/Y0M4hTdTShOYc= +cloud.google.com/go v0.65.0/go.mod h1:O5N8zS7uWy9vkA9vayVHs65eM1ubvY4h553ofrNHObY= +cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= +cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= +cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= +cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg= +cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc= +cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ= +cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= +cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= +cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I= +cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= +cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= +cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU= +cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= +cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= +cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= +cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= +cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= +dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU= +github.com/Azure/azure-sdk-for-go v65.0.0+incompatible h1:HzKLt3kIwMm4KeJYTdx9EbjRYTySD/t8i1Ee/W5EGXw= +github.com/Azure/go-autorest v14.2.0+incompatible h1:V5VMDjClD3GiElqLWO7mz2MxNAK/vTfRHdAubSIPRgs= +github.com/Azure/go-autorest/autorest v0.11.28 h1:ndAExarwr5Y+GaHE6VCaY1kyS/HwwGGyuimVhWsHOEM= +github.com/Azure/go-autorest/autorest/adal v0.9.22 h1:/GblQdIudfEM3AWWZ0mrYJQSd7JS4S/Mbzh6F0ov0Xc= +github.com/Azure/go-autorest/autorest/date v0.3.0 h1:7gUk1U5M/CQbp9WoqinNzJar+8KY+LPI6wiWrP/myHw= +github.com/Azure/go-autorest/autorest/to v0.4.0 h1:oXVqrxakqqV1UZdSazDOPOLvOIz+XA683u8EctwboHk= +github.com/Azure/go-autorest/autorest/validation v0.3.1 h1:AgyqjAd94fwNAoTjl/WQXg4VvFeRFpO+UhNyRXqF1ac= +github.com/Azure/go-autorest/logger v0.2.1 h1:IG7i4p/mDa2Ce4TRyAO8IHnVhAVF3RFU+ZtXWSmf4Tg= +github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo= +github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= +github.com/BurntSushi/xgb v0.0.0-20160522181843-27f122750802/go.mod h1:IVnqGOEym/WlBOVXweHU+Q+/VP0lqqI8lqeDx9IjBqo= +github.com/DATA-DOG/go-sqlmock v1.4.1/go.mod h1:f/Ixk793poVmq4qj/V1dPUg2JEAKC73Q5eFN3EC/SaM= +github.com/Microsoft/go-winio v0.6.0 h1:slsWYD/zyx7lCXoZVlvQrj0hPTM1HI4+v1sIda2yDvg= +github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= +github.com/PuerkitoBio/purell v1.1.1/go.mod h1:c11w/QuzBsJSee3cPx9rAFu61PvFxuPbtSwDGJws/X0= +github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdkoq3SwY9Y+13GIhn11/XLaGBb4BfwItxLd5jeuXE= +github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= +github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0= +github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= +github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137 h1:s6gZFSlWYmbqAuRjVTiNNhvNRfY2Wxp9nhfyel4rklc= +github.com/alecthomas/units v0.0.0-20211218093645-b94a6e3cc137/go.mod h1:OMCwj8VM1Kc9e19TLln2VL61YJF0x1XFtfdL4JdbSyE= +github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= +github.com/armon/go-metrics v0.4.1 h1:hR91U9KYmb6bLBYLQjyM+3j+rcd/UhE+G78SFnF8gJA= +github.com/asaskevich/govalidator v0.0.0-20200907205600-7a23bdc65eef/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= +github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 h1:DklsrG3dyBCFEj5IhUbnKptjxatkF07cF2ak3yi77so= +github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= +github.com/aws/aws-sdk-go v1.38.35/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.44.217 h1:FcWC56MRl+k756aH3qeMQTylSdeJ58WN0iFz3fkyRz0= +github.com/aws/aws-sdk-go v1.44.217/go.mod h1:aVsgQcEevwlmQ7qHE9I3h+dtQgpqhFB+i8Phjh7fkwI= +github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= +github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= +github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= +github.com/beorn7/perks v1.0.1/go.mod h1:G2ZrVWU2WbWT9wwq4/hrbKbnv/1ERSJQ0ibhJ6rlkpw= +github.com/buger/jsonparser v1.1.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx27UK13J/0= +github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU= +github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc= +github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/cespare/xxhash/v2 v2.2.0 h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44= +github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= +github.com/chzyer/logex v1.1.10/go.mod h1:+Ywpsq7O8HXn0nuIou7OrIPyXbp3wmkHB+jjWRnGsAI= +github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= +github.com/chzyer/test v0.0.0-20180213035817-a1ea475d72b1/go.mod h1:Q3SI9o4m/ZMnBNeIyt5eFwwo7qiLfzFZmjNmxjkiQlU= +github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw= +github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc= +github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= +github.com/cncf/xds/go v0.0.0-20210312221358-fbca930ec8ed/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= +github.com/cncf/xds/go v0.0.0-20230112175826-46e39c7b9b43 h1:XP+uhjN0yBCN/tPkr8Z0BNDc5rZam9RG6UWyf2FrSQ0= +github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o= +github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= +github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= +github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= +github.com/dennwc/varint v1.0.0 h1:kGNFFSSw8ToIy3obO/kKr8U9GZYUAxQEVuix4zfDWzE= +github.com/dennwc/varint v1.0.0/go.mod h1:hnItb35rvZvJrbTALZtY/iQfDs48JKRG1RPpgziApxA= +github.com/digitalocean/godo v1.97.0 h1:p9w1yCcWMZcxFSLPToNGXA96WfUVLXqoHti6GzVomL4= +github.com/docker/distribution v2.8.1+incompatible h1:Q50tZOPR6T/hjNsyc9g8/syEs6bk8XXApsHjKukMl68= +github.com/docker/distribution v2.8.1+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= +github.com/docker/docker v23.0.1+incompatible h1:vjgvJZxprTTE1A37nm+CLNAdwu6xZekyoiVlUZEINcY= +github.com/docker/go-connections v0.4.0 h1:El9xVISelRB7BuFusrZozjnkIM5YnzCViNKohAFqRJQ= +github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= +github.com/docopt/docopt-go v0.0.0-20180111231733-ee0de3bc6815/go.mod h1:WwZ+bS3ebgob9U8Nd0kOddGdZWjyMGR8Wziv+TBNwSE= +github.com/edsrzf/mmap-go v1.1.0 h1:6EUwBLQ/Mcr1EYLE4Tn1VdW1A4ckqCQWZBw8Hr0kjpQ= +github.com/edsrzf/mmap-go v1.1.0/go.mod h1:19H/e8pUPLicwkyNgOykDXkJ9F0MHE+Z52B8EIth78Q= +github.com/efficientgo/core v1.0.0-rc.2 h1:7j62qHLnrZqO3V3UA0AqOGd5d5aXV3AX6m/NZBHp78I= +github.com/efficientgo/tools/core v0.0.0-20220817170617-6c25e3b627dd h1:svR6KxSP1xiPw10RN4Pd7g6BAVkEcNN628PAqZH31mM= +github.com/efficientgo/tools/core v0.0.0-20220817170617-6c25e3b627dd/go.mod h1:OmVcnJopJL8d3X3sSXTiypGoUSgFq1aDGmlrdi9dn/M= +github.com/emicklei/go-restful/v3 v3.10.1 h1:rc42Y5YTp7Am7CS630D7JmhRjq4UlEUuEKfrDac4bSQ= +github.com/emicklei/go-restful/v3 v3.10.1/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= +github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4= +github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98= +github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= +github.com/envoyproxy/go-control-plane v0.9.9-0.20210512163311-63b5d3c536b0/go.mod h1:hliV/p42l8fGbc6Y9bQ70uLwIvmJyVE5k4iMKlh8wCQ= +github.com/envoyproxy/go-control-plane v0.11.0 h1:jtLewhRR2vMRNnq2ZZUoCjUlgut+Y0+sDDWPOfwOi1o= +github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= +github.com/envoyproxy/protoc-gen-validate v0.9.1 h1:PS7VIOgmSVhWUEeZwTe7z7zouA22Cr590PzXKbZHOVY= +github.com/evanphx/json-patch v5.6.0+incompatible h1:jBYDEEiFBPxA0v50tFdvOzQQTCvpL6mnFh5mB2/l16U= +github.com/fatih/color v1.14.1 h1:qfhVLaG5s+nCROl1zJsZRxFeYrHLqWroPOQ8BWiNb4w= +github.com/flowstack/go-jsonschema v0.1.1/go.mod h1:yL7fNggx1o8rm9RlgXv7hTBWxdBM0rVwpMwimd3F3N0= +github.com/fsnotify/fsnotify v1.6.0 h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY= +github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04= +github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as= +github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY= +github.com/go-kit/log v0.2.1 h1:MRVx0/zhvdseW+Gza6N9rVzU/IVzaeE1SFI4raAhmBU= +github.com/go-kit/log v0.2.1/go.mod h1:NwTd00d/i8cPZ3xOwwiv2PO5MOcx78fFErGNcVmBjv0= +github.com/go-logfmt/logfmt v0.3.0/go.mod h1:Qt1PoO58o5twSAckw1HlFXLmHsOX5/0LbT9GBnD5lWE= +github.com/go-logfmt/logfmt v0.4.0/go.mod h1:3RMwSq7FuexP4Kalkev3ejPJsZTpXXBr9+V4qmtdjCk= +github.com/go-logfmt/logfmt v0.5.0/go.mod h1:wCYkCAKZfumFQihp8CzCvQ3paCTfi41vtzG1KdI/P7A= +github.com/go-logfmt/logfmt v0.6.0 h1:wGYYu3uicYdqXVgoYbvnkrPVXkuLM1p1ifugDMEdRi4= +github.com/go-logfmt/logfmt v0.6.0/go.mod h1:WYhtIu8zTZfxdn5+rREduYbwxfcBr/Vr6KEVveWlfTs= +github.com/go-logr/logr v1.2.0/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/logr v1.2.3 h1:2DntVwHkVopvECVRSlL5PSo9eG+cAkDCuckLubN+rq0= +github.com/go-logr/logr v1.2.3/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= +github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= +github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= +github.com/go-openapi/analysis v0.21.2/go.mod h1:HZwRk4RRisyG8vx2Oe6aqeSQcoxRp47Xkp3+K6q+LdY= +github.com/go-openapi/analysis v0.21.4 h1:ZDFLvSNxpDaomuCueM0BlSXxpANBlFYiBvr+GXrvIHc= +github.com/go-openapi/analysis v0.21.4/go.mod h1:4zQ35W4neeZTqh3ol0rv/O8JBbka9QyAgQRPp9y3pfo= +github.com/go-openapi/errors v0.19.8/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/errors v0.19.9/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/errors v0.20.2/go.mod h1:cM//ZKUKyO06HSwqAelJ5NsEMMcpa6VpXe8DOa1Mi1M= +github.com/go-openapi/errors v0.20.3 h1:rz6kiC84sqNQoqrtulzaL/VERgkoCyB6WdEkc2ujzUc= +github.com/go-openapi/errors v0.20.3/go.mod h1:Z3FlZ4I8jEGxjUK+bugx3on2mIAk4txuAOhlsB1FSgk= +github.com/go-openapi/jsonpointer v0.19.3/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.5/go.mod h1:Pl9vOtqEWErmShwVjC8pYs9cog34VGT37dQOVbmoatg= +github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE= +github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= +github.com/go-openapi/jsonreference v0.19.6/go.mod h1:diGHMEHg2IqXZGKxqyvWdfWU/aim5Dprw5bqpKkTvns= +github.com/go-openapi/jsonreference v0.20.0/go.mod h1:Ag74Ico3lPc+zR+qjn4XBUmXymS4zJbYVCZmcgkasdo= +github.com/go-openapi/jsonreference v0.20.2 h1:3sVjiK66+uXK/6oQ8xgcRKcFgQ5KXa2KvnJRumpMGbE= +github.com/go-openapi/jsonreference v0.20.2/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= +github.com/go-openapi/loads v0.21.1/go.mod h1:/DtAMXXneXFjbQMGEtbamCZb+4x7eGwkvZCvBmwUG+g= +github.com/go-openapi/loads v0.21.2 h1:r2a/xFIYeZ4Qd2TnGpWDIQNcP80dIaZgf704za8enro= +github.com/go-openapi/loads v0.21.2/go.mod h1:Jq58Os6SSGz0rzh62ptiu8Z31I+OTHqmULx5e/gJbNw= +github.com/go-openapi/runtime v0.25.0 h1:7yQTCdRbWhX8vnIjdzU8S00tBYf7Sg71EBeorlPHvhc= +github.com/go-openapi/runtime v0.25.0/go.mod h1:Ux6fikcHXyyob6LNWxtE96hWwjBPYF0DXgVFuMTneOs= +github.com/go-openapi/spec v0.20.4/go.mod h1:faYFR1CvsJZ0mNsmsphTMSoRrNV3TEDoAM7FOEWeq8I= +github.com/go-openapi/spec v0.20.6/go.mod h1:2OpW+JddWPrpXSCIX8eOx7lZ5iyuWj3RYR6VaaBKcWA= +github.com/go-openapi/spec v0.20.8 h1:ubHmXNY3FCIOinT8RNrrPfGc9t7I1qhPtdOGoG2AxRU= +github.com/go-openapi/spec v0.20.8/go.mod h1:2OpW+JddWPrpXSCIX8eOx7lZ5iyuWj3RYR6VaaBKcWA= +github.com/go-openapi/strfmt v0.21.0/go.mod h1:ZRQ409bWMj+SOgXofQAGTIo2Ebu72Gs+WaRADcS5iNg= +github.com/go-openapi/strfmt v0.21.1/go.mod h1:I/XVKeLc5+MM5oPNN7P6urMOpuLXEcNrCX/rPGuWb0k= +github.com/go-openapi/strfmt v0.21.3 h1:xwhj5X6CjXEZZHMWy1zKJxvW9AfHC9pkyUjLvHtKG7o= +github.com/go-openapi/strfmt v0.21.3/go.mod h1:k+RzNO0Da+k3FrrynSNN8F7n/peCmQQqbbXjtDfvmGg= +github.com/go-openapi/swag v0.19.5/go.mod h1:POnQmlKehdgb5mhVOsnJFsivZCEZ/vjK9gh66Z9tfKk= +github.com/go-openapi/swag v0.19.15/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-openapi/swag v0.21.1/go.mod h1:QYRuS/SOXUCsnplDa677K7+DxSOj6IPNl/eQntq43wQ= +github.com/go-openapi/swag v0.22.3 h1:yMBqmnQ0gyZvEb/+KzuWZOXgllrXT4SADYbvDaXHv/g= +github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= +github.com/go-openapi/validate v0.22.1 h1:G+c2ub6q47kfX1sOBLwIQwzBVt8qmOAARyo/9Fqs9NU= +github.com/go-openapi/validate v0.22.1/go.mod h1:rjnrwK57VJ7A8xqfpAOEKRH8yQSGUriMu5/zuPSQ1hg= +github.com/go-resty/resty/v2 v2.7.0 h1:me+K9p3uhSmXtrBZ4k9jcEAfJmuC8IivWHwaLZwPrFY= +github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY= +github.com/go-zookeeper/zk v1.0.3 h1:7M2kwOsc//9VeeFiPtf+uSJlVpU66x9Ba5+8XK7/TDg= +github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0= +github.com/gobuffalo/depgen v0.0.0-20190329151759-d478694a28d3/go.mod h1:3STtPUQYuzV0gBVOY3vy6CfMm/ljR4pABfrTeHNLHUY= +github.com/gobuffalo/depgen v0.1.0/go.mod h1:+ifsuy7fhi15RWncXQQKjWS9JPkdah5sZvtHc2RXGlg= +github.com/gobuffalo/envy v1.6.15/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= +github.com/gobuffalo/envy v1.7.0/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI= +github.com/gobuffalo/flect v0.1.0/go.mod h1:d2ehjJqGOH/Kjqcoz+F7jHTBbmDb38yXA598Hb50EGs= +github.com/gobuffalo/flect v0.1.1/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= +github.com/gobuffalo/flect v0.1.3/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI= +github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk= +github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e/go.mod h1:80lIj3kVJWwOrXWWMRzzdhW3DsrdjILVil/SFKBzF28= +github.com/gobuffalo/genny v0.1.0/go.mod h1:XidbUqzak3lHdS//TPu2OgiFB+51Ur5f7CSnXZ/JDvo= +github.com/gobuffalo/genny v0.1.1/go.mod h1:5TExbEyY48pfunL4QSXxlDOmdsD44RRq4mVZ0Ex28Xk= +github.com/gobuffalo/gitgen v0.0.0-20190315122116-cc086187d211/go.mod h1:vEHJk/E9DmhejeLeNt7UVvlSGv3ziL+djtTr3yyzcOw= +github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5/go.mod h1:V9QVDIxsgKNZs6L2IYiGR8datgMhB577vzTDqypH360= +github.com/gobuffalo/gogen v0.1.0/go.mod h1:8NTelM5qd8RZ15VjQTFkAW6qOMx5wBbW4dSCS3BY8gg= +github.com/gobuffalo/gogen v0.1.1/go.mod h1:y8iBtmHmGc4qa3urIyo1shvOD8JftTtfcKi+71xfDNE= +github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2/go.mod h1:QdxcLw541hSGtBnhUc4gaNIXRjiDppFGaDqzbrBd3v8= +github.com/gobuffalo/mapi v1.0.1/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= +github.com/gobuffalo/mapi v1.0.2/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc= +github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= +github.com/gobuffalo/packd v0.1.0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4= +github.com/gobuffalo/packr/v2 v2.0.9/go.mod h1:emmyGweYTm6Kdper+iywB6YK5YzuKchGtJQZ0Odn4pQ= +github.com/gobuffalo/packr/v2 v2.2.0/go.mod h1:CaAwI0GPIAv+5wKLtv8Afwl+Cm78K/I/VCm/3ptBN+0= +github.com/gobuffalo/syncx v0.0.0-20190224160051-33c29581e754/go.mod h1:HhnNqWY95UYwwW3uSASeV7vtgYkT2t16hJgV3AEPUpw= +github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ= +github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q= +github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q= +github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= +github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= +github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= +github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/mock v1.2.0/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A= +github.com/golang/mock v1.3.1/go.mod h1:sBzyDLLjw3U8JLTeZvSv8jJB+tU5PVekmnlKIyFUx0Y= +github.com/golang/mock v1.4.0/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.1/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.3/go.mod h1:UOMv5ysSaYNkG+OFQykRIcU/QvvxJf3p21QfJ2Bt3cw= +github.com/golang/mock v1.4.4/go.mod h1:l3mdAwkq5BuhzHwde/uurv3sEJeZMXNpwsxVWU71h+4= +github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= +github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.4/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= +github.com/golang/protobuf v1.3.5/go.mod h1:6O5/vntMXwX2lRkT1hjjk0nAC1IDOTvTlVgjlRvqsdk= +github.com/golang/protobuf v1.4.0-rc.1/go.mod h1:ceaxUfeHdC40wWswd/P6IGgMaK3YpKi5j83Wpe3EHw8= +github.com/golang/protobuf v1.4.0-rc.1.0.20200221234624-67d41d38c208/go.mod h1:xKAWHe0F5eneWXFV3EuXVDTCmh+JuBKY0li0aMyXATA= +github.com/golang/protobuf v1.4.0-rc.2/go.mod h1:LlEzMj4AhA7rCAGe4KMBDvJI+AwstrUpVNzEA03Pprs= +github.com/golang/protobuf v1.4.0-rc.4.0.20200313231945-b860323f09d0/go.mod h1:WU3c8KckQ9AFe+yFwt9sWVRKCVIyN9cPHBJSNnbL67w= +github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvqG2KuDX0= +github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= +github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= +github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= +github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= +github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/snappy v0.0.1/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM= +github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= +github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= +github.com/google/gnostic v0.6.9 h1:ZK/5VhkoX835RikCHpSUJV9a+S3e1zLh59YnyWeBW+0= +github.com/google/gnostic v0.6.9/go.mod h1:Nm8234We1lq6iB9OmlgNv3nH91XLLVZHCDayfA3xq+E= +github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= +github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= +github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.4.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= +github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= +github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-querystring v1.1.0 h1:AnCroh3fv4ZBgVIf1Iwtovgjaw/GiKJo8M8yD/fhyJ8= +github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= +github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= +github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= +github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= +github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= +github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= +github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200212024743-f11f1df84d12/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200229191704-1ebb73c60ed3/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200430221834-fc25d7d30c6d/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/pprof v0.0.0-20200708004538-1a94d8640e99/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= +github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= +github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I= +github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= +github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= +github.com/gophercloud/gophercloud v1.2.0 h1:1oXyj4g54KBg/kFtCdMM6jtxSzeIyg8wv4z1HoGPp1E= +github.com/gorilla/websocket v1.5.0 h1:PPwGk2jz7EePpoHN/+ClbZu8SPxiqlu12wZP/3sWmnc= +github.com/grafana/regexp v0.0.0-20221122212121-6b5c0a4cb7fd h1:PpuIBO5P3e9hpqBD0O/HjhShYuM6XE0i/lbE6J94kww= +github.com/grafana/regexp v0.0.0-20221122212121-6b5c0a4cb7fd/go.mod h1:M5qHK+eWfAv8VR/265dIuEpL3fNfeC21tXXp9itM24A= +github.com/grpc-ecosystem/grpc-gateway v1.16.0/go.mod h1:BDjrQk3hbvj6Nolgz8mAMFbcEtjT1g+wF4CSlocrBnw= +github.com/hashicorp/consul/api v1.20.0 h1:9IHTjNVSZ7MIwjlW3N3a7iGiykCMDpxZu8jsxFJh0yc= +github.com/hashicorp/cronexpr v1.1.1 h1:NJZDd87hGXjoZBdvyCF9mX4DCq5Wy7+A/w+A7q0wn6c= +github.com/hashicorp/errwrap v1.1.0 h1:OxrOeh75EUXMY8TBjag2fzXGZ40LB6IKw45YeGUDY2I= +github.com/hashicorp/go-cleanhttp v0.5.2 h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ= +github.com/hashicorp/go-hclog v1.4.0 h1:ctuWFGrhFha8BnnzxqeRGidlEcQkDyL5u8J8t5eA11I= +github.com/hashicorp/go-immutable-radix v1.3.1 h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJFeZnpfm2KLowc= +github.com/hashicorp/go-multierror v1.1.1 h1:H5DkEtf6CXdFp0N0Em5UCwQpXMWke8IA0+lD48awMYo= +github.com/hashicorp/go-retryablehttp v0.7.2 h1:AcYqCvkpalPnPF2pn0KamgwamS42TqUDDYFRKq/RAd0= +github.com/hashicorp/go-rootcerts v1.0.2 h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc= +github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= +github.com/hashicorp/golang-lru v0.6.0 h1:uL2shRDx7RTrOrTCUZEGP/wJUFiUI8QT6E7z5o8jga4= +github.com/hashicorp/nomad/api v0.0.0-20230308192510-48e7d70fcd4b h1:EkuSTU8c/63q4LMayj8ilgg/4I5PXDFVcnqKfs9qcwI= +github.com/hashicorp/serf v0.10.1 h1:Z1H2J60yRKvfDYAOZLd2MU0ND4AH/WDz7xYHDWQsIPY= +github.com/hetznercloud/hcloud-go v1.41.0 h1:KJGFRRc68QiVu4PrEP5BmCQVveCP2CM26UGQUKGpIUs= +github.com/ianlancetaylor/demangle v0.0.0-20181102032728-5e5cf60278f6/go.mod h1:aSSvb/t6k1mPoxDqO4vJh6VOCGPwU4O0C2/Eqndh1Sc= +github.com/imdario/mergo v0.3.13 h1:lFzP57bqS/wsqKssCGmtLAb8A0wKjLGrve2q3PPVcBk= +github.com/imdario/mergo v0.3.13/go.mod h1:4lJ1jqUDcsbIECGy0RUJAXNIhg+6ocWgb1ALK2O4oXg= +github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8= +github.com/inconshreveable/mousetrap v1.0.1 h1:U3uMjPSQEBMNp1lFxmllqCPM6P5u/Xq7Pgzkat/bFNc= +github.com/inconshreveable/mousetrap v1.0.1/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/ionos-cloud/sdk-go/v6 v6.1.4 h1:BJHhFA8Q1SZC7VOXqKKr2BV2ysQ2/4hlk1e4hZte7GY= +github.com/jmespath/go-jmespath v0.4.0 h1:BEgLn5cpjn8UN1mAw4NjwDrS35OdebyEtFe+9YPoQUg= +github.com/jmespath/go-jmespath v0.4.0/go.mod h1:T8mJZnbsbmF+m6zOOFylbeCJqk5+pHWvzYPziyZiYoo= +github.com/jmespath/go-jmespath/internal/testify v1.5.1 h1:shLQSRRSCCPj3f2gpwzGwWFoC7ycTf1rcQZHOlsJ6N8= +github.com/jmespath/go-jmespath/internal/testify v1.5.1/go.mod h1:L3OGu8Wl2/fWfCI6z80xFu9LTZmf1ZRjMHUOPmWr69U= +github.com/joho/godotenv v1.3.0/go.mod h1:7hK45KPybAkOC6peb+G5yklZfMxEjkZhHbwpqxOKXbg= +github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= +github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= +github.com/jpillora/backoff v1.0.0 h1:uvFg412JmmHBHw7iwprIxkPMI+sGQ4kzOWsMeHnm2EA= +github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4= +github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU= +github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.11/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= +github.com/json-iterator/go v1.1.12 h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM= +github.com/json-iterator/go v1.1.12/go.mod h1:e30LSqwooZae/UwlEbR2852Gd8hjQvJoHmT4TnhNGBo= +github.com/jstemmer/go-junit-report v0.0.0-20190106144839-af01ea7f8024/go.mod h1:6v2b51hI/fHJwM22ozAgKL4VKDeJcHhJFhtBdhmNjmU= +github.com/jstemmer/go-junit-report v0.9.1/go.mod h1:Brl9GWCQeLvo8nXZwPNNblvFj/XSXhF0NWZEnDohbsk= +github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w= +github.com/julienschmidt/httprouter v1.3.0/go.mod h1:JR6WtHb+2LUe8TCKY3cZOxFyyO8IZAc4RVcycCCAKdM= +github.com/karrick/godirwalk v1.8.0/go.mod h1:H5KPZjojv4lE+QYImBI8xVtrBRgYrIVsaRPx4tDPEn4= +github.com/karrick/godirwalk v1.10.3/go.mod h1:RoGL9dQei4vP9ilrpETWE8CLOZ1kiN0LhBygSwrAsHA= +github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= +github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/klauspost/compress v1.13.6/go.mod h1:/3/Vjq9QcHkK5uEr5lBEmyoZ1iFhe47etQ6QUkpK6sk= +github.com/kolo/xmlrpc v0.0.0-20220921171641-a4b6fa1dd06b h1:udzkj9S/zlT5X367kqJis0QP7YMxobob6zhzq6Yre00= +github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/konsorten/go-windows-terminal-sequences v1.0.3/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc= +github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= +github.com/kr/pretty v0.2.0/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= +github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= +github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= +github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= +github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= +github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= +github.com/linode/linodego v1.14.1 h1:uGxQyy0BidoEpLGdvfi4cPgEW+0YUFsEGrLEhcTfjNc= +github.com/mailru/easyjson v0.0.0-20190614124828-94de47d64c63/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.0.0-20190626092158-b2ccc519800e/go.mod h1:C1wdFJiN94OJF2b5HbByQZoLdCWB1Yqtg26g4irojpc= +github.com/mailru/easyjson v0.7.6/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= +github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= +github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2/go.mod h1:Ld9puTsIW75CHf65OeIOkyKbteujpZVXDpWK6YGZbxE= +github.com/markbates/safe v1.0.1/go.mod h1:nAqgmRi7cY2nqMc92/bSEeQA+R4OheNU2T1kNSCBdG0= +github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= +github.com/mattn/go-isatty v0.0.17 h1:BTarxUcIeDqL27Mc+vyvdWYSL28zpIhv3RoTdsLMPng= +github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0= +github.com/matttproud/golang_protobuf_extensions v1.0.4 h1:mmDVorXM7PCGKw94cs5zkfA9PSy5pEvNWRP0ET0TIVo= +github.com/matttproud/golang_protobuf_extensions v1.0.4/go.mod h1:BSXmuO+STAnVfrANrmjBb36TMTDstsz7MSK+HVaYKv4= +github.com/metalmatze/signal v0.0.0-20210307161603-1c9aa721a97a h1:0usWxe5SGXKQovz3p+BiQ81Jy845xSMu2CWKuXsXuUM= +github.com/metalmatze/signal v0.0.0-20210307161603-1c9aa721a97a/go.mod h1:3OETvrxfELvGsU2RoGGWercfeZ4bCL3+SOwzIWtJH/Q= +github.com/miekg/dns v1.1.51 h1:0+Xg7vObnhrz/4ZCZcZh7zPXlmU0aveS2HDBd0m0qSo= +github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= +github.com/mitchellh/mapstructure v1.3.3/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/mapstructure v1.4.1/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/mitchellh/mapstructure v1.5.0 h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY= +github.com/mitchellh/mapstructure v1.5.0/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo= +github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg= +github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= +github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= +github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M= +github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk= +github.com/montanaflynn/stats v0.0.0-20171201202039-1bf9dbcd8cbe/go.mod h1:wL8QJuTMNUDYhXwkmfOly8iTdp5TEcJFWZD2D7SIkUc= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq1c1nUAm88MOHcQC9l5mIlSMApZMrHA= +github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= +github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f h1:KUppIJq7/+SVif2QVs3tOP0zanoHgBEVAwHxUSIzRqU= +github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= +github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= +github.com/oklog/ulid v1.3.1 h1:EGfNDEx6MqHz8B3uNV6QAib1UR2Lm97sHi3ocA6ESJ4= +github.com/oklog/ulid v1.3.1/go.mod h1:CirwcVhetQ6Lv90oh/F+FBtV6XMibvdAFo93nm5qn4U= +github.com/onsi/ginkgo/v2 v2.6.0 h1:9t9b9vRUbFq3C4qKFCGkVuq/fIHji802N1nrtkh1mNc= +github.com/onsi/gomega v1.24.1 h1:KORJXNNTzJXzu4ScJWssJfJMnJ+2QJqhoQSRwNlze9E= +github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= +github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= +github.com/opencontainers/image-spec v1.0.2 h1:9yCKha/T5XdGtO0q9Q9a6T5NUCsTn/DrBg0D7ufOcFM= +github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+1B0VhjKrZUs= +github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= +github.com/ovh/go-ovh v1.3.0 h1:mvZaddk4E4kLcXhzb+cxBsMPYp2pHqiQpWYkInsuZPQ= +github.com/pelletier/go-toml v1.7.0/go.mod h1:vwGMzjaWMwyfHwgIBhI2YUM4fB6nL6lVAvS1LBMMhTE= +github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= +github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= +github.com/prometheus-community/prom-label-proxy v0.6.0 h1:vRY29tUex8qI2MEimovTzJdieEwiSko+f7GuPCLjFkI= +github.com/prometheus-community/prom-label-proxy v0.6.0/go.mod h1:XyAyskjjhqEx0qnbGUVeAkYSz3Wm9gStT7/wXFxD8n0= +github.com/prometheus/alertmanager v0.25.0 h1:vbXKUR6PYRiZPRIKfmXaG+dmCKG52RtPL4Btl8hQGvg= +github.com/prometheus/alertmanager v0.25.0/go.mod h1:MEZ3rFVHqKZsw7IcNS/m4AWZeXThmJhumpiWR4eHU/w= +github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= +github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= +github.com/prometheus/client_golang v1.5.1/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU= +github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= +github.com/prometheus/client_golang v1.11.0/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0= +github.com/prometheus/client_golang v1.14.0 h1:nJdhIvne2eSX/XRAFV9PcvFFRbrjbcTUj0VP62TMhnw= +github.com/prometheus/client_golang v1.14.0/go.mod h1:8vpkKitgIVNcqrRBWh1C4TIUQgYNtG/XQE4E/Zae36Y= +github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo= +github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA= +github.com/prometheus/client_model v0.3.0 h1:UBgGFHqYdG/TPFD1B1ogZywDqEkwp3fBMvqdiQ7Xew4= +github.com/prometheus/client_model v0.3.0/go.mod h1:LDGWKZIo7rky3hgvBe+caln+Dr3dPggB5dvjtD7w9+w= +github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4= +github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4= +github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo= +github.com/prometheus/common v0.26.0/go.mod h1:M7rCNAaPfAosfx8veZJCuw84e35h3Cfd9VFqTh1DIvc= +github.com/prometheus/common v0.29.0/go.mod h1:vu+V0TpY+O6vW9J44gczi3Ap/oXXR10b+M/gUGO4Hls= +github.com/prometheus/common v0.42.0 h1:EKsfXEYo4JpWMHH5cg+KOUWeuJSov1Id8zGR8eeI1YM= +github.com/prometheus/common v0.42.0/go.mod h1:xBwqVerjNdUDjgODMpudtOMwlOwf2SaTr1yjz4b7Zbc= +github.com/prometheus/common/sigv4 v0.1.0 h1:qoVebwtwwEhS85Czm2dSROY5fTo2PAPEVdDeppTwGX4= +github.com/prometheus/common/sigv4 v0.1.0/go.mod h1:2Jkxxk9yYvCkE5G1sQT7GuEXm57JrvHu9k5YwTjsNtI= +github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk= +github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= +github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A= +github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU= +github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA= +github.com/prometheus/procfs v0.9.0 h1:wzCHvIvM5SxWqYvwgVL7yJY8Lz3PKn49KQtpgMYJfhI= +github.com/prometheus/procfs v0.9.0/go.mod h1:+pB4zwohETzFnmlpe6yd2lSc+0/46IYZRB/chUwxUZY= +github.com/prometheus/prometheus v0.43.0 h1:18iCSfrbAHbXvYFvR38U1Pt4uZmU9SmDcCpCrBKUiGg= +github.com/prometheus/prometheus v0.43.0/go.mod h1:2BA14LgBeqlPuzObSEbh+Y+JwLH2GcqDlJKbF2sA6FM= +github.com/rogpeppe/fastuuid v1.2.0/go.mod h1:jVj6XXZzXRy/MSR5jhDC/2q6DgLz+nrA6LYCDYWNEvQ= +github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4= +github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8= +github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= +github.com/scaleway/scaleway-sdk-go v1.0.0-beta.14 h1:yFl3jyaSVLNYXlnNYM5z2pagEk1dYQhfr1p20T1NyKY= +github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo= +github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q= +github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE= +github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= +github.com/spaolacci/murmur3 v0.0.0-20180118202830-f09979ecbc72/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= +github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ= +github.com/spf13/cobra v1.6.1 h1:o94oiPyS4KD1mPy2fmcYYHHfCxLqYjJOhGsCHFZtEzA= +github.com/spf13/cobra v1.6.1/go.mod h1:IOw/AERYS7UzyrGinqmz6HLUo219MORXGxhbaJUqzrY= +github.com/spf13/pflag v1.0.3/go.mod h1:DYY7MBk1bdzusC3SYhjObp+wFpr4gzcvqqNjLnInEg4= +github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= +github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= +github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= +github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= +github.com/stretchr/objx v0.5.0/go.mod h1:Yh+to48EsGEfYuaHDzXPcE3xhTkx73EhmCGUpEOglKo= +github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= +github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= +github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= +github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= +github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8= +github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= +github.com/thanos-io/thanos v0.31.0 h1:jOCmaiIXwpByWXoVtHnktLm3YDB9xDQQzmZvd1XG5oY= +github.com/thanos-io/thanos v0.31.0/go.mod h1:5ux+jb2oKr59+3XsCC0mX+JuAbPGJEMijjhcmnL/PMo= +github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= +github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= +github.com/vultr/govultr/v2 v2.17.2 h1:gej/rwr91Puc/tgh+j33p/BLR16UrIPnSr+AIwYWZQs= +github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI= +github.com/xdg-go/scram v1.0.2/go.mod h1:1WAq6h33pAW+iRreB34OORO2Nf7qel3VV3fjBj+hCSs= +github.com/xdg-go/scram v1.1.1/go.mod h1:RaEWvsqvNKKvBPvcKeFjrG2cJqOkHTiyTpzz23ni57g= +github.com/xdg-go/stringprep v1.0.2/go.mod h1:8F9zXuvzgwmyT5DUm4GUfZGDdT3W+LCvS6+da4O5kxM= +github.com/xdg-go/stringprep v1.0.3/go.mod h1:W3f5j4i+9rC0kuIEJL0ky1VpHXQU3ocBgklLGvcBnW8= +github.com/xeipuuv/gojsonpointer v0.0.0-20180127040702-4e3ac2762d5f/go.mod h1:N2zxlSyiKSe5eX1tZViRH5QA0qijqEDrYZiPEAiq3wU= +github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= +github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= +github.com/youmark/pkcs8 v0.0.0-20181117223130-1be2e3e5546d/go.mod h1:rHwXgn7JulP+udvsHwJoVG1YGAP6VLg4y9I5dyZdqmA= +github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.1.32/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= +github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= +go.mongodb.org/mongo-driver v1.7.3/go.mod h1:NqaYOwnXWr5Pm7AOpO5QFxKJ503nbMse/R79oO62zWg= +go.mongodb.org/mongo-driver v1.7.5/go.mod h1:VXEWRZ6URJIkUq2SCAyapmhH0ZLRBP+FT4xhp5Zvxng= +go.mongodb.org/mongo-driver v1.10.0/go.mod h1:wsihk0Kdgv8Kqu1Anit4sfK+22vSFbUrAVEYRhCXrA8= +go.mongodb.org/mongo-driver v1.11.5 h1:CLrb1a22ddViSnnPCzGT4+PGrOJsUXI/9SWj8N1uHCM= +go.mongodb.org/mongo-driver v1.11.5/go.mod h1:PTSz5yu21bkT/wXpkS7WR5f0ddqw5quethTUn9WM+2g= +go.opencensus.io v0.21.0/go.mod h1:mSImk1erAIZhrmZN+AvHh14ztQfjbGwt4TtuofqLduU= +go.opencensus.io v0.22.0/go.mod h1:+kGneAE2xo2IficOXnaByMWTGM9T73dGwxeWcUqIpI8= +go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= +go.opentelemetry.io/otel v1.14.0 h1:/79Huy8wbf5DnIPhemGB+zEPVwnN6fuQybr/SRXa6hM= +go.opentelemetry.io/otel v1.14.0/go.mod h1:o4buv+dJzx8rohcUeRmWUZhqupFvzWis188WlggnNeU= +go.opentelemetry.io/otel/sdk v1.14.0 h1:PDCppFRDq8A1jL9v6KMI6dYesaq+DFcDZvjsoGvxGzY= +go.opentelemetry.io/otel/trace v1.14.0 h1:wp2Mmvj41tDsyAJXiWDWpfNsOiIyd38fy85pyKcFq/M= +go.opentelemetry.io/otel/trace v1.14.0/go.mod h1:8avnQLK+CG77yNLUae4ea2JDQ6iT+gozhnZjy/rw9G8= +go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= +go.uber.org/atomic v1.10.0 h1:9qC72Qh0+3MqyJbAn8YU5xVq1frD8bn3JtD2oXtafVQ= +go.uber.org/atomic v1.10.0/go.mod h1:LUxbIzbOniOlMKjJjyPfpl4v+PKK2cNJn91OQbhoJI0= +go.uber.org/goleak v1.1.10/go.mod h1:8a7PlsEVH3e/a/GLqe5IIrQx6GzcnRmZEufDUTk4A7A= +go.uber.org/goleak v1.2.1 h1:NBol2c7O1ZokfZ0LEU9K6Whx/KnwvepVetCUhtKja4A= +go.uber.org/goleak v1.2.1/go.mod h1:qlT2yGI9QafXHhZZLxlSuNsMw3FFLxBr+tBRlmO1xH4= +go4.org/intern v0.0.0-20220617035311-6925f38cc365 h1:t9hFvR102YlOqU0fQn1wgwhNvSbHGBbbJxX9JKfU3l0= +go4.org/intern v0.0.0-20220617035311-6925f38cc365/go.mod h1:WXRv3p7T6gzt0CcJm43AAKdKVZmcQbwwC7EwquU5BZU= +go4.org/unsafe/assume-no-moving-gc v0.0.0-20220617031537-928513b29760/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E= +go4.org/unsafe/assume-no-moving-gc v0.0.0-20230221090011-e4bae7ad2296 h1:QJ/xcIANMLApehfgPCHnfK1hZiaMmbaTVmPv7DAoTbo= +go4.org/unsafe/assume-no-moving-gc v0.0.0-20230221090011-e4bae7ad2296/go.mod h1:FftLjUGFEDu5k8lt0ddY+HcrH/qU/0qk+H8j9/nTl3E= +golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= +golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= +golang.org/x/crypto v0.0.0-20190422162423-af44ce270edf/go.mod h1:WFFai1msRO1wXaEeE5yQxYXgSfI8pQAWXbQop6sCtWE= +golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= +golang.org/x/crypto v0.0.0-20200302210943-78000ba7a073/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= +golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.7.0 h1:AvwMYaRytfdeVt3u6mLaxYtErKYjxA2OXjJ1HHq6t3A= +golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= +golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= +golang.org/x/exp v0.0.0-20190829153037-c13cbed26979/go.mod h1:86+5VVa7VpoJ4kLfm080zCjGlMRFzhUhsZKEZO7MGek= +golang.org/x/exp v0.0.0-20191030013958-a1ab85dbe136/go.mod h1:JXzH8nQsPlswgeRAPE3MuO9GYsAcnJvJ4vnMwN/5qkY= +golang.org/x/exp v0.0.0-20191129062945-2f5052295587/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20191227195350-da58074b4299/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20200119233911-0405dc783f0a/go.mod h1:2RIsYlXP63K8oxa1u096TMicItID8zy7Y6sNkU49FU4= +golang.org/x/exp v0.0.0-20200207192155-f17229e696bd/go.mod h1:J/WKrq2StrnmMY6+EHIKF9dgMWnmCNThgcyBT1FY9mM= +golang.org/x/exp v0.0.0-20200224162631-6cc2880d07d6/go.mod h1:3jZMyOhIsHpP37uCMkUooju7aAi5cS1Q23tOzKc+0MU= +golang.org/x/exp v0.0.0-20230307190834-24139beb5833 h1:SChBja7BCQewoTAU7IgvucQKMIXrEpFxNMs0spT3/5s= +golang.org/x/exp v0.0.0-20230307190834-24139beb5833/go.mod h1:CxIveKay+FTh1D0yPZemJVgC/95VzuuOLq5Qi4xnoYc= +golang.org/x/image v0.0.0-20190227222117-0694c2d4d067/go.mod h1:kZ7UVZpmo3dzQBMxlp+ypCbDeSB+sBbTgSJuh5dn5js= +golang.org/x/image v0.0.0-20190802002840-cff245a6509b/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0= +golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= +golang.org/x/lint v0.0.0-20190301231843-5614ed5bae6f/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= +golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190409202823-959b441ac422/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190909230951-414d861bb4ac/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= +golang.org/x/lint v0.0.0-20191125180803-fdd1cda4f05f/go.mod h1:5qLYkcX4OjUUV8bRuDixDT3tpyyb+LUpUlRWLxfhWrs= +golang.org/x/lint v0.0.0-20200130185559-910be7a94367/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/lint v0.0.0-20200302205851-738671d3881b/go.mod h1:3xt1FjdF8hUf6vQPIChWIBhFzV8gjjsPE/fR3IyQdNY= +golang.org/x/mobile v0.0.0-20190312151609-d3739f865fa6/go.mod h1:z+o9i4GpDbdi3rU15maQ/Ox0txvL9dWGYEHz965HBQE= +golang.org/x/mobile v0.0.0-20190719004257-d2bd2a29d028/go.mod h1:E/iHnbuqvinMTCcRqshq8CkpyQDoeVncDDYHnLhea+o= +golang.org/x/mod v0.0.0-20190513183733-4bf6d317e70e/go.mod h1:mXi4GBBbnImb6dmsKGUJ2LatrhH/nqhxcFungHvyanc= +golang.org/x/mod v0.1.0/go.mod h1:0QHyrYULN0/3qlju5TqG8bIK38QM8yzMo5ekMj3DlcY= +golang.org/x/mod v0.1.1-0.20191105210325-c90efee705ee/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/mod v0.1.1-0.20191107180719-034126e5016b/go.mod h1:QqPTAvyqsEbceGzBzNggFXnrqF1CaUcvgkdR5Ot7KZg= +golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= +golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4= +golang.org/x/mod v0.9.0 h1:KENHtAZL2y3NLMYZeHY9DW8HW8V+kQyJsY/V9JlKvCs= +golang.org/x/net v0.0.0-20180724234803-3673e40ba225/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20180826012351-8a410e7b638d/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190108225652-1e06a53dbb7e/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190213061140-3a22650c66bd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= +golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190501004415-9ce7a6920f09/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190503192946-f4e77d36d62c/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= +golang.org/x/net v0.0.0-20190603091049-60506f45cf65/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20190613194153-d28f0bde5980/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190628185345-da137c7871d7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20190724013045-ca1201d0de80/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20191209160850-c0dbc17a3553/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200114155413-6afb5195e5aa/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200202094626-16171245cfb2/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200222125558-5a598a2470a0/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200301022130-244492dfa37a/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= +golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200501053045-e0ff5e5a1de5/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200506145744-7e3656a0809f/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200513185701-a91f0712d120/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200520182314-0ba52f642ac2/go.mod h1:qpuaurCH72eLCgpAm/N6yyVIVM9cpaDIP3A8BGJEC5A= +golang.org/x/net v0.0.0-20200625001655-4c5254603344/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20200707034311-ab3426394381/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20200822124328-c89045814202/go.mod h1:/O7V0waA8r7cgGh81Ro3o1hOxt32SMVPicZroKQ2sZA= +golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20201110031124-69a78807bb2b/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM= +golang.org/x/net v0.0.0-20210421230115-4e50805a0758/go.mod h1:72T/g9IO56b78aLF+1Kcs5dz7/ng1VjMUvfKvpfy+jM= +golang.org/x/net v0.0.0-20210525063256-abc453219eb5/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20210805182204-aaa1db679c0d/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= +golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= +golang.org/x/net v0.1.0/go.mod h1:Cx3nUiGt4eDBEyega/BKRp+/AlGL8hYe7U9odMt2Cco= +golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ= +golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc= +golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= +golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20191202225959-858c2ad4c8b6/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20200107190931-bf48bf16ab8d/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= +golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= +golang.org/x/oauth2 v0.6.0 h1:Lh8GPgSKBfWSwFvtuWOfeI3aAAnbXTSutYxJiOJFgIw= +golang.org/x/oauth2 v0.6.0/go.mod h1:ycmewcwgD4Rpr3eZJLSB4Kyyljb3qDh40vJ8STE5HKw= +golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190412183630-56d357773e84/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sync v0.1.0 h1:wsuoTGHzEhffawBOhz5CYhcrV4IdKZbEyZjBMuTp12o= +golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= +golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= +golang.org/x/sys v0.0.0-20190312061237-fead79001313/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190403152447-81d4e9dc473e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190419153524-e8e3143a4f4a/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190502145724-3ef323f4f1fd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190531175056-4c3a928424d2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190606165138-5da285871e9c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190624142023-c5567b49c5d0/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20190726091711-fc99dfbffb4e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191001151750-bb3f8db39f24/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20191228213918-04cbcbbfeed8/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200106162015-b016eb3dc98e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200113162924-86b910548bc1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200122134326-e047566fdf82/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200202164722-d101bd2416d5/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200212091648-12a6c2dcc1e4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200302150141-5c8b2ff67527/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200323222414-85ca7c5b95cd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200501052902-10377860bb8e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200511232937-7e40ca221e25/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200515095857-1151b9dac4a9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200523222454-059865788121/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200803210538-64077c9b5642/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210420072515-93ed5bcd2bfe/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210510120138-977fb7262007/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210603081109-ebe580a85c40/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= +golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.1.0/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.6.0 h1:clScbb1cHjoCkyRbWwBEUZ5H/tIFu5TAXIqaZD0Gcjw= +golang.org/x/term v0.6.0/go.mod h1:m6U89DPEgQRMq3DNkDClhWw02AUbt2daBVO4cn4Hv9U= +golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= +golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.5/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= +golang.org/x/text v0.4.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= +golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68= +golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= +golang.org/x/time v0.0.0-20181108054448-85acf8d2951c/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20190308202827-9d24e82272b4/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.0.0-20191024005414-555d28b269f0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= +golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= +golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= +golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= +golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190312151545-0bb0c0a6e846/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190312170243-e65039ee4138/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190329151228-23e29df326fe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190416151739-9c9e1878f421/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190420181800-aa740d480789/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= +golang.org/x/tools v0.0.0-20190425150028-36563e24a262/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190506145303-2d16b83fe98c/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q= +golang.org/x/tools v0.0.0-20190531172133-b3315ee88b7d/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190606124116-d0a3d012864b/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190621195816-6e04913cbbac/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190628153133-6cdbf07be9d0/go.mod h1:/rFqwRUd4F7ZHNgwSSTFct+R/Kf4OFW1sUzUTQQTgfc= +golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20190911174233-4f2ddba30aff/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191012152004-8de300cfc20a/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191108193012-7d206e10da11/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191113191852-77e3bb0ad9e7/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191115202509-3a792d9c32b2/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191125144606-a911d9008d1f/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191130070609-6e064ea0cf2d/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= +golang.org/x/tools v0.0.0-20191216173652-a0e659d51361/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20191227053925-7b8e75db28f4/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200117161641-43d50277825c/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200122220014-bf1340f18c4a/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200130002326-2f3ba24bd6e7/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200204074204-1cc6d1ef6c74/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200207183749-b753a1ba74fa/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200212150539-ea181f53ac56/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200224181240-023911ca70b2/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200227222343-706bc42d1f0d/go.mod h1:TB2adYChydJhpapKDTa4BR/hXlZSLoq2Wpct/0txZ28= +golang.org/x/tools v0.0.0-20200304193943-95d2e580d8eb/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= +golang.org/x/tools v0.0.0-20200312045724-11d5b4c81c7d/go.mod h1:o4KQGtdN14AW+yjsvvwRTJJuXz8XRtIHtEnmAXLyFUw= +golang.org/x/tools v0.0.0-20200331025713-a30bf2db82d4/go.mod h1:Sl4aGygMT6LrqrWclx+PTx3U+LnKx/seiNR+3G19Ar8= +golang.org/x/tools v0.0.0-20200501065659-ab2804fb9c9d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200512131952-2bc93b1c0c88/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200515010526-7d3b6ebf133d/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200618134242-20370b0cb4b2/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= +golang.org/x/tools v0.0.0-20200729194436-6467de6f59a7/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= +golang.org/x/tools v0.0.0-20200804011535-6c149bb5ef0d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= +golang.org/x/tools v0.0.0-20200825202427-b303f430e36d/go.mod h1:njjCfa9FT2d7l9Bc6FUM5FLjQPp3cFF28FI3qnDFljA= +golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= +golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= +golang.org/x/tools v0.7.0 h1:W4OVu8VVOaIO0yzWMNdepAulS7YfoS3Zabrm8DOXXU4= +golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= +google.golang.org/api v0.4.0/go.mod h1:8k5glujaEP+g9n7WNsDg8QP6cUVNI86fCNMcbazEtwE= +google.golang.org/api v0.7.0/go.mod h1:WtwebWUNSVBH/HAw79HIFXZNqEvBhG+Ra+ax0hx3E3M= +google.golang.org/api v0.8.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= +google.golang.org/api v0.9.0/go.mod h1:o4eAsZoiT+ibD93RtjEohWalFOjRDx6CVaqeizhEnKg= +google.golang.org/api v0.13.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.14.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.15.0/go.mod h1:iLdEw5Ide6rF15KTC1Kkl0iskquN2gFfn9o9XIsbkAI= +google.golang.org/api v0.17.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.18.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.19.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.20.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.22.0/go.mod h1:BwFmGc8tA3vsd7r/7kR8DY7iEEGSU04BFxCo5jP/sfE= +google.golang.org/api v0.24.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= +google.golang.org/api v0.28.0/go.mod h1:lIXQywCXRcnZPGlsd8NbLnOjtAoL6em04bJ9+z0MncE= +google.golang.org/api v0.29.0/go.mod h1:Lcubydp8VUV7KeIHD9z2Bys/sm/vGKnG1UHuDBSrHWM= +google.golang.org/api v0.30.0/go.mod h1:QGmEvQ87FHZNiUVJkT14jQNYJ4ZJjdRF23ZXz5138Fc= +google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= +google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= +google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= +google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= +google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= +google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= +google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190418145605-e7d98fc518a7/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190425155659-357c62f0e4bb/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190502173448-54afdca5d873/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= +google.golang.org/genproto v0.0.0-20190801165951-fa694d86fc64/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc= +google.golang.org/genproto v0.0.0-20190911173649-1774047e7e51/go.mod h1:IbNlFCBrqXvoKpeg0TB2l7cyZUmoaFKYIwrEpbDKLA8= +google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191115194625-c23dd37a84c9/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191216164720-4f79533eabd1/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20191230161307-f3c370f40bfb/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200115191322-ca5a22157cba/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200122232147-0452cf42e150/go.mod h1:n3cpQtvxv34hfy77yVDNjmbRyujviMdxYliBSkLhpCc= +google.golang.org/genproto v0.0.0-20200204135345-fa8e72b47b90/go.mod h1:GmwEX6Z4W5gMy59cAlVYjN9JhxgbQH6Gn+gFDQe2lzA= +google.golang.org/genproto v0.0.0-20200212174721-66ed5ce911ce/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200224152610-e50cd9704f63/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200228133532-8c2c7df3a383/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200305110556-506484158171/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200312145019-da6875a35672/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200430143042-b979b6f78d84/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200511104702-f5ebc3bea380/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= +google.golang.org/genproto v0.0.0-20200515170657-fc4c6c6a6587/go.mod h1:YsZOwe1myG/8QRHRsmBRE1LrgQY60beZKjly0O1fX9U= +google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= +google.golang.org/genproto v0.0.0-20200618031413-b414f8b61790/go.mod h1:jDfRM7FcilCzHH/e9qn6dsT145K34l5v+OpcnNgKAAA= +google.golang.org/genproto v0.0.0-20200729003335-053ba62fc06f/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20200804131852-c06518451d9c/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20200825200019-8632dd797987/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= +google.golang.org/genproto v0.0.0-20220107163113-42d7afdf6368/go.mod h1:5CzLGKJ67TSI2B9POpiiyGha0AjJvZIUgRMt1dSmuhc= +google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4 h1:DdoeryqhaXp1LtT/emMP1BRJPHHKFi5akj/nbx/zNTA= +google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4/go.mod h1:NWraEVixdDnqcqQ30jipen1STv2r/n24Wb7twVTGR4s= +google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= +google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= +google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= +google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= +google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY= +google.golang.org/grpc v1.26.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.27.1/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk= +google.golang.org/grpc v1.28.0/go.mod h1:rpkK4SK4GF4Ach/+MFLZUBavHOvF2JJB5uozKKal+60= +google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk= +google.golang.org/grpc v1.30.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.31.0/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM8pak= +google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= +google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= +google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= +google.golang.org/grpc v1.53.0 h1:LAv2ds7cmFV/XTS3XG1NneeENYrXGmorPxsBbptIjNc= +google.golang.org/grpc v1.53.0/go.mod h1:OnIrk0ipVdj4N5d9IUoFUx72/VlD7+jUsHwZgwSMQpw= +google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= +google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= +google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= +google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miEFZTKqfCUM6K7xSMQL9OKL/b6hQv+e19PK+JZNE= +google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo= +google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= +google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4= +google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= +google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= +google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= +google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng= +google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= +gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= +gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= +gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q= +gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= +gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= +gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= +gopkg.in/ini.v1 v1.67.0 h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA= +gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.3/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.5/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= +gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200605160147-a5ece683394c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190106161140-3f1c8253044a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190418001031-e561f6794a2a/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= +honnef.co/go/tools v0.0.1-2019.2.3/go.mod h1:a3bituU0lyd329TUQxRnasdCoJDkEUEAqEt0JzvZhAg= +honnef.co/go/tools v0.0.1-2020.1.3/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= +honnef.co/go/tools v0.0.1-2020.1.4/go.mod h1:X/FiERA/W4tHapMX5mGpAtMSVEeEUOyHaw9vFzvIQ3k= +k8s.io/api v0.26.3 h1:emf74GIQMTik01Aum9dPP0gAypL8JTLl/lHa4V9RFSU= +k8s.io/api v0.26.3/go.mod h1:PXsqwPMXBSBcL1lJ9CYDKy7kIReUydukS5JiRlxC3qE= +k8s.io/apiextensions-apiserver v0.26.3 h1:5PGMm3oEzdB1W/FTMgGIDmm100vn7IaUP5er36dB+YE= +k8s.io/apiextensions-apiserver v0.26.3/go.mod h1:jdA5MdjNWGP+njw1EKMZc64xAT5fIhN6VJrElV3sfpQ= +k8s.io/apimachinery v0.26.3 h1:dQx6PNETJ7nODU3XPtrwkfuubs6w7sX0M8n61zHIV/k= +k8s.io/apimachinery v0.26.3/go.mod h1:ats7nN1LExKHvJ9TmwootT00Yz05MuYqPXEXaVeOy5I= +k8s.io/client-go v0.26.3 h1:k1UY+KXfkxV2ScEL3gilKcF7761xkYsSD6BC9szIu8s= +k8s.io/client-go v0.26.3/go.mod h1:ZPNu9lm8/dbRIPAgteN30RSXea6vrCpFvq+MateTUuQ= +k8s.io/component-base v0.26.3 h1:oC0WMK/ggcbGDTkdcqefI4wIZRYdK3JySx9/HADpV0g= +k8s.io/component-base v0.26.3/go.mod h1:5kj1kZYwSC6ZstHJN7oHBqcJC6yyn41eR+Sqa/mQc8E= +k8s.io/klog/v2 v2.90.1 h1:m4bYOKall2MmOiRaR1J+We67Do7vm9KiQVlT96lnHUw= +k8s.io/klog/v2 v2.90.1/go.mod h1:y1WjHnz7Dj687irZUWR/WLkLc5N1YHtjLdmgWjndZn0= +k8s.io/kube-openapi v0.0.0-20230303024457-afdc3dddf62d h1:VcFq5n7wCJB2FQMCIHfC+f+jNcGgNMar1uKd6rVlifU= +k8s.io/kube-openapi v0.0.0-20230303024457-afdc3dddf62d/go.mod h1:y5VtZWM9sHHc2ZodIH/6SHzXj+TPU5USoA8lcIeKEKY= +k8s.io/utils v0.0.0-20230308161112-d77c459e9343 h1:m7tbIjXGcGIAtpmQr7/NAi7RsWoW3E7Zcm4jI1HicTc= +k8s.io/utils v0.0.0-20230308161112-d77c459e9343/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= +rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= +rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= +sigs.k8s.io/controller-runtime v0.14.5 h1:6xaWFqzT5KuAQ9ufgUaj1G/+C4Y1GRkhrxl+BJ9i+5s= +sigs.k8s.io/controller-runtime v0.14.5/go.mod h1:WqIdsAY6JBsjfc/CqO0CORmNtoCtE4S6qbPc9s68h+0= +sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= +sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= +sigs.k8s.io/structured-merge-diff/v4 v4.2.3 h1:PRbqxJClWWYMNV1dhaG4NsibJbArud9kFxnAMREiWFE= +sigs.k8s.io/structured-merge-diff/v4 v4.2.3/go.mod h1:qjx8mGObPmV2aSZepjQjbmb2ihdVs8cGKBraizNC69E= +sigs.k8s.io/yaml v1.3.0 h1:a2VclLzOGrwOHDiV8EfBGhvjHvP46CtW5j6POvhYGGo= +sigs.k8s.io/yaml v1.3.0/go.mod h1:GeOyir5tyXNByN85N/dRIT9es5UQNerPYEKK56eTBm8= diff --git a/rhobs/test/import/import_test.go b/rhobs/test/import/import_test.go new file mode 100644 index 000000000..c2e22d3b2 --- /dev/null +++ b/rhobs/test/import/import_test.go @@ -0,0 +1,29 @@ +// Copyright 2023 The prometheus-operator Authors +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +package test + +import ( + "testing" + + api "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + client "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned" + op "github.com/rhobs/obo-prometheus-operator/pkg/operator" +) + +func TestPackageImports(t *testing.T) { + t.Logf("DefaultThanosImage is %s\n", op.DefaultThanosImage) + t.Logf("PrometheusRuleName is %s\n", api.PrometheusRuleName) + t.Logf("Clientset is %v\n", client.Clientset{}) +} diff --git a/scripts/docs/config.json b/scripts/docs/config.json index 69c51f15a..6d39ae104 100644 --- a/scripts/docs/config.json +++ b/scripts/docs/config.json @@ -26,23 +26,23 @@ }, { "typeMatchPrefix": "^github\\.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1", - "docsURLTemplate": "../v1/api.md#monitoring.coreos.com/v1.{{ .TypeIdentifier}}" + "docsURLTemplate": "../v1/api.md#monitoring.rhobs/v1.{{ .TypeIdentifier}}" }, { "typeMatchPrefix": "^github\\.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1", - "docsURLTemplate": "../v1alpha1/api.md#monitoring.coreos.com/v1alpha1.{{ .TypeIdentifier}}" + "docsURLTemplate": "../v1alpha1/api.md#monitoring.rhobs/v1alpha1.{{ .TypeIdentifier}}" }, { "typeMatchPrefix": "^github\\.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1", - "docsURLTemplate": "../v1beta1/api.md#monitoring.coreos.com/v1beta1.{{ .TypeIdentifier}}" + "docsURLTemplate": "../v1beta1/api.md#monitoring.rhobs/v1beta1.{{ .TypeIdentifier}}" } ], "typeDisplayNamePrefixOverrides": { "k8s.io/api/": "Kubernetes ", "k8s.io/apimachinery/pkg/apis/": "Kubernetes ", - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1": "Monitoring v1", - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1": "Monitoring v1alpha1", - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1": "Monitoring v1beta1" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1": "Monitoring v1", + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1": "Monitoring v1alpha1", + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1": "Monitoring v1beta1" }, "markdownDisabled": false } diff --git a/scripts/generate/admission-webhook.jsonnet b/scripts/generate/admission-webhook.jsonnet index df441d652..599324080 100644 --- a/scripts/generate/admission-webhook.jsonnet +++ b/scripts/generate/admission-webhook.jsonnet @@ -1,7 +1,7 @@ local admissionWebhook = (import 'prometheus-operator/admission-webhook.libsonnet'); local config = (import 'config.jsonnet'); local aw = admissionWebhook(config { - image: 'quay.io/prometheus-operator/admission-webhook:v' + config.version, + image: 'quay.io/rhobs/obo-admission-webhook:v' + config.version, tlsSecretName: 'admission-webhook-certs', }); diff --git a/scripts/generate/config.jsonnet b/scripts/generate/config.jsonnet index e80e0d8a9..155c65a44 100644 --- a/scripts/generate/config.jsonnet +++ b/scripts/generate/config.jsonnet @@ -3,6 +3,6 @@ local v = importstr '../../VERSION'; { namespace: 'default', version: std.strReplace(v, '\n', ''), - image: 'quay.io/prometheus-operator/prometheus-operator:v' + self.version, - configReloaderImage: 'quay.io/prometheus-operator/prometheus-config-reloader:v' + self.version, + image: 'quay.io/rhobs/obo-prometheus-operator:v' + self.version, + configReloaderImage: 'quay.io/rhobs/obo-prometheus-config-reloader:v' + self.version, } diff --git a/scripts/generate/conversion-webhook-patch-for-alermanagerconfig-crd.jsonnet b/scripts/generate/conversion-webhook-patch-for-alermanagerconfig-crd.jsonnet index c79b927dd..1dbbc447a 100644 --- a/scripts/generate/conversion-webhook-patch-for-alermanagerconfig-crd.jsonnet +++ b/scripts/generate/conversion-webhook-patch-for-alermanagerconfig-crd.jsonnet @@ -5,7 +5,7 @@ local admissionWebhook = (import 'prometheus-operator/admission-webhook.libsonne local config = (import 'config.jsonnet'); local aw = admissionWebhook(config { - image: 'quay.io/prometheus-operator/admission-webhook:v' + config.version, + image: 'quay.io/rhobs/obo-admission-webhook:v' + config.version, }); { diff --git a/scripts/go.mod b/scripts/go.mod index bdc2eba3e..fc7bf79cc 100644 --- a/scripts/go.mod +++ b/scripts/go.mod @@ -1,4 +1,4 @@ -module github.com/prometheus-operator/prometheus-operator/tooling +module github.com/rhobs/obo-prometheus-operator/tooling go 1.21 diff --git a/scripts/tooling/Dockerfile b/scripts/tooling/Dockerfile index ee23b99df..cb7954438 100644 --- a/scripts/tooling/Dockerfile +++ b/scripts/tooling/Dockerfile @@ -24,7 +24,7 @@ RUN go get github.com/campoy/embedmd RUN GO111MODULE=on go get github.com/go-bindata/go-bindata/v3/go-bindata@${GO_BINDATA_VERSION} # Add po-lint -WORKDIR /go/src/github.com/prometheus-operator/prometheus-operator +WORKDIR /go/src/github.com/rhobs/obo-prometheus-operator COPY . . RUN GO111MODULE=on make po-lint && chmod +x po-lint && mv po-lint /go/bin/ @@ -34,7 +34,7 @@ RUN apt-get update -y && apt-get install -y make git jq gawk python-yaml && \ COPY --from=builder /usr/local/bin/jsonnetfmt /usr/local/bin/jsonnetfmt COPY --from=builder /go/bin/* /go/bin/ -RUN mkdir -p /go/src/github.com/prometheus-operator/prometheus-operator /.cache && \ +RUN mkdir -p /go/src/github.com/rhobs/obo-prometheus-operator /.cache && \ chmod -R 777 /go /.cache -WORKDIR /go/src/github.com/prometheus-operator/prometheus-operator +WORKDIR /go/src/github.com/rhobs/obo-prometheus-operator diff --git a/test/e2e/README.md b/test/e2e/README.md index bc9c03ee1..ee747ace1 100644 --- a/test/e2e/README.md +++ b/test/e2e/README.md @@ -13,5 +13,5 @@ e2e tests are written as Go test. All go test techniques apply, e.g. picking what to run, timeout length. Let's say I want to run all tests in "test/e2e/": ``` -$ go test -v ./test/e2e/ --kubeconfig "$HOME/.kube/config" --operator-image=quay.io/prometheus-operator/prometheus-operator +$ go test -v ./test/e2e/ --kubeconfig "$HOME/.kube/config" --operator-image=quay.io/rhobs/obo-prometheus-operator ``` diff --git a/test/e2e/alertmanager_instance_namespaces_test.go b/test/e2e/alertmanager_instance_namespaces_test.go index 56209226c..1ff5d491b 100644 --- a/test/e2e/alertmanager_instance_namespaces_test.go +++ b/test/e2e/alertmanager_instance_namespaces_test.go @@ -23,7 +23,7 @@ import ( api_errors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) func testAlertmanagerInstanceNamespacesAllNs(t *testing.T) { @@ -249,7 +249,7 @@ func testAlertmanagerInstanceNamespacesAllowList(t *testing.T) { // Remove the selecting label on the "allowed" namespace and check that // the alertmanager configuration is updated. - // See https://github.com/prometheus-operator/prometheus-operator/issues/3847 + // See https://github.com/rhobs/obo-prometheus-operator/issues/3847 if err := framework.RemoveLabelsFromNamespace(context.Background(), allowedNs, "monitored"); err != nil { t.Fatal(err) } diff --git a/test/e2e/alertmanager_test.go b/test/e2e/alertmanager_test.go index 047965683..3f16ba825 100644 --- a/test/e2e/alertmanager_test.go +++ b/test/e2e/alertmanager_test.go @@ -42,12 +42,12 @@ import ( certutil "k8s.io/client-go/util/cert" "k8s.io/utils/ptr" - "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - monitoringv1beta1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1beta1" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - testFramework "github.com/prometheus-operator/prometheus-operator/test/framework" + "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1beta1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1beta1" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + testFramework "github.com/rhobs/obo-prometheus-operator/test/framework" ) func testAMCreateDeleteCluster(t *testing.T) { @@ -1183,7 +1183,7 @@ func testAlertmanagerConfigCRD(t *testing.T) { {Key: "Comment", Value: "comment"}, }, // HTML field with an empty string must appear as-is in the generated configuration. - // See https://github.com/prometheus-operator/prometheus-operator/issues/5421 + // See https://github.com/rhobs/obo-prometheus-operator/issues/5421 HTML: ptr.To(""), }}, VictorOpsConfigs: []monitoringv1alpha1.VictorOpsConfig{{ @@ -1653,7 +1653,7 @@ templates: [] // Remove the selecting label from the namespace holding the // AlertmanagerConfig resources and wait until the Alertmanager // configuration gets regenerated. - // See https://github.com/prometheus-operator/prometheus-operator/issues/3847 + // See https://github.com/rhobs/obo-prometheus-operator/issues/3847 if err := framework.RemoveLabelsFromNamespace(context.Background(), configNs, "monitored"); err != nil { t.Fatal(err) } diff --git a/test/e2e/config_reloader_test.go b/test/e2e/config_reloader_test.go index a5a7c68eb..08c535f61 100644 --- a/test/e2e/config_reloader_test.go +++ b/test/e2e/config_reloader_test.go @@ -23,7 +23,7 @@ import ( "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" - operatorFramework "github.com/prometheus-operator/prometheus-operator/test/framework" + operatorFramework "github.com/rhobs/obo-prometheus-operator/test/framework" ) func testConfigReloaderResources(t *testing.T) { diff --git a/test/e2e/main_test.go b/test/e2e/main_test.go index a00196c49..086f2cb8e 100644 --- a/test/e2e/main_test.go +++ b/test/e2e/main_test.go @@ -28,7 +28,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/fields" - operatorFramework "github.com/prometheus-operator/prometheus-operator/test/framework" + operatorFramework "github.com/rhobs/obo-prometheus-operator/test/framework" ) var ( @@ -98,7 +98,7 @@ func TestMain(m *testing.M) { opImage = flag.String( "operator-image", "", - "operator image, e.g. quay.io/prometheus-operator/prometheus-operator", + "operator image, e.g. quay.io/rhobs/obo-prometheus-operator", ) flag.Parse() @@ -120,7 +120,7 @@ func TestMain(m *testing.M) { os.Exit(1) } - prevStableVersionURL := fmt.Sprintf("https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/release-%d.%d/VERSION", currentSemVer.Major, currentSemVer.Minor-1) + prevStableVersionURL := "https://raw.githubusercontent.com/rhobs/obo-prometheus-operator/rhobs-rel-0.69.0-rhobs1/VERSION" reader, err := operatorFramework.URLToIOReader(prevStableVersionURL) if err != nil { logger.Printf("failed to get previous version file content: %v\n", err) @@ -133,16 +133,16 @@ func TestMain(m *testing.M) { os.Exit(1) } - prometheusOperatorGithubBranchURL := "https://raw.githubusercontent.com/prometheus-operator/prometheus-operator" + // prometheusOperatorGithubBranchURL := "https://raw.githubusercontent.com/prometheus-operator/prometheus-operator" prevSemVer, err := semver.ParseTolerant(string(prevStableVersion)) if err != nil { logger.Printf("failed to parse previous stable version: %v\n", err) os.Exit(1) } - prevStableOpImage := fmt.Sprintf("%s:v%s", "quay.io/prometheus-operator/prometheus-operator", strings.TrimSpace(string(prevStableVersion))) - prevExampleDir := fmt.Sprintf("%s/release-%d.%d/example", prometheusOperatorGithubBranchURL, prevSemVer.Major, prevSemVer.Minor) - prevResourcesDir := fmt.Sprintf("%s/release-%d.%d/test/framework/resources", prometheusOperatorGithubBranchURL, prevSemVer.Major, prevSemVer.Minor) + prevStableOpImage := fmt.Sprintf("%s:v%s", "quay.io/rhobs/obo-prometheus-operator", strings.TrimSpace(string(prevStableVersion))) + prevExampleDir := "https://raw.githubusercontent.com/rhobs/obo-prometheus-operator/rhobs-rel-0.69.0-rhobs1/example" + prevResourcesDir := "https://raw.githubusercontent.com/rhobs/obo-prometheus-operator/rhobs-rel-0.69.0-rhobs1/test/framework/resources" if previousVersionFramework, err = operatorFramework.New(*kubeconfig, prevStableOpImage, prevExampleDir, prevResourcesDir, prevSemVer); err != nil { logger.Printf("failed to setup previous version framework: %v\n", err) diff --git a/test/e2e/prometheus_instance_namespaces_test.go b/test/e2e/prometheus_instance_namespaces_test.go index 3419124d7..65c52e592 100644 --- a/test/e2e/prometheus_instance_namespaces_test.go +++ b/test/e2e/prometheus_instance_namespaces_test.go @@ -326,7 +326,7 @@ func testPrometheusInstanceNamespacesAllowList(t *testing.T) { // Remove the selecting label on the "allowed" namespace and check that // the target is removed. - // See https://github.com/prometheus-operator/prometheus-operator/issues/3847 + // See https://github.com/rhobs/obo-prometheus-operator/issues/3847 if err := framework.RemoveLabelsFromNamespace(context.Background(), allowedNs, "monitored"); err != nil { t.Fatal(err) } @@ -360,7 +360,7 @@ func testPrometheusInstanceNamespacesAllowList(t *testing.T) { // testPrometheusInstanceNamespacesNamespaceNotFound verifies that the // operator can reconcile Prometheus and associated resources even when // it's configured to watch namespaces that don't exist. -// See https://github.com/prometheus-operator/prometheus-operator/issues/3347 +// See https://github.com/rhobs/obo-prometheus-operator/issues/3347 func testPrometheusInstanceNamespacesNamespaceNotFound(t *testing.T) { testCtx := framework.NewTestCtx(t) defer testCtx.Cleanup(t) diff --git a/test/e2e/prometheus_test.go b/test/e2e/prometheus_test.go index 80d0fee16..362299671 100644 --- a/test/e2e/prometheus_test.go +++ b/test/e2e/prometheus_test.go @@ -45,11 +45,11 @@ import ( certutil "k8s.io/client-go/util/cert" "k8s.io/utils/ptr" - "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prometheus "github.com/prometheus-operator/prometheus-operator/pkg/prometheus/server" - testFramework "github.com/prometheus-operator/prometheus-operator/test/framework" + "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prometheus "github.com/rhobs/obo-prometheus-operator/pkg/prometheus/server" + testFramework "github.com/rhobs/obo-prometheus-operator/test/framework" ) var ( @@ -724,7 +724,7 @@ func testPromRemoteWriteWithTLS(t *testing.T) { InsecureSkipVerify: false, ShouldSuccess: false, }, - // Had to change the success flag to True, because prometheus receiver is running in VerifyClientCertIfGiven mode. Details here - https://github.com/prometheus-operator/prometheus-operator/pull/4337#discussion_r735064646 + // Had to change the success flag to True, because prometheus receiver is running in VerifyClientCertIfGiven mode. Details here - https://github.com/rhobs/obo-prometheus-operator/pull/4337#discussion_r735064646 { Name: "variant-20", ClientKey: testFramework.Key{ @@ -1542,7 +1542,7 @@ func testPromMultiplePrometheusRulesDifferentNS(t *testing.T) { // Remove the selecting label from the namespaces holding PrometheusRules // and wait until the rules are removed from Prometheus. - // See https://github.com/prometheus-operator/prometheus-operator/issues/3847 + // See https://github.com/rhobs/obo-prometheus-operator/issues/3847 for _, file := range ruleFiles { if err := framework.RemoveLabelsFromNamespace(context.Background(), file.ns, "monitored"); err != nil { t.Fatal(err) @@ -1747,7 +1747,7 @@ func testPromOnlyUpdatedOnRelevantChanges(t *testing.T) { // Adding an annotation to Prometheus lead to high CPU usage in the past // updating the Prometheus StatefulSet in a loop (See - // https://github.com/prometheus-operator/prometheus-operator/issues/1659). Added here to + // https://github.com/rhobs/obo-prometheus-operator/issues/1659). Added here to // prevent a regression. prometheus.Annotations["test-annotation"] = "test-value" @@ -2980,7 +2980,7 @@ func testOperatorNSScope(t *testing.T) { } // testPromArbitraryFSAcc tests the -// github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1.PrometheusSpec.ArbitraryFSAccessThroughSMs +// github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1.PrometheusSpec.ArbitraryFSAccessThroughSMs // configuration with the service monitor bearer token and tls assets option. func testPromArbitraryFSAcc(t *testing.T) { t.Parallel() @@ -4299,7 +4299,7 @@ func testPromNamespaceEnforcementExclusion(t *testing.T) { p.Spec.ExcludedFromEnforcement = []monitoringv1.ObjectReference{ { Namespace: ns, - Group: "monitoring.coreos.com", + Group: "monitoring.rhobs", Resource: monitoringv1.ServiceMonitorName, }, } @@ -4871,7 +4871,7 @@ func testPromDegradedConditionStatus(t *testing.T) { CommonPrometheusFields: monitoringv1.CommonPrometheusFields{ Containers: []v1.Container{{ Name: "bad-image", - Image: "quay.io/prometheus-operator/invalid-image", + Image: "quay.io/rhobs/obo-invalid-image", }}, }, }, diff --git a/test/e2e/prometheusagent_test.go b/test/e2e/prometheusagent_test.go index 339cee6f1..b1340a5df 100644 --- a/test/e2e/prometheusagent_test.go +++ b/test/e2e/prometheusagent_test.go @@ -26,8 +26,8 @@ import ( "k8s.io/apimachinery/pkg/util/wait" "k8s.io/utils/ptr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) func testCreatePrometheusAgent(t *testing.T) { diff --git a/test/e2e/rules_test.go b/test/e2e/rules_test.go index a86cf4fa5..f81532ada 100644 --- a/test/e2e/rules_test.go +++ b/test/e2e/rules_test.go @@ -23,8 +23,8 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/intstr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1ac "github.com/prometheus-operator/prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1ac "github.com/rhobs/obo-prometheus-operator/pkg/client/applyconfiguration/monitoring/v1" ) func TestPrometheusRuleCRDValidation(t *testing.T) { diff --git a/test/e2e/scrapeconfig_test.go b/test/e2e/scrapeconfig_test.go index d74b32e1e..0bd3802b6 100644 --- a/test/e2e/scrapeconfig_test.go +++ b/test/e2e/scrapeconfig_test.go @@ -26,8 +26,8 @@ import ( "k8s.io/apimachinery/pkg/fields" "k8s.io/utils/ptr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) // testScrapeConfigCreation tests multiple ScrapeConfig definitions @@ -234,7 +234,7 @@ func testPromOperatorStartsWithoutScrapeConfigCRD(t *testing.T) { ns := framework.CreateNamespace(context.Background(), t, testCtx) framework.SetupPrometheusRBAC(context.Background(), t, testCtx, ns) - err := framework.DeleteCRD(context.Background(), "scrapeconfigs.monitoring.coreos.com") + err := framework.DeleteCRD(context.Background(), "scrapeconfigs.monitoring.rhobs") require.NoError(t, err) _, err = framework.CreateOrUpdatePrometheusOperator(context.Background(), ns, []string{ns}, nil, []string{ns}, nil, false, true, false) diff --git a/test/e2e/thanosruler_test.go b/test/e2e/thanosruler_test.go index e97e89efb..3491943cb 100644 --- a/test/e2e/thanosruler_test.go +++ b/test/e2e/thanosruler_test.go @@ -28,7 +28,7 @@ import ( "k8s.io/apimachinery/pkg/util/wait" "k8s.io/utils/ptr" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func testThanosRulerCreateDeleteCluster(t *testing.T) { @@ -151,7 +151,7 @@ func testThanosRulerPrometheusRuleInDifferentNamespace(t *testing.T) { // Remove the selecting label from ruleNamespace and wait until the rule is // removed from the Thanos ruler. - // See https://github.com/prometheus-operator/prometheus-operator/issues/3847 + // See https://github.com/rhobs/obo-prometheus-operator/issues/3847 if err := framework.RemoveLabelsFromNamespace(context.Background(), ruleNamespace, "monitored"); err != nil { t.Fatal(err) } diff --git a/test/framework/alertmanager.go b/test/framework/alertmanager.go index 66d0689f8..3468f6bd8 100644 --- a/test/framework/alertmanager.go +++ b/test/framework/alertmanager.go @@ -37,10 +37,10 @@ import ( "k8s.io/apimachinery/pkg/util/yaml" "k8s.io/utils/ptr" - "github.com/prometheus-operator/prometheus-operator/pkg/alertmanager" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/alertmanager" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) var ValidAlertmanagerConfig = `global: diff --git a/test/framework/cluster_role.go b/test/framework/cluster_role.go index f6fca8866..e7c4da2e2 100644 --- a/test/framework/cluster_role.go +++ b/test/framework/cluster_role.go @@ -34,13 +34,13 @@ var ( APIGroups: []string{"apiextensions.k8s.io"}, Resources: []string{"customresourcedefinitions"}, ResourceNames: []string{ - "alertmanagers.monitoring.coreos.com", - "podmonitors.monitoring.coreos.com", - "probes.monitoring.coreos.com", - "prometheuses.monitoring.coreos.com", - "prometheusrules.monitoring.coreos.com", - "servicemonitors.monitoring.coreos.com", - "thanosrulers.monitoring.coreos.com", + "alertmanagers.monitoring.rhobs", + "podmonitors.monitoring.rhobs", + "probes.monitoring.rhobs", + "prometheuses.monitoring.rhobs", + "prometheusrules.monitoring.rhobs", + "servicemonitors.monitoring.rhobs", + "thanosrulers.monitoring.rhobs", }, Verbs: []string{"get", "update"}, } diff --git a/test/framework/crd.go b/test/framework/crd.go index 2b1ba5273..f6065a50f 100644 --- a/test/framework/crd.go +++ b/test/framework/crd.go @@ -29,7 +29,7 @@ import ( "k8s.io/apimachinery/pkg/util/wait" "sigs.k8s.io/yaml" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" ) // GetCRD gets a custom resource definition from the apiserver. diff --git a/test/framework/framework.go b/test/framework/framework.go index 76b23bb65..f32ceda2f 100644 --- a/test/framework/framework.go +++ b/test/framework/framework.go @@ -41,12 +41,12 @@ import ( certutil "k8s.io/client-go/util/cert" "k8s.io/utils/ptr" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - v1monitoringclient "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1" - v1alpha1monitoringclient "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1" - v1beta1monitoringclient "github.com/prometheus-operator/prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + v1monitoringclient "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1" + v1alpha1monitoringclient "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1alpha1" + v1beta1monitoringclient "github.com/rhobs/obo-prometheus-operator/pkg/client/versioned/typed/monitoring/v1beta1" ) const ( @@ -398,11 +398,11 @@ func (f *Framework) CreateOrUpdatePrometheusOperatorWithOpts( for i, arg := range deploy.Spec.Template.Spec.Containers[0].Args { if strings.Contains(arg, "--prometheus-config-reloader=") { deploy.Spec.Template.Spec.Containers[0].Args[i] = "--prometheus-config-reloader=" + - "quay.io/prometheus-operator/prometheus-config-reloader:" + + "quay.io/rhobs/obo-prometheus-config-reloader:" + repoAndTag[1] } } - webhookServerImage = "quay.io/prometheus-operator/admission-webhook:" + repoAndTag[1] + webhookServerImage = "quay.io/rhobs/obo-admission-webhook:" + repoAndTag[1] } deploy.Name = prometheusOperatorServiceDeploymentName diff --git a/test/framework/helpers.go b/test/framework/helpers.go index 57d785ce6..6bb581de7 100644 --- a/test/framework/helpers.go +++ b/test/framework/helpers.go @@ -32,7 +32,7 @@ import ( "k8s.io/apimachinery/pkg/util/wait" "k8s.io/client-go/rest" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" ) func SourceToIOReader(source string) (io.Reader, error) { diff --git a/test/framework/namespace.go b/test/framework/namespace.go index 242ecd6de..11ab78083 100644 --- a/test/framework/namespace.go +++ b/test/framework/namespace.go @@ -25,7 +25,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" - "github.com/prometheus-operator/prometheus-operator/pkg/k8sutil" + "github.com/rhobs/obo-prometheus-operator/pkg/k8sutil" ) func (f *Framework) CreateNamespace(ctx context.Context, t *testing.T, testCtx *TestCtx) string { diff --git a/test/framework/probe.go b/test/framework/probe.go index e5e02f1ad..8e5e4c45f 100644 --- a/test/framework/probe.go +++ b/test/framework/probe.go @@ -25,7 +25,7 @@ import ( "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/apimachinery/pkg/util/wait" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func (f *Framework) MakeBlackBoxExporterService(ns, name string) *v1.Service { diff --git a/test/framework/prometheus.go b/test/framework/prometheus.go index e0451bf17..976141f67 100644 --- a/test/framework/prometheus.go +++ b/test/framework/prometheus.go @@ -35,10 +35,10 @@ import ( "k8s.io/apimachinery/pkg/util/wait" "k8s.io/utils/ptr" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prometheus "github.com/prometheus-operator/prometheus-operator/pkg/prometheus/server" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prometheus "github.com/rhobs/obo-prometheus-operator/pkg/prometheus/server" ) const ( diff --git a/test/framework/prometheus_rule.go b/test/framework/prometheus_rule.go index 6f0c0ba45..5fc041bf4 100644 --- a/test/framework/prometheus_rule.go +++ b/test/framework/prometheus_rule.go @@ -24,7 +24,7 @@ import ( "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/apimachinery/pkg/util/wait" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) func (f *Framework) MakeBasicRule(ns, name string, groups []monitoringv1.RuleGroup) *monitoringv1.PrometheusRule { diff --git a/test/framework/prometheusagent.go b/test/framework/prometheusagent.go index a8fbbe81d..04df396b5 100644 --- a/test/framework/prometheusagent.go +++ b/test/framework/prometheusagent.go @@ -28,11 +28,11 @@ import ( "k8s.io/apimachinery/pkg/types" "k8s.io/utils/ptr" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" - "github.com/prometheus-operator/prometheus-operator/pkg/operator" - prometheusagent "github.com/prometheus-operator/prometheus-operator/pkg/prometheus/agent" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" + "github.com/rhobs/obo-prometheus-operator/pkg/operator" + prometheusagent "github.com/rhobs/obo-prometheus-operator/pkg/prometheus/agent" ) func (f *Framework) MakeBasicPrometheusAgent(ns, name, group string, replicas int32) *monitoringv1alpha1.PrometheusAgent { diff --git a/test/framework/resources/alertmanager-config-validating-webhook.yaml b/test/framework/resources/alertmanager-config-validating-webhook.yaml index 96e18b19b..67480887f 100644 --- a/test/framework/resources/alertmanager-config-validating-webhook.yaml +++ b/test/framework/resources/alertmanager-config-validating-webhook.yaml @@ -9,11 +9,11 @@ webhooks: namespace: default path: /admission-alertmanagerconfigs/validate failurePolicy: Fail - name: alertmanagerconfigs-validate.monitoring.coreos.com + name: alertmanagerconfigs-validate.monitoring.rhobs namespaceSelector: {} rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs apiVersions: - v1alpha1 - v1beta1 diff --git a/test/framework/resources/prometheus-operator-mutatingwebhook.yaml b/test/framework/resources/prometheus-operator-mutatingwebhook.yaml index fa138165d..46155913f 100644 --- a/test/framework/resources/prometheus-operator-mutatingwebhook.yaml +++ b/test/framework/resources/prometheus-operator-mutatingwebhook.yaml @@ -9,11 +9,11 @@ webhooks: namespace: default path: /admission-prometheusrules/mutate failurePolicy: Fail - name: prometheusrulemutate.monitoring.coreos.com + name: prometheusrulemutate.monitoring.rhobs namespaceSelector: {} rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs apiVersions: - '*' operations: diff --git a/test/framework/resources/prometheus-operator-validatingwebhook.yaml b/test/framework/resources/prometheus-operator-validatingwebhook.yaml index 74a43dc1c..3fa18b118 100644 --- a/test/framework/resources/prometheus-operator-validatingwebhook.yaml +++ b/test/framework/resources/prometheus-operator-validatingwebhook.yaml @@ -9,7 +9,7 @@ webhooks: namespace: default path: /admission-prometheusrules/validate failurePolicy: Fail - name: prometheusrulemutate.monitoring.coreos.com + name: prometheusrulemutate.monitoring.rhobs namespaceSelector: matchExpressions: - key: excludeFromWebhook @@ -17,7 +17,7 @@ webhooks: values: ["true"] rules: - apiGroups: - - monitoring.coreos.com + - monitoring.rhobs apiVersions: - '*' operations: diff --git a/test/framework/scrapeconfig.go b/test/framework/scrapeconfig.go index 2ba197702..40c721ef6 100644 --- a/test/framework/scrapeconfig.go +++ b/test/framework/scrapeconfig.go @@ -22,7 +22,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/util/wait" - monitoringv1alpha1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1alpha1" + monitoringv1alpha1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1alpha1" ) func (f *Framework) MakeBasicScrapeConfig(ns, name string) *monitoringv1alpha1.ScrapeConfig { diff --git a/test/framework/status.go b/test/framework/status.go index 4994f9ae4..8a80160b6 100644 --- a/test/framework/status.go +++ b/test/framework/status.go @@ -22,7 +22,7 @@ import ( "github.com/pkg/errors" "k8s.io/apimachinery/pkg/util/wait" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" ) type resourceStatus struct { diff --git a/test/framework/thanosruler.go b/test/framework/thanosruler.go index d7defb96f..125e0dbbe 100644 --- a/test/framework/thanosruler.go +++ b/test/framework/thanosruler.go @@ -30,9 +30,9 @@ import ( "k8s.io/apimachinery/pkg/util/wait" "k8s.io/utils/ptr" - "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring" - monitoringv1 "github.com/prometheus-operator/prometheus-operator/pkg/apis/monitoring/v1" - "github.com/prometheus-operator/prometheus-operator/pkg/thanos" + "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring" + monitoringv1 "github.com/rhobs/obo-prometheus-operator/pkg/apis/monitoring/v1" + "github.com/rhobs/obo-prometheus-operator/pkg/thanos" ) func (f *Framework) MakeBasicThanosRuler(name string, replicas int32, queryEndpoint string) *monitoringv1.ThanosRuler {