diff --git a/README.md b/README.md index 0cff769..fd73cb7 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,29 @@ # Fleet Examples This repository contains examples of how to use Fleet using different approaches. +The repo is broken up into two different sections: Single cluster and Multi Cluster. + +## Single Cluster Examples + +All examples will deploy content to the local cluster running the Fleet Manager. | Example | Description | |-------------|-------------| -| [simple](simple/) | The minimally viable repo to deploy raw Kubernetes resources | -| [manifest](manifest/) | A full example of using raw Kubernetes YAML and customizing it per target cluster | -| [helm](helm/) | A full example of using Helm and customizing it per target cluster | -| [helm-external](helm-external/) | A full example of using a Helm chart that is downloaded from a third party source and customizing it per target cluster | -| [kustomize](kustomize/) | A full example of using Kustomize and customizing it per target cluster | -| [helm-kustomize](helm-kustomize/) | A full example of using Kustomize to modify a third party Helm chart | +| [manifest](single-cluster/manifest/) | A full example of using raw Kubernetes YAML and customizing it per target cluster | +| [helm](single-cluster/helm/) | A full example of using Helm and customizing it per target cluster | +| [helm-external](single-cluster/helm-external/) | A full example of using a Helm chart that is downloaded from a third party source and customizing it per target cluster | +| [kustomize](single-cluster/kustomize/) | A full example of using Kustomize and customizing it per target cluster | +| [helm-kustomize](single-cluster/helm-kustomize/) | A full example of using Kustomize to modify a third party Helm chart | + +## Multi-Cluster Examples + +The examples below will deploy a single git repo to multiple clusters at once +and configure the app differently for each target. + +| Example | Description | +|-------------|-------------| +| [manifest](multi-cluster/manifest/) | A full example of using raw Kubernetes YAML and customizing it per target cluster | +| [helm](multi-cluster/helm/) | A full example of using Helm and customizing it per target cluster | +| [helm-external](multi-cluster/helm-external/) | A full example of using a Helm chart that is downloaded from a third party source and customizing it per target cluster | +| [kustomize](multi-cluster/kustomize/) | A full example of using Kustomize and customizing it per target cluster | +| [helm-kustomize](multi-cluster/helm-kustomize/) | A full example of using Kustomize to modify a third party Helm chart | \ No newline at end of file diff --git a/helm-external/fleet.yaml b/helm-external/fleet.yaml deleted file mode 100644 index ec37c1c..0000000 --- a/helm-external/fleet.yaml +++ /dev/null @@ -1,24 +0,0 @@ -namespace: fleet-helm-external-example -chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz -targets: -- name: dev - values: - replication: false - clusterSelector: - matchLabels: - env: dev - -- name: test - values: - replicas: 3 - clusterSelector: - matchLabels: - env: test - -- name: prod - values: - serviceType: LoadBalancer - replicas: 3 - clusterSelector: - matchLabels: - env: prod diff --git a/helm-kustomize/fleet.yaml b/helm-kustomize/fleet.yaml deleted file mode 100644 index e582873..0000000 --- a/helm-kustomize/fleet.yaml +++ /dev/null @@ -1,23 +0,0 @@ -namespace: fleet-helm-kustomize-example -chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz -targets: -- name: dev - clusterSelector: - matchLabels: - env: dev - # NOTE: This directory is always relative to ./kustomize - kustomizeDir: overlays/dev - -- name: test - clusterSelector: - matchLabels: - env: test - # NOTE: This directory is always relative to ./kustomize - kustomizeDir: overlays/test - -- name: prod - clusterSelector: - matchLabels: - env: prod - # NOTE: This directory is always relative to ./kustomize - kustomizeDir: overlays/prod diff --git a/kustomize/fleet.yaml b/kustomize/fleet.yaml deleted file mode 100644 index 2fb8c12..0000000 --- a/kustomize/fleet.yaml +++ /dev/null @@ -1,22 +0,0 @@ -namespace: fleet-kustomize-example -targets: -- name: dev - clusterSelector: - matchLabels: - env: dev - # NOTE: This directory is always relative to ./kustomize - kustomizeDir: overlays/dev - -- name: test - clusterSelector: - matchLabels: - env: test - # NOTE: This directory is always relative to ./kustomize - kustomizeDir: overlays/test - -- name: prod - clusterSelector: - matchLabels: - env: prod - # NOTE: This directory is always relative to ./kustomize - kustomizeDir: overlays/prod diff --git a/manifests/fleet.yaml b/manifests/fleet.yaml deleted file mode 100644 index b899707..0000000 --- a/manifests/fleet.yaml +++ /dev/null @@ -1,23 +0,0 @@ -namespace: fleet-manifest-example -targets: -- name: dev - clusterSelector: - matchLabels: - env: dev - overlays: - - noreplication - -- name: test - clusterSelector: - matchLabels: - env: test - overlays: - - scale3 - -- name: prod - clusterSelector: - matchLabels: - env: prod - overlays: - - servicelb - - scale3 diff --git a/helm-external/README.md b/multi-cluster/helm-external/README.md similarity index 89% rename from helm-external/README.md rename to multi-cluster/helm-external/README.md index 0886271..bea3488 100644 --- a/helm-external/README.md +++ b/multi-cluster/helm-external/README.md @@ -2,7 +2,7 @@ This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as packaged as a Helm chart downloaded from a third party source. -The app will be deployed into the `fleet-helm-external-example` namespace. +The app will be deployed into the `fleet-mc-helm-external-example` namespace. The application will be customized as follows per environment: @@ -18,9 +18,9 @@ metadata: namespace: fleet-local spec: repo: https://github.com/rancher/fleet-examples/ - bundleDirs: + paths: - helm-external - targets: + targetCustomizations: - name: dev clusterSelector: matchLabels: diff --git a/multi-cluster/helm-external/fleet.yaml b/multi-cluster/helm-external/fleet.yaml new file mode 100644 index 0000000..f98e258 --- /dev/null +++ b/multi-cluster/helm-external/fleet.yaml @@ -0,0 +1,28 @@ +namespace: fleet-mc-helm-external-example +helm: + chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz +targets: +- name: dev + helm: + values: + replication: false + clusterSelector: + matchLabels: + env: dev + +- name: test + helm: + values: + replicas: 3 + clusterSelector: + matchLabels: + env: test + +- name: prod + helm: + values: + serviceType: LoadBalancer + replicas: 3 + clusterSelector: + matchLabels: + env: prod diff --git a/helm-kustomize/README.md b/multi-cluster/helm-kustomize/README.md similarity index 89% rename from helm-kustomize/README.md rename to multi-cluster/helm-kustomize/README.md index f696421..c2b620d 100644 --- a/helm-kustomize/README.md +++ b/multi-cluster/helm-kustomize/README.md @@ -2,7 +2,7 @@ This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as packaged as a Helm chart downloaded from a third party source and will modify the helm chart using Kustomize. -The app will be deployed into the `fleet-helm-kustomize-example` namespace. +The app will be deployed into the `fleet-mc-helm-kustomize-example` namespace. The application will be customized as follows per environment: @@ -18,9 +18,9 @@ metadata: namespace: fleet-local spec: repo: https://github.com/rancher/fleet-examples/ - bundleDirs: + paths: - helm-kustomize - targets: + targetCustomizations: - name: dev clusterSelector: matchLabels: diff --git a/multi-cluster/helm-kustomize/fleet.yaml b/multi-cluster/helm-kustomize/fleet.yaml new file mode 100644 index 0000000..fe2c131 --- /dev/null +++ b/multi-cluster/helm-kustomize/fleet.yaml @@ -0,0 +1,24 @@ +namespace: fleet-mc-helm-kustomize-example +helm: + chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz +targets: +- name: dev + clusterSelector: + matchLabels: + env: dev + kustomize: + dir: overlays/dev + +- name: test + clusterSelector: + matchLabels: + env: test + kustomize: + dir: overlays/test + +- name: prod + clusterSelector: + matchLabels: + env: prod + kustomize: + dir: overlays/prod diff --git a/helm-kustomize/kustomize/overlays/dev/kustomization.yaml b/multi-cluster/helm-kustomize/overlays/dev/kustomization.yaml similarity index 100% rename from helm-kustomize/kustomize/overlays/dev/kustomization.yaml rename to multi-cluster/helm-kustomize/overlays/dev/kustomization.yaml diff --git a/helm-kustomize/kustomize/overlays/dev/redis-slave-deployment.yaml b/multi-cluster/helm-kustomize/overlays/dev/redis-slave-deployment.yaml similarity index 100% rename from helm-kustomize/kustomize/overlays/dev/redis-slave-deployment.yaml rename to multi-cluster/helm-kustomize/overlays/dev/redis-slave-deployment.yaml diff --git a/helm-kustomize/kustomize/overlays/dev/redis-slave-service.yaml b/multi-cluster/helm-kustomize/overlays/dev/redis-slave-service.yaml similarity index 100% rename from helm-kustomize/kustomize/overlays/dev/redis-slave-service.yaml rename to multi-cluster/helm-kustomize/overlays/dev/redis-slave-service.yaml diff --git a/helm-kustomize/kustomize/overlays/prod/frontend-deployment.yaml b/multi-cluster/helm-kustomize/overlays/prod/frontend-deployment.yaml similarity index 100% rename from helm-kustomize/kustomize/overlays/prod/frontend-deployment.yaml rename to multi-cluster/helm-kustomize/overlays/prod/frontend-deployment.yaml diff --git a/helm-kustomize/kustomize/overlays/prod/frontend-service.yaml b/multi-cluster/helm-kustomize/overlays/prod/frontend-service.yaml similarity index 100% rename from helm-kustomize/kustomize/overlays/prod/frontend-service.yaml rename to multi-cluster/helm-kustomize/overlays/prod/frontend-service.yaml diff --git a/helm-kustomize/kustomize/overlays/prod/kustomization.yaml b/multi-cluster/helm-kustomize/overlays/prod/kustomization.yaml similarity index 100% rename from helm-kustomize/kustomize/overlays/prod/kustomization.yaml rename to multi-cluster/helm-kustomize/overlays/prod/kustomization.yaml diff --git a/helm-kustomize/kustomize/overlays/test/frontend-deployment.yaml b/multi-cluster/helm-kustomize/overlays/test/frontend-deployment.yaml similarity index 100% rename from helm-kustomize/kustomize/overlays/test/frontend-deployment.yaml rename to multi-cluster/helm-kustomize/overlays/test/frontend-deployment.yaml diff --git a/helm-kustomize/kustomize/overlays/test/kustomization.yaml b/multi-cluster/helm-kustomize/overlays/test/kustomization.yaml similarity index 100% rename from helm-kustomize/kustomize/overlays/test/kustomization.yaml rename to multi-cluster/helm-kustomize/overlays/test/kustomization.yaml diff --git a/helm/chart/Chart.yaml b/multi-cluster/helm/Chart.yaml similarity index 100% rename from helm/chart/Chart.yaml rename to multi-cluster/helm/Chart.yaml diff --git a/helm/README.md b/multi-cluster/helm/README.md similarity index 89% rename from helm/README.md rename to multi-cluster/helm/README.md index a582109..5ab6ce5 100644 --- a/helm/README.md +++ b/multi-cluster/helm/README.md @@ -2,7 +2,7 @@ This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as packaged as a Helm chart. -The app will be deployed into the `fleet-helm-example` namespace. +The app will be deployed into the `fleet-mc-helm-example` namespace. The application will be customized as follows per environment: @@ -18,9 +18,9 @@ metadata: namespace: fleet-local spec: repo: https://github.com/rancher/fleet-examples/ - bundleDirs: + paths: - helm - targets: + targetCustomizations: - name: dev clusterSelector: matchLabels: diff --git a/multi-cluster/helm/fleet.yaml b/multi-cluster/helm/fleet.yaml new file mode 100644 index 0000000..1c72353 --- /dev/null +++ b/multi-cluster/helm/fleet.yaml @@ -0,0 +1,26 @@ +namespace: fleet-mc-helm-example +targetCustomizations: +- name: dev + helm: + values: + replication: false + clusterSelector: + matchLabels: + env: dev + +- name: test + helm: + values: + replicas: 3 + clusterSelector: + matchLabels: + env: test + +- name: prod + helm: + values: + serviceType: LoadBalancer + replicas: 3 + clusterSelector: + matchLabels: + env: prod diff --git a/helm/chart/templates/frontend-deployment.yaml b/multi-cluster/helm/templates/frontend-deployment.yaml similarity index 100% rename from helm/chart/templates/frontend-deployment.yaml rename to multi-cluster/helm/templates/frontend-deployment.yaml diff --git a/helm/chart/templates/frontend-service.yaml b/multi-cluster/helm/templates/frontend-service.yaml similarity index 100% rename from helm/chart/templates/frontend-service.yaml rename to multi-cluster/helm/templates/frontend-service.yaml diff --git a/helm/chart/templates/redis-master-deployment.yaml b/multi-cluster/helm/templates/redis-master-deployment.yaml similarity index 100% rename from helm/chart/templates/redis-master-deployment.yaml rename to multi-cluster/helm/templates/redis-master-deployment.yaml diff --git a/helm/chart/templates/redis-master-service.yaml b/multi-cluster/helm/templates/redis-master-service.yaml similarity index 100% rename from helm/chart/templates/redis-master-service.yaml rename to multi-cluster/helm/templates/redis-master-service.yaml diff --git a/helm/chart/templates/redis-slave-deployment.yaml b/multi-cluster/helm/templates/redis-slave-deployment.yaml similarity index 100% rename from helm/chart/templates/redis-slave-deployment.yaml rename to multi-cluster/helm/templates/redis-slave-deployment.yaml diff --git a/helm/chart/templates/redis-slave-service.yaml b/multi-cluster/helm/templates/redis-slave-service.yaml similarity index 100% rename from helm/chart/templates/redis-slave-service.yaml rename to multi-cluster/helm/templates/redis-slave-service.yaml diff --git a/helm/chart/values.yaml b/multi-cluster/helm/values.yaml similarity index 100% rename from helm/chart/values.yaml rename to multi-cluster/helm/values.yaml diff --git a/kustomize/README.md b/multi-cluster/kustomize/README.md similarity index 88% rename from kustomize/README.md rename to multi-cluster/kustomize/README.md index 149735e..8a7ff14 100644 --- a/kustomize/README.md +++ b/multi-cluster/kustomize/README.md @@ -1,7 +1,7 @@ # Helm Example This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application -using kustomize. The app will be deployed into the `fleet-kustomize-example` namespace. +using kustomize. The app will be deployed into the `fleet-mc-kustomize-example` namespace. The application will be customized as follows per environment: @@ -19,7 +19,7 @@ spec: repo: https://github.com/rancher/fleet-examples/ bundleDirs: - kustomize - targets: + targetCustomization: - name: dev clusterSelector: matchLabels: diff --git a/kustomize/kustomize/base/frontend-deployment.yaml b/multi-cluster/kustomize/base/frontend-deployment.yaml similarity index 100% rename from kustomize/kustomize/base/frontend-deployment.yaml rename to multi-cluster/kustomize/base/frontend-deployment.yaml diff --git a/kustomize/kustomize/base/frontend-service.yaml b/multi-cluster/kustomize/base/frontend-service.yaml similarity index 100% rename from kustomize/kustomize/base/frontend-service.yaml rename to multi-cluster/kustomize/base/frontend-service.yaml diff --git a/kustomize/kustomize/base/kustomization.yaml b/multi-cluster/kustomize/base/kustomization.yaml similarity index 100% rename from kustomize/kustomize/base/kustomization.yaml rename to multi-cluster/kustomize/base/kustomization.yaml diff --git a/kustomize/kustomize/base/redis-master-deployment.yaml b/multi-cluster/kustomize/base/redis-master-deployment.yaml similarity index 100% rename from kustomize/kustomize/base/redis-master-deployment.yaml rename to multi-cluster/kustomize/base/redis-master-deployment.yaml diff --git a/kustomize/kustomize/base/redis-master-service.yaml b/multi-cluster/kustomize/base/redis-master-service.yaml similarity index 100% rename from kustomize/kustomize/base/redis-master-service.yaml rename to multi-cluster/kustomize/base/redis-master-service.yaml diff --git a/kustomize/kustomize/base/redis-slave-deployment.yaml b/multi-cluster/kustomize/base/redis-slave-deployment.yaml similarity index 100% rename from kustomize/kustomize/base/redis-slave-deployment.yaml rename to multi-cluster/kustomize/base/redis-slave-deployment.yaml diff --git a/kustomize/kustomize/base/redis-slave-service.yaml b/multi-cluster/kustomize/base/redis-slave-service.yaml similarity index 100% rename from kustomize/kustomize/base/redis-slave-service.yaml rename to multi-cluster/kustomize/base/redis-slave-service.yaml diff --git a/helm/fleet.yaml b/multi-cluster/kustomize/fleet.yaml similarity index 58% rename from helm/fleet.yaml rename to multi-cluster/kustomize/fleet.yaml index 553d4f5..2980528 100644 --- a/helm/fleet.yaml +++ b/multi-cluster/kustomize/fleet.yaml @@ -1,23 +1,22 @@ -namespace: fleet-helm-example +namespace: fleet-mc-kustomize-example targets: - name: dev - values: - replication: false clusterSelector: matchLabels: env: dev + kustomize: + dir: overlays/dev - name: test - values: - replicas: 3 clusterSelector: matchLabels: env: test + kustomize: + dir: overlays/test - name: prod - values: - serviceType: LoadBalancer - replicas: 3 clusterSelector: matchLabels: env: prod + kustomize: + dir: overlays/prod diff --git a/kustomize/kustomize/kustomization.yaml b/multi-cluster/kustomize/kustomization.yaml similarity index 100% rename from kustomize/kustomize/kustomization.yaml rename to multi-cluster/kustomize/kustomization.yaml diff --git a/kustomize/kustomize/overlays/dev/kustomization.yaml b/multi-cluster/kustomize/overlays/dev/kustomization.yaml similarity index 100% rename from kustomize/kustomize/overlays/dev/kustomization.yaml rename to multi-cluster/kustomize/overlays/dev/kustomization.yaml diff --git a/kustomize/kustomize/overlays/dev/redis-slave-deployment.yaml b/multi-cluster/kustomize/overlays/dev/redis-slave-deployment.yaml similarity index 100% rename from kustomize/kustomize/overlays/dev/redis-slave-deployment.yaml rename to multi-cluster/kustomize/overlays/dev/redis-slave-deployment.yaml diff --git a/kustomize/kustomize/overlays/dev/redis-slave-service.yaml b/multi-cluster/kustomize/overlays/dev/redis-slave-service.yaml similarity index 100% rename from kustomize/kustomize/overlays/dev/redis-slave-service.yaml rename to multi-cluster/kustomize/overlays/dev/redis-slave-service.yaml diff --git a/kustomize/kustomize/overlays/prod/frontend-deployment.yaml b/multi-cluster/kustomize/overlays/prod/frontend-deployment.yaml similarity index 100% rename from kustomize/kustomize/overlays/prod/frontend-deployment.yaml rename to multi-cluster/kustomize/overlays/prod/frontend-deployment.yaml diff --git a/kustomize/kustomize/overlays/prod/frontend-service.yaml b/multi-cluster/kustomize/overlays/prod/frontend-service.yaml similarity index 100% rename from kustomize/kustomize/overlays/prod/frontend-service.yaml rename to multi-cluster/kustomize/overlays/prod/frontend-service.yaml diff --git a/kustomize/kustomize/overlays/prod/kustomization.yaml b/multi-cluster/kustomize/overlays/prod/kustomization.yaml similarity index 100% rename from kustomize/kustomize/overlays/prod/kustomization.yaml rename to multi-cluster/kustomize/overlays/prod/kustomization.yaml diff --git a/kustomize/kustomize/overlays/test/frontend-deployment.yaml b/multi-cluster/kustomize/overlays/test/frontend-deployment.yaml similarity index 100% rename from kustomize/kustomize/overlays/test/frontend-deployment.yaml rename to multi-cluster/kustomize/overlays/test/frontend-deployment.yaml diff --git a/kustomize/kustomize/overlays/test/kustomization.yaml b/multi-cluster/kustomize/overlays/test/kustomization.yaml similarity index 100% rename from kustomize/kustomize/overlays/test/kustomization.yaml rename to multi-cluster/kustomize/overlays/test/kustomization.yaml diff --git a/manifests/README.md b/multi-cluster/manifests/README.md similarity index 89% rename from manifests/README.md rename to multi-cluster/manifests/README.md index 3c279a4..6921f79 100644 --- a/manifests/README.md +++ b/multi-cluster/manifests/README.md @@ -1,7 +1,7 @@ # Manifests Example This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application. -The app will be deployed into the `fleet-manifest-example` namespace. +The app will be deployed into the `fleet-mc-manifest-example` namespace. The application will be customized as follows per environment: @@ -19,7 +19,7 @@ spec: repo: https://github.com/rancher/fleet-examples/ bundleDirs: - manifests - targets: + targetCustomizations: - name: dev clusterSelector: matchLabels: diff --git a/multi-cluster/manifests/fleet.yaml b/multi-cluster/manifests/fleet.yaml new file mode 100644 index 0000000..dcdbc0f --- /dev/null +++ b/multi-cluster/manifests/fleet.yaml @@ -0,0 +1,29 @@ +namespace: fleet-mc-manifest-example +targets: +- name: dev + clusterSelector: + matchLabels: + env: dev + yaml: + overlays: + # Refers to overlays/noreplication folder + - noreplication + +- name: test + clusterSelector: + matchLabels: + env: test + yaml: + overlays: + # Refers to overlays/scale3 folder + - scale3 + +- name: prod + clusterSelector: + matchLabels: + env: prod + yaml: + # Refers to overlays/servicelb, scale3 folders + overlays: + - servicelb + - scale3 diff --git a/manifests/manifests/frontend-deployment.yaml b/multi-cluster/manifests/frontend-deployment.yaml similarity index 100% rename from manifests/manifests/frontend-deployment.yaml rename to multi-cluster/manifests/frontend-deployment.yaml diff --git a/manifests/manifests/frontend-service.yaml b/multi-cluster/manifests/frontend-service.yaml similarity index 100% rename from manifests/manifests/frontend-service.yaml rename to multi-cluster/manifests/frontend-service.yaml diff --git a/manifests/overlays/noreplication/manifests/redis-slave-deployment.yaml b/multi-cluster/manifests/overlays/noreplication/redis-slave-deployment.yaml similarity index 100% rename from manifests/overlays/noreplication/manifests/redis-slave-deployment.yaml rename to multi-cluster/manifests/overlays/noreplication/redis-slave-deployment.yaml diff --git a/manifests/overlays/noreplication/manifests/redis-slave-service_patch.yaml b/multi-cluster/manifests/overlays/noreplication/redis-slave-service_patch.yaml similarity index 100% rename from manifests/overlays/noreplication/manifests/redis-slave-service_patch.yaml rename to multi-cluster/manifests/overlays/noreplication/redis-slave-service_patch.yaml diff --git a/manifests/overlays/scale3/manifests/frontend-deployment_patch.yaml b/multi-cluster/manifests/overlays/scale3/frontend-deployment_patch.yaml similarity index 100% rename from manifests/overlays/scale3/manifests/frontend-deployment_patch.yaml rename to multi-cluster/manifests/overlays/scale3/frontend-deployment_patch.yaml diff --git a/manifests/overlays/servicelb/manifests/frontend-service_patch.yaml b/multi-cluster/manifests/overlays/servicelb/frontend-service_patch.yaml similarity index 100% rename from manifests/overlays/servicelb/manifests/frontend-service_patch.yaml rename to multi-cluster/manifests/overlays/servicelb/frontend-service_patch.yaml diff --git a/manifests/manifests/redis-master-deployment.yaml b/multi-cluster/manifests/redis-master-deployment.yaml similarity index 100% rename from manifests/manifests/redis-master-deployment.yaml rename to multi-cluster/manifests/redis-master-deployment.yaml diff --git a/manifests/manifests/redis-master-service.yaml b/multi-cluster/manifests/redis-master-service.yaml similarity index 100% rename from manifests/manifests/redis-master-service.yaml rename to multi-cluster/manifests/redis-master-service.yaml diff --git a/manifests/manifests/redis-slave-deployment.yaml b/multi-cluster/manifests/redis-slave-deployment.yaml similarity index 100% rename from manifests/manifests/redis-slave-deployment.yaml rename to multi-cluster/manifests/redis-slave-deployment.yaml diff --git a/manifests/manifests/redis-slave-service.yaml b/multi-cluster/manifests/redis-slave-service.yaml similarity index 100% rename from manifests/manifests/redis-slave-service.yaml rename to multi-cluster/manifests/redis-slave-service.yaml diff --git a/simple/README.md b/simple/README.md index dcd3f99..5acc53a 100644 --- a/simple/README.md +++ b/simple/README.md @@ -11,6 +11,6 @@ metadata: namespace: fleet-local spec: repo: https://github.com/rancher/fleet-examples/ - bundleDirs: + paths: - simple ``` diff --git a/simple/manifests/frontend-deployment.yaml b/simple/frontend-deployment.yaml similarity index 100% rename from simple/manifests/frontend-deployment.yaml rename to simple/frontend-deployment.yaml diff --git a/simple/manifests/frontend-service.yaml b/simple/frontend-service.yaml similarity index 100% rename from simple/manifests/frontend-service.yaml rename to simple/frontend-service.yaml diff --git a/simple/manifests/redis-master-deployment.yaml b/simple/redis-master-deployment.yaml similarity index 100% rename from simple/manifests/redis-master-deployment.yaml rename to simple/redis-master-deployment.yaml diff --git a/simple/manifests/redis-master-service.yaml b/simple/redis-master-service.yaml similarity index 100% rename from simple/manifests/redis-master-service.yaml rename to simple/redis-master-service.yaml diff --git a/simple/manifests/redis-slave-deployment.yaml b/simple/redis-slave-deployment.yaml similarity index 100% rename from simple/manifests/redis-slave-deployment.yaml rename to simple/redis-slave-deployment.yaml diff --git a/simple/manifests/redis-slave-service.yaml b/simple/redis-slave-service.yaml similarity index 100% rename from simple/manifests/redis-slave-service.yaml rename to simple/redis-slave-service.yaml diff --git a/single-cluster/helm-kustomize/README.md b/single-cluster/helm-kustomize/README.md new file mode 100644 index 0000000..3702227 --- /dev/null +++ b/single-cluster/helm-kustomize/README.md @@ -0,0 +1,17 @@ +# Helm Kustomize Example + +This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as +packaged as a Helm chart downloaded from a third party source and will modify the helm chart using Kustomize. +The app will be deployed into the `fleet-helm-kustomize-example` namespace. + +```yaml +kind: GitRepo +apiVersion: fleet.cattle.io/v1alpha1 +metadata: + name: helm-kustomize + namespace: fleet-local +spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - helm-kustomize +``` diff --git a/single-cluster/helm-kustomize/fleet.yaml b/single-cluster/helm-kustomize/fleet.yaml new file mode 100644 index 0000000..9d07b2e --- /dev/null +++ b/single-cluster/helm-kustomize/fleet.yaml @@ -0,0 +1,10 @@ +# This file and all contents in it are OPTIONAL. +# +# Refer to ../helm/fleet.yaml and ../kustomize/fleet.yaml for the full reference +# of what can be included here. All Helm and Kustomize options apply + +namespace: fleet-helm-kustomize-example +helm: + chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz +kustomize: + dir: ./overlays/dev diff --git a/single-cluster/helm-kustomize/overlays/dev/kustomization.yaml b/single-cluster/helm-kustomize/overlays/dev/kustomization.yaml new file mode 100644 index 0000000..c3759a0 --- /dev/null +++ b/single-cluster/helm-kustomize/overlays/dev/kustomization.yaml @@ -0,0 +1,3 @@ +patches: +- redis-slave-deployment.yaml +- redis-slave-service.yaml diff --git a/single-cluster/helm-kustomize/overlays/dev/redis-slave-deployment.yaml b/single-cluster/helm-kustomize/overlays/dev/redis-slave-deployment.yaml new file mode 100644 index 0000000..238ee8c --- /dev/null +++ b/single-cluster/helm-kustomize/overlays/dev/redis-slave-deployment.yaml @@ -0,0 +1,6 @@ +kind: Deployment +apiVersion: apps/v1 +metadata: + name: redis-slave +spec: + replicas: 0 diff --git a/single-cluster/helm-kustomize/overlays/dev/redis-slave-service.yaml b/single-cluster/helm-kustomize/overlays/dev/redis-slave-service.yaml new file mode 100644 index 0000000..d2a93da --- /dev/null +++ b/single-cluster/helm-kustomize/overlays/dev/redis-slave-service.yaml @@ -0,0 +1,7 @@ +kind: Service +apiVersion: v1 +metadata: + name: redis-slave +spec: + selector: + role: master diff --git a/single-cluster/helm-multi-chart/guestbook/Chart.yaml b/single-cluster/helm-multi-chart/guestbook/Chart.yaml new file mode 100644 index 0000000..faafbaf --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v2 +name: guestbook +description: Sample application +version: 0.0.0 +appVersion: 0.0.0 diff --git a/single-cluster/helm-multi-chart/guestbook/README.md b/single-cluster/helm-multi-chart/guestbook/README.md new file mode 100644 index 0000000..0c4cb75 --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/README.md @@ -0,0 +1,17 @@ +# Helm Example + +This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as +packaged as a Helm chart. +The app will be deployed into the `fleet-helm-example` namespace. + +```yaml +kind: GitRepo +apiVersion: fleet.cattle.io/v1alpha1 +metadata: + name: helm + namespace: fleet-local +spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - single-cluster/helm +``` diff --git a/single-cluster/helm-multi-chart/guestbook/fleet.yaml b/single-cluster/helm-multi-chart/guestbook/fleet.yaml new file mode 100644 index 0000000..7176ffe --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/fleet.yaml @@ -0,0 +1,32 @@ +# This file and all contents in it are OPTIONAL. + +# The namespace this chart will be installed to, +# if not specified the chart will be installed to "default" +namespace: fleet-multi-chart-helm-example + +# Custom helm options +helm: + # The release name to use. If empty a generated release name will be used + releaseName: guestbook + + # The directory of the chart in the repo. Also any valid go-getter supported + # URL can be used there is specify where to download the chart from. + # If repo below is set this value if the chart name in the repo + chart: "" + + # An https to a valid Helm repository to download the chart from + repo: "" + + # Used if repo is set to look up the version of the chart + version: "" + + # Force recreate resource that can not be updated + force: false + + # How long for helm to wait for the release to be active. If the value + # is less that or equal to zero, we will not wait in Helm + timeoutSeconds: 0 + + # Custom values that will be passed as values.yaml to the installation + values: + replicas: 2 diff --git a/single-cluster/helm-multi-chart/guestbook/templates/frontend-deployment.yaml b/single-cluster/helm-multi-chart/guestbook/templates/frontend-deployment.yaml new file mode 100644 index 0000000..5ed1992 --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/templates/frontend-deployment.yaml @@ -0,0 +1,25 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: frontend +spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: {{ .Values.replicas }} + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 diff --git a/single-cluster/helm-multi-chart/guestbook/templates/frontend-service.yaml b/single-cluster/helm-multi-chart/guestbook/templates/frontend-service.yaml new file mode 100644 index 0000000..699670a --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/templates/frontend-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + name: frontend + labels: + app: guestbook + tier: frontend +spec: + type: "{{ .Values.serviceType }}" + ports: + - port: 80 + selector: + app: guestbook + tier: frontend diff --git a/single-cluster/helm-multi-chart/guestbook/templates/redis-master-deployment.yaml b/single-cluster/helm-multi-chart/guestbook/templates/redis-master-deployment.yaml new file mode 100644 index 0000000..d675715 --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/templates/redis-master-deployment.yaml @@ -0,0 +1,27 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis-master +spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 diff --git a/single-cluster/helm-multi-chart/guestbook/templates/redis-master-service.yaml b/single-cluster/helm-multi-chart/guestbook/templates/redis-master-service.yaml new file mode 100644 index 0000000..a484014 --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/templates/redis-master-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend diff --git a/single-cluster/helm-multi-chart/guestbook/templates/redis-slave-deployment.yaml b/single-cluster/helm-multi-chart/guestbook/templates/redis-slave-deployment.yaml new file mode 100644 index 0000000..aed1759 --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/templates/redis-slave-deployment.yaml @@ -0,0 +1,29 @@ +{{ if .Values.replication }} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis-slave +spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 +{{ end }} diff --git a/single-cluster/helm-multi-chart/guestbook/templates/redis-slave-service.yaml b/single-cluster/helm-multi-chart/guestbook/templates/redis-slave-service.yaml new file mode 100644 index 0000000..f826055 --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/templates/redis-slave-service.yaml @@ -0,0 +1,19 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend +spec: + ports: + - port: 6379 + selector: + app: redis + {{ if .Values.replication }} + role: slave + {{ else }} + role: master + {{ end }} + tier: backend diff --git a/single-cluster/helm-multi-chart/guestbook/values.yaml b/single-cluster/helm-multi-chart/guestbook/values.yaml new file mode 100644 index 0000000..c6eaf7f --- /dev/null +++ b/single-cluster/helm-multi-chart/guestbook/values.yaml @@ -0,0 +1,3 @@ +replication: true +replicas: 1 +serviceType: NodePort diff --git a/single-cluster/helm-multi-chart/rancher-monitoring-crd/fleet.yaml b/single-cluster/helm-multi-chart/rancher-monitoring-crd/fleet.yaml new file mode 100644 index 0000000..a023a5a --- /dev/null +++ b/single-cluster/helm-multi-chart/rancher-monitoring-crd/fleet.yaml @@ -0,0 +1,5 @@ +namespace: cattle-monitoring-system +helm: + releaseName: rancher-monitoring-crd + chart: rancher-monitoring-crd + repo: https://charts.rancher.io diff --git a/single-cluster/helm-multi-chart/rancher-monitoring/fleet.yaml b/single-cluster/helm-multi-chart/rancher-monitoring/fleet.yaml new file mode 100644 index 0000000..6314a64 --- /dev/null +++ b/single-cluster/helm-multi-chart/rancher-monitoring/fleet.yaml @@ -0,0 +1,44 @@ +namespace: cattle-monitoring-system +helm: + releaseName: rancher-monitoring + repo: https://charts.rancher.io + chart: rancher-monitoring +diff: + comparePatches: + - apiVersion: admissionregistration.k8s.io/v1beta1 + kind: MutatingWebhookConfiguration + name: rancher-monitoring-admission + operations: + - {"op":"remove", "path":"/webhooks/0/failurePolicy"} + - {"op":"remove", "path":"/webhooks/0/rules/0/scope"} + - apiVersion: admissionregistration.k8s.io/v1beta1 + kind: ValidatingWebhookConfiguration + name: rancher-monitoring-admission + operations: + - {"op":"remove", "path":"/webhooks/0/failurePolicy"} + - {"op":"remove", "path":"/webhooks/0/rules/0/scope"} + - apiVersion: policy/v1beta1 + kind: PodSecurityPolicy + operations: + - {"op":"remove", "path":"/spec/hostIPC"} + - {"op":"remove", "path":"/spec/hostNetwork"} + - {"op":"remove", "path":"/spec/hostPID"} + - {"op":"remove", "path":"/spec/privileged"} + - {"op":"remove", "path":"/spec/readOnlyRootFilesystem"} + - apiVersion: apps/v1 + kind: Deployment + name: rancher-monitoring-grafana + namespace: cattle-monitoring-system + operations: + - {"op":"remove", "path":"/spec/template/spec/containers/0/env/0/value"} + - apiVersion: apps/v1 + kind: Deployment + operations: + - {"op":"remove", "path":"/spec/template/spec/hostNetwork"} + - {"op":"remove", "path":"/spec/template/spec/nodeSelector"} + - {"op":"remove", "path":"/spec/template/spec/priorityClassName"} + - {"op":"remove", "path":"/spec/template/spec/tolerations"} + - apiVersion: v1 + kind: ServiceAccount + operations: + - {"op":"remove", "path":"/imagePullSecrets"} diff --git a/single-cluster/helm/Chart.yaml b/single-cluster/helm/Chart.yaml new file mode 100644 index 0000000..faafbaf --- /dev/null +++ b/single-cluster/helm/Chart.yaml @@ -0,0 +1,5 @@ +apiVersion: v2 +name: guestbook +description: Sample application +version: 0.0.0 +appVersion: 0.0.0 diff --git a/single-cluster/helm/README.md b/single-cluster/helm/README.md new file mode 100644 index 0000000..0c4cb75 --- /dev/null +++ b/single-cluster/helm/README.md @@ -0,0 +1,17 @@ +# Helm Example + +This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as +packaged as a Helm chart. +The app will be deployed into the `fleet-helm-example` namespace. + +```yaml +kind: GitRepo +apiVersion: fleet.cattle.io/v1alpha1 +metadata: + name: helm + namespace: fleet-local +spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - single-cluster/helm +``` diff --git a/single-cluster/helm/fleet.yaml b/single-cluster/helm/fleet.yaml new file mode 100644 index 0000000..9aefee7 --- /dev/null +++ b/single-cluster/helm/fleet.yaml @@ -0,0 +1,32 @@ +# This file and all contents in it are OPTIONAL. + +# The namespace this chart will be installed to, +# if not specified the chart will be installed to "default" +namespace: fleet-helm-example + +# Custom helm options +helm: + # The release name to use. If empty a generated release name will be used + releaseName: guestbook + + # The directory of the chart in the repo. Also any valid go-getter supported + # URL can be used there is specify where to download the chart from. + # If repo below is set this value if the chart name in the repo + chart: "" + + # An https to a valid Helm repository to download the chart from + repo: "" + + # Used if repo is set to look up the version of the chart + version: "" + + # Force recreate resource that can not be updated + force: false + + # How long for helm to wait for the release to be active. If the value + # is less that or equal to zero, we will not wait in Helm + timeoutSeconds: 0 + + # Custom values that will be passed as values.yaml to the installation + values: + replicas: 2 diff --git a/single-cluster/helm/templates/frontend-deployment.yaml b/single-cluster/helm/templates/frontend-deployment.yaml new file mode 100644 index 0000000..5ed1992 --- /dev/null +++ b/single-cluster/helm/templates/frontend-deployment.yaml @@ -0,0 +1,25 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: frontend +spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: {{ .Values.replicas }} + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 diff --git a/single-cluster/helm/templates/frontend-service.yaml b/single-cluster/helm/templates/frontend-service.yaml new file mode 100644 index 0000000..699670a --- /dev/null +++ b/single-cluster/helm/templates/frontend-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + name: frontend + labels: + app: guestbook + tier: frontend +spec: + type: "{{ .Values.serviceType }}" + ports: + - port: 80 + selector: + app: guestbook + tier: frontend diff --git a/single-cluster/helm/templates/redis-master-deployment.yaml b/single-cluster/helm/templates/redis-master-deployment.yaml new file mode 100644 index 0000000..d675715 --- /dev/null +++ b/single-cluster/helm/templates/redis-master-deployment.yaml @@ -0,0 +1,27 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis-master +spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 diff --git a/single-cluster/helm/templates/redis-master-service.yaml b/single-cluster/helm/templates/redis-master-service.yaml new file mode 100644 index 0000000..a484014 --- /dev/null +++ b/single-cluster/helm/templates/redis-master-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend diff --git a/single-cluster/helm/templates/redis-slave-deployment.yaml b/single-cluster/helm/templates/redis-slave-deployment.yaml new file mode 100644 index 0000000..aed1759 --- /dev/null +++ b/single-cluster/helm/templates/redis-slave-deployment.yaml @@ -0,0 +1,29 @@ +{{ if .Values.replication }} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis-slave +spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 +{{ end }} diff --git a/single-cluster/helm/templates/redis-slave-service.yaml b/single-cluster/helm/templates/redis-slave-service.yaml new file mode 100644 index 0000000..f826055 --- /dev/null +++ b/single-cluster/helm/templates/redis-slave-service.yaml @@ -0,0 +1,19 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend +spec: + ports: + - port: 6379 + selector: + app: redis + {{ if .Values.replication }} + role: slave + {{ else }} + role: master + {{ end }} + tier: backend diff --git a/single-cluster/helm/values.yaml b/single-cluster/helm/values.yaml new file mode 100644 index 0000000..c6eaf7f --- /dev/null +++ b/single-cluster/helm/values.yaml @@ -0,0 +1,3 @@ +replication: true +replicas: 1 +serviceType: NodePort diff --git a/single-cluster/kustomize/README.md b/single-cluster/kustomize/README.md new file mode 100644 index 0000000..4dfaa96 --- /dev/null +++ b/single-cluster/kustomize/README.md @@ -0,0 +1,16 @@ +# Helm Example + +This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application +using kustomize. The app will be deployed into the `fleet-kustomize-example` namespace. + +```yaml +kind: GitRepo +apiVersion: fleet.cattle.io/v1alpha1 +metadata: + name: kustomize + namespace: fleet-local +spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - single-cluster/kustomize +``` diff --git a/single-cluster/kustomize/base/frontend-deployment.yaml b/single-cluster/kustomize/base/frontend-deployment.yaml new file mode 100644 index 0000000..a56d48e --- /dev/null +++ b/single-cluster/kustomize/base/frontend-deployment.yaml @@ -0,0 +1,25 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: frontend +spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: 1 + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 diff --git a/single-cluster/kustomize/base/frontend-service.yaml b/single-cluster/kustomize/base/frontend-service.yaml new file mode 100644 index 0000000..e488acb --- /dev/null +++ b/single-cluster/kustomize/base/frontend-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + name: frontend + labels: + app: guestbook + tier: frontend +spec: + type: NodePort + ports: + - port: 80 + selector: + app: guestbook + tier: frontend diff --git a/single-cluster/kustomize/base/kustomization.yaml b/single-cluster/kustomize/base/kustomization.yaml new file mode 100644 index 0000000..491cedc --- /dev/null +++ b/single-cluster/kustomize/base/kustomization.yaml @@ -0,0 +1,7 @@ +resources: +- frontend-deployment.yaml +- frontend-service.yaml +- redis-master-deployment.yaml +- redis-master-service.yaml +- redis-slave-deployment.yaml +- redis-slave-service.yaml diff --git a/single-cluster/kustomize/base/redis-master-deployment.yaml b/single-cluster/kustomize/base/redis-master-deployment.yaml new file mode 100644 index 0000000..d675715 --- /dev/null +++ b/single-cluster/kustomize/base/redis-master-deployment.yaml @@ -0,0 +1,27 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis-master +spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 diff --git a/single-cluster/kustomize/base/redis-master-service.yaml b/single-cluster/kustomize/base/redis-master-service.yaml new file mode 100644 index 0000000..a484014 --- /dev/null +++ b/single-cluster/kustomize/base/redis-master-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend diff --git a/single-cluster/kustomize/base/redis-slave-deployment.yaml b/single-cluster/kustomize/base/redis-slave-deployment.yaml new file mode 100644 index 0000000..dfdcd00 --- /dev/null +++ b/single-cluster/kustomize/base/redis-slave-deployment.yaml @@ -0,0 +1,27 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis-slave +spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 diff --git a/single-cluster/kustomize/base/redis-slave-service.yaml b/single-cluster/kustomize/base/redis-slave-service.yaml new file mode 100644 index 0000000..238fd63 --- /dev/null +++ b/single-cluster/kustomize/base/redis-slave-service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend diff --git a/single-cluster/kustomize/fleet.yaml b/single-cluster/kustomize/fleet.yaml new file mode 100644 index 0000000..c610aa6 --- /dev/null +++ b/single-cluster/kustomize/fleet.yaml @@ -0,0 +1,11 @@ +# This file and all contents in it are OPTIONAL. + +# The default namespace to apply to resources that are namespaced +# but do not specify a namespace. In this example no resources +# are configured with a namespace so this default will apply +namespace: fleet-kustomize-example + + +kustomize: + # To use a kustomization.yaml different from the one in the root folder + dir: "" diff --git a/single-cluster/kustomize/kustomization.yaml b/single-cluster/kustomize/kustomization.yaml new file mode 100644 index 0000000..d426a65 --- /dev/null +++ b/single-cluster/kustomize/kustomization.yaml @@ -0,0 +1,2 @@ +bases: +- overlays/dev diff --git a/single-cluster/kustomize/overlays/dev/kustomization.yaml b/single-cluster/kustomize/overlays/dev/kustomization.yaml new file mode 100644 index 0000000..c428810 --- /dev/null +++ b/single-cluster/kustomize/overlays/dev/kustomization.yaml @@ -0,0 +1,5 @@ +bases: +- ../../base +patches: +- redis-slave-deployment.yaml +- redis-slave-service.yaml diff --git a/single-cluster/kustomize/overlays/dev/redis-slave-deployment.yaml b/single-cluster/kustomize/overlays/dev/redis-slave-deployment.yaml new file mode 100644 index 0000000..238ee8c --- /dev/null +++ b/single-cluster/kustomize/overlays/dev/redis-slave-deployment.yaml @@ -0,0 +1,6 @@ +kind: Deployment +apiVersion: apps/v1 +metadata: + name: redis-slave +spec: + replicas: 0 diff --git a/single-cluster/kustomize/overlays/dev/redis-slave-service.yaml b/single-cluster/kustomize/overlays/dev/redis-slave-service.yaml new file mode 100644 index 0000000..d2a93da --- /dev/null +++ b/single-cluster/kustomize/overlays/dev/redis-slave-service.yaml @@ -0,0 +1,7 @@ +kind: Service +apiVersion: v1 +metadata: + name: redis-slave +spec: + selector: + role: master diff --git a/single-cluster/manifests/README.md b/single-cluster/manifests/README.md new file mode 100644 index 0000000..2167abc --- /dev/null +++ b/single-cluster/manifests/README.md @@ -0,0 +1,16 @@ +# Manifests Example + +This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application. +The app will be deployed into the `fleet-manifest-example` namespace. + +```yaml +kind: GitRepo +apiVersion: fleet.cattle.io/v1alpha1 +metadata: + name: manifests + namespace: fleet-local +spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - single-cluster/manifests +``` diff --git a/single-cluster/manifests/deployments/frontend-deployment.yaml b/single-cluster/manifests/deployments/frontend-deployment.yaml new file mode 100644 index 0000000..a56d48e --- /dev/null +++ b/single-cluster/manifests/deployments/frontend-deployment.yaml @@ -0,0 +1,25 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: frontend +spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: 1 + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 diff --git a/single-cluster/manifests/deployments/redis-master-deployment.yaml b/single-cluster/manifests/deployments/redis-master-deployment.yaml new file mode 100644 index 0000000..d675715 --- /dev/null +++ b/single-cluster/manifests/deployments/redis-master-deployment.yaml @@ -0,0 +1,27 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis-master +spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 diff --git a/single-cluster/manifests/deployments/redis-slave-deployment.yaml b/single-cluster/manifests/deployments/redis-slave-deployment.yaml new file mode 100644 index 0000000..dfdcd00 --- /dev/null +++ b/single-cluster/manifests/deployments/redis-slave-deployment.yaml @@ -0,0 +1,27 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: redis-slave +spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 diff --git a/single-cluster/manifests/fleet.yaml b/single-cluster/manifests/fleet.yaml new file mode 100644 index 0000000..765c5ac --- /dev/null +++ b/single-cluster/manifests/fleet.yaml @@ -0,0 +1,6 @@ +# This file and all contents in it are OPTIONAL. + +# The default namespace to apply to resources that are namespaced +# but do not specify a namespace. In this example no resources +# are configured with a namespace so this default will apply +namespace: fleet-manifest-example diff --git a/single-cluster/manifests/services/frontend-service.yaml b/single-cluster/manifests/services/frontend-service.yaml new file mode 100644 index 0000000..e488acb --- /dev/null +++ b/single-cluster/manifests/services/frontend-service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + name: frontend + labels: + app: guestbook + tier: frontend +spec: + type: NodePort + ports: + - port: 80 + selector: + app: guestbook + tier: frontend diff --git a/single-cluster/manifests/services/redis-master-service.yaml b/single-cluster/manifests/services/redis-master-service.yaml new file mode 100644 index 0000000..a484014 --- /dev/null +++ b/single-cluster/manifests/services/redis-master-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend diff --git a/single-cluster/manifests/services/redis-slave-service.yaml b/single-cluster/manifests/services/redis-slave-service.yaml new file mode 100644 index 0000000..238fd63 --- /dev/null +++ b/single-cluster/manifests/services/redis-slave-service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend diff --git a/tests/expected/multi-cluster/helm-external/bundle.yaml b/tests/expected/multi-cluster/helm-external/bundle.yaml new file mode 100644 index 0000000..2a41318 --- /dev/null +++ b/tests/expected/multi-cluster/helm-external/bundle.yaml @@ -0,0 +1,257 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + helm: + chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz + namespace: fleet-mc-helm-external-example + resources: + - content: | + apiVersion: v2 + appVersion: 0.0.0 + description: Sample application + name: guestbook + version: 0.0.0 + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/Chart.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: {{ .Values.replicas }} + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: "{{ .Values.serviceType }}" + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/frontend-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-master-service.yaml + - content: | + {{ if .Values.replication }} + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + {{ end }} + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + {{ if .Values.replication }} + role: slave + {{ else }} + role: master + {{ end }} + tier: backend + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-slave-service.yaml + - content: | + replication: true + replicas: 1 + serviceType: NodePort + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/values.yaml + - content: | + # Helm External Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as + packaged as a Helm chart downloaded from a third party source. + The app will be deployed into the `fleet-mc-helm-external-example` namespace. + + The application will be customized as follows per environment: + + * Dev clusters: Only the redis leader is deployed and not the followers. + * Test clusters: Scale the front deployment to 3 + * Prod clusters: Scale the front deployment to 3 and set the service type to LoadBalancer + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: helm-external + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - helm-external + targetCustomizations: + - name: dev + clusterSelector: + matchLabels: + env: dev + + - name: test + clusterSelector: + matchLabels: + env: test + + - name: prod + clusterSelector: + matchLabels: + env: prod + ``` + name: README.md + - content: | + namespace: fleet-mc-helm-external-example + helm: + chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz + targets: + - name: dev + helm: + values: + replication: false + clusterSelector: + matchLabels: + env: dev + + - name: test + helm: + values: + replicas: 3 + clusterSelector: + matchLabels: + env: test + + - name: prod + helm: + values: + serviceType: LoadBalancer + replicas: 3 + clusterSelector: + matchLabels: + env: prod + name: fleet.yaml + targets: + - clusterSelector: + matchLabels: + env: dev + helm: + values: + replication: false + name: dev + - clusterSelector: + matchLabels: + env: test + helm: + values: + replicas: 3 + name: test + - clusterSelector: + matchLabels: + env: prod + helm: + values: + replicas: 3 + serviceType: LoadBalancer + name: prod diff --git a/tests/expected/multi-cluster/helm-external/dev-output.yaml b/tests/expected/multi-cluster/helm-external/dev-output.yaml new file mode 100644 index 0000000..5197a6f --- /dev/null +++ b/tests/expected/multi-cluster/helm-external/dev-output.yaml @@ -0,0 +1,122 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/helm-external/prod-output.yaml b/tests/expected/multi-cluster/helm-external/prod-output.yaml new file mode 100644 index 0000000..d669f3e --- /dev/null +++ b/tests/expected/multi-cluster/helm-external/prod-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: LoadBalancer + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/helm-external/test-output.yaml b/tests/expected/multi-cluster/helm-external/test-output.yaml new file mode 100644 index 0000000..892e646 --- /dev/null +++ b/tests/expected/multi-cluster/helm-external/test-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/helm-kustomize/bundle.yaml b/tests/expected/multi-cluster/helm-kustomize/bundle.yaml new file mode 100644 index 0000000..f46b14b --- /dev/null +++ b/tests/expected/multi-cluster/helm-kustomize/bundle.yaml @@ -0,0 +1,304 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + helm: + chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz + namespace: fleet-mc-helm-kustomize-example + resources: + - content: | + apiVersion: v2 + appVersion: 0.0.0 + description: Sample application + name: guestbook + version: 0.0.0 + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/Chart.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: {{ .Values.replicas }} + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: "{{ .Values.serviceType }}" + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/frontend-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-master-service.yaml + - content: | + {{ if .Values.replication }} + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + {{ end }} + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + {{ if .Values.replication }} + role: slave + {{ else }} + role: master + {{ end }} + tier: backend + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-slave-service.yaml + - content: | + replication: true + replicas: 1 + serviceType: NodePort + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/values.yaml + - content: | + # Helm Kustomize Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as + packaged as a Helm chart downloaded from a third party source and will modify the helm chart using Kustomize. + The app will be deployed into the `fleet-mc-helm-kustomize-example` namespace. + + The application will be customized as follows per environment: + + * Dev clusters: Only the redis leader is deployed and not the followers. + * Test clusters: Scale the front deployment to 3 + * Prod clusters: Scale the front deployment to 3 and set the service type to LoadBalancer + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: helm-kustomize + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - helm-kustomize + targetCustomizations: + - name: dev + clusterSelector: + matchLabels: + env: dev + + - name: test + clusterSelector: + matchLabels: + env: test + + - name: prod + clusterSelector: + matchLabels: + env: prod + ``` + name: README.md + - content: | + namespace: fleet-mc-helm-kustomize-example + helm: + chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz + targets: + - name: dev + clusterSelector: + matchLabels: + env: dev + kustomize: + dir: overlays/dev + + - name: test + clusterSelector: + matchLabels: + env: test + kustomize: + dir: overlays/test + + - name: prod + clusterSelector: + matchLabels: + env: prod + kustomize: + dir: overlays/prod + name: fleet.yaml + - content: | + patches: + - redis-slave-deployment.yaml + - redis-slave-service.yaml + name: overlays/dev/kustomization.yaml + - content: | + kind: Deployment + apiVersion: apps/v1 + metadata: + name: redis-slave + spec: + replicas: 0 + name: overlays/dev/redis-slave-deployment.yaml + - content: | + kind: Service + apiVersion: v1 + metadata: + name: redis-slave + spec: + selector: + role: master + name: overlays/dev/redis-slave-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + replicas: 3 + name: overlays/prod/frontend-deployment.yaml + - content: | + kind: Service + apiVersion: v1 + metadata: + name: frontend + spec: + type: LoadBalancer + name: overlays/prod/frontend-service.yaml + - content: | + patches: + - frontend-deployment.yaml + - frontend-service.yaml + name: overlays/prod/kustomization.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + replicas: 3 + name: overlays/test/frontend-deployment.yaml + - content: | + patches: + - frontend-deployment.yaml + name: overlays/test/kustomization.yaml + targets: + - clusterSelector: + matchLabels: + env: dev + kustomize: + dir: overlays/dev + name: dev + - clusterSelector: + matchLabels: + env: test + kustomize: + dir: overlays/test + name: test + - clusterSelector: + matchLabels: + env: prod + kustomize: + dir: overlays/prod + name: prod diff --git a/tests/expected/multi-cluster/helm-kustomize/dev-output.yaml b/tests/expected/multi-cluster/helm-kustomize/dev-output.yaml new file mode 100644 index 0000000..6108721 --- /dev/null +++ b/tests/expected/multi-cluster/helm-kustomize/dev-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 0 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/helm-kustomize/prod-output.yaml b/tests/expected/multi-cluster/helm-kustomize/prod-output.yaml new file mode 100644 index 0000000..d669f3e --- /dev/null +++ b/tests/expected/multi-cluster/helm-kustomize/prod-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: LoadBalancer + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/helm-kustomize/test-output.yaml b/tests/expected/multi-cluster/helm-kustomize/test-output.yaml new file mode 100644 index 0000000..892e646 --- /dev/null +++ b/tests/expected/multi-cluster/helm-kustomize/test-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/helm/bundle.yaml b/tests/expected/multi-cluster/helm/bundle.yaml new file mode 100644 index 0000000..f33498f --- /dev/null +++ b/tests/expected/multi-cluster/helm/bundle.yaml @@ -0,0 +1,253 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + namespace: fleet-mc-helm-example + resources: + - content: | + apiVersion: v2 + name: guestbook + description: Sample application + version: 0.0.0 + appVersion: 0.0.0 + name: Chart.yaml + - content: | + # Helm Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as + packaged as a Helm chart. + The app will be deployed into the `fleet-mc-helm-example` namespace. + + The application will be customized as follows per environment: + + * Dev clusters: Only the redis leader is deployed and not the followers. + * Test clusters: Scale the front deployment to 3 + * Prod clusters: Scale the front deployment to 3 and set the service type to LoadBalancer + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: helm + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - helm + targetCustomizations: + - name: dev + clusterSelector: + matchLabels: + env: dev + + - name: test + clusterSelector: + matchLabels: + env: test + + - name: prod + clusterSelector: + matchLabels: + env: prod + ``` + name: README.md + - content: | + namespace: fleet-mc-helm-example + targetCustomizations: + - name: dev + helm: + values: + replication: false + clusterSelector: + matchLabels: + env: dev + + - name: test + helm: + values: + replicas: 3 + clusterSelector: + matchLabels: + env: test + + - name: prod + helm: + values: + serviceType: LoadBalancer + replicas: 3 + clusterSelector: + matchLabels: + env: prod + name: fleet.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: {{ .Values.replicas }} + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: templates/frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: "{{ .Values.serviceType }}" + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: templates/frontend-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: templates/redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: templates/redis-master-service.yaml + - content: | + {{ if .Values.replication }} + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + {{ end }} + name: templates/redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + {{ if .Values.replication }} + role: slave + {{ else }} + role: master + {{ end }} + tier: backend + name: templates/redis-slave-service.yaml + - content: | + replication: true + replicas: 1 + serviceType: NodePort + name: values.yaml + targets: + - clusterSelector: + matchLabels: + env: dev + helm: + values: + replication: false + name: dev + - clusterSelector: + matchLabels: + env: test + helm: + values: + replicas: 3 + name: test + - clusterSelector: + matchLabels: + env: prod + helm: + values: + replicas: 3 + serviceType: LoadBalancer + name: prod diff --git a/tests/expected/multi-cluster/helm/dev-output.yaml b/tests/expected/multi-cluster/helm/dev-output.yaml new file mode 100644 index 0000000..5197a6f --- /dev/null +++ b/tests/expected/multi-cluster/helm/dev-output.yaml @@ -0,0 +1,122 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/helm/prod-output.yaml b/tests/expected/multi-cluster/helm/prod-output.yaml new file mode 100644 index 0000000..d669f3e --- /dev/null +++ b/tests/expected/multi-cluster/helm/prod-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: LoadBalancer + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/helm/test-output.yaml b/tests/expected/multi-cluster/helm/test-output.yaml new file mode 100644 index 0000000..892e646 --- /dev/null +++ b/tests/expected/multi-cluster/helm/test-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/kustomize/bundle.yaml b/tests/expected/multi-cluster/kustomize/bundle.yaml new file mode 100644 index 0000000..7ae3ad1 --- /dev/null +++ b/tests/expected/multi-cluster/kustomize/bundle.yaml @@ -0,0 +1,300 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + namespace: fleet-mc-kustomize-example + resources: + - content: | + # Helm Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application + using kustomize. The app will be deployed into the `fleet-mc-kustomize-example` namespace. + + The application will be customized as follows per environment: + + * Dev clusters: Only the redis leader is deployed and not the followers. + * Test clusters: Scale the front deployment to 3 + * Prod clusters: Scale the front deployment to 3 and set the service type to LoadBalancer + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: kustomize + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + bundleDirs: + - kustomize + targetCustomization: + - name: dev + clusterSelector: + matchLabels: + env: dev + + - name: test + clusterSelector: + matchLabels: + env: test + + - name: prod + clusterSelector: + matchLabels: + env: prod + ``` + name: README.md + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: 1 + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: base/frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: NodePort + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: base/frontend-service.yaml + - content: | + resources: + - frontend-deployment.yaml + - frontend-service.yaml + - redis-master-deployment.yaml + - redis-master-service.yaml + - redis-slave-deployment.yaml + - redis-slave-service.yaml + name: base/kustomization.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: base/redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: base/redis-master-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: base/redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + name: base/redis-slave-service.yaml + - content: | + namespace: fleet-mc-kustomize-example + targets: + - name: dev + clusterSelector: + matchLabels: + env: dev + kustomize: + dir: overlays/dev + + - name: test + clusterSelector: + matchLabels: + env: test + kustomize: + dir: overlays/test + + - name: prod + clusterSelector: + matchLabels: + env: prod + kustomize: + dir: overlays/prod + name: fleet.yaml + - content: | + resources: + - overlays/dev + name: kustomization.yaml + - content: | + resources: + - ../../base + patches: + - redis-slave-deployment.yaml + - redis-slave-service.yaml + name: overlays/dev/kustomization.yaml + - content: | + kind: Deployment + apiVersion: apps/v1 + metadata: + name: redis-slave + spec: + replicas: 0 + name: overlays/dev/redis-slave-deployment.yaml + - content: | + kind: Service + apiVersion: v1 + metadata: + name: redis-slave + spec: + selector: + role: master + name: overlays/dev/redis-slave-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + replicas: 3 + name: overlays/prod/frontend-deployment.yaml + - content: | + kind: Service + apiVersion: v1 + metadata: + name: frontend + spec: + type: LoadBalancer + name: overlays/prod/frontend-service.yaml + - content: | + resources: + - ../../base + patches: + - frontend-deployment.yaml + - frontend-service.yaml + name: overlays/prod/kustomization.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + replicas: 3 + name: overlays/test/frontend-deployment.yaml + - content: | + resources: + - ../../base + patches: + - frontend-deployment.yaml + name: overlays/test/kustomization.yaml + targets: + - clusterSelector: + matchLabels: + env: dev + kustomize: + dir: overlays/dev + name: dev + - clusterSelector: + matchLabels: + env: test + kustomize: + dir: overlays/test + name: test + - clusterSelector: + matchLabels: + env: prod + kustomize: + dir: overlays/prod + name: prod diff --git a/tests/expected/multi-cluster/kustomize/dev-output.yaml b/tests/expected/multi-cluster/kustomize/dev-output.yaml new file mode 100644 index 0000000..c83727b --- /dev/null +++ b/tests/expected/multi-cluster/kustomize/dev-output.yaml @@ -0,0 +1,155 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 0 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend diff --git a/tests/expected/multi-cluster/kustomize/prod-output.yaml b/tests/expected/multi-cluster/kustomize/prod-output.yaml new file mode 100644 index 0000000..08a8524 --- /dev/null +++ b/tests/expected/multi-cluster/kustomize/prod-output.yaml @@ -0,0 +1,155 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: LoadBalancer + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend diff --git a/tests/expected/multi-cluster/kustomize/test-output.yaml b/tests/expected/multi-cluster/kustomize/test-output.yaml new file mode 100644 index 0000000..3c1c2f6 --- /dev/null +++ b/tests/expected/multi-cluster/kustomize/test-output.yaml @@ -0,0 +1,155 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend diff --git a/tests/expected/multi-cluster/manifests/bundle.yaml b/tests/expected/multi-cluster/manifests/bundle.yaml new file mode 100644 index 0000000..435d038 --- /dev/null +++ b/tests/expected/multi-cluster/manifests/bundle.yaml @@ -0,0 +1,251 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + namespace: fleet-mc-manifest-example + resources: + - content: | + # Manifests Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application. + The app will be deployed into the `fleet-mc-manifest-example` namespace. + + The application will be customized as follows per environment: + + * Dev clusters: Only the redis leader is deployed and not the followers. + * Test clusters: Scale the front deployment to 3 + * Prod clusters: Scale the front deployment to 3 and set the service type to LoadBalancer + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: manifests + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + bundleDirs: + - manifests + targetCustomizations: + - name: dev + clusterSelector: + matchLabels: + env: dev + + - name: test + clusterSelector: + matchLabels: + env: test + + - name: prod + clusterSelector: + matchLabels: + env: prod + ``` + name: README.md + - content: | + namespace: fleet-mc-manifest-example + targets: + - name: dev + clusterSelector: + matchLabels: + env: dev + yaml: + overlays: + # Refers to overlays/noreplication folder + - noreplication + + - name: test + clusterSelector: + matchLabels: + env: test + yaml: + overlays: + # Refers to overlays/scale3 folder + - scale3 + + - name: prod + clusterSelector: + matchLabels: + env: prod + yaml: + # Refers to overlays/servicelb, scale3 folders + overlays: + - servicelb + - scale3 + name: fleet.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: 1 + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: NodePort + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: frontend-service.yaml + - name: overlays/noreplication/redis-slave-deployment.yaml + - content: | + spec: + selector: + role: master + name: overlays/noreplication/redis-slave-service_patch.yaml + - content: | + spec: + replicas: 3 + name: overlays/scale3/frontend-deployment_patch.yaml + - content: | + spec: + type: LoadBalancer + name: overlays/servicelb/frontend-service_patch.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: redis-master-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + name: redis-slave-service.yaml + targets: + - clusterSelector: + matchLabels: + env: dev + name: dev + yaml: + overlays: + - noreplication + - clusterSelector: + matchLabels: + env: test + name: test + yaml: + overlays: + - scale3 + - clusterSelector: + matchLabels: + env: prod + name: prod + yaml: + overlays: + - servicelb + - scale3 diff --git a/tests/expected/multi-cluster/manifests/dev-output.yaml b/tests/expected/multi-cluster/manifests/dev-output.yaml new file mode 100644 index 0000000..5197a6f --- /dev/null +++ b/tests/expected/multi-cluster/manifests/dev-output.yaml @@ -0,0 +1,122 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/manifests/prod-output.yaml b/tests/expected/multi-cluster/manifests/prod-output.yaml new file mode 100644 index 0000000..d669f3e --- /dev/null +++ b/tests/expected/multi-cluster/manifests/prod-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: LoadBalancer + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/multi-cluster/manifests/test-output.yaml b/tests/expected/multi-cluster/manifests/test-output.yaml new file mode 100644 index 0000000..892e646 --- /dev/null +++ b/tests/expected/multi-cluster/manifests/test-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 3 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/single-cluster/helm-kustomize/bundle.yaml b/tests/expected/single-cluster/helm-kustomize/bundle.yaml new file mode 100644 index 0000000..022c73b --- /dev/null +++ b/tests/expected/single-cluster/helm-kustomize/bundle.yaml @@ -0,0 +1,222 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + helm: + chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz + kustomize: + dir: ./overlays/dev + namespace: fleet-helm-kustomize-example + resources: + - content: | + apiVersion: v2 + appVersion: 0.0.0 + description: Sample application + name: guestbook + version: 0.0.0 + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/Chart.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: {{ .Values.replicas }} + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: "{{ .Values.serviceType }}" + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/frontend-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-master-service.yaml + - content: | + {{ if .Values.replication }} + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + {{ end }} + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + {{ if .Values.replication }} + role: slave + {{ else }} + role: master + {{ end }} + tier: backend + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/templates/redis-slave-service.yaml + - content: | + replication: true + replicas: 1 + serviceType: NodePort + name: .chart/9c24c039ba1d12c3cf62ee27ea13445e44c58e8d9e1df45d0a94a1bcc5a81566/guestbook/values.yaml + - content: | + # Helm Kustomize Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as + packaged as a Helm chart downloaded from a third party source and will modify the helm chart using Kustomize. + The app will be deployed into the `fleet-helm-kustomize-example` namespace. + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: helm-kustomize + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - helm-kustomize + ``` + name: README.md + - content: | + # This file and all contents in it are OPTIONAL. + # + # Refer to ../helm/fleet.yaml and ../kustomize/fleet.yaml for the full reference + # of what can be included here. All Helm and Kustomize options apply + + namespace: fleet-helm-kustomize-example + helm: + chart: https://github.com/rancher/fleet-examples/releases/download/example/guestbook-0.0.0.tgz + kustomize: + dir: ./overlays/dev + name: fleet.yaml + - content: | + patches: + - redis-slave-deployment.yaml + - redis-slave-service.yaml + name: overlays/dev/kustomization.yaml + - content: | + kind: Deployment + apiVersion: apps/v1 + metadata: + name: redis-slave + spec: + replicas: 0 + name: overlays/dev/redis-slave-deployment.yaml + - content: | + kind: Service + apiVersion: v1 + metadata: + name: redis-slave + spec: + selector: + role: master + name: overlays/dev/redis-slave-service.yaml + targets: + - clusterGroup: default + name: default diff --git a/tests/expected/single-cluster/helm-kustomize/dev-output.yaml b/tests/expected/single-cluster/helm-kustomize/dev-output.yaml new file mode 100644 index 0000000..6108721 --- /dev/null +++ b/tests/expected/single-cluster/helm-kustomize/dev-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 0 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/single-cluster/helm-kustomize/prod-output.yaml b/tests/expected/single-cluster/helm-kustomize/prod-output.yaml new file mode 100644 index 0000000..6108721 --- /dev/null +++ b/tests/expected/single-cluster/helm-kustomize/prod-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 0 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/single-cluster/helm-kustomize/test-output.yaml b/tests/expected/single-cluster/helm-kustomize/test-output.yaml new file mode 100644 index 0000000..6108721 --- /dev/null +++ b/tests/expected/single-cluster/helm-kustomize/test-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 0 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/single-cluster/helm-multi-chart/bundle.yaml b/tests/expected/single-cluster/helm-multi-chart/bundle.yaml new file mode 100644 index 0000000..9e4d17b --- /dev/null +++ b/tests/expected/single-cluster/helm-multi-chart/bundle.yaml @@ -0,0 +1,17591 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + resources: + - content: | + apiVersion: v2 + name: guestbook + description: Sample application + version: 0.0.0 + appVersion: 0.0.0 + name: guestbook/Chart.yaml + - content: | + # Helm Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as + packaged as a Helm chart. + The app will be deployed into the `fleet-helm-example` namespace. + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: helm + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - single-cluster/helm + ``` + name: guestbook/README.md + - content: | + # This file and all contents in it are OPTIONAL. + + # The namespace this chart will be installed to, + # if not specified the chart will be installed to "default" + namespace: fleet-multi-chart-helm-example + + # Custom helm options + helm: + # The release name to use. If empty a generated release name will be used + releaseName: guestbook + + # The directory of the chart in the repo. Also any valid go-getter supported + # URL can be used there is specify where to download the chart from. + # If repo below is set this value if the chart name in the repo + chart: "" + + # An https to a valid Helm repository to download the chart from + repo: "" + + # Used if repo is set to look up the version of the chart + version: "" + + # Force recreate resource that can not be updated + force: false + + # How long for helm to wait for the release to be active. If the value + # is less that or equal to zero, we will not wait in Helm + timeoutSeconds: 0 + + # Custom values that will be passed as values.yaml to the installation + values: + replicas: 2 + name: guestbook/fleet.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: {{ .Values.replicas }} + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: guestbook/templates/frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: "{{ .Values.serviceType }}" + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: guestbook/templates/frontend-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: guestbook/templates/redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: guestbook/templates/redis-master-service.yaml + - content: | + {{ if .Values.replication }} + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + {{ end }} + name: guestbook/templates/redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + {{ if .Values.replication }} + role: slave + {{ else }} + role: master + {{ end }} + tier: backend + name: guestbook/templates/redis-slave-service.yaml + - content: | + replication: true + replicas: 1 + serviceType: NodePort + name: guestbook/values.yaml + - content: | + namespace: cattle-monitoring-system + helm: + releaseName: rancher-monitoring-crd + chart: rancher-monitoring-crd + repo: https://charts.rancher.io + name: rancher-monitoring-crd/fleet.yaml + - content: | + namespace: cattle-monitoring-system + helm: + releaseName: rancher-monitoring + repo: https://charts.rancher.io + chart: rancher-monitoring + diff: + comparePatches: + - apiVersion: admissionregistration.k8s.io/v1beta1 + kind: MutatingWebhookConfiguration + name: rancher-monitoring-admission + operations: + - {"op":"remove", "path":"/webhooks/0/failurePolicy"} + - {"op":"remove", "path":"/webhooks/0/rules/0/scope"} + - apiVersion: admissionregistration.k8s.io/v1beta1 + kind: ValidatingWebhookConfiguration + name: rancher-monitoring-admission + operations: + - {"op":"remove", "path":"/webhooks/0/failurePolicy"} + - {"op":"remove", "path":"/webhooks/0/rules/0/scope"} + - apiVersion: policy/v1beta1 + kind: PodSecurityPolicy + operations: + - {"op":"remove", "path":"/spec/hostIPC"} + - {"op":"remove", "path":"/spec/hostNetwork"} + - {"op":"remove", "path":"/spec/hostPID"} + - {"op":"remove", "path":"/spec/privileged"} + - {"op":"remove", "path":"/spec/readOnlyRootFilesystem"} + - apiVersion: apps/v1 + kind: Deployment + name: rancher-monitoring-grafana + namespace: cattle-monitoring-system + operations: + - {"op":"remove", "path":"/spec/template/spec/containers/0/env/0/value"} + - apiVersion: apps/v1 + kind: Deployment + operations: + - {"op":"remove", "path":"/spec/template/spec/hostNetwork"} + - {"op":"remove", "path":"/spec/template/spec/nodeSelector"} + - {"op":"remove", "path":"/spec/template/spec/priorityClassName"} + - {"op":"remove", "path":"/spec/template/spec/tolerations"} + - apiVersion: v1 + kind: ServiceAccount + operations: + - {"op":"remove", "path":"/imagePullSecrets"} + name: rancher-monitoring/fleet.yaml + targets: + - clusterGroup: default + name: default +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test-guestbook + namespace: fleet-local +spec: + helm: + releaseName: guestbook + values: + replicas: 2 + namespace: fleet-multi-chart-helm-example + resources: + - content: | + apiVersion: v2 + name: guestbook + description: Sample application + version: 0.0.0 + appVersion: 0.0.0 + name: Chart.yaml + - content: | + # Helm Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as + packaged as a Helm chart. + The app will be deployed into the `fleet-helm-example` namespace. + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: helm + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - single-cluster/helm + ``` + name: README.md + - content: | + # This file and all contents in it are OPTIONAL. + + # The namespace this chart will be installed to, + # if not specified the chart will be installed to "default" + namespace: fleet-multi-chart-helm-example + + # Custom helm options + helm: + # The release name to use. If empty a generated release name will be used + releaseName: guestbook + + # The directory of the chart in the repo. Also any valid go-getter supported + # URL can be used there is specify where to download the chart from. + # If repo below is set this value if the chart name in the repo + chart: "" + + # An https to a valid Helm repository to download the chart from + repo: "" + + # Used if repo is set to look up the version of the chart + version: "" + + # Force recreate resource that can not be updated + force: false + + # How long for helm to wait for the release to be active. If the value + # is less that or equal to zero, we will not wait in Helm + timeoutSeconds: 0 + + # Custom values that will be passed as values.yaml to the installation + values: + replicas: 2 + name: fleet.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: {{ .Values.replicas }} + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: templates/frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: "{{ .Values.serviceType }}" + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: templates/frontend-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: templates/redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: templates/redis-master-service.yaml + - content: | + {{ if .Values.replication }} + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + {{ end }} + name: templates/redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + {{ if .Values.replication }} + role: slave + {{ else }} + role: master + {{ end }} + tier: backend + name: templates/redis-slave-service.yaml + - content: | + replication: true + replicas: 1 + serviceType: NodePort + name: values.yaml + targets: + - clusterGroup: default + name: default +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test-rancher-monitoring + namespace: fleet-local +spec: + diff: + comparePatches: + - apiVersion: admissionregistration.k8s.io/v1beta1 + kind: MutatingWebhookConfiguration + name: rancher-monitoring-admission + operations: + - op: remove + path: /webhooks/0/failurePolicy + - op: remove + path: /webhooks/0/rules/0/scope + - apiVersion: admissionregistration.k8s.io/v1beta1 + kind: ValidatingWebhookConfiguration + name: rancher-monitoring-admission + operations: + - op: remove + path: /webhooks/0/failurePolicy + - op: remove + path: /webhooks/0/rules/0/scope + - apiVersion: policy/v1beta1 + kind: PodSecurityPolicy + operations: + - op: remove + path: /spec/hostIPC + - op: remove + path: /spec/hostNetwork + - op: remove + path: /spec/hostPID + - op: remove + path: /spec/privileged + - op: remove + path: /spec/readOnlyRootFilesystem + - apiVersion: apps/v1 + kind: Deployment + name: rancher-monitoring-grafana + namespace: cattle-monitoring-system + operations: + - op: remove + path: /spec/template/spec/containers/0/env/0/value + - apiVersion: apps/v1 + kind: Deployment + operations: + - op: remove + path: /spec/template/spec/hostNetwork + - op: remove + path: /spec/template/spec/nodeSelector + - op: remove + path: /spec/template/spec/priorityClassName + - op: remove + path: /spec/template/spec/tolerations + - apiVersion: v1 + kind: ServiceAccount + operations: + - op: remove + path: /imagePullSecrets + helm: + chart: rancher-monitoring + releaseName: rancher-monitoring + repo: https://charts.rancher.io + namespace: cattle-monitoring-system + resources: + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/CHANGELOG.md + - content: H4sIAAAAAAAA/3SSQWsbMRCF7/kVD3xpIXXoT0gct70Ugi+llMLKu7OWWEkjZkZ2/e+LtDHJJZeFGd68nfeNNthxNgnHaiGf8L2GiWLIpHebDX7wBcYYbwpqlfmgGL0Tu/u6xTeWZW0JFdZgLNd7THSmyAUuTzBSw5WrYNeGtm3qqaYC87T64EyigTNmFtCZ5Nr6+URdu89ahfBygAWLBO+0jxahOfzD8EfNHSM9FOFE5qnqFy4kzlj+Ds3gl6eM5JaWb/XVlkNqJAULJqf+yE4mvYcSdfPD/vH5536bJiiN1nbjDL/i0GseMTlzmIUTalETcukNQCBt/915GpfuNng3Lg8p5LDUIw2YOU4kPYmOEor1hZQMteAm6/BGToUzZVPw/A49zDvDJcQIFyNf2ve92BhHauau0LTFb64YXUZVejXhPIdTFdezXRqhs4thcv0V9Gu9otq+RWnnuQHkGYenx91K8QNNyNgdnqGFxlXyckCqaihO1xvGkI0EnwZPMfVq+Pw/AAD//9zkdJGSAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/CONTRIBUTING.md + - content: H4sIAAAAAAAA/5RTwW7bSgy871fwAyIpRl6CQMAD2nNRtKdeC2pFS4toyQVJKfDfF5JjWwWcQ29acoYccihkFkdPwtYGgIiOkwx1RPeJ6iQNzi5VYnOcphYUOY6kVRZOLpp4qKL2/2f0ON6lR1JPx0T9lXsXxpjJCkZq4Rzcd7CTOeW7vKKypJ6sGhZt4capoyiJ1VFyXVQy+UizNcvhbhWlidCoWlXcm/EuaU5VlFyEiX3fOmBJv0gtCbewHAKWcn0+1k+v9SH0ZFFT8S32Xfp1QQY+EszFXAkz/LyKhh+FFF0U4ojqD/A+pjjCZXIgtFOAnQDo6Zg4bZ7CURS+zR0pk5OBkS4pkgFyvzXsqUxyysS+hTIyDrQ+A4Ac9zK2G+BI9rAhibGbyPaIrz0WJwVhwFUEzpPv8gGuNeowyrrq0b1Y2zRD8nHuVreas3HNzbRKPuYPKa77unAU3+szbzbSKOzEvpXYGX77/MCuzmU0J23QjHwP+T3JIFXsnp+77jk+/fdSFx7CG53eRXtrQwVXKRXcaKHau58xsWNi0o1xPqnFpiQzJ6TlGuuSZdT4FiqgjGlqYUjIOndJvgxrYJ0lwAf6mgufHqnJrJG2rp/v9W3uqPpL+795cMPf/rDmkt1TwnI5+tf68FIfHh/DnwAAAP//xCD4g2wEAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/Chart.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/README.md + - content: H4sIAAAAAAAA/7RV34vjRgx+918h6EsD6xgKfbm3pdmWUpYee30py0LksRwPNx4ZSZPb/Pdl7HE2uQZa7sdjFM33fZI+yT/AE0Y3kMAjR28sPh6q6q/BK7gBxcArtKjUAfc9cA82EKRJTQhHeH4vPJINlBT+nEjQWF5+HMwmfdc0B29DareOx2agMDYzoDYmRM2IaiSNGraBmukMU3OB2Sz8W/jdQNM0sZjO5D2HwJ98PECfojPPEYO3ExgDxYwG47kS+ORt8BFOnARcSJnzXVXD8/8W7liI9abAF3gvfPQdKRDq6ZK2o95Hn7Up9CzwR2pJIhkpKMnRO1LA2M31dDQFPo0UbQ6NGPFA80/ugSMBC4wsdNXsBu4DiS3JF8rfdG49NxvwUQ3jSrdQaZaHKdiqOMNhhlPgaDyrKs36dr3aFe5r//wm2GPEL/HMYXlafHKzvg51aBml+56FPa5N9NFIIobLaTseJ44UTaE9FX3ZIBdxTW4AVHiO3FFNr9np9LVbdIW1mZvz/DG1VKuhUT2SiXf6JST/RtnMvZTljNRT0mESfr2JXZKu4Ds61seftj83E7qPeCBtPocq6ZsX+ECmkKbzgHfn3VkMvkMaOc5Zxqu9Yb9odgN1KZDs70rEcTThEEjqskjnvzLtaX83gy4RMtftL+d29Ai5zR8okCtbZByyL85770gMfVxNB3aaSD+33n2H09dPHBeUzQs8vE6s2XtJjUcoU7oDIeUkjt4iuTp6La4tUeBYztLS4gul/31mIGDKs+uy27/FelXV35xgTGoLRwizuBvI8MvTTqH3ogZJ847lxP3qpbfjXDvJg5yPRkt9vqwFenm0fvm2VbXf71vUocpTOPPfRlzDZTL5aVX9up5uH3uWcTbGHSjRrO3p4X73+LAdu+Wz+sb7TwAAAP//DnzpKZQHAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/app-README.md + - content: H4sIAAAAAAAA/2yQQW7jMAxF9zqFLhDZwUxmBl7lEIMuGzAybRORKJWi0janL+zUDgJ0JXz9R5D/Q6YXlEKJO3vdG8h5k39d6w6mx+KFsi5f/ye0AaEnHq2mFOyQxL5VlM/5B7i3VyoVAt0WgiLagkJYFi+iCvnizJQidnZSzaVrmlFgAAbHqIb8vGZ1BN7dSDrVcy0oPrEiq/MprjPbG6EoSpPrOZBvKI5NSGM6qQCXDIKsp99t++Eyj+ZSz7iFfN27f67dtSYCsQIxSunMzmIECp29AU+FcDqOs55XG2sZ5vNX6wFLqP5CePRUfHpiRe/Wg42QxA1C2Efgo2A/gT6NzMAg5i6+Y5qSqnhcDtzaW/r5qRRzXUMe3C/3x3wFAAD//467V8TrAQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/Chart.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/README.md + - content: H4sIAAAAAAAA/6quBQQAAP//Q7+mowIAAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/dashboards/custom-dashboard.json + - content: H4sIAAAAAAAA/6xWb2/bthN+70/xVA3qFr9KTn8dhsFDXnRNFhjIHCP9MwzDkNLUyeJKkQKPsmt4+u4DadmVk6ZIs/qNSep4fO6e5458keGcPNa2cRhuNsjeC90QZyKvlHnH5NC2QzRhUAvmlXU55mu4xhhlFuPBAMDHZk7SayzIg0k68khTIyriWkjCZgNPVa2FJyQLJwphRLb/nCBD237ZqGi0DoadTWrxN1tTC1+eJJssF15scaY7aG2CfzAXTD/+gDTNSdqc8DNIlnYw+H+GtyXhfOscTG5JDlIYzAlCSmKmHEslUFvn0UtGMFWSsrjetrAGviQUVmu7UmaB0+kbBKAonK2wUr5UZptTqRv25LaJukeQ2X2ylfFSZp3nTFsp9GCzgSr2gJVZOGLOyIi5phxtG46fFAET5srk6DzDW/x0/By1JsGEps7DucvoBcp0o2wtKg1hcjhShr3QehwcfvjwIfwxycYpv35tjadPPn5CkMgrDgoa47i3cu5sU++Xis/zsCBtVQmTRw8pEiYvRZ10s6EU9bUhfx0CuO44Ofkf1cOdxahhN+K5MqMuvLQj+cmTnQmXe2PXmKybdoGckhdKMxwV5EJqSu9rHo927jJpq1FuJY+6LAivrBlJawq1aNx29jhsSoNUsuDz0u1zvbKNziH0SqwZ0gkusxj1r0E0tvGscorC6qh9HiddCO+uLp7yMwhH48Fmk8IJs6BbhJeWPXd0I8Ifj0ZByWEtbCOTb4cgzdRZhg7ge6Xx7uoiRL9UrHyv2oMN046kqI8IMAifSwqi2MpQWuOFMoxkanOaWeeTW7Xk1zUh3SGlT7G2ppenZ9ezy6u3J0dP+13lm9vJjVbBNclYvfzn8V+Z6UC1CTo0fJ/SfHYb6mR2A2hwzf8ZrvJURaTshW9CM84DuxTXukmb7PDI0u6YPupQjY/2mdxTfcDLhRX5L0ILI8l9nZvp5duzMSYelVjDi48EgYJWqJRpPDEK66IK+h4xmQX9hLa6FEqHHpRtwQL4wzax6a6El+VWQDFK2KKvteHBrbKUD0jq6j6sDg9YfXN29X7y+gvEPgjBt15qw82Ocd3L5q64A/mqbofPDor76DPk8V1XVtqr+AMZvN42mskswZdFcKM+Z5en19NXv53dSE5t84eIXiMRdZ0FT86QD23MjoLVyZ37t1uf394WG7KRcWt2RfE6y6ahM7Vtcmd9VeRFfEYE3/uK2oX2zRGFHKWFdSvhchztkoWXx8fHh813Pxy8zHBhF8rER0Oshv0zK74l2FONF/HuDR/DQyycOsYdb7VB9K4KGOv3BjU5VuzJSOo/CR5/71/nEcDvr66mk+n5GLPPR0MxcsXx+EePHsVGsFJaQ1um7WspcIFVSQbADY/7X/+iqm0evHpylTLCU57hK7++x+8ZdY/PfwMAAP//uOwklU8LAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/NOTES.txt + - content: H4sIAAAAAAAA/6xVzW7bPBC8+ykWwhcgyQfRhwI9GMghSHsoWrhAXaTHgqJWNlGKVPjjxLDz7gV/LFuK5Dhtb4Q43J2dnV1tt9NrWPN6BgYtVFyg3TR4UztjKVvhDK6nz88Tj5p8fGqoLMGuECStEVQVzmxFtSWThMuhxIpLhGypaUUlJR6bQX64pU5YIHfh2dwHIvdUODQB+XWNWvMSYQdWO8ng/btw5PXCVRV/giw/BENZhnPkd6eRWgTa5qicEBt4cFTwimMJtGkCczL5gTF6wFufw1dhoEBGnUEwqkb47ArUEi2aWG/FUZQGqEYQvOYWS7AK7IobuCw2QYsP84XHcrkE0yC7IpNPFWgUSE0SjSlpKZcmyha/cQuPXAgoEJzxPA3QQD6xHZXWY7ry8qpVc3/ZKrrHjALOklyYQ6T/Av3ZzfldPeLZKhGjkG9Rpvi45dr5+maCjebSVpBdmPzCZL1oMe9bfDZ27vjvqLF+XNaoDVfSNzU0NzklogQtUJxocEBlo+Ucqx3P9ynbDjQ2gjKE7P8Msp/Zn89Tf94N6jVnCJQx5aQdJ5+AtxE3H/NpF0ZYzOqBAADbbWuuSy6ZcOWg/8nVWLxAve+NXuQsHbKzggwb4Jz6v6Oxf6lBsMBrUmS59ZlOauK5/BNdOoFGh+NWCPUY/HO8Dk3jLWqVX30q7ogSJVRKQ+2E5fkBVGIj1KZGaQ1wCUzVBZdYxkEyp38/IUKWKuxJ3953dlQUIn8VNaBeb2lF9kfo8f2h6lrJuBNOFBTvYzUrFDUxq2kQYeZb98IYaYWQ2KKX9wYFMqv0lxSWwMGeSu/3ym3T7FfLXhJe0yUSS5f+AW0a8qv9XxKupmnvBVIvn+z6v4yjBDt4cMp25m0wQ00lXWKZF5uYZK/6Ii2oQZEXqdxXZe7rkg9y8L4Y1j0N4zB1Lo2lkmGX+Hxgy/wOAAD//0r+Dp6gCQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/_helpers.tpl + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/_pod.tpl + - content: H4sIAAAAAAAA/5RRwWrcMBC9+yse6iWFrtpCD8W30kPpreQQKGEPY2l2LSJLRjNOSrf+9yI72WyWLTS3h97TzJv3DocNwg6UPOwNxYnFlo6cdYVJGVcp60si0cAykmP/FvPc3IXkW3yNkyiX6xy5oTHccJGQU4vlB03a5xJ+k4ac7N1nsSG/v//YDKzkSaltgEgdR6kIWCwlFyfPMPtCO0pkV4GBxR+kkDwnxadqoKofgvZHl5RS1mWXVB44eWibwwGaf9IQl0nngzj59U+9skUV8zDGmsTRyW6KsdLVyzxv3Hp6qac/hpnL0YwEz46K9SR9l6l4sZyoi+xxdVGmJHkqjp91L9LnX1roJO3rKbIsRZSK2tdZ+J/189xsQGP4VvI0SotbY7Z4A2NqeMGRskB7hsuF8eXHd+yrsAEKP46qf1xOu7AfaBTzDkbYFVYx2wa459Itkj1r5R5IXV9BDKJm+1TLpab/ncja54WmP5w0/YSi8HOAuD1fuaK/AQAA//8ctHkFKAMAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/clusterrole.yaml + - content: H4sIAAAAAAAA/5xRPU/DMBDd8ytOnWCIERIDygYMbAxFqsR4sS+tqXOO/FEkQv47OqeKWhAd2Cy/e+/eezeONdgOkA2oDbpMUYUWtdKBMBFcsU/nAGNPcUBN5hqmqdpbNg08uRwThbV39GjZWN5WONgNhWg9N1CImNPOB/uJyXpW+/uorL853FY9JTSYsKkARLyBcYRE/eDEwGobsENG1WXnBF6Bgmmq9bwxeEftcSOAw5ZcFCGAEoy1y+ZEZB4QiS9gy4Y4wZ3EkOkPm3ZLVmT2qViNggOcfDSVOPRv2Lui9FOI2Mgz5vaddCp+apiLeqVwsJoetPaZUzF6IXM8m35Z0i+8cog/yAt+5EhVa+rEza+j/bd66WWwz8Hn4cKVl1Lqaaq+AwAA//8ySj4lcQIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/clusterrolebinding.yaml + - content: H4sIAAAAAAAA/4ySP4+jMBDFez7FKE0qOEW6ivZOJ11x1yXSlhM8EGsH27JNooj4u69sHML+h8ryvPeb4XnGsQTZQnVAHshVTgpq0FYC3emo0QpXkcIjk4AQCjTyQNZJrWo474pnqUQNv7RqZfcPTdGTR4Ee6wKA8Ujs4gkg9VAND4Jg01lsUWE1CTZQwQ2UVIKUh5+xSVRfpD/NM6FS2qOXWrlYB1hc1MU4gtdP2HMivQWREpNHYU81RDH1htEvJmkH5liOs4RQNul/ykcC2e0MNp8h5vrEKO4pGKvPUpCtrthzDbcy5bGMcZdu7rocWJnH3Y7jVy8z06MaQtgmM4C23V+RJl1j1raTOaT4tZoF2fW9J/2iu78aWt08ih+9hXRx134Tk0/prKQsfQscMuvLXu6NQE9uNe217YHTJq8c5M+gP31HneN5t9YfiAW1OLD/kzz/p0f9EfnZn7c5H0MoXgIAAP//72vHL74DAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/configmap-dashboard-provider.yaml + - content: H4sIAAAAAAAA/7RV32sbORB+z18x0RkSB2t1gRCOPXJwBI4cpdCHNFDaUuTdWVuxVhKS1k1Y7/9etL+9tmnz0KdkZ+b75ptPGpkb8YTWCa1i2F6fbYRKY7jXKhOr99yc5eh5yj2PzwAUzzGGsgSPuZHcI5CV5RlXPMoKKUOaQARV1dY6w5NTgD7fIyRfonShD0BZUhAqkUU6gjQFoX4HSqgUlYebgG301ZgMoicuC3SRkcVKKNdwtx+1lmctFJAFOVYZOFClDajrK5SIYVfnLFcrhNkGXxcw2wY4xHcQtLx0dINeoQRpmAA+l2UNg6r62k/YsqHEfNH8eeIyELbULTZAQxKqCu76r1DaF/SqR/9ODQkuOV3YBNtRYWa19qFfewKnJzzB0WhrxmosAm8kXHr9ieeyw++gO6x527LvFqTSkWx6RLfSXmQCrftVkQeAqcQT6t4mK+VuvdTcph+s3or0DfpOI3+vUAcNMNXfldQ8/TZkIrcOPcNl+uOcFc6ypVAM1Rbcuo469ECxyIbt/LkTk2v+RjcO8DUyMtOqfJMKC9QE+yJtvNDKRYb79ZSm3+sjgfHa7DXt2i1gNvLxmHw35jo+8uywuDfzUlu4XHP3Dl87BFkp9P+nZH6QKKwk83nHkRRWAnWbDL7U35QmWilMPPUiR114uP2zT+X8pQ4PsV6C0r5zeXl7k2jlw21rm9AHIP8mCRofAzdGioQHq9mz04p07A9A7hsYfXw1eFj5d7Lm1qG/+/j4H/2LjBRMT0NknZZ6uqoiYT2GSB2ggNJhnV17b1zMWPf4Jjpn3Ag2WM4GgsZYqCpmcSvCb1/Ijpt28cA94PpoCA7Nr0frx7rtIqNgWY6ohzc0POg7cJjCBaMUoiuglJ2DY2SoIXF0tdgPwMiKPTKyYKuL3sr9gUYnSuu2S+7w9gZoOn5I2gP5BwjbcsukWHaGTo3sFiOYODxcUX0dJjtGD5fs1G/WjwAAAP//krSelo0IAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/configmap.yaml + - content: H4sIAAAAAAAA/3SST2vcMBTE7/4Ug/FhFyJDS+jBkFMhPZReAz2+RM8bNbJkJHkheP3di2Qrdnadm/z+zPw80jgKqBb1E+mBfS3Jvz5bctJjmopxRNUqzR7NA+rHdEplAUfmxKh6Z89KsrtDtVmN07uC1Ksndl5Z0+D8rXhTRjb4aU2rTn+oLzoOJClQUwCGOm4wjgjc9ZoCozw5aslQ3Q5ax3aJCtMkVgsRgTNS9JtlfE8vX2l99GexAtD0zNpHBCClY170IDcr80Ccv8AoI9kE3M+7wAeMyBzJ+BPVknn1OZv5x2NvbTzawcgYZ0va81X2b/x+h+occ44j1fXdJZODdTi8kv/N73m2/OetKY835XjT5fGYl68pHhDcsDCgd8qEhIALlgy+Y5rqqN1k8z3fHNRFpOeVWmlrFfqREdjIza/s4S44wf6lTuOwPNf6F4csHQs4ruL3t9r7R9XC2HATQ8Ifv1oUQmw/t+f/AQAA//8wk+9VagMAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/dashboards-json-configmap.yaml + - content: H4sIAAAAAAAA/5xUTW/TQBC951eMIg7JIa5AUFW5FdqiSgGqphT1FE13J/HS3dlld2OI3P535PijTrCrBp8S73vz3pvxTp6DWsLIehixjZDcol5TSBz5oEIkFpQQ470mOYYR/eoExI0jGLpMDMdjeHoaoFO3xbHlKaBz4Sh7O3hQLKdwRk7bjSGOA0MRJUacDgAYDU0hzyGScRojwXDlcYmMyXKtdXE8hKQoXWKDQ9FHaM4bhsZ70qHQAcjzCSgWei1blBJQ4B+BFUviCO8L7ha9bDKXuPIAor1Do/fPHmGfTyzrn79VTBsCMtuIUVkOpc3Wi2lboL9mcCSKWJ6cVgLDtiN1/fplWTyQJhGtL7tgMIp01mpLT2Nq1qyjQcedqWQz4Hn0GGm1qfSrf/vJolemPyA08618t76Z4tE7Ef4jxElnCGflrGvUz0ZP/jFaPDsTrD2JlMRDWJsjYXmpVtsZ1R5HziuO8Ca5qWImHzHQFcYUhhXeoEs2aPRwvNUPKb77cBzW5lm1JSExpPcWvQyTn8Hy5FDJbv5BFoKYNFUmzttMSfIHG2mEO4r1eqluK7Lc3WUojeKE/qgQFa/mJDzF8S6EOEs+Xyzm55++X1/e3C1Oz75cfl1cnc7nP75dny0WF5ez84Mo4+7mbLVf34YS/2Lg1nppbSri7JpYki/TvmBmQpwdaqjgvNbU/sU63V17r75d9a7rvebOyp4FVVX5GwAA//+dkn9e6gYAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/deployment.yaml + - content: H4sIAAAAAAAA/3yRwWrDMAyG734KkVN7aGCwk689DcYYDAo7qrbSmilyFindRpZ3H27XEka7W4i+79dvexxXkBpAiVBvkAfSuqNekxpJoJoEt0wRFpLtOvCZ1JLs1oypXcKC3q9i9tURVGpo1AysZNVymhx2aVOgLB4Od+4tSfTwQv0hBXItGUY09A5AsCUP4whGbcdoBNWuxwYF62ZgLuMKapim1Z4wMqn+StphuGVe5ifVATBuibUsBDhejAQe4kw5AYX/BkkSSQzui1voj2T7y+FRJBtayqKn7NkP70qf/IotH5P+BpHE8qkdhdIl8KBG/cOzh6cs5ACUmILl/p+mZ+TxVmOA8iYe1uf0+eqfAAAA//82ZXx4FgIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/headless-service.yaml + - content: H4sIAAAAAAAA/7yUwY6bPBDH7zzFKMrxw18j9VAh9VD10r2sclqpxwEmiYUx1B7SXRHevTI2iWFh1VM54fFvxjP/8bjvU5AnEC+oOrJC6rMhawVpzBWVkA5D4pD9qVPqGWuC7CtIXaiuJNidDZ5Qo3CbGmvagXh4WDJXWdCxMeycphOCWbTOfofDuUfkSwxP6bTOfofplQ061K6x0e7k4Qr8ji3mUkmWZMW349MLGSsbbcUPtLDTxL8bU0l9FtUXK2Tz//WQE+NhB8OQYCsDnsEmmfQ9kLK0dKBXJj0eNSO1F7eSuszgyeee1MRYImOWADhBM+j7SPthCHbbYuE3mepWIUfNuO+7boweCnNS1sUEGOVY9s8Djr+BlrokzfAZIvEWEnveA8DNT6zVFnODZTxX+ZjWRnDUumFkJ5jnIsOjBoP6TLCv6O0/2F9dhLW78C4WjIJW9AbD4PVr1eS/hxv86hqmB7rINixsS0W2pQ2rcBQ7ybf14Y/FMZ2isdyNYy6NZQuP1Lwe61QoJwW3HKsWkw3gwtxm4R/ADZpPW55mgzbrdbxxr+Hw6V0R05eOcf1ljid9BgHkWFSky2xmBAgvxvPGPKyg7s3xaPwILdsYFmFkg0JrasSF/Iscpy+0/iPJ/krX1Xuczpv1JwAA//+L/yuTCAYAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/ingress.yaml + - content: H4sIAAAAAAAA/5RRvW7zMAzc/RRE9s8fAhQdvLXomKFLA3SkJSYVSlGCRQctnLx7IQstXCX92wTeHe+om6Z/4HbQbpFHSm0M9s6lYYzqgtyOdk8Kp1OD0W1pSC5IBzGwM6//D+ueFNfNsxPbwf25rvGkaFGxawAEPXUwTaDkI6MSrPYD7lCwzdAK2mxTeCmi+Y484x8Kxp44ZQ+A+RgxPNqFpBAy/wjixJIoXGVtdXrhFQA0PKLnGjtCrSex+Zkima5eeOEvW+/k5oCOsWcq+ZeT+ei/yBcRfmOOLw+Clf2n2c8BzlYsIgAkYjIahlKHRzVPm0U/XzT0rtpcaOq68ngLAAD//wnblIOwAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/poddisruptionbudget.yaml + - content: H4sIAAAAAAAA/4xUy27bMBC8+ysW6cGXRkGAnnRTJSURktiC/EJPxlpcJawpkuUjruHm3wvK8iNADOTmnd2Z2dUQ3u2ugTcQzVF4spFZYR1pq3OJK0EM3t8HqPmcjOVKxqCV4PX25u12RQ5vB2suWQylYhOqveFuW3b9QUsOGTqMBwASW4phtwNHrRboCK5eDDYoMWq8EKF9BVEw2s9ajfUlwrF/ZAhckbDBB6A7RdbCszPKfiDM/wPJJSPp4Meei1Iqh44r2QtYqmvV6sj210Qo9CtGa78iI8mRjbi6QSHUhlhpVMMFjcJGMQyZqtdkbhg16IUbfl2uZ5zJxfC53IWkZpYSrRPTKrM/CwC1xlCfnENcX7rDeOl4Sx+dv6T3+SGf6oVLSHaPy2qqw8fXhr9xQS/EYmhQWAr5hA3LQyO3NYourdOEoT+eG2KZUTpFjSsuuOPUx/kNsr0rWHLQGNVC1n3X77Dh7lV5B1mSLsfzvKqKLAdlIH0YL0Yd+RruxotRXh2KST4tsr54LJ6e+p+TfHp/xCf5dHZelGlS9tUony5/FqNsOcmreZHmZ3CVLA6UX5Nl+lCNx9MeeH4cjQ96ySwrpstFVUzzk8Pd3uFNCd8ezr6GYa1kw1+eUQ8PCLXabTNujoA26jfVjtgRsVQbcseSqY3coGFJWZxI4X/AOpJu3jmmAnkbuq/KuhG5jTLrUzoBLMr0I1AW2Vl+XiZ2ZsnsNzdeUAzDKqCJ3AZhS09c+r+X+15rQS1Jh+LeKK/txdHGdgMX+4aQjaXYVkq5Oy7Ibq2j9rDs2Zv9HwAA//+m8NIQMwUAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/podsecuritypolicy.yaml + - content: H4sIAAAAAAAA/4ySMY+bQBCFe37FiMoujBQpFa3rRKkspRzvDmSVZRbvDE7OHP/9tAZsfIcld/bM997jDfT9DlwFyBaKA/qOpGgpihMlNlQQ49GThQ0HXQf+O1HH9d6ja7awodMqpm8tQd6eTb4dhgxbd0jLwCWcv2V/HdsSfs24HoLvGro6Zg0pWlQsMwDGhkroe1BqWo9KkNcRK2Qsqs77tM6hgGGYWGnRPBPc9jeFxyN5STkA16uw8Z1dSEYg8e/Aji2xwvdRm/h/Tv+sdkfmoKgusMCILyZllh4v/MbGX42/+hLbF0Iqx+jdheKccR+8HCEtmdQfjSGRH8HS4hwRuab1fnd8tATYpaOnrFMXlObpQ5tIErpo5ohIp45Ep38AoiFiPb69tVBxF3r0n77kVXg023sU+YnNJPg8fZ61Kp/b7IYhW/7+CAAA//88QuXuUgMAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/pvc.yaml + - content: H4sIAAAAAAAA/6ySsW7cMAyGdz8FoQ7JAY3bAB0Kbx2KoktRZAhQGDfQEu9OiCwJIp2kvfrdC9l3jt1zgQz1RJgfSfHnfzzegN1BeY+uIy5Tg7rUiVAIbvq+wGjvKbENvoIhh50cQrK/UGzw5cNHLm1493jbkOBt8WC9qeAuOCpaEjQoWBUAHluq4HgEoTa63FrtE+7QY7nrnMtpBSX0/YnliPpfBVN+qnDYkOM8B2DYxmvXmVnJCGT+N3jrDXmBD7k2009WDtP26H2QYTMee89+VEV+T/iBrRs6/d2IvDmHdgchLSWNHD97bBwZuEZvlslpJwPXs0K2hjSm0iAfmoDJcEnnHquYIIcuaXrhFmPoWRLm49x1jniz2eT3phxXxZoNZm/u++IGMNovKXSRKxi++oqehXw2B19tC4BEp/kTEINh0l2y8jMGZ7WlkXyk1JypkeyYFj2+ZU0qgPoVttmuHOA/iPwKgTcXytRKbeENKJUNYjUKMciBQIdE8On7V9hncClWrXTwO7tvMbJ6C4pJJxJWM6VqtSfJuScUfciBsyzqYvOFnVeuPnIrPn4/8/E5ckwvFoH6Ytgp/BMAAP//H4Zge0MEAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/role.yaml + - content: H4sIAAAAAAAA/6RST0s7MRC951MMvTc/Cr+D7E0v3jxUKHicTWbbsdnJkkwquO53l2xrrYIF8Rby/sy8l4zjErgDu8FQKNvUorMuESrBcpoMDryhlDlKAzOGRXcx8SsqR7H7m2w5/jusWlJcmT2Lb2AdA92xeJat6UnRo2JjAAR7amAcQakfQp2w2CbsUNB2JYQKL8DCNJ24eUD3k+CMnxUBWwq5zgGYQ4kLxV9IjoTKfwNh8SQK/6u2sl9Yd+cSUCTqHDAfvS8uGlP3iU/Yh9npuxGJr8cUA62pq+vgwPcpluFKgQbgs7pfNZVL+0xOc2OWJ4tHSgd2dOtcLKLXzfIX7sNfHuAje/007wEAAP//9Y4dU1QCAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/rolebinding.yaml + - content: H4sIAAAAAAAA/3yQQWrDMBRE9zrFELJsDIXQhaBnKLSQ/Y81DibyjyJLhmDr7kV2Kdm0O8G892fQPB/Qd2hO4jPHhjp9Uh3jF9vIhFKMhP7EOPY3tZhezbVXZ7HFZmASJ0msAVQGWswzEofgJRG7S5ROVJoue1/jHRqUcqBOP/wYpP1L+s03ywBezvRj7QLW3dr67J6UDaj8Au3VUROO1U2PQIuPIPdMsw2uB6Lohdhf+XjBfhIP+/7fT9TWlUYp6+jVWXB+O1JbLLjnW2Il63Gqw+HpXYr5DgAA//9vuI8xbQEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/secret-env.yaml + - content: H4sIAAAAAAAA/8yST2/aQBDF7/4UI05wwGol1INvqECF1ALChaona/COySrr8bK7JokM3z3ynyAc5KDccrN3fu+9md0piiHIBDIDfWQBfc4c+FtUOVkfRSrZp2dpneR9SLEhN2gjxEf/1ywKpz836/nf/9F48me+iFbjMPy3XE+iaDb/Pf2UZPCOVgL1TQvns4dabslYmXEAx+/eo2QRQF33UnIo0GHgATCmFEBRgKNUK3QEvb3BBBn9JFeqLPfALx1r1mqMuwSX+kWhcEfKljkA1U1yrHJxJamBkj8BSxbEDkal1r1oCmCp8ZCT99Zs8xhf4yHqCavoYW7JVJfS6mhjycAJdj9GxDGc4JBnjmpZM0kLX6G1T5kR18a6Obs1v9DdAaQsdZoZZDFW+gEXeQqjbx/ZsOj4kQnc2cVmDQTqoctS1RqjwuOME7m/n371+RoAAP//hlkpM5MDAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/secret.yaml + - content: H4sIAAAAAAAA/4xUTW/bMAy9+1cQPsWHBhiwk48rdihQFME6FNiRs5jMmExpEt2lcPvfB8VyotpWVp9k6j3yUfxA2z6R863hGp4/Fb9bVjU8kntuGyo6ElQoWBcAjB3VMAwg1FmNQlAeHO6RcbvvtQ7XJWzh7S1ivcUmRzjfnxkaf5L2IQ7AMNxAy43uVUIZAQH/CtyyIhb4HLgn9B62T6h78ls/So/4EQBifmCnc5hXmPsjVtPxbyu/FkRkNoLSGvaj/MRQpwHzvr2lpp7Eb4yDDf1ZxJEXS1De6t4LubtdWcGGOisvq8CqGrWEcw1nUhEfdPlEzQQZeeffU9H+Ax4GYjVlpD0F/9kE7g2qL6iRG3JlKnIlzokRQ6wXNnE2qXlvW/W7RkvK8aFwj6Z3DX1DPpBfBk5v62tdl/P4vlcu8m7Sd/7Y682aeCUvOgo5Rn23i6kkhmvqU162uQGscRLH+eayOubOAuoBu5hV+IIlC01gzohpjK7h++0u2gTdgWSXc3C5jkshzB2yujJ4D0ZRIIS5YyO54eMIq6YJDN9kDFpyhFFHrgPpKA6/Hq3xJ7C/gMRq2MzqM0dXi+Uz63dPmhox7srOnSD3ud1b/AsAAP//yYtu4j4GAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/service.yaml + - content: H4sIAAAAAAAA/3SPwUoDMRiE73mKoXcDgqfcfAEvQsHjmPzVYPJn2fxbD2vfXdLK0gq9heSb+Sbr+oB8gN+zLNJ9l/mYozzH2BY1H2ehCU4nxynvZe65acDx0X1lTQGvN7SrYkw0BgcUvkvp4wScHRrLkgS7j5kHKv0F2MHjB5o1iRqehmnQ39k+722iajNabtoHDlxdBLeusPbGWs7F/3tF0yWjrBIwYKlTGX/cht3qXlhljNxSfWK8F93e/xJXyt8AAAD//77r68toAQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/serviceaccount.yaml + - content: H4sIAAAAAAAA/5xUTW8TQQy976+wVhzaw24FgqrKDXotCKmoEkd3xskOna+OvYES8t/RfmaTblBCTtH4+b1nr+3NpgCzBPQayge0NXEZKbFhIa+oJI+PljRc+CDzgF+GxfjVrUXjLuGCnmdh8hIJchYUWtaWSfLL7TbDaB4aUPALwBj5av02ezJeL+C+R96TZI4ENQouMgCPjhaw2YCQixaFIF8lXKLHcllb24RzKGG77bEcUR1LGONjhsVHstzoALSN8crWepLSARr8H/DGa/IC75vcBv3TSDUWj94HQTHBc8c9eVhkjZ/wHZ1tmQ6JyOvmL0dSjZdE0RqF3JYx8A+PHTmTJSUhddYdiqruJrUcqWbIupup6nogTmuj6MupbS8qQm2JOYMR25uafMXmZ/f8/YfDm9m+x6A7cBedafPNQZs7+b3PM3hSFaknrt2VCn5pVm0HBo8XMRkv8Kb81pdZfkKmrygV5D3eYSxf0Nn8stXnCt99uOba7VQnEhq5egyYNBc/OPjiXMn5/LMssCpGliKmsDaa0tlGRuEZsqNe+jM0vTKonfHjfbknlUjmbbeh0w12+H9a6Udjbro+7i/2ySM2bPPRWY9Bz67gOtjaUXtfh2raES1erVR3HFlCwhW9EkWliPlz0LR/SaZneoLZtbonvLXIPB6CuexD4I4iEYc6KZrsVqLnmlgmL6PScQHzuyGFaW//BgAA//+pDUQ8wQYAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/statefulset.yaml + - content: H4sIAAAAAAAA/4yRMWv7MBDFd3+KhzD//DvIjkMng0uhULIUOoQspYVLfI5FZFlIcjI4/u5FTlq6FLoIpHe/9+504yihGmRb0gP7LLAPz446PvfumLGhneYa05SQVVt2XvWmxKlIjsrUJZ5606jDC9mk40A1BSoTwFDHJcYRgTurKTDEwVFDhrJm0DrKAhmmSca0G+At7X+jvvUrlgCadqx9DAPmCcxeD/UP5FoQ6y8wytRsAu4j+9WkG0zm2xIXOZs8xlYgNvFcM+nQCoyzAgxOV6INwZZ5/oepcrIqb68eyc1i39dcpf/PBw6Q0rM7sZOOve2N5/hiVc0OUgbVcT8EFMt4cYo9CqTj4PSE1cO/AhfQ+YhF/gGsN5vXfLROmYB0NS3ubmFvEGkMFKgqiNVyKfA+S1MS/4rNvNDPAAAA//9IYraV+QEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/tests/test-configmap.yaml + - content: H4sIAAAAAAAA/3SSQY8TMQyF7/kV1t47aCVOc6vYBVUCNAKxdzfxlLAeJ4qdlqr0v6OkC7s99Jb3nr/EtnI6rSDOgBJgeEKupIOR2seCCx1SeR5IcMv0mpYt+iFrfnzxz2eHOT5R0ZhkhJw4+uO7/f2WDO/dc5QwwpTCd/K1RDtOPXcLGQY0HB2A4EIjnE5gtGRGI7jbFZxRcJgrc4vvYIDzedU6ewE0o79F/c8vmANg3BJrewygTyyea3iDXApa/R+QKIHE4H1jNZNvHDKnw1TiPjLt6FE9Mlqf2EolB5D/ZWGEGVmb9zOpfSVre7w2N9OHa2PaPLwas34qqeZLu6UyjfCtylrXcnQASp+j1N+30poz00JiyP0WvVFY2vGHUrmR7xPXhTq9Ap9kjrsvmLsK6SAHLGE9bbqmJdvxIZYuckm/yBuFrpR8IXNt5yT9s/wNAAD//y1K5shxAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/tests/test-podsecuritypolicy.yaml + - content: H4sIAAAAAAAA/4yQsU4rMRBFe3/FVZpU66cnUSD3QEdBkSZKMbuegBWvbXnsoLDsvyNvAoQCCZe+59h3Zpo6uD0oWOgN+cqiC0u5zzTya8wHzYF6z99p7mnQSdLd5b6bZ0XJbTiLi8FgyamWl5jdGxUXgz7cinbx3/G/OrhgDZ6iZzVyIUuFjAICjWwwTSg8Jk+FsXrOtKdAel+9b/EKGvPctW4XQRINv1lf+VlTgKeevbTPgGXmMPhqr5Qz0Ph3BBcsh4Kb5ubqWYzqQMk95FiTGCxnu07Ru+G03ikgs8SaB74OrfBQsyunhXMsC3nk3H9SZ7IK/3jjsbU3wPavG9mpNhIH2/p+BAAA//+0VHXv0gEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/tests/test-role.yaml + - content: H4sIAAAAAAAA/5SQMU/DMBCFd/+KU/cYITGgbCABG0NB3S/2pZg4Z8s+F4mQ/47cRi0MrdTN8nvfs9+bpgZcD8gW9AZ9oayFsjwnHOkrpEETY+fppKYOjY45Pi33zTwrjG5DKbvALex1LPIRkvtGcYH1cJ+1Cze7WzU4ti2sg6dHx9bxVo0kaFGwVQCMI7UwTSA0Ro9CsNom7JFR98X7Kq9Awzw39YsLkCOac9RRP2AKwGNHPtfHAPbV2fhi/yAHQ/X/ADu2xAJ3lU3B05r6imJ0LymUeKGsAjh1vb5aLt0nGcmtapacN0o7Z+jBmFBYLifmf95XHOmdshw3uHa1uhOxrcffAAAA//8auObzLgIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/tests/test-rolebinding.yaml + - content: H4sIAAAAAAAA/3SOsU4DMRBE+/uKUXosIVG5o6GkAaXf2BNkxd472XuhMPl3ZECHrkg30szbfb0/IJ0hGuGOklc2Z2z2UqXwc64XR5VT5n/bWK8p8DmEeVVzoVKMuN0mWdKRtaVZPa6P0yVp9HjbradCkygmfgKynJjbSMCPhYa8RuLwUeUsKu53cIDDFzRppBqexidApdCjdxjLkofARu39XqXwnc3GlY1si4R7+Nb/EcOMGkf8DgAA//+5hLpnKwEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/tests/test-serviceaccount.yaml + - content: H4sIAAAAAAAA/6RUwYrbMBC9+ysGn2ubQk+6lUJvuw3dslBKDxN5HIuVRkYaZxuy/vci20m8m4R0aQ4hGb335ulppP2+ANNA+Yi2p1gKRfka0NGzD08lMa4t1TAMGXbmkUI0nhVsP2ZPhmsFK19njgRrFFQZAKMjBfs9CLnOohDkm4ANMpZNb21azqGEYShSnwzA4ppsTFSA0Qlr29cL2gRIpBdgwzWxwKfkBwCZvaAYz7NA3pJ1ZWyr1vunXEHqUcRea4pxNhc71NccHtcni1nsSCfhSGFrNH3W2vcs99e3eA78QVFmtXl/15KOpPtgZPfFs9AfmRhvilNb/xOd/UeVs8ySB+L6oiHjcENl11v7QDqQxAk1llenqpqZAXlDt8gAxWkoylceLvt5NtIeRdnX9ECWtPgwQZYVlS3igBe4sdNXytg0ho3s5kma//2PonhLYZrGCbEovENXexY0TGGe6WV838kSRirTZC3uUPqM8SvIE+ziZIyAYVBXAYIbGIZ8qZcOfeWt0bubyifoSUN75zC9Er/yyndSrVFitTY8/sg/QF5I+q6SXKxCz2Vs898zeett7+guXaQ5iSkNlyorlFbBRDyuHV6ft9VAWH9ju1MgoafsID2qFmcc7bkxmzvsDk3f/aQFioJBDsHd05ZCtjjjvwEAAP//ZYqd4HEFAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/templates/tests/test.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/grafana/values.yaml + - content: H4sIAAAAAAAA/5SRsXLjMAxEe34Ff0DU6eZmzlbl9n7gelpeS4hJggFAJ/n7jBTHLlylA3feLpdErPQfosRl9NfBxVrvxyHsw193gk5C1TbpX1GLKflLO6JTi4Yuw4Qm9cZ+RoFEg4/l5PFeWeGn1NQgXcIVyd9gt3DG6BezqmPfz2RLO4aJc78GS4FB++c7enfBxxvLSUfX3bLWgQsZC5XZdb4KZ9iCpq7zjzSXIxWLVCCbGTlSGv0LKw5RMtQ4FJjzvsS12plamRYqCz9gi0KvgY4SF8qH3BKUz7bWvts2ZNjtfz1cOZaGdJCGOaDdybwK7mt+fqlTbjJhq/rzX7p+b/B32IXhj/sMAAD//+4AvfDkAQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/Chart.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/README.md + - content: H4sIAAAAAAAA/4SSS2tbMRCF9/dXDOm20d17Z2igoRRMMd3rca6lRi80ozTG+L8XXT8SyKJLMWdmvqMzL93gkUULHhOkBcsUmDRxSDWCGO01WJB4LRQDCzKTFBIP+tENWoaAabt7XqVopLOjAzKaHoXbTG1Kl7Vr3UVlWR/F/IEVVtPeg/BWC8Pde6zOZEBL6dmRR8Nm8iKVN/N8COK7Ubak+eVOMX/2MptYzJw0C9rsiuX519P2288nldyX67qbdFoZ7rztwtMEjkpeYb/v9ztCdrWELDTfpNfq5XNCPtDoUtNzpmPpjaxmfKXTiQSpxuH94TOnWnqMWSc8kKLzWf1PPqRctb3p+dUqG/uwqWKxOm5OJ1K/dexgdc1QDS46n+ePho+r0zU6RwjiR4JMNeqQBW9CpVFtRYrpCzlUZDcsXj1vrUUV8tAOTb3Pc+BwyHDjUgzIlsw9vS8wR9q1kiAenSkIIy5jkTmOw7NNV7TLxQUmW1LVEkwE/Q3iL/XBoD8OsTEgyz0dNU3/AgAA//95qQkY2QIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/NOTES.txt + - content: H4sIAAAAAAAA/5SUQWvcMBCF7/srBtNAErBzKPQQyCGkPZRCCg20Z1kadYfKsqsZbbJs89+LJMe7a7LEuQ3W09ObTyPvdleXsKHuGhgFLDmU7YA3XWRReo3XcHn1/LxKqtWXp0F5A7JG8KpD6G2u9VoFaVajrgaDljxC9Se2WLMowbpDCaS5SdsqqPdCFZ1Ac5cd7pNn81O5iEX5fYMhkEH4BxKi1/DpYy6pe4jW0hNU9d4Mvcl1iXoXUAmCms6w0bkt/I3KkSU0oIYhN9GsfmFxz3pJZ6SGGFrUKjIC9x3Ct9hi8CjIpXVL6AyDCgiOOhI0ID3ImhjO223G8vn+IWnJ/wYeUF80q68WAjpUPPLTvRdFngvB8o0EHsk5aBEip5wMKocf0y6hnOTHpMlOYF8WJ7gvmpOCRfQd750+5E6ub5Zf8EHOCUpxaX4UYmXzlPXo67sDDoG8WKjOuD7jauZWzn3PyJ2qj0Zx/moYw4Y0gtK6j17S+ETGRfc7br0tO+9P3fSxrNElRxICAOx20/Wck9cumreGqbk4ZZ37moOeHVKNRbXI5CTNW+f6xwzw8CnxoDQmhC1CX4bKoAfbB+iiE6r3IoOD67cdemEgD7rvWvJoyhvkxX+xbFaNjc7AT+tH81141G+qXoE4G/jSyIH6FVr/AwAA//9BZuLt1wUAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/_helpers.tpl + - content: H4sIAAAAAAAA/7SXPW/jOBCGe/0KwvVJQbqD2xTXXZED0hxSjKixPGd+hRw6lzX83xeUHVuJKUdZejvDmnnfh5zh125XC1qJ5glUxND4FmQjPQKjqPf7Chw9oQ9kzVIM3yDy2nr6AUzWNJs/Q0P2bnvfIsN9tSHTLcWDioHRP1qFlUaGDhiWlRAKWlQh/RICnGs2sUVvkHHQMKBxKXY7waidSv6LFFAHBsZaI3uSoUlRC9GI/X6QWaPSTVjfyTV4HrKbh/Sz+Rs0iv2+Pv9zHMZ75iWABgM9dnX7dhB6RIUQsPkH/ZYkTieSCQxG4se0I0ElxLyRraJSo9H5qDAsq91uXB1plULJ1odGomdakQTGQL0h03t8iRg4pOxagKO/vI0uLMW/i3HwsWaL50oIj8FGL3EoSi2mNSshtujbQUxR4MUfYvEKLNeL54SIphu6ZZrWmhX1GlyOLotySii29tb8Z9uccXuUuXQ/5pR6d4DamoDZouD/jCa1ZEiy4FzIoZwlimHQKfum0ZTQnDVKcdB0zlIeJmd9ii81HrYvaxiUsx1EtkGCQp/jeP9Kps8hTSmVEg4LLwT8uk4G+dX6DZn+yrI+yZVyfXcZ3WIJKdLEHkyfnY2c6yij1FxHBibTv2K7tnZz2JSiH86+bL90mkIqjseeAvvxIXmJmmCvOpTip+MkOJCzp+6cUGx9aExnFUnK+s9q3U8yxVS2mz8XKbbU0KVLR2A0vLUqapQKSM8lyCffGulXacpBbNdR8NGlXm9j1+ePyaH2b/nVk5O4AdbsKbFdsZ1Hp0hC0R1hpHEjnDSf0hr26Uv2aLzC8Sm5HOlg8hItw3yUcVIpQkDp8wXKeR+jy02Hd8d810N4sW16layimujIqR4cp5UjWA992u8mLkHHgKsn60eRUqQtKOp+813gC4/iIQzbNjCDXE+9AuZM7IVOMVh6dsrvXcevE2YFZ2PWp98/AwAA///xYKwPHREAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/clusterrole.yaml + - content: H4sIAAAAAAAA/5ySMU/DMBCF9/yKU/e46oayQQc2hiJ1vzivjaljW/a5EkT578hpEKAKVHU7Jfc937t341iTOZDas81IKraslY5gAdXTVHEwe8RkvGto/sdZeh/NB4vxTp0ekjJ+fd60EN5UJ+O6hrY2J0HceYsn4zrjjtUA4Y6Fm4rIcgubSkXEIahTbhEdBLOU4wENjSMJhmDLGKvSUCdhQT1AotFJla4VKZqmWaaHHVTq17rnKDOttqVULzyApqn+/rK4+SKvBxjY8RFd3b5fhHaw4AT1ing2Gn+DxiVhp/EbWyaoiG5zdsjW/nAXvcUOh7ItDuY5+hz+CaIiuorg3pdTbt+gJTVVvYguG3jU2mcn9+pesBRY35jz3LrA5Vrhuvk0PwMAAP//dcH9X7oCAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/clusterrolebinding.yaml + - content: H4sIAAAAAAAA/7RYW2/bthd/76cggv/Dvw9WWmADAgF5CJKtL11m1FuBYRiCY+pY4kKRKnnkzvXy3QfqSsmyxASpnwzydzmkDi+HUIjPaKzQKmZQFPZy//7N8bhiYseizyBLtBGUpG0GJhEqjVDBVmLCnp7ePAqVxGxDQLgr5QapIqK02PfeYSH1IUfVdKqKmSNBAgTxG8YU5Biz45ER5oUEQnbxWG5xZZ3uKkcygttoV0rpkBcscgI1zRbAA7gdtCNL2KK0zp25QUeOZBQS2kjoy7CIBtEwlqHMI5td8gwMxezieGTRrfsf3UPuJmTVtzQTzp6eLs6EIJQlUG5wldAnlAgWW6lzrBwUpJistocRb4NmL3hNHX1cXlrS+cdqQtxY3LD1H5DLacS/TKgEFbEfanD3SW2B3E2oRYmctKknNwfi2Udvtl9pvg0WUnCwFa0NtG1sIwtIYRdvNTX3L8vCvZZljrcSRP5bQ7Qx+/Mvf2ZYp9nMiZf87icH0/NqCfmyxHql7LgaZcdIttDJjVKagIRWto8Y+sZ4wmtEO+vmpNp8rNamtnSP9FWbx0HCeO19DE1C3HCuS0VheXHKGXyI0egt8tIIOtxqRfgPDfOxDmEA6FNjZz8YXRaDQYzVGoyfBqZUNwHMHnZC/t2iWeY61HDU3gcZp4ARuhKQYG2Tfg3xpGvgfJY48mOMa0UgFJpuca3602a4OYfvF/UP1b7/Kq3q+te7h/ubX37qOhjbO7mfjc5jr5GxnUCZfMLdsLVpXwNlcbdLVMv6rNVmfXP7Hfyq03K8oqoFatJ6ZQ42CS3rPd9GHA2JneBuHxSpEio1+KVES5b5Miu2WvWs6/OsysrF0Gw+52y12ok0h2LepkOFyhqt/tbbedEGM5acVkwAc60szs9HjwoMNOluWfO6PSxQGFVSaLEg24ECRTNtxDe3NmWhk2qlcZBoZj3OcQItq5SyFmc9OlCg6FJqTKXFGSkpckEGVDofoQcLFM5Ld1qq9CtuM60f6yVQmuYEnbGaJQaad1vJrFOPCpWtj+xCS8HFgvYQGmqgkwVZBwgUK9xl3xIqqi+L3F0WZ9WnGS+0e5ZTsIlOEmFNWbhs2JZJurChTeHDrZakQ6Xa+mAhWA/2PGE3OHfnMK5nfjubZgTbWV0ajl9KTbBg4yMD5S1yszBFDSRYsLodLyjWmFDJ5tFh6Vv6uGBpbSB1i27pvBgiA+X3IEXysi15gRoagLts8eecvdOMULtqYwEi4NniBeUEPHOr6o6NsV7Xce1VDQP08djXpc+59Tv1QifX//t/e/9+O+7z3HtUdUt/69m2JJFDiutSyrU7oA6DOqfqi4qu84RXl/B9XWoPljB/SHAHpaQHg6mwZA51JXoibLDQVpA2Tjg+6SZIu4cm9yu0IeuXPF1xtdaGYnb17upd1yvFHhVauzZ6i37NkREVH5CGZUhR1R+XGYKk7Nuw61SbMaEECZB3KOGwQa5VYmP2owcgkaMuaaLPICTi2ZF9l5BGBWe7U9tB6d02Tj2G9IzuHeT9u/lnly7dNs0W33mNe6YMT9ihrz2w27kJ8jK4bZmy6dCh8u4ytmleHXsLv3XKZsAKtSIt0YwfrbzGKSOfc9bnvwAAAP///U459YYXAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/deployment.yaml + - content: H4sIAAAAAAAA/6ySzWojMRCE7/MUzdwl4z3OcXePyxISMOTYI7U9wvpD3WMwE717UOw4fzj4kJsQ9XVXF7UsCtwW9Ab9TKxzsn8dlzmLS/H3bHckoGrtMLsNFXYpDpCTd+a4OqxHElx3exftAHdfwS6QoEXBoQOIGGiAZQGhkD0KQb+fR1IsKKQCSXGG9Xb2vil70FDrGeOM5gb2Ir3AHkfy3LYDYM66QSWSEGuXVrc5+uAGYCIfNE8rM2GRAfplAf2nvfV/DAS1qrefc2BQa3/FgossGNtxL4PuyRMyvY66RgWMuCOrxuMn7oHKwZkTyplMu5zJk5FUTikEFDP9exfLjwTTpOkRg/+2Rk/goqUo8OvEKKBoW7meAwAA//9rhyYOgwIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/pdb.yaml + - content: H4sIAAAAAAAA/7xRTW/TQBC9+1eMyiEnb1VBOfhWFRVVghClIhLHsT1JVtmdtXZmQ62Q/47WTpSGUpETN/vtvI95s9uVYJdgFugSielC+0RNilb7WXC26Q0x1o5a2O8L7OyCotjAFXTD6/X2pibFm2Jjua1g9ie78KTYomJVADB6qmC3AyXfOVSCq02qqRRFpdKTRtuIWSbn8uQVmOwJ4LAmJ1kAALvOZE5kUhJjw/VlomeCAGty3sj6ullj1IFt7vOnmaIn2O/LE3JY+Mh8HcAj44rasu5HoTk5QiHzRHFrG3qbaFkUuaFz2iFB8c+7IHNQVBtYRo8XQFXkQsIP9O5ChV9guSVW+HA0Jx5uLh01ufsu2q11tKK2giU6oQJgG1zydDhNCROhJpJOLsjetjb7oluMEqPpBZFfEd8MDrAOolPSnyFuTpkz+Di7Pwdmj59OQEx8J9+F4rhXTI4qmHxNovP8Mg08D0EnBYDQF8vp+WxumLnjfnhPXefIEyu6zzGkTv4uORlR5NWxTIB38BBibVvIK/MKdE0QQ1BYZSFzmCrBW67g5vAL4PG5go+3t+9vC4ClDK7/1zQStt/Y9bmkB+tIelHyx3pfHOh3AAAA//+aYJgnegQAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/podsecuritypolicy.yaml + - content: H4sIAAAAAAAA/4RSwWrbQBC96ysGU/BJm/hQKIL24kMOhbYkJZfQw0h6jhevVsvMrqlr9O9l11KTNim5LaP3nt6beedzTXZH7Hsy9+wS1ISxv0OXxMbTt9HZ7mTguXV4QkjLnekEHEH1NFUc7D1E7egbKt84xf0o9hdHO3pz+KDGjlfHTXWwvm9o65JGyO3oUA2I3HPkpiJy3MJpfhFxCOaQWohHRKF7HtDQ+UwRQ3D516sMqDVyRD0giu3UZNSKDE1TkdnDDUb3V92eJRa22ean+cIDaJrqp8mcYGG+NDCw50f0dXu6CN3CgRXmDnK0Hf5PtF4j+w5/02YHFdElWdBQv5Vul5x7llCSgzZVvuG7jP7O8oi4BGk+Uo8dJxfJbDlwa52NFmo+pxYzyNzYP/jlui+Uvh4hYvvidu6LYjhCtuMQWECrT7Qxm/fmur5eveZkmqqaONgbGVPQhh7WoRRr/aPowSleweBnhM98XXC+vyxMoGOSDrNUr3Ndi6pFxhMdIa02+SL0sE6KMlyYefmlafWbjfpn58+M/A4AAP//1JmG3DwDAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/psp-clusterrole.yaml + - content: H4sIAAAAAAAA/6RSwarbMBC8+yuWd5dCb8W3NofeSkkg97U8idXIkpBWgdT434sch7QNbQPvtkgzo50ZTZMieyT2PekDu4KsY+j3MCVZuX4LzpqrhufO4YFIHRttElhAap4bjvaAlG3wLS13XGQIyf5gscHr88esbdhcPjRn6/uWtq5kQdoFh8/W99afmhHCPQu3DZHjDi7XiYhj1OfSIXkIFhXPI1qaJhKM0dUN3ipAZWGBGiHJmqwr6o00zfMiM8CNOg8bM3CSha23ddRfeQTNs3qcrEbuzOcFRvZ8Qq+6601oBwfO0HukizX4O9H6LOwNfqetGzREN2cxR/U/d8fi3C8OU3DY4VgT42i/pFDiP3poiJ5qeM/ruXTfYWQpTK3SaxafjAnFy5LHa739oX0n5sjmxdYX6Eqvnxu+r+PPAAAA///7bBSK6AIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/psp-clusterrolebinding.yaml + - content: H4sIAAAAAAAA/6xTTWvcQAy9768QvuTkSQo9BB+bU6GUpSmBHrVjJR4yX4zkQHD838v4K7uOXXLozZbek/TeSBjNAyU2wVfw8uXwbHxdwT2lF6Pp4EiwRsHqAODRUQVdB0IuWhSC4rk9UcmCQqUjSUazemytzcgCFPT9ROOI+hPcBbqQLZ7Icu4OgDGqTEqehFiZcP25iS6mAWjIOsXNtW4wSQVF14G6y9/qJzqCvi/fI5Mx0PfFzgjGs6DP4oZCv8gSMs2l9lgOPT5RXZ5eV7zJ94HadSWYR1APaFtipVuW4H4MhmQtWXb4g85uI97A+Jq8wNcRXAL5evQAvQ+CYoKfnF11iik4koZavtcJI83OvcezBh5yFVzl+feZV0uHpf+HhjyqVmeDnSNXMrfQb+DP5a5aciSdlcprnB9qVStnpveKIcngSzltfNGIxGJ2QIIOtoLfd8cxEvISbVTMiXGUHbE+1HRcQADz/2a1S/DKTcH0RDJyb29ub9abMxexAetvaPO6pu/H6cAuYtvmfOAVl/vEZElLSP/1TP91ahuXdvgbAAD//9iaCl7HBAAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/service.yaml + - content: H4sIAAAAAAAA/4ySQWvDMAyF7/kVove4bOyU29h9jBUKO6rOa2tqK8FWCiPzfx9uU9pubOQmi/e9J9kex5rclsya/YBkEuLRWTxb2w2ixkawguqcK+7dGjG5Tho6PlQHJ21Dqzt5FaDcsnJTEXnewKdSEXHfm8OwQRQoknHdUjigoXEkReh9yVgUQZ2UFXWARmeTKaoFGcr5ZLOHDybtl3bPUU+0eSmleeUAyrm+dqZRL+TvAQIL79DWm8+z0Ts8OMFMG/0NOknKYnGPTRNURPM22w7e321XDqlnO/NWTtIJ/v8JWaRTVtdJOifdNJqqZHUfHPwc/IuctBClp0sspC2lC7zD2+D9CjZC5/j+RK7mj7fm5ed9BwAA//+Ak2bLowIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/serviceaccount.yaml + - content: H4sIAAAAAAAA/6ySQWvzMAyG7/kVIve4fPCdct2122GDwo6KozamtmxspTCy/PfhJm2zsa4d7GYcPZL8vBmGCswW1AZtT0mF6B1JR31SzrMRHxUxNpZaGMcCg9lQTMZzDfNnwzulfSSflPZudfhX7A23NbxQPBhNj1NV4UiwRcG6AGB0VMMwgJALFoWg3PcNVUlQqHIk0eiktr21ubIElUdPWAqo72DPpWfYYkM25ekAGILKUGQSSsr41X0bfdoGoCPrVOpWusMoNZTDAOohn9UTOoJxrC43szUYx/LKCoaTIOfHHRs9kyVMdGp1jXLIuKO2at6+cLP+M3o7ZmxbI8Yz2vXRVX5mNuJf0dlfge9guCUW+H9SlacTH3+hFEjnGBJZ0uLjFIlD0d16kdGfpfSz629UF5BXDd6wzLtUEHxOuBMJc8/bOjvPPl5MTtjisgaJPS3azX4Wx48AAAD//+kKUlibAwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/servicemonitor.yaml + - content: H4sIAAAAAAAA/5SSsY7bMAyGdz0FkV06dCu8dujW4QrcTst/YiGyJIhUimvgdy/kuLmiadHeZIHU9/MDrevVUjgSp4ncC8cGcdw0y8x1CunkkHiMeGvWkb3zFawgu66GS3hBlZDTQFuPm865hu+sISd3/igu5KfLB3MOaRroOUeYBcoTKw+GKPGCgURlCuLzBfXVXq+kWErsIw7nNsKKssIu0Bq8uGOLsWMHcrSue4YU9hjoX+z96h2OPCJKVyHiUlyHaoJiE7/p/U/qPZBoRlyczE9+5qob7T71o/vCC2hd7Vtl391P8lFg4cQnTHZ8vQU9I4IF7ivqJXj8HQxJlNO+kzu2G5jaImQwlriEzzW3sm3A0uFgiCokt+qx10qexBBdUMe9coI+olyK/AL3SXvn3T/0N4Ht9rFFgf5BpH9jkNvhG6ufTX/USFMP+xEAAP//95SuKuACAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/stsdiscovery-role.yaml + - content: H4sIAAAAAAAA/6yTMW/jMAyFd/8KIrsU3HbwdnfDbR1SIDstv8RqZMmQqACp4f9eyHGdIWgboN0I09/z4yM9jorsgdi3pPfsMpLmLCF1HFvrjxqeG4dbMzZstIlgAalpqniwe8Rkg69p7nGWLkT7ymKD16ffSduwPf+qTta3Ne2Cw1/ri3TVQ7hl4boi8tyjpiSptcmEM+JFjSMJ+sGVL21OuYFKwgLVQ6I1SR+ycwXbkKZpWjTSwAY1fcWur66w4wYuFStEPAy6QNFDMPu/2ntEdRUk6uB6nbqt6TjKTOt/pdRP3IOmSd2eLBG+k/cGevZ8RKuay1VoBwdO0M+IZ2vwMWh9EvZLJiu2OKhicNjhUMbmwf6PIQ+frLEium3xR5aWcvMCI3PuahFfRvpjTMhe5rEei//uIL51EuXHgG9L+RYAAP//8jvg1CQDAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/templates/stsdiscovery-rolebinding.yaml + - content: H4sIAAAAAAAA/6xYUY8ctw1+n19B3AI1UHh37cZJnUFR4Oy0xaH19eBznIcgD1yJs6OcRpyI0p43Rf97Qc3Mzuyd3biFn26Hoj6S4keKuhV8Rw1mn+CAPpNAwxHu8o7WkjDRuqMUnZFN1UfuKLWU5dZE7KmGFDNVrsM91RVApJ7FJY7HGiIG01LcGo7Esn4MVwEk3NdweL75dvPHCqDP3t+wd+ZYw1VzzekmklBI1WDgJnt/SyZSkhp+/KlawRoCdlTDRVlf6/61FI2LqlrBVQNCCRIXL59Cap3AvfMeLPWejx8JEVAA4VZFTfa3lACDhdQSWExYrYbtOwLMiTtMzqD3R5AWoyULaCKLwJ8278s5biL13hmUP0PPViCLC/uCtsvOp7UL1aogWSeGDxSP0BCmHKmGNqVe6u1271KbdxvD3VbdjYESyfax56vRI7Lr4o0L+2oF7zRkJ4AB6ENP0XUUEvrJzBSd/ooEgUES7px36Qj7jBFDIpJNpdgTquaZAu482Roa9EJVNcVZw/OqEooHZwofeo6phpfPXj6rAGaWJQbjsySKVzeFazs0d/cYLRjuekxucEEJclSSvZ6UK4DAlm4KrGJ6RvsKPQajyzVcXFQAGAInTI6D1PCvf1eVyZK4+wfuyI+SliVdU7rneDcHsUNTFz+vmpExJhImgt9BFoK3ry5fQyThHA0pe4fVsQamsC+N4RzSAHTbk3GNI4H7VusmKrnO9EBazt4qpQY4+xQi/ZJdJFCHBvAHthT6XUuF/cBNYdQD2MTq82YKJ3AqtaD5HoNyMgaJA44T2FOgqD4smNpk78t6oq73mNR6qboC/ZYaihQMqUEOBByh40gwlKGoeEfqitUjCKXGFbpUrBSMSM1M95njG8dby0a2CeVOtoZD4/Y50rpnuzYcErpAcVuKfqz/6A5aEZH2TlI8biuAj3aOkprz81pwZji074XAoFANlz/cwl/+fgtXl28gsh/b45huwAHgI6Go8xu8lw12+CuHUsJ0J1s9REnbLBT32VnaSmHJcT1CrkfItRrbtKnzH+P03Io1Ex0Hbbv681F1qgitdboZ/aIKdEFTKT0aGmsHoOXAcdIaS2M1UfkIrgGEG7ZwSyZHbRRDy/7EnQFdlrRgt0K9/Y2EGw6G+iTbviBvNeEyWluPsmq1qnq2kxPjtfG4NT0+OY1xEU/PdqkyLX8JH1fY9xg7jl8UVMhol/yymEcxyY+Qwx8Y7Wwm5Q36vsXNuQn0nu/J3kRunKdrJVMNT37/5H/BsMOtsMCo4Yllc0dxWpvwpgOdAXeUPgsv5pBcRzNgtSyK9+xzcf3Hn7SRD9ivOST6kM5INbbfmMOl/C1y7mv45uuvv3oxyb4XirOoOddR7l+zJfClukrFFPqJuH3Qm/lzqkP7xnpoHHoXroU8GQ1jW+n3bfnkOHSJ1Qoum8YFrVOhlFzY/792T0SaOnEpmO0AUpqymt9WONo7OfCOPQ3KX9i03gBpjcGu08nEtpp/j/lcweVc3+OFhFbHNZ0MW1KHtJdcPmyxenjFT+140XEhhUeR63If8jDUuTJlVivoH6qUllr9dnjDBRdzWGNf5qgSyOLCs7utOvidk5h7XXyV7Z7S6CVcHtB5JSgY9kP2PznCw6sjjDUA6D3gtLdaLXfrNDiSflPNcq0FQzG5Rr0kPRsX9jqvkOjdOg0rxfUO+4UocviZd7PAInUchBbbhqlcSTHLKNie3VLScnS/6vXve7ZlMDXoKc4KxSMRmiVnhr3rXIoY9guFLmviw/6edi3z3RnNZq3TXbkQDTNk6aNuKWe7+OopipNEIR1KozEeXffp5cUKW3tK+q4k/Wxx/pgm8KXCKNO9Oi9FTWNcLg+j7C+ZE85imQal03eZShaC8XV0ZksSR9xrZGcnf0Dv7Gcc7UFJZR6ndLrEh4PBlNC0S4JUK7iesjKW9kjbUgAjc3XgPA3uj0pgTmuh/bhHib96MB5pR/jngWJ0loZH4Ymxs6ZOJqePSXvYfvJhHERW8IPOxrm8ISMZ7joKtgzriWEcC0++nnYPrzYGT3ig4VVbnq2GgxjHeZhFTcs6n+oxqKt6bWyG9yB6YXBBJzIhAdPq86n8jUn0HgMOQOHgIpcWrY/m1IJ3KXka59zRlacg2bRq/o0LTvvNRp8bR85gGe4xnEWy2JbDEG0aHhmsc4Q+WRXdu6AqaH/W2TG11KmBQIZEMB6flvgjdXwYsmBy9EfYxSGFTaIIT+ajfrIZQTuXZHi1gOlzDc+fPeuGz4668i+Lb168cWN8Y0c7U3+g/dUf3rhCiZvIB2UEwt1LUSqL46BxW2pcIMDelTngdP2dT63T8xbe6ryvgH/lCPQBu95TXZr4O4x7Su8H5JlTzzfPX2y+VcL9F6WLi+o/AQAA//8PB0bI4BEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/kube-state-metrics/values.yaml + - content: H4sIAAAAAAAA/4xRu24jMQzs9RX6AWlt43AwtvIBV6RJG6SltWNLXusBkuvA+frA7wBxkZLUPDRDaukNLKmW3h7mhlp7jDP/18/MAAmcmp53/+wL9tmGSKx2U9mOS7GNa4ZGTGJpoKZgE2tGb6Nqk77rtknjtPah5u5/YgR9f6UyX3TjUtyD7G7kEcePyoP0xtnYyDiboZyCGPfNy7i7W6ZUlFIBnznIlPa9zaSaSPwWkNUOKkph9KkaawudvncFnN6Nu+5EcUBxEoF4fGjFDbhQGfC5ypAqLYJxCnQXiwhaebfYmMv8JJfUiQMusX42M05rcIFCunO98hz2mwIPtxMu/B8/M18BAAD//zicovLkAQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/Chart.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/README.md + - content: H4sIAAAAAAAA/3yOQWrrQBBE9zpF4dX/C43xzvwb/Atk35JK1uCeGTHdE8cI3T0YkmyCvWloqHr1tg3OtKo4cbierV9rSfSFzXqZZHXWMDfVLIkHBGDfsYhhIDMmrlrunEL3P0Mw84YUc3Ma7qXBltJ0wkDIoIQXaDRHotc4GprFfIEvxFxUy+3xjSUlydMf+/uv2zbEGeFNtNFCbfq4tNLqSOx7B1zbwNEVFzr6vsoNR1mjHb8WwvVsIZbj+2mgy6nbth7M0+vu2MxLCk8Rv5344axZ9DX3O/Wc/CP3GQAA//8NABudlAEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/NOTES.txt + - content: H4sIAAAAAAAA/5xUT2vcPhC976d4iF8gyQ87h0IpCzmUtIdS2EID6bFo5VFXVJZdjbTNssl3L5Ic7x9qcHob5Ddv3ryZ8X5/c42taZdgCtDGUtj1dNtGDlJtaInrm+fnRUItPj720jUIG4KTLaHTOVYb6UO9GHAVGtLGEcTPd1z1vmspbChyJRvZB/J1ShWoDmAZbUB9l1lWibd+kDYSZ+SXLXlvGsITgo9O4e2bHJr2PmptHiGqAxm5JsdF7p0nGQhyrKGjtTv8itIabaiB7PvcSL34RoU940OqkZpirEnJyATuWsLnuCbvKBCX9rUh2zCkJ1jTmkANQoewMYzL9S5b82F1n7DG/QD3pK7qxScNT5YkDx6qzgVpHBcXy5sJ+G2sxZoQOelkyCx+UDvX6ZRy6rbRo7kvH0eDXzCTgFkTsHxg+i93s7ydP+QjnaMxhaX+WlwryaPWk9dXC+y9cUFDXHB1weKMrdR9zdpNxSfreDTndExb8mw6l2acZz0sTkFZuSY7f945SUx2d2x+iR+G4k/w1FupCOJ/AfFd/Pu1nf8cmPzWKIJUqosupAuJTLNbGtLfl+zV1DKfwmpVtCQgAOz34wZeGqdsbObcTH01RZ/7O9+ns0JiCMQskr8szZ8AAAD//1/OFt6YBQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/_helpers.tpl + - content: H4sIAAAAAAAA/5SSP08zMQzG9/sUVvfLq3erbgMGtg5F6u7m3F5oLgm2UwmO++4ooaACFaJb/jxP/PgXT1MLbgdmgz6TGN6iNZYJlaCd5waT2xCLi6GDeodZh8juBdXFYA5LMS7+O/5vDi70Hdz5LEq8jp5uXehd2DcjKfao2DUAHrfkpawAMKUOpgmUxuRLucVhKW3iOJIOlKXFHpMSm4AjLcDAPFefHZD1b84qPbMyeUKhajbr941Z4UgfgoHYKe6/KR6Ij86eRCXNtbk7eRalsSvs2p487VEjNxw9rWlXcGBy9xxz+gVyA/CD8WeeywUkbx/JqnRNe/KeWrmxNuagV7UjX6yr808pj0hCe4FsPYZXeMpRK8EybxT6OlxvAQAA//8VJLnlfAIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-apiserver-auth-delegator-cluster-role-binding.yaml + - content: H4sIAAAAAAAA/5SSP2/jMAzFd38KIrt0uC3wdrfcliEHZGfkl1gXW9JRdFDU9XcvpCZtWhRFs/nPe3zkj5xnQ/5AdsfDhGxlz846ASvILEvDye8g2cfQUv3Hk/ZR/COrj8Ge1tn6+OP8szn50LW0jQN++9D5cGxGKHes3DZEA+8x5PJExCm1NM+kGNNQclandTZJ4gjtMWXDHSeF2MAjVmRpWarP9Sz6PWeV3lgFAzijmu325cVueMRV0EO88vGD4i/k7N1FVLq5t29TaBkBd5BG4oAtDgUCJ/9H4pS+YNoQvSF9jceDIpRtGE4+Q86QmoGg3lX7NS1P+39wmtvGXApdpvnlXJyC3jVRfmfd3O6lFMmJ3Sdw62d6ov9T1Aqx3BpCVw/rOQAA///xlQYjeAIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-apiserver-auth-reader-role-binding.yaml + - content: H4sIAAAAAAAA/8xXS2/jNhC+51cQRg+7B0lJiy4WAnJIN30Bu6mRpAGKolhMqLFFmCIJcuSs6vi/F5Rkm5TkxOj2UJ9szjcPfvOiwYgHtE5olTMwxmXri7OVUEXOrtFI3VSo6KxCggII8jPGJDyidP4b8wo522wYYWUkELLZ6r1LjNUVUom1S6AAQ2hTBRXOWMq221aPl2DpNM0WGqhalAgOW+X0tvuR3kCFO0CJVhAsB4g7tGvBe5CP5jTvi1rKIHZnkPubWzRScHCdjweQNbp0d9j5cCiRk7YdURUQLz8GzP177l6lYGew9xykzn9kFMTXhPFVaTwplSems/tsNgl7ElTu82F00TE+RJH+AyrJUvbMyIqKPTMlVIGK2PshFFVxODq9bEZcgVKagIRWAfW8RL5ydZVxrRZi2ZoWisu6QPbGWKGIfZPe977SH8DhHKhks4zXjnSVVEhWcJd06hWYtIFKzt62N3MlfPv9O1dXr3F0dQjtvyFq1yTt9y5PV5zrWtHNyQSO9SI6vUex2N+i1I5ukJ60XaWo4FFikLVAmDOyNZ4dSS/XikAotPsUJYeUpx98AY+qU1Rtac6iO7nGEVafC1xALemzxaVwZJvuBsHAaJX92NBOkLYN227zkZhgybbbWexxXks511LwJppAnYbZC8NIwS6D0ktY1lMdHCWJQ15bTIy2dBnYlcIRqrm2NEx7kASSric/BHmrJF3C0VKyEBIvszXYzNYqa3Oslq0o89rc0kjPWLEGwmSFzWvqK2yO925nsY2iEPYyo8pk/lcklnpJ2lGB1l4GldIJgyqtrQzpOUjS2souxwExgdh0FObTyr10s0FVRIUSYvwEGNxqNwcs+kQlQhHaNUQh9pDbFvFrDxjaWUc518uPuMYRqBs2lxkS35VQP7/a6bPH+stEBbdvL19HUdlOl9du3pZExu1PpVijQufmVj9iHoA97Gek8Igxz1bOshJBUvl3LGqjiI37j+Mlere/3N/P7wKJUIIEyGuU0Nwh16pwOfvuPFhmUIj/ZWSDPrXodG05ungV94dhlOEKGCkfdsHF+Ytb0y8BXltBzQetCL9ERICU+mluxVpIXOKPjoNsV1HOFiAdBkgOBh6FFCTiIBkrrDY5+3MGUs7+CiQ+I78p2dxqTT8Jid1YjnZAC6vVlbvRysOmhb87tDm7OD8/v9iL1lrWFX7y2ykIZ0A1fiELDwEyJmpI7hj+2t4dz7jKK8674gpbdNRWXc9O0DXgIDZJlRlZCs9O3Amhyal5PvLR0Z0cwRwJffyA0wXeRe9yNl3mIXCafVgsfN81L5rZgaZNGCt02xYSnNs/jQ4zfyA9KJKWaIePyQn3AW46gkG2Ds+HO+QWw3Ldvzp6SezXglriKWbiJ9WLY2N00JXA3vPxVnMstPJCk03017tINfKfTDdO9/MTmHxUtOF/w1q2voUjoZbsmfWPQ/Zm9+A/5R/o23E0YfNhZai5FjZnmyMZnurH5IQWc20iwxt2J6c/6Ad/pEc5/icAAP//unjuP4cQAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-apiserver-deployment.yaml + - content: H4sIAAAAAAAA/6ySvW7jMBCEez3Fwr14uM5Qd3fFdS4cwP2aGluMKZJZLl1E0bsHYhzA+UEQA+kkcoYz/LjT1JI7kNmxL8hG9myNFbCC2nluOLkdJLsYOqp7XHSI4h5ZXQzmtM7GxV/n383Jhb6jf75khWyjx18XeheOzQjlnpW7hsjzHj4vX0ScUkfTRIox+SVudVrnNkkcoQNKbrnnpBATeMSKDM1z9dmBRb/nrNIrq8CDM6rZbF9+zIZHvAoGiFM+vlPcQc7OXkRLm1t7t4Ici1i0Au4hjUSPLQ4LCE7uv8SSvsDbEH2g+1NNctnfw2rumvYScrntH2tjCXpTTn5j3Vy/23JITmw/gV+X6YkeStQKeRlJhL7O33MAAAD//2qWO4ifAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-apiserver-resource-reader-cluster-role-binding.yaml + - content: H4sIAAAAAAAA/4yQMW4DIRBF+z3FyP0ipYu2ywVcJJL7CfxkkYFFw6wbxN0jcKLEqbYD6b2Z+b/WmfwHmQuHHcUUyM1bvFi77UmNFbCC5tYmzv4CKX5LC92epqtPbqG3B3yKUHasvExEgd8RSn8Rcc4L1UqKmEMfeLo+lznLFqEr9jKz46wQkzjiRIZaG55dWfSYOdA/qiCAC4ZsXu8fc+aIH2CFeOXPf8R3oDvUrzm2/bG282+KXi+SGw1+BQAA//9QYLJvawEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-apiserver-service-account.yaml + - content: H4sIAAAAAAAA/6SQT0sDMRDF7/kUQ+8NCB4kV+9SVAoex91nNzT/yEwLUvvdJVkLSxEseEsyv/fm5XHxW1TxOTk63pm9T6OjF9SjH2AilEdWdoaIU8rK6nMSZ04n0vzGMZDdcjhArMwSu8Doi3wakZTu6Xw2RIHfEaSZEXEpjpoNYgmsoNX+Qdal5gidcJA1j1wU1SaOWJGdHYiGiavepuzoQloRwIIuts/zxT5xxAWYUL3y7or4KWOGWprbtn8cQlhkl4Kh/bzkqr2CdT/Oq646bINLplKz5iEHR6+Pm/6iXHfQTRdPqkUMkSBg0Fz/1+0fBelnwa9526Ah5jsAAP//I8vd0E0CAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-apiserver-service.yaml + - content: H4sIAAAAAAAA/4xSTWsbQQy9768Que80gVLC3tpboS2hLr7Ls1pbeL4qaQxh6/9e9osmJoXc9mne074naRxb4AGygNtjqKROaiB1PQ1Yg91UfVXLEa7XBgvvSZRz6gALCx1ZTdA4J3d+VMf5w+XhQIYPzZlT38Hnp687kgt7aiIZ9mjYNQABDxR0+gLAUjoYRzCKJaAR3J0ftS2SI9mJqrbYYzESlzDSHbjJx6TzJxR7n3KmvpAKBUKlWex+LsD9wEgb4UTChscbxppkIU1uOljTriNykUzY6zqLRgv5KaQuwiXvInyP7aGGcBN6glrQv+F9LsMf+F2zrR7HcdrytkwL6ijhIRC087PHLzX1Yel1+PSRkn9F9ri1aYFSv4Cj5Fo6eDswwGU7j+0OADgp+Sq0O3P59W23J+Hhufu/uet1wKA0jkBBJ2hSZ/TKwpNwFrbn75w41tjBw/39v/9vr0v5RYC/AQAA////poEd+gIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-apiservice.yaml + - content: H4sIAAAAAAAA/5SRvWrsMBCFez3F4OreC9Il3eI2RboUG9gmpJi1z8ZiZUuMRi5i/O7B2s0PWyWdZjifOHyzLJb8iXjqyR04FGQnR+5cJ2AF/YnytS8B2fU4cQl6s+1K1jj+JbuuhpM/QLKPU0v1Ly46RPFvrD5O7rzLzsf/8505+6lv6T6UrJB9DDAjlHtWbg1R4CNC3l5EnFJLy0KKMYWtV3PeZZskjtABJVvuOSnETTyiIUfrWrluYNGfkTX6DRUEcEaF3f4yuEce8REYIF759SbxBJl9dw1tbX7b22bIDLGCHIt0yKYabo0lTv5BYklViqWLczdCxXf56tVsza9kS8/Nv+bFEM2Q4+e4nRxTX2/1HgAA//8tTKeH/wEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-cluster-role.yaml + - content: H4sIAAAAAAAA/+xW32vbMBB+919xNYM2pREMtjFM6odtbC9rt3VQGKU1V/vSiOoXkhwa0uxvH3Jsx0nTLKNrR2F5CXf+7jvr+2TpptM+8CEo7YGdoijJMVsKcoxuuPNcXUF/NovQ8FOyjmuVwPhldM1VkcB7rYb86ghNJMljgR6TCEChpASmU/AkjUBPEF+/dX1jtSQ/otL1sUDjybJhKURAx8BgNosABF6ScIEEAI3ZjmWJASAfofXbVVbQTqklQejmL89O5gE7RkkNYESWe7xaQXwnO+Z5BWo0yCtl2ASlSOA2qjXWdkXigoZYilXh89J5LduXCrmkoVhfX0P74Mhyct9KspMEdqdZFsTJssOf8UWulUeuyGZsPz5oo53D+OuXD/FBADqDOe0cxvGB0UX4n+1WvFDzfuTCk3UJnJ3XeUtOlzan2rPw02Oylhfd1HxPVOzd5KI8WQA6z40u7oMbXUQL5gVKos9H5BLoLHeP7fcyR7lWhcu89ihetHh0CcRxHUrylueNeq6UexY97Q0GwWFOLk2ngwH7HPboUdXHujS9o+Ts7LU87/XaFpcTCBSfrC7Nu0ma9p7UqjrZB+6OtV/She2vV+XZePrfy66Xz9LDrd37U+N623q1bEDj3M6qc1tasoUPza2UwGDATurnabpZtlaZBwr1D3VZOmv+sjwXj3Me1J//00i28VJ9gCqPdvPdr06YVUgV1eC4dm5ZTDhhTNM/UIr1iFvgqiDl4RXUXF3ejT3oxpNVKJrhqIlPmnlqfeO2bHPrO+0a0xaz5Dz+Tbu2rG33ZtNKfwUAAP//Z6VkUK0LAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-configmap.yaml + - content: H4sIAAAAAAAA/5SRMW/DIBCFd37FyTtU3SKvHbp1SKXsF/wSo2CD7nAq1fJ/r8CpVHVqJ96D98ETt66WwoXcieMCdXJm77yAC8hum+EcThANae6pnfFSxiThk0tIs7sd1IX0dH82tzAPPb3ERQvkmCLMhMIDF+4NUeQzolZFxDn3tK5UMOVY3+luB7VZ0oQyYlHLA+cCcTNP6MjRtjXOjyzlb2SL/kAFEaxosDvuxr3xhO/ACAmFr78S75B78I9QbfPf3lagaREPK+ABYmSJ0N5Y4hxeJS25/YmlrjO15R5+7NVrNLOHNpvTsAvdW+3Gp/kSrhPnau+Q8wO+orQ1Bt3FBxc/mjptzEMb7VcAAAD//5q0hqr6AQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/custom-metrics-resource-reader-cluster-role.yaml + - content: H4sIAAAAAAAA/4yST4/TMBDF7/kUo73HbCWEVrnBDQnQiqLep85rO6rjmPG4YhX63VH+we6KlXrLs99z3s+eYahJDuR2HAqy0xKQHX4ZNHKg67XiJDtolj42xEkUR8mmbNJHd37ITvp3l80expvqLLFt6OPj5y30Ih5VB+OWjZuKKPAeIY9fRJxSQ8NAhi4FNtDd+SHXSfsOdkLJNbecDOoid7gjN/YYc/7EarclJ+uzqCKAM6aw+z4L9407rIYTVIyPrxwLyWwa2zS00P69JNfBVHxebqPKCX7EzHN0Jp6jtxQ/lBBeYY8yJ/b/aT8t02/6WXpbWg7D8we1kB0i7wOonrY9fyqxDfNZ+w/vEf0Ls+f1mJoQ21kctS+pobeQiS7riKyzQCQxwxfF9izpx5ftDiqHp+btetfrgUPGMBBCHqVpmdSLEo8qvYo9fZUoXeka2tzf//v/ujsvrwgj+J8AAAD//1v4W5voAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/external-metrics-apiservice.yaml + - content: H4sIAAAAAAAA/5SRsWr0MBCEez3F4vIH6Sfd4TZFuhQXuH7PnpzFyZZYrS4hxu8erLNJSJVUWg3fsMPsPFvyr8RTT+7EoSA7OXPnOgErvrQSkB3eFTJxILsshpM/QbKPU0vVwkWHKP6D1cfJXQ/Z+fj/9mCufupbegwlK+QYA8wI5Z6VW0MU+IyQ14mIU2ppnkkxprCub66HbJPEETqgZMs9J4W4iUc05GhZqq8bWPR3zop+swoCOKOa3fH+cc88YgcGiFe+/CBeIDffbdCa5q+57d6lHaHiu2xqxa2xxMk/SSyplmKp2Um3kVu1jVnT51ikw47+W8Ub5LwJwWetwwX39421G8x6dEx9PeNnAAAA//8ldUFcAQIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/external-metrics-cluster-role.yaml + - content: H4sIAAAAAAAA/5ySvW7jMBCEez7Fwj15uM5Qd3fFdS4cwP2aWluMKZLZXbqIoncPxDiA84MgTieRM5zhx50mC+EAboexkjjeo3eeCZXAzrPBEnbEEnLqoO1h1SFzeEQNObnTWlzIv86/zSmkvoN/sYoSb3OkvyH1IR3NSIo9KnYGIOKeoixfAFhKB9MESmOJS9zqtBZbOI+kA1Wx2GNRYpdwpBU4mOfm8wOyfs/ZpFdWpkgo1Mxu+/LjNjjSq2AgDorHd4o74nPwF9HS5tbedihofU7KOUZiwznSlg4LByzhP+davqBrAD7A/WkRIT4TWybJlT2Jkbq/J6/SGXtJudz2j/e5Jr0pSN5YN9fvthwiBf0n8NsyPMFDzdogLyNJqW/z9xwAAP//ZNKY2p8CAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/hpa-custom-metrics-cluster-role-binding.yaml + - content: H4sIAAAAAAAA/5ySsY7VMBBFe3/FaHsb0a3SAQUdxUPafp5zd2Pi2NbMeAVE+XeUkAXEkxDQ2dY9muOrWVdP6ZG4jBQeOHdokCvHEAVs+PnWMzTgs0EKZ/Lb5rilB4imWgY6EO42VUlf2VItYb7XkOqr59duTmUc6F3uapBLzXibypjKk1tgPLLx4IgyX5F1PxFxawOtKxmWlneLu/lefZO6wCZ09TxyM0govOCOAm3bwcWJxf6OPKK/oIIMVhxwuHy/hA+84CUwQZLx02+Jj5DnFM/QbvOv3n5q7GMtJjVniH9p2C8wSVGd1IwLHvdiuKX3Unv7Q92O6Kbt/zW7UdF+/YRoOjh/Tjm//ybG2ov9GHRo1WKcfauj525VI2fImdDGEQPN/QqvX9SwuH0NUcZjsb4FAAD//7DHqSmTAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/hpa-external-metrics-cluster-role-binding.yaml + - content: H4sIAAAAAAAA/4xSwYrbQAy9+yvE3j3dQCmLb+2t0JalKbkr45dEZDyeSjOBxfW/F9sx3Q1dyMX4Se9J71kehprkQG7HocCcljA9YX1Rj3GsOMkOatLHhjiJ4iiWlbP00Z2fzEn/4bLZI/OmOktsG/r8/HULvYhH1SFzy5mbiijwHsGmNyJOqaFhoIwuBc6gh/OT1Un7DvmEYjW3nDLURe7wQI7Gcdb5E2u+TzlTX0kVAWyYxe7nAtwP7rASTlDJfLxhXJMspMlNQ9e0rkNW8Xb9CJUl+CmdLYol6KK4x++hhHCTdoKW2P/H9FymP/S79PlqbhhenzEHc4i8D6B6bnv+UmIblln7Tx8R/Ruy53VMTYjtAo7al9TQTVKiy/pDrJcnkmjwRbE9S/r1bbuDyuGled/VOB44GIaBEGyCWcuM3ux+VulV8st3idKVrqHN4+O//Wt3Ka/Op7x/AwAA//9VZTNC1QIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/resource-metrics-apiservice.yaml + - content: H4sIAAAAAAAA/5ySv27zMAzEdz8FkV368G2Bt7ZDtwwpkJ2RmViNLKkklaGu372wmqDpHxRNF8Mi7nc4nTiOBvwOMHZgNxgKieUtOuuYUOl9VsL8JUmFHYGZpgaz3xCLT7GFimDRPrF/RvUp2sNSrE//jv+bg49dC3ehiBKvU6BbHzsf981Aih0qtg1AwC0Fmf8AMOcWxhGUhhzmFIvDUkzmNJD2VMRgh1mJbcSBFmBhmirnemT9HVmlFyhTIBSqsF2/HewKBzoLemKvuP+keCA+encSzWmuzW36jMalqJxCIDYDKXsnDadAa9rNfWD295xK/qHlBuBLyX8NdE4gZftITqVtzMn8dNkb51KJepW/fEBXl882m0hG9033dQwv8FSS1o7nZaXY1fV7DQAA///sVQyouQIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/resource-metrics-cluster-role-binding.yaml + - content: H4sIAAAAAAAA/5SRMWvDMBCFd/2Kw7sVugWvHbp1SCH7RbrGIrIk7k4p1Pi/FykpDZ3axX53vA893q3rCOEdMHmwR4yVxPIJnXVMqPSzq7F9SXJlRzBum8ESjsQScpqgI1h1zhw+UUNO9rIXG/Lu+mQuIfkJnmMVJT7kSGYhRY+KkwGIeKIoTQFgKROsKygtJbbnh8texsJ5IZ2pyogeixLbhAsNYGHbOudmZP0b2a0PKFMkFOqwPdwG+4oLfRtm4qB4/uV4I74Gdze1NP/NPS6kHJyY3uxkRsASXjjX0rsYYRhMS3cr/L4r2UsXKXt6UDtR1DZfiU9375m0/2OQm/hAdbNp96bk+wW/AgAA//90wpRi/AEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/resource-metrics-cluster-role.yaml + - content: H4sIAAAAAAAA/4yRwWrrMBBF9/6KIXvr8aCU4o/oooHsx/J1LTyWxWgcMMb/XuQmkBYK2UniHObqzrbVFHpyF5YF2Zlkh8itgOp9rziFCzSHOTZ0/V+NIXYNneEVVk0w7ti4qYiEW0guJyJOqaFtI8OUhA10Gt9ynXSeYAOWXHPHyaAu8oQTOdr3w/MDqz1nHuiDqhBwxiG7j++Le+cJd2CABuPPX8QZeg3+BpU0z03vF5GH7LYmNDQuLTTCkF2Y/5nk6t5NqdTffta+viD6H217qIU++DLxCFIeR6x/8SPWwpW9IXbHlr4CAAD//z54+8LEAQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/templates/secret.yaml + - content: H4sIAAAAAAAA/+RWbW8btw9/r09BJH8gLRDbSRsU7SE14Kb/DcGa1mv2gKHoDFnHs4XopJsoOTl03WcfKN3ZTuI+YNiAAXtl60j9SP5IkdyHl1jJaAKspIlIUDkPV09p0HhXY1hipIEsZRPQD4dCVpW2OrQFfPgohK7lAgsB4LFxpIPzbQFeWrVEPyq1RxVuammPHw12Aw5kXT45EQBBLgpYHQ2fDI8EQBONmTqjVVvAefXahalHQhuEMG7xCldoCjgRosbgtaK3aDSFcxvQr6Qp4LgWgr+gnTofCnhycvJYCOtKvESDKjifnW+8dl6H9sxIoteyxgL29oTYhx+9geBAKoVEsPFabP5yzNGbApYhNMVotJEMy8zmkFaKQ0kuPDt6luKSYZmNeGyMVpIKOBbCz6ViwH24bFDpSiPB9ZLhPLx9MTkDj+SiV0hASxdNCXME5VEGLAV0/woIPqIQhH6lFU6UctGGT8FK6PQ4Slb8MjID/bBEsLJGcBWEJd4DCQ4i4TDpnldgXQDCANKWHRZoSmiHIDOQJligRc8WIZK2iwRcRWOSPGDdGBnYPJ8Lpq4jI2WRLXn8LSIFysECqCYWcHx0VHfnGutUmMePnl7o9M3oWn+tvvDRYNLtMrvmQ0UKri7g3XuxDwMmQyN9H5HvHnyYzdjh2ez5H3u/kqtxlst1lpj6397HA8G2NtGkI6wDLuD0dPi2k47HSZoZyHq1DGrJJOztdV+4mvbqdpbd6sxlYfdSOt8o1g9OT4eXyd/x+MPp6fCVnKO5SJCexuOPD2HeAit9611sXrTj8cNEzgU7TyBBOVvpxYVs4FqHJTQeB5s8JsZSH+FqgDcr9F6XSJzaBNMxedhReAh4E9BbaVKp9JwA2sAuCgC80RS0XRTpf9b91xHfO/ZPUN+7m4q+L9rOvnI2SG3RbxnhRDxYC2aqibNIcoEzQuVsSbPggjS77L97XL9/uMuJbIz76N9h5xB0+fxgdPAle/fyBOD6etp8AtCWgrQKt79t08Z+b4k4o9TIz+j3ClvyxpWfUm9ceTcbKeBicxZbveUzmduQmXVn185fabuYEYbZvA1IX1s1OxP2l+APu1z9Z9J0rW3prgt4XK8nKrceaa0LMmhn++mT5ztvGAChbbCAMxMpoD+fChFMmhto5dxgAZU0lOaGLOD3gWAv9mEa50YrOJtApQ1CWMoApBcWyzQIJ9Pzy2xfAFxhu33T6xWP1Cts+3l8S1uhD7rSKvW0u/Z2XxL7MLEtd1gvYeVMrJFEOv2UD6nnMswg90TAG1k3Bgd86sbn0lGY8qbTnfu9Z8Q/I2dHrLCWZdJepl3R+faNP0uLwi0jRGbA0dCXLGBQIyIzSsojJQfzaEuDQ+XvGvxGm53hQp0m3HbQeeatI4fPxQ75/nQrYG1Hm9q6DXA3rtu37wWzlVC6FZJHWb6xpu13wOAMT+Jcpu/ec5ypyglkWXJhuZR4fgyNK7Mo78RMyLrEd2pP7jwBwcl4jYHbyN1tU1dwf+ff2jQpSM/7grawhQK1K/MOmeB+cRGu0w3e87TnN6Kpe1Ql22hd5EUDpEnzN2BqPUa2YDMib5W8jTSuJN4wEu5kep72V/QQExYHqlxdR5sozotNN74HWXMIEwboM3+YXdHUu5aRt1z6GeUKezfAWfj/d5frjlD2LeHPAAAA//94wUAwgw0AAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-adapter/values.yaml + - content: H4sIAAAAAAAA/5SQQVLFIAxA95wiF6D8blnpzhO4ddI2loyFMAGq3t6hjq26+0se83ghmPmZtLAkD/toMOfzOA634WYWKrNyrgd6hCfaIswBtcKrKGSVSDVQK5BkIUsfWbSSmiCRPIRac/HOrVxDm4ZZorsM142XH8OZN/p8F12KN/bfY/ZXx1g4eUROFTmRHhJF5M3Dypi0TSwPawe9agAS9oHOu944yF42lpYYaTff5GrZv2MUaTrTkbrrY/u10bGv9CsAAP//fmhVfnQBAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/Chart.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/README.md + - content: H4sIAAAAAAAA/6yUUWvbShCF3/MrDsLge+FqY9+XyzXkoU1MMaS2cdNAKSWMpXG8zWp32R3FNUL/vUiyEydpSkjjJ9vamT3nfDMaKnxggawZ5L3RGYl2Fp8X51huEUprtb1uHkdG5oqCbB5HR1WVQq+QOSukbUQydTnPXZAE6pJMyVFFDrc6YyVbz6jrI4B/eBcE09nZ+Go+W1yc9P66KZecicE1C9LUUsHRU8aoKggX3pAwEh9cwbLmMqbW5Zx2fTiou/MJFOoaqcP36KwnWZ8klYqeM9UcjV8H35TdKawT7KTFF16zKo1prupu+fuRk8n8kY+mOL69Gy1ctEaikJRRUZ4HjpHb/3Y/6qRVl60d1iJ+dHzc22kc9e5ib+GxifyQ4Lmj/D0ZshmH31EEMJ1djEeYCAraQuiGQVjxBoW2pXDEyoV2oA5bYjKHOCwZdEva0NKw6rp1ny+uREYWG5Js3VZ3PuFWh4PYP0w63mZIN6+i2L+n+Gm8uJyc/gJk2/6PMb5G3QP2/WqP3BzkqbS9bpA39LWv+0/A39saVdUTnq3zun5mFk5NGYXDZP6CdZ7Pzq6m7z6OH4XnXf4mS2CQkPcnL6/uCv8JbJgiN4Vq0X1XUyoa7cmzq1WwUE5CbaODZUouddSyj3b4739qoAZqOPp/OBg0U11GxtaV4fAVmhwB+0AaeenKhQ2F/A1C6e0zRyOgY2jzhsrPAAAA//+zhFjDzgUAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/NOTES.txt + - content: H4sIAAAAAAAA/5RVz2vcOhC++68YzAskedg5PHiHhRxCWkppSaGBlJ6KLI+zA7KkaqRNls3+70WS411vs8R7G6xvfn0z83mzubqEFfULYPTQkUK/tnjdB/ZCLnEBl1fbbRFRxcdnK3QLfomgRY9gumTLpXC+LgZcBS12pBFK60yPfomBK21arPDZGufR1dG5hGoHF0F5qG9TnLsYuX4QKiAn5LcVOkctwgt4F7SE//9LJvX3oevoGcpqFwx1m+xc8K1D4RHEmKMLSq3hdxCKOsIWhLWplbr4gTl6wvuYI7bF0KAUgRHY9AhfQoNOo0fOBHSEqmUQDkFRTx5b8Ab8khjOm3Ui58PdfcSSfgS2KC/q4nMHDhUKHliURntBmjOP+Rt5eCKloEEIHOtkEKn4odr5XEenKd/UjfS+Po4Uv2KOAmbNQPEu0j+pn8X1/DHv1TlSk6PU3zNv2XmsdfL15AKtI+07KM+4OuPyIFrOe8riHbPTQsIn1OjiijWCSYISDSqG+dPMDiVst4WwdgGbDXjsrYoh37u3Onot0ZEXjxhdx1bv0a1IYnwfNnPynJjYbou0n3NzJvCQ9GDrrGm/pj7SE3jzU/Tq71fYY3BqTo5772qiOK3QMRkdLyZdznCGGZXoO+V6hi6O7cr+Kmf7YUj/Ag6tEhKh/LeE8ld5mnpNOjzUWx7GJaQ0QfsoOYHxhK6GADfZ/+6YOkxhtczVRCAAxDV4Pelz0lKFdp4M1RfHEuhhzyYnepCqHIxyVpBjd1jcKGWeEpn7Usw2DsybKLsmy1GLGjrjoA/KU7UDtWiVWfeoPQNpkKZvSGOb94xP/BemkOXQ7sEQxveJPmZWqndRb1B5IJi5nT30G5z9CQAA//9n6BxGIwgAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/_helpers.tpl + - content: H4sIAAAAAAAA/9RX30/kNhB+568YoXtopW7oVX2oIvGADrWHVGB1nJD6hEwy2bXOsS17srDi+N8rx9kkdhzYBV2lLi/szHzj+WY+/1im+S0ay5XMgWltTzYfj75xWeZwzrBW8gbpqEZiJSOWHwFIVmMOT09AWGvBCOFYG1UjrbGxC6lKXOCjVobQZFUjhIs/hgyenzuw1azYO0MP6FMIdo/CtnguC9GUL8F9sMN+By5LlAS/uzRWY+HIWBRYkDLuf4CaUbH+2+dvDeA6ckipfZXuY1Ags55q9sV/ya5YjT7k6WkBvILslokGbdbokhHekGGEq60PCW35kStE/cNqMYcKWfo1UJb+y45DR3Y0U/d5b1//GIhHzLQqz6RUxIgraYcwNhjzETJiGKG/g0wv2NME8NPtqmCy7HOZe1ZkhUE3yJ3NotnwAs+KQjWSdt4+dei+OkD8U2SnjlG1UacsFo3htP2kJOEjjasIHCklxNhwMPNrasNVixPM2kGd7jNxeSm/BIwmAVAoSYxLNP2MARbdIRL0q/cC8JqtMIfjoM92awnruxIr1gi6M7jilszW93RUVgvODGplOSnjdlI+cRNbwfPzcbzmshFiqQQvtgFTj9G9c2DXytisRtw8v8VCM1pn2qiisqcna2XpxH1Jh9mt7aPs1k6CHvA+E9wSygUrS4PWnn746fP1zde7i+XPY3Kd5DLX0cSo8ZEMOzMr632xggZ3r52PvyWH6j4oN2PWu5l2ZQUcJir3VXpK1/JMiAtJaCpWoA0XAdg4TA6/Zu3fJC0Ki0nIn0bV4VQAKo6i/IJVbHfH/HAJbj5O3C1wyWidgyVGjc3crBIsJ11yk5iow3eqRjK8sNFi/X5ZKkOBCndtI2ZWSMtuxCFaG0WqUCKHr5/G1Qm+QYnWLo26x7CcNZH+CynuiW7ZnsTWuaL0pByDrOT/+ZpWNaZAmzoge2cs7wG/UaKp8dKd1zNDm2xigNqFe3HMbHTfjGsptjkAmQaTqeOdn8g8DRkST/KmNv9nZel2RDJWkMMYJlcIH+5+gQ9tAZCfHpZkMbwRfYb2aTQV64jeENobp/ED1yF8Z0sR4VWY1CjNVu0zYq6WIWJa0jw6ufHfYh6fkbzEgplRmw8d1esZfvyckpp8c08KJSu+qpk+WLbzyB/Tg9dppsc9czH33tRj+w3imT/m/g+i2m/zT9ofNT/wu8P1CulBmW/BTTOyh8HLi/NO3VHrWVVxyWlU0s6SupL66H0f6+7FfNP9Zh2WGFtTywSo2aV2TXrgtO6hpASa+IfbyBgsl9DnpNVee4kfA9Gt2XbZySOYbPdCCGLT9+eL+HHoodfku6/IfXbIS9UPuF1UXF6k/RnT3gfG+w6FfehirWl7zk1It8aSN3UOl1grs30fw/QN8LZ7Yx9GHnnJdEjpNeDL3P4NAAD//wRPm5WrEwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/daemonset.yaml + - content: H4sIAAAAAAAA/4yQsW4DIQyGd57Cys4pkbqUtereocruHE6LCgZhU1WiefeKXHLpUFVh49f/fWD3biEcYdpjbCQTsS85sAqcTgZL2FOVkNnB5858BPYOnq8Nk0jRo6IzAIyJHPQOSqlEVIJNqTmRvlMTy9mTpa+Sq1Kdji3G0d/ANF5ZYCk4321YgVUR8UBRnOkdAs+x+f/wpTzYbwjsiRUehkbaQUhlzGMBva8kQufrOGNTFfmN/l7WUrIQynmK6ZYNkNhfg/GJVWovm0ukNcxySZeSg8fddnuLatY85+jg9enF/JL+BAAA//8AY+/2wwEAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/endpoints.yaml + - content: H4sIAAAAAAAA/5SRQWvjMBCF7/4VQ+7WsrAn/4bdPbQl0ONEemlEJY2QxqHg5r8XRSFJoTSNT+Px+94bnpdlJL8ls+Ywo5pcJEJ3mKuJkrxKMUi8CXB0OAyc/RqlekkTnT779GKsFEg1VuKv/e/h1Sc30SPK3lv866ohQtmx8jQQJY6YaFlIEXNgBa0usWMShxFvWYqimO0cQtOvyLQDOlwz2x87nIGzReANQj3yPtkwu+/wLm7sO/nkkJT+dJvbzbFzXr0kDn+PLo1rR8szx3AX+FU20vGf1AzbWq0IsCqlzUSR1e463BdEnPM9nZ3rak9BANfeuXnoL+Y/R3QJksvik56yRmo+E0Vo8baePG73VW3hjCcfIbNewj+t+wl3e1wVdjV+BAAA///OBWFG/QIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/monitor.yaml + - content: H4sIAAAAAAAA/5yRMWsjMRCF+/0VgxtXq+PgikPtcaRLkcKNSTG7esaDtZKYkYyTjf97kF0lhBRRJXjvm3mPWdeR5EBux7HBnE48u1nBFXS9Dl+pxcr/xFNE6I6TpODpX2xWoU85YuAiO6hJTp5uALd6zCqvXCUnd/prTvKv8+9hQeXAlf1AlHiBp2JlXFeqWErsCTZF84J6RLMx5YARl5K1Qt2hxdiZDbmegijyhGie1pUkzbGF7+i7ubNvJCkgVfrTx2iLMD+MxEUeNLdinvZbXCpS72Pb54FIYbnpjJtWcjDMTaW+lBxlFtxNZ+hknvrbb5vhA/nIS19DNNKP2varIIVP3/cAAAD//160QfPKAQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/psp-clusterrole.yaml + - content: H4sIAAAAAAAA/6SSTUszMRDH7/kUQ++bhwc8yN5UxHuF3meTWTs2OwnJpIix311iqweVInoLzPz+L2FaG4BnsBsMlYrNEzrrMqESHA7mu2kq6VZwCuT7BibeUC4cZYS3MVbdxszPqBzF7i6L5fhv/9/sWPwIN6EWpbyOga5ZPMuDWUjRo+JoAAQXGiGVNLQGSksKPcgq5biQbqmWQaKngZ5SzErZzjWEzqzA9jAAAScKZYTWgMWF6s/Rx+XOvgCLJ1G46DI5BlrT3ANh4rscazpTzgB86fb3KqVOj+S09BDDyeCe8p4dXTkXq6gBeHf55Wcd8ZLQ/VjjAziJ9AMh8Z+erwEAAP//POIWlVUCAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/psp-clusterrolebinding.yaml + - content: H4sIAAAAAAAA/7xUzW4jRRC++ylKu4ccwIYVhMPcrCSLImXBykLu5emyp9ie6qaq2o5l9t1Rt+3JEgHixK27+vupv5njcQ68gcUTxkK20DX2i14JneDz59nfvWbLd4LrSKEiMPMTqXGSDnKK3B++2b1bk+O72SeW0MEqhY/UF2U/rNr7bCTHgI7dDEBwpA6OR3Aac6yub7KmkXygYnNJgeb0nJM66WJTYqz4N7CozieyZez/s8JEmCQirila47P0sYR/o5/AlfsHsAQSh++rjGXqazFZeceRthQ62GA0mgG8hUf6vbBSAE+QlXaVRtZjROckVsOaki8aGGNM+9VF526CfSn4y8AGbKAUigQUhz37AJJkXoXgKwhsTegloy8cv24i6+KwJ+hRIGvacSBgh01SCLQhMQIWCJR9aInpuYhbTfkGM645sjNZ18RgDsuHh3ZcNt8+KcEuxTIS+CGTVZHTvVEq46pPsuHtB8xXlwiN2Q+3rFMga/qNeqcwRYx6JZ+uIe1ljxqWq/sXUt1HcxJ/ao43EXmcXodkvkIfaqCefyLfJ/3UgWuhc+x+dfPS8Ea4v/0LYJXUp0JGlg6+bReAEZ87+OH6+rvrGYAWWdqvRnqCvoUV6chu4ANBn8SRhbRtQJHTFNsEp7EZoMGeYlw0AS2ROrh6rLJLOdQSjB5YyvPFoO3G6TsENKv9bmZ1kQ1QCYqxbGGZ81LHpKDoQ01hQIGPd03rn71KzpFGEsf4o6aSzy04Qz8U8wY/9VpRtpdp19TeJ11zAAyhJlCTarVuq9DijHrVzFft3Fhz/X9NlTD8LPHwmJK/50h2MKfxsh71B0kSLv/K8/HPAAAA//+7VOFyVQUAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/psp.yaml + - content: H4sIAAAAAAAA/5RSy67TMBDd5yuOskoWiYTEKlv2VQWoEsshnoKFX9iTiir035HjpC3QW92bnT3nleOhoA8ck/ZuwOld9UM7NeATx5MeubIspEhoqABHlgfMM4RtMCSMOkRvWb7zlDrnFXf8K/goHPvjZEzG1+hxuazkFGh8tcKVsErMcwd9RH8gM3HqUwnYk3NeSLR3qRjdXQxVtvJfyJqnvN/QTrETvN+M2KmiZugrm7Rk1m40k3oWuYBz3r8VU+AxFyjnUH7/3zB5UPyyUspYoFsOD/F5UPDA2ksDcgoN/3wsXu+84r2PUqNF47ygYRvk/B/arbi2RbtZANvtwzTb8D7RtcD8CcVvLC/yb+MbJUQvfvRmwOcP+y3Esn+WJeoxVUBiw6P4WOqiEN6yWtfFBCIbprS+zMdy6Hdklyf5EwAA//+TDZZSHgMAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/service.yaml + - content: H4sIAAAAAAAA/5SSzWrrMBCF936KwXsL7l1q1xcopYFAlxP5NBHVH9I4FFS9e7HrmtRQSHcS+s6nkWZqHci+kjqym1BUPrFRJoMFNLTW7Y4L8tUaPBgTpyC3ICd7RC42Bk3Xf92bDaOmww+88xAeWVh3RIE9NNVKAp/cbOlTjh5ywVSGEEcMeE8xC/Lu1kf26ElRa6umJDZ3u7bApnB8gitzTUSc0l9Em4PIXDjLvdkFvglnOHCBpr5WUs9fOzU/lFrrF+SCbIXPe2b94QWzns94mpw7wGRI0d1cTXxh735r4D5CH2TDiCD0n9buI4zbJHyvPwMAAP//8kuafjUCAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/templates/serviceaccount.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/prometheus-node-exporter/values.yaml + - content: H4sIAAAAAAAA/3SQwWrDMAyG734K0Xuy9urzHqBQ2F3YaiNwJGEppXn7kWwrG3RH/3z+/w+hiAYGq3hOAAUDm97GghGNRta3iWslyXCIvtDhF9JRykR9Ywr14CtTzfCdvuYEZ3LDQhm+BoZZhUM7y23w1YPm1x87NUKnYSt4bgy2+GRdHwmNP6g7q2S4nxKaPZ/H8TQeUyUvnS326ELhsBggVLKm60wSoFeIieC8+HTu+oCtdwWUCgjvSLPKhXbqh9hEG5OEj+kfrViNMqBZ47KfON3/an0GAAD//8HQ4OJ9AQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/rancher-pushprox/Chart.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/rancher-pushprox/README.md + - content: H4sIAAAAAAAA/7xUTY/aMBC98ytG2UaCQ8y1QuqplXrpl+jHFRlnWKx1bO+MgxZR/nvVmIR8tnQr7Q2c9+w3b97MHaylVXuk2ex0yiDHnbYICR85YLHJcSdLEzaE95oDHRPIzucKqHcgfkhTIot747bSCCVDMCgi810kri+8huZJ27CDJOVl8qwL0OaD37M7eI8WSZpuEb7kvSf3JKwskL1UGPUD9Cpovn8+IJHO8QKLwL+hKimGe6Q1GpSM4lPNaqPHiugr/0Lu6SiUKwpnP8gtGo7qKV68gtOp+wqczzPlCu8s2hA/X5Q3p/ATHksXKqgnd9A50goeyi2SxYB8i6Lfjh6/k7lm4dUGVm9gTvhYasIckm9YeCMDwuWIAXXYIzWCfLzJUQB3PVVGow3NAxAcMAZo/u8cQcQkMB/w+EocPrNYjCV3QIyYVkqTaWzdv7rzLd4+BL9aLlMWKQs+KKFMyQFJGKekWaV5AnNtlSnzobNVzBIQi7EIzbUNY9VBN0y94XhbSZ9MWHQ9Ptuf03qEspSzxvpro4cB01w3PU+G+VvcHPsoyrRy//CaM+l9FexQB2yqDhEdGQd2RkrAcJtUuD/m/wa7KtzLuBUl/YtZnaj9l1dfkQ5a4UdndXA0sYC5A5owL+WsGrjOTnsJ+3rq2j6OezhdU+XQ9IZurd9nGf4rAAD//xzHUuauBwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/rancher-pushprox/templates/_helpers.tpl + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/rancher-pushprox/templates/pushprox-clients.yaml + - content: H4sIAAAAAAAA/9RUTWvcMBC9+1cMe7fbQCnF1/ZYSiAl0FOYWLOOqCwpo3HI4ux/L7L8ofXuFppbfTIz782bL80wlKD3gFZBdY+mp1B5dq8HOB6HIXpOrBVZfDSk4Hgs0Ot74qCdrQG9Dx9eborf2qoavpE37tCRlaIjQYWCdQFgsaMahgGEOm9QCHa+D0+3Y+AUPkJ2UMXwCR88NpdIEV4tgIVi8JFMGPHaNqZXFzQSJlLewGqryAp8SnSAOXZJr96xENewG2m7InhqYhmBDDXiuB4JHUrz9P2dsp+T7FzaFDFrWfzeW9OXuaYxcSimSZ/O0zpFd1NBMx4gt6bmu1/Ymb9xN7pRjKyaf890xRliFO1sWGUz43XVnLnpZCaaAjbOCmpLHOZmltMWLnMeg05OAN1hu123cAhC3YOiPfZGHphaHYQPaeeGYZPeGKFi8i5ocRzfUX0FJNiuqcZkuw6tqhdDLIfRtrRhT8CcGwuLKvAGz70Tyn1nXUmms5EwBddzQyFHLsbrA1l56zhuPl7JoCzLk8Ox3Iw74hfd0H91MOaLEC/FuGHLdvlsr6J3FGB67jWTgt0Pos25rSIKxMWV3eu2Z4J0di7B5lvFTlzjTA0/v96OFkFuSW5nwWvUkD/tfy97Hef69ycAAP//XZc5UkcGAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/rancher-pushprox/templates/pushprox-proxy.yaml + - content: H4sIAAAAAAAA/7RSQW/bPAy9+1cQudsfPmDYwdddsyJAu16GYVBkNtEmkxpFFym8/PdBkuPGWRYUA+aTJT0+Pj6+cazBPUHzaPyAsYkoz87iRyanLHA83nxvkMzWYwfHY2WCe0SJjqmFvjw72jWWBTk2lvv/nv+vvjvqWrhfkFQ9qumMmrYCINNjC+MIin3wRhFWYYj7IHy47J2gK2hS71IXg7F/LJ4Bc4k3W/Qx4x1ZP3QTfCN8eLlsVsCp9ieQow5J4V3iiQFtEo7UBXakMR1qCCzaQo8qzsYKACCpePkk/orA0vEEmAUCXJhvvUPS2OxVQzz3PvMbMX3unr6v0e4xWfk5g7/MdEhTxTfertNQLVjuAxOSVgCBuwcjO9R1cScPcw6o4WRpjYc0Jcq5/ffo0SpL0dEbtfu79FbO9ZuXE3/nWd/cV/Hm6p7eJ8q6rhcRvQzjW1K46PRv43djnEXs0gamLRXRi8jlEI4jCP4YnGAHqzvEbs7ThN2wKCiDZXpyu0EQSvd0511UpPQ3gcFo5l1dYzlFUVjZsm/h4cMm32jO1Oak55qA5dr/0pbXhL/+/QoAAP//J+wtIeIEAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/rancher-pushprox/templates/pushprox-servicemonitor.yaml + - content: H4sIAAAAAAAA/7RWS2/bRhC+81cM7EsM2JRkN37wUgQxihpwWiNyAhRBDqvlUFxoucPsQwor6L8Xs1xSkpO26aE3iTs7r++bb/YU7rESQXtYCx3QQUUWrDCyRnvRBle3lr7m2Sk818qBciDgjzfvHi8qso3wHkuolEY2uEephUVYC6vEQqMDT7BAaIVzWIIynqCjYMFj02rh0eVZtg+vGrFEkGS8UEaZJSzI1+BrBM6gA2HK+E9qhcbDRjhYokErYg6Wmnhakda04ev3JFdoObnsFGrvW1dMJkvl67DIJTWT1lKDvsbgLiQ1TTDKd5On4OonS18nC02LCaIoF3hzfX390+z67m52eXd3OZWyEkKIq6m4fS2vbyq8nU32sU4fZxePs9dc2G/ksQBVQXCcjwCpKZRczVqVaM9jvoZKblQt/FB6/Dzk0Q3lNsF5EFzbeO2VOzu6+MqdZacvbvet8wSpRCk8wkb5GpQHMtCS9bDdQv4xgp/30Vwev+92OTxUjBnUYo3gWpRKaLDovFXSKzLuPDuFVyrHfEjU1RR0CWR0BzYYDoJelqlQBjEecc6WNLRaGBwuxShCSnSROxF7ToT6pox+zjgqp7VRWoNBLNncoT8giINJqp5vzFGj9GR7FpFm2nD6HI1sqcxSd4zZWzKVWob+NMuWmhZCFxmAFN5r5F8ArnMem8Tb97hUztuugJOTLI4Jk7hpyXA3Ij7KwQKZAg0Z5climVrGBZ1lo3UBJ+Pv0VdswMFUcIUNcv8TbYbyFwhOWtFimaXzJ7K+gMubq7vD0hDmaNdK4rs+m95LSs2NvseJOnAGaMqWlPGZO3JRQAaAhoe+LMDbgFmWUCi+OQE4KGxTK1kfcXacb4a2Jef3J2PZlEG8XsDd1fVd9PhQQTAOPU+Vcv3tMilLotKH949R3PaSkqooojwUk8kgdxfb7QjEbncRjfPt1ogGWyck7na5W8tc6uA82lyTFLrYbns7Tmy3i0nNe1ovEBoqVaVYBasjjrJe9twosdXUYQkUvFMlJrMYATY1WjxInCfQnQP5Gu1GOQSNPDrKgwlac3fY7IPVkZWpP3E+KIJwfqSk3KuK7EbYEoRh718CB9hzoGYcHp74+uzyJp/m03zWu03X40z38jRkmHyk5h+yKOoIdyMDCA4fuX0coYBKaNcz5GgQI2y9LsQxSjxYKwG/Pj8/zTNIAh/H8xTuKWrqWCEnoyz2RpzRoDH7xH6OV0emDon8SOukRVZVMdApakqIp74GUeKXwOct2kY516uOKaNPAZUWyxQnqVxy7Yl7E7+89OtphWbYIyUsOgbeEzRihSCCr8mqP7FMcjBCEcMEh2n83/Te3los0XgltPtvZZfKcbNgPn8EhzJY5TuQNcpVH0mZ+BXnK9V+RKuq7tj/vbJRkjsuPBKsZ7lBxkbYDp4f5yDR+tiuFcY9lmoaKCCF4fGqKJgy+mX7e2UT7znOL0ojT27/suEd7YAn1sc3yTebL3IkT26G/Wotupbi6ohZOfRemaUbQ3KQMeYKu6P/Urw9NIn8fo+OgpUIWjUqYmPTF1fAdtcb/d72SyouN15gPGLDk4GSZAyg3AtsyMyR12UGR1sveoTDvVfAp88cIz66+rGx2JJjNe+K4f23F8Q+RrTzYlnAeprP8ulFspvtz/mdIUxZwKeTF5dPYkBJbcfdcA//HHkRXLegr/uIs/xqls+yLMrLv2wVX1sKyzptlxebJS2HwwfR8NZg1+NquZ3eTjOAH0IrmX0Hr4gDf+C3kADWLz2oeI9fw+D9D5AN1fwNYsPx9wCLZyef/woAAP//nUS7ZBsMAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/charts/rancher-pushprox/values.yaml + - content: H4sIAAAAAAAA/+zPz4rDIBDH8XueQnrX+C+p8Tn2tDejYxK2URnt0n37pSyUUvbYY2COw+fLL0CBFCD5DartKEluB0u+rjPQ2lwDukPDzdeOEISS69Yy/liytlaq7fv7IyZoUKlfHbbKasvoFmBLzssFXNkq83nvO0K+AeuWkyWSGSb0I1Yw79BWuFaacgAKt5KxAb4zKZjgjD+SC7rokntnYWCKjf9tcsGVN6+RTD+NQZf8CkjLta4F8+2lFLcL2L5n7H6vv/1f9BnnTBz4gR/4gR/4Cx62BWqzpK5ODqM1YRyEUMpzGZXwPkycR2lgClrwqEfuPRgzazWdJ69GHQfHo1Fx9nOIOuhugQToGgRLTpJLTvlEhf6QymptB8XEwLU5T+bz1P0GAAD//wLj+7qpBwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/requirements.lock + - content: H4sIAAAAAAAA/7yV0craMBTH732KvEBTm8+N0bsxvBQGPsExObbBNgkn6dC3H61Oau3YzGcKXgn5/349OeSv0KFRaKRGX65WjGXMQIslO3UHzHyAgFmLgbT0K8YY+4XktTUlE/wbLzbDf4TOeh0sXUpWh+B8mef9cTIY0GeyBgqe+2AJKuSVtVWD4LTn0rb5kCCtUToMuf3BfY/dXakcDRwaVGM3R7bFUGPnM2MVZnh2lgLSo2HBizVfv9+wR25vxDm7iuAIBh5lvvAP/vX9LjfWP4YECtzTeATfpJjOM3ZOjsDIGilzna8d2fOQAo0GXzI64Q9rAtmmQdqBgWqqvubFjPpRN1jmOef9bwrIr18xtZ1jRfjuZY2qa5J63hkRfj/Jni8J3Yb8CK9tkCqhVh//qtXpwy+2fXOsCN/k2zdm3P0Y+3/DpPv3J//lyXUH/K7a5W77L7xI7/S3PuFEeqa9+xEj0i/lGzRCRLyOYskafIbFGC9RhOIzTShSV6GI7UKRuAzFeAt/BwAA//85BERZ9wsAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/requirements.yaml + - content: H4sIAAAAAAAA/2yQQUv0MBiE7/0VQ/n4bk3vCx7Eu4qI9zQ724RN85a8bxAp/e/iKsWDx4GBZ+Z5jcRzlYUW2RRPK6s3qYheMZEFqaj5nHl2eIgMVyRTqHlriukDtZWSynzqgGubGCxjGIpfqKsPxLbBuKzZG9GvB2eQH447qj0c9h0zDaucFUNGX5nplXfbhn/u5Tu4R78Q+9533VvSZIhmq57GcU4W2+SCLGOQStHxDx4uUm+XaguWpCikIMp7Z4JQ+TXzP4KUS5pbJe4zqy2++JkVvpx/q7qJKYGKpqnMsMhDn/sMAAD//9ZqyDNXAQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/NOTES.txt + - content: H4sIAAAAAAAA/7RW32/bNhB+919xUFugzWpls9EMCJCHIO2GYVtSJEWHPQU0ebKIUKRKnpIYaf/3gaRkS47kKD/2JojfHb/vvuORr+CcaZ6jndzdTUFgJjVC4laOsLgUmLFK0aXFpXRkVwlMf/wIQJlB+pWpCl26VGbBVMoZkcI0Rn6Mged13DqstFJTBskbt588KQFqce978gouSuSSKfh0WxpLaF1HDdZ/06tqgZ+IixQ1WygUHT3Grhlt49YL9qr/vw84FsVQzKyz4PdMyFaY9EryigbZnxhN1iiF9m+m2RLtGCmDQW2OD4Ou5m4EKFZi1JazYdRzanTBcxSVGlebe+A2weHFq7nbsRhrsDP17P7qczR/tuZ2NUZvB9gm1L9wNXcDC1HjYLpZd2WEtlfw2ZoCKcfKwVmJlpGxXvL+HlzL4hAcEmRSIa1KPCoqR4zneAh7+yHR/p4//UwLoBxBswLBZOGb58xSCl9y6UA6cFWWyVsUcCMphylTaKmI7fcebnLJcyiQaQ9ckGWc4Jc5ZNYUoIxeoiM4mAO7ZlJ5ac32G1/KtYqpqVWkns7GlXqsQnoSmJ16rk3pPPLsGq2VAuE7kK00hw8/h09ZXATukEyTntbY35ucWGSEwNZbZJVSK/hWMSUziQJYWYbapJN/MCYP+KDJ18nBAjmrHIIzBcKf1QKtRkIXK5pJVMIBswhKFpJQABkgX9m3i1Wo9sfTC4+VegmuRP4unfyRgUWFzNW2cKOJSe2iMfGfJLiRSsECoXKepwMWyNdsv3gfTVEajZocSB03jRl4rVoISdJopsCiM5Xl6IByRoCbxmg8jDEi7u7ISr10cZsGEVZC+BLJrQOY8AXQAvCWLIP5r4EE4/7WeQ/ONFWVRoPLTaWEF3Uwn84/HM0O0smofvHKuz3TunCbxXWbNJhBQNNHs4MdfaTcJtPrIP7waHyrtniu/Y1Z0vNofgxec+38fTTBzUNi+sYlW9nivqNy9jwnOk+LMFd+q+u5NToat8aNgB3etsQ0qATeSs1VJR5skPRd7ygYIr1JNo725t9u4hvc/0a9PanHkW9H7KbfRj5fQD2GW/PND4xrtM5PBebijKsHZkQptkCVjpMVIixmGyUWS8U4QvJTAsll0hzXr/WO3++dl9Zx7lXwO2q/GcKCOckju5EdE7GJzxWIHsLdHRAWpfL5HhCU+rD6tgiBr7cHxbfKEHpUjlYSW27DLtBeS95Bbs1PborC6L8CzbAKZP5lheoFQLc6Q1a33xw9CsHVrBjnptLkb01/yT5uctRJjmOO06H7YZPjrD8yrS9MHwsAvn7NnN/d+f1HYPy+oULb43yLQVJ/JE/NOzjGd1r1LIdaQ/LRHr2UN72Dutedl3blxdzoDPjn+NGZ+yMd2RHzZE8G7p+WK7t2fZovozMOOTM5VsrcBGPaz3ZX+guGjH/NmvjqE6ghMxaKSpGcbkACS2VWRfNS56ZYSI0i3nRu3At4nS2pZW/ZtV7vvEBjdaYPonpKuvUkjUpa6Pvl+i8AAP//RK8yxTsTAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/_helpers.tpl + - content: H4sIAAAAAAAA/7RYS2/jNhC++1cQvkfJAj3pFvQBLJotArhdoKcFQ41lohSHGY5SG97894LWi9I6jqi4vnHE+fhxXpzx8Xgj9FZkX6WpwWfSAHElrSyBMrDyyUAhXl9X0umvQF6jzUWFVjOStmWmkAB9prC6ffm0+kfbIhf3EcSqApaFZJmvhLCyglwcj4KhckYyiLUjrIB3UPsbdECSkbJtbUzYuhaZeH29iRm1IN5JNQep39tArYQw8gmMD2SEkM7NxDjH5HgU2ipTF2/oNScFze9C2wIsi58CB+9A5atLVo8XGwcq05UsoeH/JD18DssJc3/wDNW3ArayNvyNoNSe6dAQPx5TDsoIHPrg4ENz5kvn90QclmUACFcFWzRYBM5oJX0CWKfSOlB7BvuASpoEjEirgfFAL1rBvVJYW/5jXmCOzvgRoQ2yJNfCnoGsNH9RSywS5GI9+4JjnHVjdOMhMJG2OI+ibUngfZ/mFzft0LM/x3HH7PLb21M+FLCfg3KXEpSENcMjwVbvx1f7kctAZXGFyVKLSv7WRdoAyRwST/IgKUQsFrABA4qRmjvHklBKBOPfsjJL8Ma1aZSqTtYeioQkaxTaNMXyN6RKckqSdjriu3iukUH0WA/wAiYXSVgnnQkUAYPltGLW64ywklzoQRF02dMu0h3XobzpsyROCu1Wl5sTZkMsliTYZwr0MUJfpPMxnbBON1WEdR1rEXisSYHv4qhdplMbkK7EbFQeA7dBkPKCnC2zC/h4UDVpPvyMlmHPfczHwkWxP0K9ju08I/WtVbtYwK1FuQ4nh8WXtmdu6/AgSOcWo73HD2k+6L1lfb/daqv5MFNLdttPt+pWia1wDJJqi173PUPA80JDrHeSinVzwZPj4q/N0BFqx3OtCYpf6jBBbdQOitpoW34uLfbiX/eg6tND1WrdCEaHBsvD73BIeZTHJP4cQDqa4XcaVoaWQvS/SrLaPURDU/c7DU+T0Sz6Gn344MQXd7LLHeNxy+85xhFsgRZ45l/Q5Y5z8enurrdCOKOzOVAVG+//dOQFV15w5nvuvL5Dh3xbUiMZTThIo23f40iQXiNjtLk1vDT4JE0z6D7WxmziDm8qPUfpLYCrNXcstQUaeql2vaiX6rCu9MKRxtNbbqT3YXBu37mpOMTZBxCX0pNFoUMwSPMIvQEnwnQrTlEvDV5Iwz8Sc4tDozLB+i8AAP//gYVD1dwTAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/alertmanager.yaml + - content: H4sIAAAAAAAA/+xXTW/ENBC951eMcmBbqcmqfEhVKlUCBEgcaNWKXhCqJs5sYtaxLXu8sIT8d5SPXZKlpS1tpVKR047teX4zbzz2Nk0CcgWoCzhKb1EF8ikqclyjxpJcShpzRcUxHGnDcO+SqXFjSaTB0ze/Sc9SlzckHPHxA+C+n02FItTBXuoftdSeUaljaNsIrbwl56XRGeTIolpuTqO11EUG35s8qomxQMYsAtBYUwZT7KRpgKm2Cpkgts7UxBUFnxhLDtm4dBWU6vxiSKFtE2s8JwUpYhoBvUVBGTwKtF87IEUACnNSPouaBqQWKhQPeA7rOrc/QOqCNMPnAwIAWvvEvccAptFHAKi1YWRptM96wLgiVae+WlbGrOMM5gEfzI8TiTVKim2cQT/ogxBEBRUng71Cqai4x/tXkmXFcQbxF3HkLYmOwi6Sgc5Uvu57dQm7bxQCniOEHpU42ynxGmoA7LLQ/ya3kYK+FMIEzT+8ReTCaEapyflsH0QyJnnUdjh9+1kAWWN5WPB+65nqu4JWGBTfOSqlZ7cd9m2a+zvCeK57vNSRNV6ycVto2+xJLozlNPkjs6ug1FVfjz3Hx2Hs3mGOJkxdoy6yyVACy1zqpa9mY4mYmRcTC7q2uQ45CVZQEsOwMyT62Q3jZdJPneEClgVtljooBZ9efHJ6DlyRntGGPeuhDN4F8RnDlTwfbUee0fFO9Ev9LUoVHEVJksyuB5ejSDFwZZz8vW966frMp9L8dWV8rYJnctdG0dteHbvm/4Ga+Gdx5IIin0UJoJXfORNsTyiBOI56nUxwgsaxoaJ8BLAhl/sMflqUxIsTWAyEFj+/UMCvpC6kLv/X8V/oaBRd06pjsVPyH7IfAfz99Lx6rn3IfyHBfXkN293MLsj39sA7LN59iR7Q/g+8UD9WcXf/ZkgX0LZ/BgAA//+8rZuI2AwAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/cleanupSecret.yaml + - content: H4sIAAAAAAAA/+RUQYvbPBC951cMJgvfd7DKQg/F0EPppXspgcJCj2N7nIjIkpDG2wVv/nuRJafyNt71vTlF0ntv3htpPI4lyA5QtyAeUQ3kBSpy3KPGIzlBGmtFK4dSHx15fwVdLrugt/fknmRD37EnqD6DdVJzB8WdL+98Af9J3aihJSisMz3xiQZfGksO2TjRDUpp7KkA8T8Uebnitf7BOA76N70ljLABVM5MZwamg6NOPgemkp5v0/PFD0uNyJmzmkU++VUHc3ci6gVa6nBQvDQxO5MdiK9osZZKsiQvvhweHsl5abQX39BDoYl/GXeW+ijOn7yQ5sPTfU2M91Nf0MoEr2AVuRtHIOXpNYGemfRUaoHU7WTvLHVbwUNMs+uJsUXGagcQ7qmCcVze+OWSjrzFJp4z9VYhr1z5FVuAgKwfbzUVtTaMHDzHgtlGFdyz+Ym92i7yAlK3pBk+zhZC/klaYU3Kh8AAaO3GRDFMmRfelCxWiyY2pUiE1QDjCG9OXOQHu0sJb6kJod2gaEq/xf3JeE43EuAO9ZFgH3bfnZOMClBCWMZWW5UU9vMpwInZVuk/wDRi1bKmDQXTiF5pUTps/pG2uW781dicSbfVYhMge+Urz/4GOnylFujps3Xt0DxlN1dpVlND/oXI770vVikaq+1zzn+Nx7J0/v93AAAA//+j1NNjEQcAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/ingress.yaml + - content: H4sIAAAAAAAA/7RVTWvcMBC9+1cMi4+1Sm7B0ENpDw2UEhoI9DhrT3bFypKQxmnA3f9eZMlZZW130y+f1tabN2/mzWiHoQL5AKhbEPeoevICFTnuUOOOnCCNW0Urh57co2zoltxXsko2+Gu41DtH3i/Aj8ciCCkb02uG+t1yfP5yZ6kRLtJ4+AFSM1QTzaTLuHWyhBE2gJ4jk8QYsBo7K2QkQCvvyXlpdA2PV8VB6raGz9Jz0RFji4x1AaCxoxqGAaRuVN8SbKwzHfGeel8ZSw7ZOPHQKxWQGyjheKzy7FXKbsml+hOrt9hEaqbOKuQV7mfsBkTovGTqfF0MAzjUO4JSvoGSQvG9ZqkmV47HAqCCWNZN1FAAAKQRKsUHtLiVSrIkL97f3qRuePEJPWw08XfjDlLvxOHaC2nePl5tifFqE6kB8gauolNKIOVpKZCemPSYdhah29Gn8Jo7Ep6/d2UYoJSToD82pDwxKNyS8pPAUKS9rHBFXXEpLiYLkWGVWtIM1ycpk8MvtiPF5Chg8w07tQJcYw6+XEiFWhtGDq6eoNnHcXqXk+ehr1DgLTVTz12vKDOggr3xPHpwliN8v3X0IJ9C46dJEMvAj6ZDqU8CwrNntnX2DmCR98+5g8a0mzbs5RnriH1JGPWGgzh/VoXQcg4C2GJzIN3WswOAdEd++dfLsZAj3NWxtfnlPXOpOh8U4867wcrfUeOIg+zVw+U/oUjNaua6f9me6n8MwfLov0pxbORU9NKILtHYmdozNfkd+1tJxtbP6c4XPX3Izc1//wwAAP//lgb0b5wIAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/ingressperreplica.yaml + - content: H4sIAAAAAAAA/6SSMW/6MBDF93yKEzv5C+k/ZWvVsUOXsh/xAVbPZ8s+o1ZuvntlgmigIIEY8+L37nd6V8oc7BpQDLRL5EypRaaoDgU3FFsSXDFd+Rm8ebEp5qDWy3M2G9KjYRgaDHZJMVkvHQTPtv/6t1usSHHRfFgxHbz99TeOFA0qdg2AoKMOSgElFxiVYBaid6RbymnuA0VUH9t1Zq5PZ9DCMMyniIeQFLC/Jen4doxqABhXxKnCAGAIN2ZcIikFrPSczRXfOKk6v8GKIVH4XxlSoL7OPzR1cxHOytMOLdc6xl2myn6RB7IqDYn5/bgLDT/fBc/gTrQ78S7knQAmYurVx7FHh9pvXyfFHqo9O5y9PpEevMQJ0E8AAAD//4f7+pZ1AwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/podDisruptionBudget.yaml + - content: H4sIAAAAAAAA/6SSQYsTQRCF7/MriiDkNO0GFGRAL4vsQVAQ2cvioWb6JVukp7up7g6u4/x36WSyLhgh4HX6va/e1Ktpakm2xN6SuWdXkAw7aB7Z8w5q4Ll3+PO4c6FnZ7TnwQwKzrj4FFP8uDjnudmLtx19DQ4NR7mHJgm+o6OSS34MKj85S/Bm/y4ZCa8Pm2ZEZsuZu4bI84iOpokyxujqzFXUMCI/oqQ2RCjnoGZbnKvSFRma5/blfyyQFHm4hvSsPaEaIsc9XKphiDjGKxmXkkwTiR9csf/wnSZV5y8Sb+EzvakZtDikrqmFvdqXHt9Yd8jLMql7TxZbLi6TueXIvTjJgmQ+lR6LyNzJs/5c2l+kLweoikUduRxHwniA3oYxsoJWH2hjNm/NTXuzupRknpuWOMqdhhJTRw/rGJwMT+vvRx5cwgUNfmT46k9nnbenzStSKDpgQdmEoajkpyNVUPVEB2ifuloOPaxLwvHj2fm5tlmra//vhl7E+h0AAP//waIgOTcDAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/psp-role.yaml + - content: H4sIAAAAAAAA/6ySv2ozMRDE+3uKxf3p44MU4boEQroUDrjf063tjfdWQn9cRLl3DzobOwYnmJB6d38zGk0pLfAaUAcwK5RM0aBQSCMqbigYUuyFzsONuB7FhB6tsYEw0dWRj/7peDlNDXpeUYjstIN5jDltXeB3TOzU7O6jYfdv/7/ZsQ4dLJ3QI+vAumlGSjhgwq4BUBypg1Ig0eilSi98cCOlLeXYOk8BkwtmnUXq6gIMTFP79TlHSPRobyGddg+oBkCwJ4nVDAB6fyPjmpNSgNVKHr65OyjVyw9gHUgT3FUPwQktaV0toOfn4LL/IdQG4Jzp30QYc/9GNs0htEf6K4U9W3qw1mVNczo3Kl2ULV5gXk4GTsDfflxtOencxc8AAAD//7dZMiPxAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/psp-rolebinding.yaml + - content: H4sIAAAAAAAA/7yUQW8jNwyF7/MrHjaHHFpPu2jTw9yMJFsEyLZGtg3QIz2ibXU1lEpx7DXS/PdC8tjOAg2Q095GFPm9R9Ly09MMfgUSh/aRwsi5pcBqAwmtWVsWWgY+X65DXFJodUl92yuT8f9epZxup8rn54aSf2TNPkqHFIPv9z9s3y/Z6H3z2YvrsIjuE/ejetsv6n0zsJEjo64BhAbu8PQE4yGFIvkuaRzYNjzmWUysZFHb1RhCSX2HFs/Ps5dtNECgJYdccACl9Abea6xpZK+0PReJRuaj5NI6QOdA1xTR+BcN4S3l/8KLYzH8XEhFlsUdPuGlD6N7xfmh1+L9a0RO3JcJJPVbH3jNrsOKQuYGuMAD/zN6ZQeLSMrbUsa5pzDZsQiN0dqaTCHE3eLIuT2lvQT+sfEZPkPZjeJIDDtvG0iUWQHhOzifK+js6IXi9xWyHA07Rk+CpHHrHcMbVlHheMWSGV7gONmmGtOpiRuN6ZoSLX3w5rku/gKYYX5/Xz/nVbePytjGMA4M2yfOBXI4T7+VGS77KCu//kjp8hjhIdn+xuspkDT+zb2xO0Uy98p2Orq4kx2pmy/uzkXlTWRjsceqeB3ID+V2E7P9xraL+vk8zxK8W1x/HVjc3ZwDOso8/5lZD84vsGAdvGXYhtFHMfLCWvc4ymEXdQ+n4WdQxo5DaCtAx8AdLh8Kdi774izzvZfxy1GgbvjwokE5l6lVMYmuwJQxZi9rzFOa6xAVSrYpFjYk+HRbWa9rjSkFHliMwq8axzRtZEr9OGar6Yd5Ksn6uLNi7UPUpXcg54qBYqr2ui6gdsqaYfDS4cfpCAz0pcMvV1c/XTXAKlfVbyuqTO53CfuHGO2DD5z32Xg47vjFf0DzXwAAAP//w/sBvboFAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/psp.yaml + - content: H4sIAAAAAAAA/+xYb2/bthN+r09xINqfHSCUkd+yoVCxAFuwDt2LrUiBAsM8FDR1ljlTJMs/bj1F330QJTlSkjpJ4wHZML2xSOmOD5/neHdyVVEQS2Aqh2n6jsmALmUSrS+ZYgXaFBVbSMyPYKq0h1tfGQ7eGuRpcPjDJ+G8UMVb5Bb9EdR10i2VXqBE5jB97V4r55mU/cNnLr78MysRsm9haqxQfglk6J8+d3Q4JjAVisuQIxBjdYl+hcFRbdAyr226DFIqViKB9GiIYiq1XgcDZHNCgLQo7/LV+HGG8ehsiHbn2OKHICzmV9jPmWp40xu0H63wCNgRA605PHcgFOxcw3OXkhETD8B0BIT0UFDlUNdXdwkz4h1aJ7TKYHOSrIXKM2g3npToWc48yxKIUDIYcV5V4LE0kvm7WYa6psYiFa22ncMIMYM7HQ2304AGiPwxL7RyDToAskJZpm41W2m9JhmMF7v2nOYo0SM1Wgq+JRnESRc4R8wxP27HSyYk5rdYf0RRrDzJgJySXfzedgRavdIB2FYH8PpXVsp7G12CUDkqD6djHRMAyRYoOw6YMfcks1NkuG4Da29MtSs1lmM4bYTso8Ebea7VUhSddsNnW1bKFrSRMN3HC48ujuL6i29OUXG4hA9Be9yRIh3uXeJO7593rfL+MDNVIDxb4/YYnm2YbHLS7bvuVHglJLoWVlVFQ6jriCea71mxuaWUjs7ognm+mu1O6k968ZSPaR+dXxpbj4/qJ5MqviaJM8gbCP1OWjhD+Zrr4BI2VycEPEQI1SnxolfiEGoA9CzEe7QbwfE7znVQsbAdfOdcK8+EQuuy3SZoRzLXZjs0oW3u3b0HIEpWXA99t3Uey/c5LlmQ/r3FQjhvty2Cqtqb1aO/1KLRTnhtYyq4l4lnxVCGDtmbIOWbGJkR491uzM5g7I3rsmQqzwZTFGYLoWZuNZqjfDQ8G4ygKQDrsEDuJRTo+16GqgenjscFwdAYzmCW42amgpTw/7P/nbwEv0I1gg2AfKX7fg+YtMjybduTOXL91U/Cw8locilejsY9B6bJ1Y9hgdLcbqkNCqiGpoyNljnwQekkNTCpKugb1WpO+vw0J1k1J42LOclgvrf/npO6fkgPDnU9GcG43JHIjJFboEugt5PcpXd8BM+HY/VGsuuvUVGAzxeYa8/a8rHbuUXnmfX9if9FvWJCBos3ugS7YDxlwa+0FX/G2peuX7hU6KvO4VwG59FeaIl/bwdxuA71ydTyr0hig0SXJRSYET9aHUwERIE0+cKi08Fy7ObayHQJwAbtwmXw24RbZB4nxzAp0Dc/MVdMfn+kkt8LlQtV/CfoFwiqJV7gskHRS7qH/QTg5jE6ONcuLP5A7mOc9V/mw4bpqTX814N38IfCCPY/4Ivl3xXcgw/KvwIAAP//UXS+5NsTAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/secret.yaml + - content: H4sIAAAAAAAA/6RVzY7TMBC+5ylGEddEQuIUiQuc9sCqomgljrPOtFg4Hq89WYGyeXfkxm1d2lKj9hRP5/vxN+1kmhrQG2if0IwUWjTkZUCLW/ItWXw21MM8V+j0E/mg2Xbw+r76qW3fwZr8q1ZUDSTYo2BXAVgcqINpAqHBGRSC2nkeSH7QGBp25FHYt5vRmNhaQwvz3OSyiSQ4VCVMh96FqgIw+EwmRDMA6Fwhx2UnAIHMphnYamG/o7oYVVii+LL0tRGUnuENXkYWit6mCbRVZuyv+FicRydvoG1PVuDDgrs+pKScsElF+DsOpghwrkS2LxVFa1lQNNuwZJ8VulIjOclVN8GR6oo8KTMGIf+wWhwdjjeHd4r8zyTol5C3aB5WKYmsUJxETnLXXAxj/wkNWnUM4rR2O41zjjtMrHn0ir6i3VI4t5N/G/+3kd3HE7xTuvfQfbxHCaCJl12odpW/LpIeARx7SYujOW6yi9L5Ye1ItRH7iAPtNVNC9PJv6/LbEdSP3NOKvdR7NIBNpduD2nfmyocrxY8ronEZBYCg35KUGTj2ZpqehRWbDr59XlW7NUoqrtDjWj5btXnh7ndIDLaD+qb3mP881/kP4U8AAAD//4FzZXwUBwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/service.yaml + - content: H4sIAAAAAAAA/5SRwUozMRSF9/MUl+478P+4mp0vIEKh4PI2OdbgzU1I7nQT++4SRmqtVupumJzznY+ktTWFZ2L1NG5ZZtSRBcUiK+9RRijvBFcOK8ohONw7l2a10RWwgY7HgXPYotSQdKLDv+E1qJ9o8yU9RBh7Np4GIuWIiVojQ8zSIatcUoS9YK7rlFHYUvlt/IEjVjT28QVXM7tbmKfsqS28g9SuRcQ538hY6utzxaE1Cupk9ld6y1JvvlFQDzW66w4fj3LLnbNqMraQtC72Zz+mLmDpiaP8mfVdCOr7Z4i8x+MssoErsB9H9pJ2LONl9BP6/wL6HgAA//94Zx8zhgIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/serviceaccount.yaml + - content: H4sIAAAAAAAA/6STzYrbMBDH736KQbSwe7BDofTgZ2hL2cBCj7PyOBHVV0fjUPD63YsiJ3ibpPV2fdJYM//5zYfGsQbTA/oOmke0A6UGLbE49Lgjbsjjk6Ubl4n4YDR9Cd5IyKbt5zNMU4XRPBInE3wLrvw2ftfowBRSo4PbHD5UP4zvWti+EKocCXYo2FYAHh21MI4g5KJFIVCRgyPZ05DqEIkx5+4Ha7OrggamqV5iziIpol6jdPYtUhWAxSeyKcMAYIwrNa6RjCMYr+3Q3YgrmXLkMxjfkRf4mBlSJJ3zJ7KkJXBhcSh6/3kB91a8osFkCVNp1bvmoVjNV3QEz/BzCEKlLfnLI6/n4baghAdSy35vL4Gz0Jm3zkkiGy89qPdJwd1f+7Oczf1LGvJdDMbLUbqGGFiOFVxd3KWxjaSb7H6scK5sfhZrtt54IT6gPYWe7NvZ/yGQc5PvTmZE2beg8lDZuO3Q9+YXqI1aWRmHQegbU46apo0jYaOTql5RYYl5oON2Gr9LJ7SLizZvuEQLdxK+o7P/KX9e/k/35Q0uWvIKbr4k5j9Z12PyVcArdPPxdwAAAP//lScIeVoFAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/servicemonitor.yaml + - content: H4sIAAAAAAAA/6xUS4vbMBC++1cMxsfapbdi6KW3QlmWDSz0OJEnqVhZUqXRQnH934vil+LEyfaRUzya+R4zI3VdCfIAqBuonlEF8hUqctyixiO5ijTuFW0cenKvUtAjuSeySgqc0/s+i8iFMEEz1J+u16cfO0uicgOMh18gNUM5wYxEA8Ym3IWcEwBa+UzOS6NreP2QvUjd1PBVes5aYmyQsc4ANLZUQ9eB1EKFhiC3zrTE3yn40lhyyMZVh6BUzMyhgL4vU/ZyZLfkRhcjqrcoBmim1irkDew5N4cq9k8ytb4++XeojwSFfAcFRfdBs1RTc/s+AyhhZRMAYLC6G3SdIqnj+Pt3110HhRw0TIB/YbhYEBTuSflJIABae1/hhrrsXt1AFivjwjWkGT4uUsa7cb59FWptGFka7ZfUJBhHBmy+YatulW4Rkm6mgLck6ptahAqeyX15XDDm0Klr9/NXnFtMymDzGRVqQW5nghP0FJcyacFWRupgXGQhGxf3+I854qJHVyeA2xbOAtY4TnaqXBa/eNvDFAEesKVUytwq+rF2wj8tQf5gGno0jvPzKj2Grw1oOrvkOfMzeboGYS/KGd2ReItyOV2qPCkSbNzqGp7drfkkCb7h1t94TGZIz8h0CMoTVy9hT04Tk6+keW9NUw6zW79C/+sFi6OrIb/SpzjTvs+zZBrJ398BAAD//7zUu11JBwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/alertmanager/serviceperreplica.yaml + - content: H4sIAAAAAAAA/4yRwWrjMBCG736KIXcbFvaw6Lp7WSgl0BLoUZb/NGpkSWjGgeL63Yskm0JoSG+2+OabmX/muSV7pO6g3QTuTEj457mD173DQMvS6GgPSGyDV3T51ZytHxQ9IV2sQTNC9KBFq4bI6xGK5pkEY3RaQLuYwgg5YeI2RCQtIXXHybmM7qijZWlzx8FzQ+R0D8fZRKRj/IHqWw3RW+gfskvR9jrPZL1x03BDVFtn1QdZP8AL/c6716U4agNF56lHy+8sGBuOMHlS4yYWpP97RY/BoyGKIcm6RLtGchKJ7QhJ1tQBK1UWvA6ea7BdBuoEBU9BgglO0fPf/fomOr1C9vdEX1jVMRyMhFRHvHH+rXiDc2m+RnjRo7tPX4dY+8Ax1t/zH27LiUum290K5IfSq3zl6s8AAAD//5USqtGhAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/core-dns/service.yaml + - content: H4sIAAAAAAAA/6SSQY/TMBCF7/kVo4oDHJIIiVPOiNPCYRetxNFx3m5N7bEZTyqhbP87ctIuhbZSEDdbec/vm8mbpprcEzWPxo/IjY2Cj5wbsOk9BjocKpPcIyS7yB2FyE6jOH6elbEYQrt/X+0cDx09QPbO4vOiqgLUDEZNVxGxCehomkgRkjcK2iSJAbrFmOuYIEajNE+j90W6oYYOh7qEDJyP/pyMRUeb3dijzj+zImwqIm96+FxCiExKK1KuJEwTObZ+HG5YlpBieiHHA1jpQ9lOTrAl+nvs74qkez1VRBkeVqMsbMGo3d6dwf4H7mIXeJi87PVNc7/cmi8mgF7oxxgVBfFseQ+XQEX9ylNfLBc8pOhYZ0lNKYp2tFVNdYCKswvKjRblP/rQOFbI3viZieh0nfFXWunoLYHg4XTtYQTyNe7An5xHR+3eSCsjtxlWoLktYwlDkRsX2+Prxto4srZajNW6IZax7zEXwvFzPjFcfOhKqTR5eqvxmwn+31/+XbV38++vzsZeRyuXnPI34So4uYp1hel4/BUAAP//AWSt3VgEAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/core-dns/servicemonitor.yaml + - content: H4sIAAAAAAAA/5xUv6/TMBDe81ec3gRDHSEhhmwIiQkYKKrEeHEu7VHHts6XSijkf0dOmvJoS+nr6Pa+H/m+s4dhBdyC2aDrKZl9X9P7yGuSA4khj7WjBsaxwMgbksTBV9AFzxqE/dbYIBSSsaErD2+KPfumggxmS5/nqaIjxQYVqwLAY0cVDAModdGhEjxFCR3pjvq0CpEENYhpe+fy6BMYGMcVRk6ToSNDimipgoZa7J0WAA5rcikLAGCMdyhcZR8GYG9d3/wDNMtk2C9g35BXeJuzSZFsFiffxMBeJycrqAmF5FvYk//IjiooDyil9L5MZIU0lTlt8aSUDIcyzbmhtaH3WmoGTp90s6P0V9qGvZIc0GVfGbucp0weYsjq5JvlGINoBTvVmKZzsjvKpc6/vMRqRypsv9IUK/ttWiQu/qhyNRodvNLwHTv3KP+ptnevp+6LZ99207lcmpRze7ecyVUTZw4yq7r0IfiWt/MyA1h8ZHcsGit6pJi3+8ty9a47PAmbP+OLqbxFiWwvtN5z3JBw+/MuqkvYTPkj1J9yHvcv5YKY8adHYE2OrAaZ0+pQ7S4bPz4Fq2dPRDpN/q+rM+UFeHbnj72NY/E7AAD//9xr2/pCBQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-api-server/servicemonitor.yaml + - content: H4sIAAAAAAAA/5SRQWvrMBCE7/4VQ+4yPHiHh6/hHQs9lNzX1iYRkSWhXQeK6/9eFDlJL2nT62r0zezOPBu4PShYtDvyE0t7mnrexqA5es/5hQIdOLccqPf8s8qm6IIKlqWh5HacxcXQ4fynOblgO/y/KpqRlSwpdQ0QaOQO8wzlMXlSxiblOLIeeRITE2fSmNv95H2RbtBiWUzJYIZbCDPWFA3gqWcvhQxQSk+gn8ICp39iLsBHonmGC4Of7AOfmqw4fcAFy0Hxtxyr3kASDbzC5V2URzQy9cJ6WcaArM0swutuQCkwUzjwb5qpXw1cvUx7nxUcB3sdpJj1ZmXWmo6qyYys2Q2yPlVlhX0bQzif3cBtkd9dgZSjxiH6Dm/b1+ZLis8AAAD//3oc9vChAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-controller-manager/endpoints.yaml + - content: H4sIAAAAAAAA/5SSQWvcMBCF7/4VQ+42FHrSdU+Ftiy0BHocSy+JGkkjpHEguP7vRStvWgpbnKOteW++eTPrOpJ/oOmew4I6PS8zTpK0SAgoXzjxI8qExHOAo20bOPt7lOolGXr5MDz75Ax9Q3nxFkOEsmNlMxAljjC0rqSIObCC7nKRCH3CUkfJKKxSpoclhFZ6RxNt29j6j/YNYIydYCAKPCPU5kzEOR+wPmRL9FPmz83b0K2qdSWfbFjcjUYdrbX6RT45JKWPLaseQs1ssZvX16qIQ82wbRIblqoon86GvkrCQJSl6D7kuEf4pJrHCC3e1stDr7oE8P+11b6WqZV3nou4iIqVYOj76bz/Uy6P0PP7bP+ImvnBQ3JZfNJK29YECBWdrCLAqpQ++yGzK8dV2ilI5QfH8F7tv5vrDI1v/7QSsyQkvX0nb6rk9kCQXLfT1wxDp+u+/378HQAA//9kSiIbggMAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-controller-manager/service.yaml + - content: H4sIAAAAAAAA/6yUzY7aQAzH73kKC/XQHjJRpZ5yXamn3R6WCqlHMzEwZb7qcZBWWd69mgSyFFiJhr3FE8/fP3+Mu64EswK1QNtSUtt2SQ/BCwdriZ/Q45pYkcelpQb2+wKjWRAnE3wNLngjgY1fKx2YQlI6uGr3tdga39QwJ94ZTU+DV+FIsEHBugDw6KiGrgMhFy0KwSxycCQbalMZIjFKYLVqrc2uM1Cw35cZrtQjXekGvINeiqiphlnvlV6SkJsVABaXZFMOCoAx3hD1hohdB8Zr2zbvSAxBs8grGN+QF/iWq5ci6YzyOywfs0s9fhUAiSxpCTywOhS9eTyB/0D8QY7JEqahD5/U82CpH+gIXuFPG4Qy8klx55eA2XvkKy+KT76JwXjpXUqIgaWGjUgsHQkbnfqbN81g+mealPFCvEM7IAIc7T6bu5QyDfnmaC4Jmfhn2JL/bizVUO2QK259lUgzSapyFPYklJQJ1UEdtQ6tl0ryxclZ5lKlI0nSG8rPpj/sT8Smh+BXZn3sgMYpjBqVZjlITGtGIt0yzbcmLojN6uXInBtz/m9Ki97XP2vXtASySdyP/qjzdvb/wNf0zkBPzCnEw/t5pn7TGL8ep+TiR523lUQLnyX8QmfvjfO20b70W6a4MxO+zIHP6SeA81XkK7yHz78BAAD//7Iamh0JBwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-controller-manager/servicemonitor.yaml + - content: H4sIAAAAAAAA/6ySz2rjQAyH734KkbsNC3tYfN1eCqUEWgI9ymOlmXr+dSQHgut3L+OZpDQkNIfekuHTp59kTVMNegvNBs1I3AxjR3eOG3LYGephnisMekORtXct7P9Ug3Z9C08U91pRZUmwR8G2AnBoqYVpAiEbDArBKkRvSXY0cu0DRRQfm+1oTEJX0MA816lj3TuuAAx2ZDipADCEG1yXPQBvvntIshZOz9ME2ikz9ldUuXmSfYB2PTmBv2n8PBcHVFRsfGAhW3EglbIqM7JQvF+38OgdVQDBRylj1GUrO5FQW5KoFac4Fvl9ATK9jHr+DTjvuCl4k8CcaCmLXrzypoXn/+vyJhhfSda3Cr/wo/ZiXB4Ox73ekDbTvxe2+M6zMhlS4mNe85UrPjkKnErTTfkXtOZn+vwQch8yTOXv8I/r5VC/Hd8CuX7ptfxK1Z8BAAD//7LHE9BoAwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-dns/service.yaml + - content: H4sIAAAAAAAA/+STv27bQAyHdz0FYXRoB51QoJPmolPSISkCdKROTHL1/QtJGQgUv3txku26dgzYTbZudxD543fEp3Gswd2DuUM/kJjl0NHXKIYidp56WK8rzO6OWFyKLYQUnSZ28cHYxJTE2BSa1edq6WLfwi3xylm6nquqQIo9KrYVQMRALYwjKIXsUQkWmVMgfaRB6pSJUROb+8H7UroAA+t1XXDqPsomQDLac1J2tXNMBeCxIy8FBABzPjPjkGIcwUXrh/5EzzyldL2Aiz1FhS9lvmSyZfav1F2VknZ3qgCEPFlNPMMFVPt4tUf7Ft65n8kTyry3D+ZmvpnvGAhe4GlISvOOdlu7PSYq1TugGhbTCHkWpbCoACj2ObmoU0kNObG28Kia60DKzkrBCShPU8IJ5+Qve4yLSrxCP8MBbO/TOy7sLRMp9ttrR8jEP9KS4jfnqYVmhdzwEBshy6TSlFyOpCTGpWaTjtamIWqjpbE67xWbd19Pa7ihyRAXH2SLEg4/tMUyzR4+avqJwf/zgD8Kfpr/gr0lXMT+CjUf8l6C+jrkAeEJjWT5vBX7f7LoyJJ30+c4+e3e8HsJw+eYsnf8HQAA///r1uY8zQYAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-dns/servicemonitor.yaml + - content: H4sIAAAAAAAA/4yQQUsDMRCF7/kVj96zIHiQvUrvHqT32WRqQ7NJyMwWZN3/Lum2VsSi18nj+/LePFuEPSh5dDuKE0t3nAbeqvMdJxoi//rgSw5JBctiqIQdVwk59Tg9mGNIvsf2mjAjK3lS6g2QaOQe8wzlsURSxqbUPLIeeBKbC1fSXLv9FGOLbtBhWWzTWlbnDRBp4CiNBVAp/4DdAQHHJ7FnRLtY4XriauYZIbk4+Tu01d94HwjJc1I8thHWblLIcY+zR95FeTQyDcJ6/rEFeV9ZhC8FgLZ+pfTGf2y8pi3C2ri73RqBk78eSq76RbeXwQ+qxY6sNTi5PK3JFfbT3KYIjruWuImAUrNml2OP1+cX8038GQAA//98ShAARAIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-etcd/endpoints.yaml + - content: H4sIAAAAAAAA/4yRz8rbMBDE73qK5bvbUOhJ148eCqUEWgI9ytKkUaN/SOtAcPXuRZaTQItpjpJGv9mZXZaB7InGo3IzyniZJ3xibUYENTkYqlWoZI/IxcYg6fpBXGwwkr4hX62G8GBlFCspiILykLQsxPDJKQa9pRw9+Iy5DDEhK455PM3ONekbjVTr0CwHsDaCyKkJrjQWkUrpBdgOiOhXnL40mqTn/bKQDdrNZgfW7RvuN9lgEJg+tgZ6tJKUxoYrt8LwoiToNq12c2HkzwdJX2OAIEox8xZk2Io5M6fBg7PVZX3oqjXkP/2X3u/YFH2EVZ8jRx2dpO/vh+2OVf4JPvyX9NQ13v7eTYo2cKFamwauoPsXOGiOuYfa+393u6u7F3H8obx7Qf538d2pTbEddfQpBgSW9Nj1Kglmi4Vg+l++JUh6v+/m8TjUKv4EAAD//05nF8r4AgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-etcd/service.yaml + - content: H4sIAAAAAAAA/6SUz27bPBDE73qKhfEdvh4koUBPuhbtKe0hKQL0SFPjmDX/ZbkyEDh+94Km7CSWgyjpTUvvDH8ck7vb1WRW1NwqOyA1m2GJb6L7Bl4tLXra7ysVzS04meA7csEbCWz8XaMDI6RGB9duP1cb4/uObsBbo/GjdFUOonolqquIvHLoaLcjgYtWCWgROTjIGkOqQwQrCdysBmtz64Ia2u/rzFNDdD86pKj0HJtTb/GpiKxawqZMQqRinOkxwdjtyHhth/4VUdkmyx7J+B5e6EsGSBE6b/4nLK9yS3f6qogSLLQELnROiV5fPcP9J+BiwLBQqST3X3NdquancqBHuh+CoKR0yu1mipS7T0Q1LQ57pIckcIuKCL6PwXg5tNQUA0tHa5FYOwgbnQ7K1+5benFzGuMFvFW2UBEd68MB3ivOe8L3x3IJxeBfYQP/3Vh01G4Vtzz4NkEzJLXZmD0EqTGhHd2V1mHw0koWPj8L7t8kSnoNB1rkONLiCFJWS0glHbHpa/Arc3eMeWZcuQQf/s7RO1+q49qs0C5ZnAU3G0erHOyTrNSzMM6lryG8bQSWM4pxZR7HRP7RMDZ4eGk0LszCmIhHilNtfIIeGDcbE2/BZvUw84mcyy48lpkHLM/7GofRZ/xdOlpNfujy+JRo6X8Jv5WzH7B+mqqfymR/Py9PSfmccR4eXwS7QDV+/g0AAP//rTE1AG0HAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-etcd/servicemonitor.yaml + - content: H4sIAAAAAAAA/4yRwWrrMBBF9/6KS/YSPHiL4m3pPouS/diaNCKyJDTj0OD634tipwm0od3OXM7RXE2Tgd+DooPdURhZ7HHseFvS+9lypC7wzxuXk48qmOeGst9xEZ9ii9O/5uija/FyTTQDKzlSahsg0sAtpgnKQw6kjE0uaWA98CgmZS6kqdj9GEKNbmAxz6Z6Ta7iBgjUcZAKAyjnP9AekYDjk5gL424+TfCxD6N7QFv8lfcBHx1Hxf/awnKcZOp55clZlIdGxk5YLy82IOcKi/B6AFA/oFB8499aXuIGfjnZ3mYVwdFdBzkV/cKbtfKDajYDa/G9rKslucC+qYXLyfdsa+RmAnJJmvoUWrw+b5s782cAAAD//1XYbcVJAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-proxy/endpoints.yaml + - content: H4sIAAAAAAAA/4ySQWvjMBCF7/oVQ+4yLOxh0TWnhWUx7BLoUZYmjRpZEppxaHD134sspy0paXNM5ul77814niW4PXQ77Sek7jgN2Of4fO4w6MGjhVKETm6HmVwMCk4/xNEFq+Af5pMzKEZkbTVrJQCCHlHBPAPjmLxmhE3KcUQ+4EQyJsyaY+72k/dVuoEOSpHVU6ZqKgC8HtBThQHolO6g3SIBPMXhT8Up+DCYZ3DB+MnewLUAFfgCLlgMDD/rElo7StrgyqMzMY6CEpqa1/iJGPPvXsHfGFAApJh5rSLX3RyYkxyRszO0DJpqqfn5BtR23FVJy7A8yJGjiV7B/22//sc6PyL336PehRX4xfVtii4wQSlVhJ6wJSD0aDjm1usm4OJ3kTc34PigR3+P/nr7zavmWH8ef5FcvpCrqy+yYNd2GGx7z+eECraXI70NZSniNQAA//+S8wKGBQMAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-proxy/service.yaml + - content: H4sIAAAAAAAA/6STQYsbPQyG7/MrRPiu4+GDnuZa6Glbym5Z6FHxKIkb23JlTegyO/+9eJyELGEhm97GnlevHsnSNLXgNmCe0Y+UzX5c03fhPy+GIq49DTDPDSb3TJIdxx4CR6csLm6NZSHOxnLoDv83exeHHp5IDs7S16pqAikOqNg3ABED9TBNoBSSRyVYJeFAuqMxt5xIUFnMZvS+SFdgYJ7bAtSmQnS0yAntLT5nbTVqADyuyeeCAoAp3ehxzTFN4KL14/BOVM1T4l7BxYGiwqdCkBPZkv0Xrx+KpD9/NQCZPFllqXgB1e4eLnj/jbg6CHnCXHv3n3msJ/MNA8Er/B5Zqfbp3Lmna6aiPiO1sFqS5JesFFYNAMUhsYu6SFpILNrDTjW1gVSczUvkuzOX30yPcVFJDugrFsDpvFTw4eiSleJwOq4JheQH7yl+cZ566A4onYyxy2SFNHfFWSIpZeO4O7qjtTxG7bQEfqia0oZ8yp7tjso6LJfLjfr8mePGbU/dtXgPl0VjRS8LnufmVsT6SI+0TLCL2zPu1Y++bIHyTwz+Htu3i3HxMreSyjWj3Eknt3IdP/8GAAD//z69Q7EyBQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-proxy/servicemonitor.yaml + - content: H4sIAAAAAAAA/4yRTWvjMBCG7/4VL7lLsLCHxddl7wstuY+tSSMiS0IzChTX/70ojptSmpKr5tXzzMc8G/gDKDrYPYXKYk914KfxyK4GLpYjDYHvV11OPqpgWTrKfs9FfIo9zr+6k4+ux78t0U2s5Eip74BIE/eYZyhPOZAydrmkifXIVUzKXEhTsYcaQovuYLEsprmNbPIOCDRwkAYEKOcHiD/RgNMfMRfOl9o8w8cxVHeHuvbRuG/w0XFU/G4bWQeVTCNvzFdRnjqpg7BeOjcg5wqL8HUQoB2lUHzhR7a+fjHw6/j29tYwHN32kFPRD4W5nuComs3EWvwo19KaXGHf6oXL2Y9sW+xmA3JJmsYUejz//d99sr8HAAD//yXbmLNlAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-scheduler/endpoints.yaml + - content: H4sIAAAAAAAA/4yST4vbMBDF7/oUw95tKPSk654KpQS2LPQoSy+NGv1DGgeCq+9eZNkppG2aoz1vfm/ejJZlIHuk8V25GWU8zxPe9AlmdsgjgpocDNUqVLLvyMXGIOnyQZxtMJLekC9WQ3iwMoqVFERBeUhaFmL45BSDXlKOHnzCXIaYkBXHPB5n55r0hUaqdWi+Q9mNBZFTE1xpQCKV0hPERzSiH3H63JCS7orLQjZoN5t/YPsgDfyTbDAITB/bQnrSkpTGzrwWhhclQbe5tZsLI386SPoSAwRRipm3SMO2pxNzGjw4W13WQletcf9+k9J3PjbZOsbakyNHHZ2kr6+H7R+r/B18eI72W1yr+M+bMCnawIVqbUK4gr6PAgfNMfeEDyG77d5Cqytx/Ka8e7bn/h7ds82zferoUwwI/MfRb+JgtrwIplP4miDpdT/erTjUKn4FAAD//wE6MfctAwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-scheduler/service.yaml + - content: H4sIAAAAAAAA/6SUsY7bMAyGdz8FEXRoB8so0MlrgU7XDpfigI6MzCRqZEml6AAHX969kBU7l0uuiNPNlMifn0iafV+CWYN6QttRVLtuRUu9paazxIocriw1cDgUGMwTcTTe1dB6Z8SzcRulPZOPSvu22n8udsY1NSyJ90bT9+xVtCTYoGBdADhsqYa+B6E2WBSCRWDfkmypi6UPxCie1bqzNrkuQMHhUCaoMo5UR5kYUN+iNflmsQLA4opsTDgAGMKNGtdZ+h6M07Zr3onMuVLsCxjXkBP4kihiIJ0IfvvVQ3Kpp68CIJIlLZ4zYouitw+vmP+fOqswWcKYa/hBPWZL/cCW4AX+dF4o12uq4PKSK3lPWCUscqLnKNQuCgByTfDGyeBSQvAsNWxFQtmSsNFxiPznDMazaVLGCfEebUYDGO3hFXcppOzkmtFcETLxT78j981YqqHaI1fcuSqSZpJYJXV2JBSV8dVRHbX2nZNKUuDsV6WSxJEg9Sn9JsPhcCI2fvVubTZjpTXew6ZRaZajxLyiR9Id03JnwhOxWT+PrKkBb+/mtOJ93WNbzuxbeZNJPEzyFH86u53vms4518maw5eH/5GG7WDcZmr9xUWdNowECx/F/8LW3qt/2j6f8hp8NfVzyPmSmd/SzgDlq4hX+I6ffwMAAP//H5f/IK4GAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-scheduler/servicemonitor.yaml + - content: H4sIAAAAAAAA/6STsW4bMQyG93sKwujQDqegQKd7BqdDAgToSOuYWI1EChTPy/XevdCpbt3ERuNmFET+/PT/1Dz3EB7BPWCcqLjnaUf3hka3ZBp8ccS4izTCsnSYwwNpCcIDJOFgooGfnBclKc5Lujl87p4DjwPckx6Cp9tW1SUyHNFw6AAYEw0wz2CUckQj2GSVRLanqfSSSdFE3eMUYy3dgINl6StXXypYnxrZL6mS0b9F73dtE+wAIu4olooEgDm/UeMyzzxDYB+n8UJ3m1f7f0DgkdjgSyUpmXyl+C67bS0ZKs0ahDIZFRfkpk7uAIjHLIFtpe4hi9oAe7O8PuJfUZa/QnGBjfSAsbkBcDyvRvyvSGUgHo/HvbDothkNphN1V0I2c+9oNS/wUzkqv7oYagCWI3w0+YYpvmPEn3w+tWU5edWV/PqaXF8yX4erZ0FfUAIUiuRNtO13QvP77cnCw4UlG+DsTzvfELgYcv1+m3mGD+6OImEh9xUTwbJsTol+BgAA///tmEJqaAQAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kube-state-metrics/serviceMonitor.yaml + - content: H4sIAAAAAAAA/+xYwW7bOhC86ysWOb13kIQCPRS6FQV6SoqiKQL0uKbWEWuKJJYrA4Xrfy8kWq0TyY3sOE5S+EiRnBktZ8AFV6sU9ByyGzQNhWzRzMiQZGRxZqiE9TpBr2+Ig3a2gNpZLY61vc2UY3IhU67Ol2+ShbZlAdfES63oKq5KahIsUbBIACzWVMBqBUK1NygEF55dTVJRE1LniVEcZ/PGmHbpBWSwXqcbOZv9waOKIPfl/p5tBQMYnJEJLS0Aej+Bd4Szq4xVpil37Iks7a6foG1JVuBtyx88qZabbOmdttIJ2VHncKdiWSXiQ/yHFLxjKaD7lNYkrFXo/iioitpidjPdl2ng2grxEk3EB+jHoxV9YG/LSLbsh2LCB2fn+jbWHEDhR22ogHyJnHNj80CKSULe4rMloZBpl29YUCnXWMkVZoplA6FtINUwXS+0vyHW8x8FCDfUTc8ImfirW5A9hEjajR1Q5azjy+iXCD+tmPFAvlBnAm1vQ1+KwUSRtO7zBv4T9w1rsz/yH3v931k02ar+NLU81Mn3FU4Sx6OyDtKk3pdLHRzvb3ePUhWQbxblCiPQy4jC0FCvNyD7HeTVk0ViN8Pjo9Fjj+g+LCJjgH+Nyl5yPbsZHXBF3MtMhDkn5nkSE6v/dHnZhf/4tETko2VlCHe8pDAF13DfEu6flYd93TN8Rqm2vX1O00nT1B/D0+VpN8MxWrOIfbRMjQFOSdXGSSaMJOZOYF6gxc89+3P37Hcc8soa9HObe4o29zE39oi7/pnr+XzJnfCSG953/eC7m3XHUsDiXUjR++1Hx2sypMRx7J5qFFV9aufiOJ3wJBmGCJdbr5TQsxaw/f5Itlyvk18BAAD//xn6a3ikFQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/kubelet/servicemonitor.yaml + - content: H4sIAAAAAAAA/5yTT2/UQAzF7/kUVsUBDhmExCl3boVDQZU4eiev7cD8k8dZIYX97mh2srBtUwibU5w8P//s8cxzT+6OzC37CcXENOLDj5xEIQaRdx4jHQ4dZ3cLKS7FgUKKTpO4eG9sEqRibApv9++67y6OA32G7J3Fx6bqApRHVh46osgBA80zKUL2rKCrLClAHzCVPmUIaxJzN3lfpVdk6HDoK1OPBWpxKZntFqvf2ubVEXnewZdKQ8Q5b/RYRZlnctH6aXwhsZWqqT/JxRFR6X2FKBm2AnxLu+sqOTKsnsBJ0dALPKwmafCB1T5cn3Wz9HNG8nRy9RF4cGmze2VuWmQ+cUArgjjm5KIeTXuquQMFqDhbjhZ/25jy6OyNiwrZ84JPdIpfbvgfBrU24ngebkQpVjjjiwtIk57yH33cDLVqdUb2H1Rtrjc4boqL9+Vk9+zHULdNs6fXmr5y8Bfa/1nEN+1CXMYtz4nlKet2TFkFXKFbXn8FAAD//2gW89y0BAAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/exporters/node-exporter/servicemonitor.yaml + - content: H4sIAAAAAAAA/5RSS2vcMBC++1d8iA3sLrVCWsjB0ENJH1DaHFrIKRRm7dGuWlkSklwCXv/3YtnOttsHzW2w9b3mm74voRXINpB3ZDqOch9IkSXJlnaGf//esKLOpNcUDztHoYlv5ofDUIx0K6UNR1QvId+Ok3xn3A6ieXx/uZVfo7NiAWi1YIahIK/vOETtbIXvV8U3bZsKN84qvf9I/oOOqdCJ21hlaCC7Z6w8pcOzieTG2cQ2Zf0Ta/b16OCWWh7/B97zwyf2hmp+ZQzE+ovcXm7Wcru5v88eV2Iih1j1z4fsuMSZReDMZAG0nKihRFUBAJZartD38EHbpCAuYnkRBdba1qZrGMIH13I6cBdL5zlQckGqzpgRKbDanJs/IoXO1rh+kUfdfu6U0g8QZfa4iEZP9aR8XmLUDdcU5KkVGZlCfbhdYAuPoR2bOAUBlr7+gy8DF5YR+SRUBXElfhJl25y4yPucKnHrDaW/LHBeHoahnAWLvsc/dz6FHUFHaNuwTbieZE9tjkF+bWMY8rFUU8b56DnNp3NEcu+js8sdzkn+PP4IAAD///0DpCOQAwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/configmap-dashboards.yaml + - content: H4sIAAAAAAAA/7RUTWvjPBC+51cMJof2YKWB91Jd3+5xl7KFwh6n0jgRK0tCH6Uh9X9f5I/I2SbgHPZmBj0zz8d4jscaVANoJLBX1IkC23ls0CAjg2+avtaDkiTQM4kRg01eUDi97boVOvVKPihrOLxvV7+VkRz+t6ZRu+/oVi1FzEi+AjDYEofjESK1TmMkqJy3LcU9pVBbRx6j9axJWuenFTDounrkUZf5Y6vgUAz9llAOhF7sf0y4TH00YwkajbERo7ImZCTArMBXWZL9ha2+udcnKCPJRPhvIkRGDhM0vpEO2TfIGtdLWvcY6DoO1bbqkejcAssHu9czu7MmZYRO8gpkoJdB5xqmsAstdsBWc/isR0JlX7Z9ZSaA35KJpAaTjk+n0reylblvPS7c84l9XwaIB0cc3N/l5DWHfYyObza3Lml5wmf7WKoskH9XgpizPkLX9QO8ap89NeoDqk11CVQ+XxwJ5m2KNCJGjQAoBIXQy/k4jDUVngZvOESf6BZThSfMQ6bBP8lpJTAUl8O0qR7NjiCZqDTcKROXKBi73V/PqM7+FXkLsnJn2KWxrc9jm8ayLyiS/PHh8eFCYut/E1mDOtD8Flz/vBAqSqnybUGdI3uZRwbRabi7cqku48q/fT+kcpnLnwAAAP//LOTxKVcGAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/configmaps-datasources.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/apiserver.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/cluster-total.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/controller-manager.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/etcd.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/k8s-coredns.yaml + - content: H4sIAAAAAAAA/+yd+ZPbNpbHf++/AsPt7LSz1tV3q9a7ZXdPjpp4NuM42XLFLgUinyRskwADgH2ko/3bpwgeoiRe6kui+uEHl1v64hECHh7xIfnAu7sW6Xy98y1wkFSDQ0ZSeOSvl6eqJUGJQNqgWrYbKA3yr9GXE6191e90JL1uj5meBMNAgbQF18B12xZexxYShOpcBkNo+VJ4oCcQqI5HQysdj3I2AqVVZyzpiHLacqiaDAWVzgWMGGeaCa7at9Rzdy4E4UITe0L5GAjjLd+lNvyFfM+JkA5IokXypZ4wRUbMBTJiUmkigTpkJFxXXDM+Ji7jl/2dpO1Ru01jJ+B6HXtCpVYdLQGSZipNhy50Zu1vCT/sIyE7E2pf7nzdIa3pdCfswN3wl36kcgz6F5CKCU76b4gDIxq4mrTPqU+HzGWagWr/PRhCLGp/y1J9+xfqBqDaS5b+5wqkZA6Q+FhsRCh3yJ4C7wrkufB8KoFY//Wm1+4dtrutrpXTnFdL+v88a5+1z1pn+eqkNfEAtYGHfeEsfR7/xItk/NTfYuF0ukN9Ftvrk6veziXjTp+cCz5i4/fU3/FAU4dq2t8hhFMPlE9t6JO7u6WDKOaATWU79RLVVkClPflHUi08XGTFGPAl43pErK9U6ytlkT3GbTdwgFg5Y9keBa4b1rTI7iti5fq9Rf4kWgbcJscH5r/M+ykYjdgNsVpWdGzKudDUOG5/5+6OaPGJem6dn5KpSf4kjDvANTmMrLp0CK4Ke4iQeOx3a5g01SILYb2V6vSJ1bPSAwJ3EjvU903navB8l+qC3ox7kkynrfhgYW+UDkD0I8NK8z8/cY7cIWn/nwr96s9W1FTzb1isTHda/cwX5kuXKW31ya87cx9/Sf+avp4ZAoeZAGD1w7GHzDdjDvp7x+oTHrhu9nNJ/clHIVzNfKtPupmvJsyBc8G1FG7YrBF1VdZiGJvUfMO+ZL6WMJKgJlY4Nl1lZb8R11G97O+Z/9FGZwvXpb6C5WPPmghsPNHRMbr+jZUj8SkHd/l4xcdNa1KXUXUuXCGjUSlUTpcPmxoZUpnTeUuy0Kl/AD7WYYf1uhVKqGdS08gBw/7ZzfxZUmnEXDdsQZlESI+aPvdB2sB1wJkus8mcCouMa5BX1DXj6JWZcmEM3FmaI0s6ejWu7iGjtAMpgeuaao/e1FUyXlOpJuJ6ab7mKrXQppPqWL0ywTMR38t1XcaNhfKWGdk1cyLPLdctxovF8qWkehi3fhSM6/fCMR4dfkCoIn+AFGU+E3spHZcEkpk4PIKkDgvCph5VKevMQwncAQkybPPIFaVTRYFkoJLV0wN6y6ww6gUU5dPQVffLJJralzV+qtLg++D8wHidvtZm+VYcmpNSPteNKbjxTf/2SIvQq/FeSAV7XDgwsP1goMAW3FEDM3/uPOHAm88Wc1z4bL0m8bn5zWdrN/7vZ2v66+5gkESlL69elQxZ2oRZWNTMg0E0knUqMq40NRGoOgSQbLj8htpayPKhSytJGJnTv/XWKhVP7+VuehKe64XrhKNpnXRfn3bL3DzsoW+k8JaWI7nKnyZspOtItVn4WOc//kx+1sxlyiypShuSLnwqTihqQiU4dSO6kHp+LZUrMyF6oG9902rGHXbFnIC6xQNUFq0TO4rxsQtK09JAc0Nv2PJac0k2DOzLaIqWd74Re3FgDseswvEts+SuZbX+6TE95ZXETDK3dF4sZf17S2/gUWLVLFCoSegoNSavoY1a3RXJxfgdNevmkvNxqo7WNDVNR8uaCs8mC+NWHnDKbb2MDq0pjvu0fElHyqN47jcFg4BwNFfpyeCobO2FyIPIg8gTF0Se1FSCPCrw9i6DIQx84QxswTVlHOQgufg4kPB7AEorQ0K2kKDucpHnFemQ1JZBp3ANGagBdV1hU3NZsdIGglLTQOlD7B7kXHge0154YkBgWlYjMOUVBKZKMQJTpRqBqYZpgsBEUmA6QGAqUCIwITBlCgJTaqouMLnMY4hLiEszaQaXfjDOgbCEsFRUEJbm1AhL1XKEpcWmICzlS+4FS4cISwVKhCWEpUxBWEpNZR+oCzGnbxDHA0/I28F78N5eUeYaxhnealB9FXgP4KTYrjGFqLQFqPTeDCg+hYecVFiQk+bUyEnVcuSkxaYgJ+VL7sVJZYtT5CTkJOSkuCAnpaZWfgqvBuogMSWVXh4x4eN4SE5ITkhOFVU2rUORnF40OR0jORUokZyQnDIFySk1teLjeMhNyE1z0nluwufykJqQmpCaSqtsWoeunZqWPs0J+5YEH2hxSI6//16DjG70Vwg/iOucfQjnfuzHOLgX7fqXBv/vgDrRkrdI9RP7wygnx/PxdcH/Hrr74P4R7j64KHwAoJa1wADnCQJngXLzgbNscBE4Nxo4e3WIs8IVNgI4DR6mGzjPo2d/BqG2HwwCRccwv4VgXwXeQFINRSA6vCV7qfWnBsp78GEUIr9Jj3l399vd3W/Tadpm89dv02mtVZUx9gPjlyssaTT4xueeGk/vOTWeYYPC0K1eGKSavaaRT/ML8umcGvm0Wo58ul4+zZ/9c3EewTTfSEPBtIpLT5FLC5Sbz6V4I3RZuE1c+rh3QpW+dR9n5WXiadjBH6tXqCSOYDBjt0+fPn1qvX/furgg333X97y+qsWNPtUaJF/luMkyfsIcB3jFncUHr5/SbvlROLV+kR2ekuIJVnPlYidnsYq1OSn32NTeo4yMAzbzqDk311nRuhF417ydHKpnb/uxLiRzXeKIa060IH7Nng6N/CzN61raHadzekSPjve7J6e2Mzo5OTk5A0p71HEOD2wb7B505l+GlF5k+O8rKluz8++bzLn438OvkosryaUV82Fa+83uYGCD6w56K7q7ea0U+be3tVy+5rWEpNRxkmQa8cAbgqzTCvMMVgoSzzXv/lfIS1dQnHwl8kecfNerdPfCDKSnJ6Nh1znrnYHdBXo0Oj46POjtH0Lv2D7cp0cLMzA91KbMxXc4F3MPls7FOlcM01pbOBdrXdSO5mINwCClk3HF+Xc/jz9Hj8892JzHJ8kw6PSF8kY5/QU6fe7Bcp2efIVuXyhvlNv/rXlun03+eE7njx7jRccvlDfK8b9pnuM/f7yPn1zHaF8sb5TTf9s8p19HtE9fg49+Xyh/6Zd2V5yAfBWX2qwZ+LynHZxyhfKMO3XaX3fW7UlKS8bHj+1Jhd+WPhL5xKmf4pqDfJIHaunQrRUSnic3c/HZ2zoty+Rz1lDXfLj2wfEkGUZbBFzv0avxnsduGDejmdxiKBvQRPOazIYWhzoZ6lr3RJ57qDf92fktGv9adwjWMf6P87JRHOZomGtdE9/6aZ7dugFda1bpQa5V67rzpkWQum/fwkGOBrnWNVaMH+hYqzpWreuYmMf3z0Bo+lLy+CTlKvT2Or6eXsOoFGLWX17BrL9KMWb9Vaox628dWX+FZwXM/Wtu7l/lpjRnJQJM/tvs5D/clGZZuE3Jf03YlGYGrfEupVLlU+prkkr/8uazhVvO4JYzhdKFF/IpOgayd90RxKb2pNRRtopccQeaBrGo2Z25ieiELFqmRhZ9dhaNwj6CaL6RhoJoFYeWNhFBdLNBFHehWRZuE4jiLjRZI7gLTQOem8ZdaHAXGtyF5mVMPtyFpqLaS56L2YuIL3Q6bl26agM3ookuDz6z0+NeNJXyRvl9A/eiWavf4wYFJfJGeT5uR1N2yEX/xx1pKuSN8v0G7kizlqiPm9JUyhvl97gpTdkhcVMa3JQGN6VJa+CmNCX2cFMa3JQGM0UJbkpT0Y7tHOqN3ZRmfc/Ob9HoNnvLmXjgDS9jyM6ts/m7zjziPF5lTxn0nco6W7GtDI5zZZ3N31nmeWMEeg5uHfP4+XjpbdXhLalz1XGrkvFwG5mtTd1rbKYZpu6VqTF1b02pe2XPnWEO3xbn8JUq4hVdeNyeV3Y4zPbDbD/M9osLZvulljDbL/dosxdzRVGOfAAb2BWQd5Q70ZzFu9RF8kY9ENXAvLt3/vM9Bpj4/8cQ1T2mcQJs2wRoYLLbc06AD1QDEaPkBOCQH2l02Qjdv0jeKPdvYNqbvwb3T+K/xhmwbTOggQlw65gBiycAciFFiGw4DQrljZoGTcyG24wTAc6ESnmjZkIDc+OecyZgblBtf8fcoJIGY25QVDA3qMAI5gYtlo3KDWKSasg8g8hBXwt5OZARKERPCEYvsSt4KHEWNv7/s9X+j8/W9NfdwSC5qfsF0002O7OozAl0vExGL5ivtJ1JR1WhwI9ACd0gqbSd2UmVwQD9YKHSduYu1Q0HTnTdBN0hqbSd6Ui1wwL6w0KljUlbuh93bHzySfJ0xz8ij6zc0BWTTzD5pKRg8smcGpNPquWYfEI2OvkkPjNg0km+kYYmnVS+wbj0mXbMJdnsXBJ8hfGycJtySZrwCuONvzmCbzpOyrbC7SopO1sFtviK4wah6jsfX3CMoIqgiqBaUBBUCzQRqB4gqBYoEVQRVDMFQTU11awHuJBUk7KtpLpScj2ianHrEFVT64iqiKqIqoiqixJE1bWh6iGiaoESURVRNVMQVVNTCarSqzHeU0VSrWHjSUn17RVIOgZynjjhDFnnNrDvp9ulIMnOC5Fk8wqSbIUYSbZSjSSLJLsgQZJ9GpItwwckWSRZJNm4IMmmpuqQLN50RZTN2NgQlM1seYg0Oy9Ems0rSLMVYqTZSjXSLNLsggRp9mlo9hhptkCJNIs0mylIs6mphu3+hziblG3F2Xu8pwiJtbh1SKypdSRWJFYkViTWRQkS69qI9QSJtUCJxIrEmilIrKkpJNbFSkisG0Gsq71aFKG1uHUIral1hFaEVoRWhNZFCULr2qD1FKG1QInQitCaKQitqamGvlUJ4TUp2w6vi7dba7wLHQm2uHVIsKl1JFgkWCRYJNhFCRLs2gj2DAm2QIkEiwSbKUiwqammvggWETYp246wOfdfkWLzhUixeQUptkKMFFupRoptDsXu5PxeS9kT8OgvIFX0K7K73VpK30bHdOjcAS1Nx8vRwboMhiA5aFAtj90wbuUeUYPnu1QzPl6KyJbLlM6NOvlTI8NaJXCs4cbMGAdGNHBLV8smqGa1+R6Ub8GaMHNKKIgYNSZicqKwKgnYEn7odiXxv2CBYv0egLwNj+FL4YGeQFAUli0Jo3AxVBwKLAljCANA0Rv+01N05gctCXO6s2C4qev+Eo9QSSeu5BS1vGE1N1j1akbiNwVrb4tx2w0ceOtWkHodB/MCV7MKM4kTxtDydB5o2juIFjJ7XDgwsP1goMAW3IkfYn1N4lYUcVDGSYv6r9JJ48VrkZNrOjZep/6ZNLzQ25OwuFJ/hLWqTccTKeq8AlGg4GPUhPzT5vypb3Z6nGbDMzOjvxCYRxHOWFxct3qLa21Li/g7q9Ckz+xLc8ViwXA8fCkA5y86raO8IGX1urkfH+R/3PPyPj3K/bSX//FBN1+dRx/Wfu6nPWc+mnxZ7MuQ4LNz62Etzm/acX7T8lu8f5j/cR5mWie5nx50F391oaP8IcylHuvnj+dzK45k+fP3dJFBOuRceH6ggXyAKMKaz5bClhWY68AWjOjp8cjpOV27t9+j+8eHh4fD44NjejA66p7R02yVq3RFFF1lmO7c3bUIcIdMp/8KAAD//zMSW6m+lAEA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/k8s-resources-cluster.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/k8s-resources-namespace.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/k8s-resources-node.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/k8s-resources-pod.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/k8s-resources-workload.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/k8s-resources-workloads-namespace.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/kubelet.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/namespace-by-pod.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/namespace-by-workload.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/node-cluster-rsrc-use.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/node-rsrc-use.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/nodes.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/persistentvolumesusage.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/pod-total.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/prometheus-remote-write.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/prometheus.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/proxy.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/scheduler.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/statefulset.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards-1.14/workload-total.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/etcd.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/k8s-cluster-rsrc-use.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/k8s-node-rsrc-use.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/k8s-resources-cluster.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/k8s-resources-namespace.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/k8s-resources-pod.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/k8s-resources-workload.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/k8s-resources-workloads-namespace.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/nodes.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/persistentvolumesusage.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/pods.yaml + - content: H4sIAAAAAAAA/+yde3PbNhLA//enwKHpNOlZL8uJY835ZhKnyXTapLnG15mbJqeByKWImgRYAPSjru6z3wB8mJIgkPIjTVrgD49NLRbA7uLxA2Dx6qqHBl/vvAIGgigIUSR4ir6SiiiI8kSC+qp4FCuVyclgIMh5f05VnM9yCSLgTAFT/YCng4AL4HJwms+glwmegoohlwMBCRAJvWF/NEgJoxFIJQdzQSLCSC8kMp5xIsIXEFFGFeVM9i9Jmuy84IhxhYKYsDkgynpZQgL4G/qWIS5CEEjx6kMVU4kimgCKqJAKCSAhiniS8HPK5iih7HSyUzWgqLypcQxJOghiIpQcKAEwSIlUIAZSkVkCg+tG9HimzcPFICbB6c7XA9RbLHa07R7o5p4QMQf1EwhJOUOTIxRCRPJEof4xyciMJlRRkP3v8hmUQv1XtJbv/0SSHGR/TdMPZyAEDQGVZdEIERaihxLSMxDHPM2IAIT/eTTqj4b9YW+ILdV5tCb/j1F/tL9ZvKpO6aE+MG2McO152cYXlQPlN6XgYrFDMlrqm6Cz0c4pZeEEHXMW0flrku2koEhIFJnsIMRICjIjAUzQ1dVaIZKGEBDRr8NE9iUQEcRvqmy6uEKLUZAJylSE8Jey96XE6CFlQZKHgLDFmf0oTxKdE6MHjxBuxDxGvyMlchagJ2PzK03f5VFELxDu4aJEwhhXxMTrZOfqCin+H5ImXRrQyIl+R5SFwBTaL7QmZAaJ1HZBqHT5gw4qTbZCg863VZ4JwiNcFwgsrPSQLDMmVZBmCVEbbFjaDy0WvbIwbQ2n2YtG6kzLza9CouGI/i9Sx9DvvaKC5qdOeDqlLMuVxBP08079+MNuU0LArzkV4JBpuAJPGurNhwmVajmryV7/tWgogpCaMQNPUEQSCY2P5gzUtyGeIJYnSfO5IFl8wnmiaIYnaNj4KKYhHHOmBE+kRSO1aNNjnKOhAiIBMsYThHHzMT8vMjVbuGwGIxfwJCGZtDRvTSR0yGSEQbJe4OaCr7WTIIYTmgLP1VrjbXXh4jkJTueC58xRo+Ucps90Fd7cjFrui73Dw2D/Cd6syoiJ+Yw83Bsf7KLR3uEu2h/uomH/6eGjtnxfhPv7ZEzwRqkPjjboviZ5LgLdYPyg8acjU8RFSrT9MePMKTkn+RzWutSaWEouKqOPhsOW9qaUVcJtojLm5+2ONKIq1h2DJ+H3xai0Za7XRJyCCQYlctiYaeGylaDhW14MQDdSYMaDPZcAUyDOSNLecyzDyGpyRVVKsoyy+cllZlzaTbK9J7mjyOgz09AE4TMdIXppqOBCtfQgk/Gsij+nqMP8W1ZQFCvW7Su4567gDf118YIo8pZTZqZSZyfEOnaM6GsemrYEnDEIFISuoUDnOtFtbQ2+jEsV0YtCs56322Vfcqbe0d9MbR4Pv3TmEFAqb5faQq3x52uS3UkUa9Iyw2ueJF1iQxV2xW8GzzqJ81r5PQSTzAjDE7TvFhGnCWUdpoaIJsmxnmhNp9FT5Hi0i0ajp7to9PRQT5Gjp61TpC6qqaTQsTfcRaPDcWvucha58cBuVoTHPMlT1hZ2yjDYncQQXGSmuTJPH2qkf6gZnVAGYhpk+TSXZA5TCQFnoZwqrkhy9QufHb3HmgUTUO/xLgqSXIPw0Xv8oPxVP61RTT+v/9CfZDyc6gdH/3uPHzSX71+/x4ufx+mHR23GRsvrC0VTXUlBnaNAnbGa4F6SQBlnO2bDOlMCc2Dhy7rMLgUJiMxaHj+7jx5Urypka7xQZWADH7/9t1Ou5ouW7iZjIq7X7jcL92LWx5KyeQI6Clw1M9Nac5x96h5njfxdjbNcWwQfbTPEDreZq+9tjDUFvCmXEkEuBDBlL2eDpzxjecZyCXvGsiswjDX2jOUZy5Y+S8Z69dwDVpu8BywPWKuqmoB1zVYppFxclng1u1Qg7xmrHqEBGg339v879mhVpDtGq9fGo56ulpOnK+TpakXM05Wnq9vTlWtd4+lqc0ZPV58iXT3P/PlVq7zHK49Xq6oc51cM1DkXp1MlCJMpVQVnfcRDLPR35KiWgADoGSzVastK+IO0lfTRaO9N4USPe8vJ455dv0UvFpAB2bxKKD//VoEwV07bBH/k55Z7o7WQHt1PyujddOGyju76ljb6kZ9bjF9IVtET24ivDknBz5ettBLH93d/NAY6j00AjYbD7MJWSX/F1CbmAd0D+u0B/bEHdA/otvRZArqn8zb5T5HOXVcwPjadR7qp3QbzOwH5W9DEH0ryKbl4qLl82gDaqYAsoQFpnpL2zOe9FJSggbwJwjcKOFoGaHNgek5VzHOFHlImFWEBGOj3RF2mOybqFyCpgBD9WHrao/Vy8miN/EnqipgHNQ9qtwe1Jx7UPKjZkgc1D2oe1Fyif21Qo2wd1PTvuax5bVqu5jy3WTL9Kbit4jXEI1Q6G50V3+bjEW45eYRDHuFWxDzCeYS7PcIdeITzCGdLHuE8wnmEc4n+tRHOdtZWIhyfSRBnEE7nxbe9Us48xVky/Sko7ofS2ehV7WxPb8vJ0xvy9LYi5unN09vt6e2ppzdPb7bk6c3Tm6c3l6int1V6q96W0BXbXBi2LdR5bCvSR/zSmcLZHts2Jo9tdv3+XxIb1lkW/hRfaUESSuRxRa83pI0ZER0oCYdExt8Dm6vYrCtbJKGbypswKzXrABeL3A2AHbqwyswT7UMmSeicPZMn9ve62LOczTtKVn27m3RKLrpKUtZRUtB5rN7RsGvbGt8m0cbjXJGuyz0z4MlbzUt6xShba2bEzmlYdIH7o+41LmthCJyBCIApMu+y25VpzYKENJct/5CZVRjZplIAC0GAWX9GCXdO6i3TSS1XrPSq95fdwppmGdpt5JKKBKcd2isVZBmE3xf00yb9Sf07lF/ZF2VWxkIyg4BG1LnnUWvpvNa/9fZSl8M473BHpo0ODwQQ9xZXraN29/OP5u4u12cFkPDSO92Sad3pJHR9/Wqdsfb08Sfl6S4Xpb2vVzr4VneOa3V1BLz4pCIgz0I9WvkIsGRajYDSVlt5+5t737S74bJVG/BlcYbQslLWku9iGnVYVK9d0L+HjcE2BuRCdTjxNVA3rTZnKAvpGQ1z4tgx67LvaF6Y6mrzBbmg6+9xXROb5cFpsaR3G9wIpyXFaT+1HT6Up4odtHZn6ZqPHZGIll5Lu5pcpr0kF3dz4ns9dshYx0iXAYDMoP0Q/Fqcz58T2XKSXUsXGyYdVRd7Jh2Fu3ypJrqTqcbbdDU5BnS/R779HvmOxSpYBjGkpHx7u46M/eaH6rKoWEiWvioTKzJfH0fMikcwUCB7Kb2gDFtLLN8vTtnc8Q7u1WbZ+09jW9Wx814d+byt303eejC1Im6PNrsS8zbvzZNmhz5bX1dp3WTHPKteZr5hvtiwasG/5iAudRlZm1Ea7xLfMGpgAXNw3fCoY7LRoDVBizk3OJ0kSXUXzWHEZmhs5b9tTzoqh29YBePy3fjP2q5E1JGBy6X/pvLSPFG0RVcVQi2qbh8/ptLTYtnS6S5DDTmbIKURcJtM2hpw7oWrHr5MBMl/Vc3YGLnVQLeVdXSudtVlpyhMuUEol3BSVMF+YPLZ95pNLtq+17ypwPgu+g1rU/YH9BzHvsKisUng+5XvV3fdr+6iSzWi+/PoVI6Nt6V9PN/h7qLDLT255rtFkxxoun6D9fryLj/vjVY3jKq7t00YWlWZ0eDUnIevKC7dN632O+07J/ixbeWMR0Pr47H98Si1PX1sfTqyPx4P7dK2LTS8Z306CpeX5R9WbUlTmDb76O1qbK/aE3vV7DXe27c/tu0r4wPr0/FwtdUbA+U3bu4Q4CUSrtj9uxp+0QC9K0eHd6Ca/sa5ua2EyXgUjKL9J/AkOtg7CGbjg2AYHoxH5GBv//Fw+LiZ5axG86F5uNi5uuohYCFaLP4fAAD//5+CcB/OjwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/dashboards/statefulset.yaml + - content: H4sIAAAAAAAA/9SQsU7GIBRGd57ivgAkrsy6Onb/yr21RAoNl7qQvrupMa3RxJj4L//GcDgfnN4txYmQmdyAtIm6l4oJGU4yxiRM+24+qVJ/QBpZAqpj6DwWVNbz3neUZcKW2uNJPl0DWOMgVWPJnt4ezGvM7OkZi+iKIGaRBkaDN0QZi3jq/S9PUUEN8+k5logSRkl6qP4tO7pI/viBtfbeMjVo2WqQ23T61fYl1HV8DwAA///VsKd6fAIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/namespaces.yaml + - content: H4sIAAAAAAAA/5SSwW7bMBBE7/qKhdACyUE0ChQ96BvaHhIgQI9ramUTIZcsufJF8b8XFGXXiWxXvYnU7szjYMaxAdMDcgfqBe1ASe0i9sioiHFraXmfKB6Mph+ejfioEtl+/objscJgXigm47kFV64N75T2kXxS2rvN4Uv1arhr4fmdUOVIsEPBtgJgdNTCOIKQCxaFoA7RO5I9DanxgSJm736wNo/WoOB4bGbCeT8F1GtEzrNFpQKwuCWbMgcAhrBS4wPEOIJhbYfuxkoxyUtvYLgjFvia7VMgna0TWdLiY8FwKHr//YJrIlOvw5Yik1BSxm9Kan9TuD5lOAnyHM0n9USWMJH6iY7gDX4PXqjEcA7meYmSp88kTVYK0bD0UH9ONTzcffll4I/vLYm74A3LJN1A8FEmzBsdVHlgAp+2AeY6/6OyhoXiAe1p63S+Z3VrNzsSd6djQNm3UG8cSTQ61dU6ojL+RFMpDO/SSW/xo83FkmDhQfwvdPb/lc91+/ZYCn/xhHW0cckZPxKugotXsa4wzZ9/AgAA//+Sbg14rgQAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/grafana/servicemonitor.yaml + - content: H4sIAAAAAAAA/6RTTWvcMBC9+1cMJpBLrCTQQjG0l1ByKDRQSnoIPYytt16xsiT0sW269X8vlu2N22wJpTdZ896bN5rnw6EitSE2ksQ964QgnLc94hYp3Dl4jtYLlr0KQVnzBc3W2l0QMNxo/CPJcWy3z6idtg1r4RtuRevBETQMBTt1Dz/Sa8olTnFrvfrBUVkjdm+CUPZyf13slJE13egUIvwnq1H0iCw5cl0QGe5REx0OFNE7PYqXT14ru5jdJK1HbEmChqE6ei+I2Bgbc9cwKhKVW+hehO3lOFVZk/OolAmRtb4Yz8l1niUunA3xqTB+zJXnKpWERkTlrFbtY1lTg431qHItP4qy5iJ/hdS2gIQsiDQ30LMrdq5+ec5pxrPfZ8whMK1O8i+sqc/I+0nKSJhIr8Yl+aSR21fETt16m9zsJl8tDTw6FaJfby6DPIJNvsWKs2etJEdlum9TalprNqpLEzkccX2KL6D28M1KuEM8npOTHFHM2T+VQxfc+zmmw5CBZ7vU4DP7DnHOJdVvSWLDSUcSN+y4UVpFhSA+pAYzSNyqI35p9Ezpbg/vlcTSS20ooN/D39jesQeV7+haXL8WV9VVecrJMPyxA3o4n6J0/jUrQgecROF7hBk1woI0cgKu15PlZECbvIqPWVlhZDw9dH7ah/MUMF8v7I/cLwuu/uM/XHlbHX8FAAD//6JXSV6/BAAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/job-patch/clusterrole.yaml + - content: H4sIAAAAAAAA/6RSy44TMRC8z1e0Io4Zr5A4oLkBB45Ii7Sce+xKxqTHbfmxEoT8O7KTzQpFvG+22lXVVeXjcSS/Iw6OzANLRTYx6YqyoOYPEYmLJsNu9Tl7DZ8wL6qHbBB4FvwlKHKxyw10LzqzmDSzNTaBC4hOp4Gjf0Bq+In6jGtZNPmvXLwGc3idjde7x5fDwQc30TupuSDdq+CtD86H/bCisOPC00AUeMVEdDxSwRqliWyedx71aeldFWlvN2TodBqvHgYiDkFLF8+NkWizQFaTl7vmbjNRTBh9yIVFtu1c4z6xwzZqLs+DdrlMbllGB0HBGFW8/bKZaMZOE8Y+6+F4Ddt+y9VawMENRMIz5LIVxzj93ufZ44sfPfbPEKxU9xPUWafhvpEPDqHQq9ZVUsE9dm0Bjv590hp/UdpAdNPZtaJ/byjX+TNs6TGMF4WPSI/e4o21WkPp+fyvzBNHjmz/hOj69szUQ0Zw7fg9AAD//y0yZoh9AwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/job-patch/clusterrolebinding.yaml + - content: H4sIAAAAAAAA/8RVTW8bNxC961cM1B69G8vowVigByFA+nFIjAZN0VMwIme1hLkkwRm6FVz994K72q8qhms5aHmSyOHMmzdvHx8fCzA1oNNQfkKbiMsQfUvSUOIPgSKKjyXq1jAb736jXeP9PZfkcGfphZcCimrGq8fjCoP5RDHHVLDLh28eNqt743QFP/vdqiVBjYLVCsBhSxXA4yMItcGiEKynooUfqtbJ2hy7hhKOx2IEUahIKHTKxAEVVc9nG2P7dCsAdM4LivGOMyyAdUO2Lbl5k3tcVxAiFcaxoLVX+XcK+4iazmMLTZaEiuCtUYd1BTuqfaSiO+vQGu+uun+clCLSpFcAFndkT7UxhH/ZxBq+/SId3fydskk/cbkvl6//BcZpcgLfZSY4kMogTgIq32LAnbFGDHG5vfvpNFcuf0SG9TBctKHBzbqn8hvY5r9QE0qKBGycIri/ZdiUm5sVgIj9SMo7zdtaKL4zznBDuoLrU2Fyuk81ENDTMtdNXl9LO7nkH0aaS1QfvN5O0ulRdyOc6ykj9L9ja6GEie/bHL1oN6+5Dv4/LdwOgAY95DVo4gKWovHRyOGtReb32NLU79lR1+3XrXFGsvJO0DiKM6KLk55GQxmWaXH/T1PhAwu1nzXVmKx8jrQ3LPHQK+wy/F2ZMlLwbMTHAxyP1WsyCe6nhsc+7pK1d50zXcpznz2MeZZFMO5nnPa8njGaN4ui8SzfP6vsJ77iq0svli99HEp+UGfYx5jnGzh/a5apmFQk6TI+n+wpK5tljcQ+RUVL33n5nMc8kytsbqYGIrFglEFLH9w7NDbFYcxM8cEo2irlk5Pxu35Vd6/xaec1fSRLSnycmpjvLm363Am/YCOvAYR1bZyR2ecz7PzHQMTbHLF8vmabF8BhUqmzYu+E/pTJD2JyW/4h+hQquLm+vl4evPfuF++lAomJlke/MsXTlVm1vwMAAP//TwOiQ+YKAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/job-patch/job-createSecret.yaml + - content: H4sIAAAAAAAA/8RVTW8bNxC961cM1B6zG8vowVggByFA+nFIjAZN0VMwImclwlyS4AyTCq7+e8H93siFa9loeVuSM2/mzdvH+/sCTA3oNJSf0CbiMkTfkBwo8YdAEcXHEnVjmI13v9Pu4P0dl+RwZ+mJQQFFHcbQ02mFwXyimO9UsMuHr79sVnfG6Qp+8btVQ4IaBasVgMOGKoD7exBqgkUhWE+ghR9Q62RtvruGEk6nYiyiaMH7RBxQUfV4svFul20FgM55QTHeca4KYH0g25R8eJ1bXFcQPEthHAta+6r9SGEfUdP57UKTJaEieGvUcV3BjmofqWjPVKQW5lX7xUkpIk16BWBxR7ZHxxD+ZRtr+P4hPtr5O2WT/ofYDi1H/wXGaXICP2QqOJDKNfQCKt9iwJ2xRgxxub39uZ8rlz8hw3oYLtpwwM264/I72OZPqAklRQI2ThHc3TBsys31CkDEfiTlneZtLRTfGWf4QLqCqx6YnO5SDf13rMx1k9cLaScjfjVyuET0wevtJJ2u6HaAcz3lAv0f2FgoYaL7Jt9edJvXXAX/mxJuhnoGNeQ1KOICkqLx0cjxrUXm99jQ1O7ZUdvsy2Kccay8EzSO4oznolfTYCfDMg3uv7UUPrJQ81lTjcnK50h7wxKPnbwuK7+FKSMFz0Z8PMLpVD0nk+B+6nfs4zZZe9u60qU0d9nDmGcJgnE/o7Sj9VtC815RfO3SFpn0Nxf/wGdpR2N/POf5G7BMxaQiyUsX2LJR1GhsisML8eapo+jDH5pAJPYpKlq6ztPnPOaZTGFzPUFFYsEog5Y+uHddSf0xU/xiFG2V8snJ+Fs/i8PnuLTzmj6SJSU+Tk3Md5cmfW6ED7jIcwrCujbOyGx4w85/XIh4m28sH6/Z5gXlMKnUOrF3Qn/K5AcxuS3/GH0KFVxfXV0tD95796v3UoHERMuj35hiHzJD+zsAAP//WgOTMuMKAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/job-patch/job-patchWebhook.yaml + - content: H4sIAAAAAAAA/7xUzW4bRwy+6ykI+eBDvZsGrXvYm2A7hQGnEZzWRY/cHUo79Sw55XClCK7fvZjRSnKaGEgvvc0Mye+Hn1ZPTxX4FSA7qB8wjJTqqDKQ9TSmD5EUTbRGN/iUvPDv1PYij6kmxjbQfxyKaF3/xeg6SIuh1ha7ulNCo6+WYoo30+Tz8wyjfyDN6A1ECb7bvdm8bcnw7ezRs2tgKe4jdaN62y1LfTaQoUPDZgbAOFADT09gNMSQKecnB5UcLKzGEHLrHGp4fq6OjmYAyCyG5oVTBgSY9xSGOvVvstd5A1Gp8pwMQ7jI5zGuFR1dREl2KuTLVPkSpXIUyKjaG5w30NJKlKpSK6vywhfllsauI3LkZgABWwqTKozxG3x+1eP003gli8XJf87jXwvJjPIHDuFbxv8Gz47Y4MeMlGmJ3f4Inrswuldk741m4Z9DpEhdth/Vb3ygNbkGVhhSXvEZ3NNfo1dyYJJD2uQxSh2GSY4JqIjVpRlDkO3ygHNzbHsJ+GvvE/gESm5kh2yw9dYDC1cZCL4D51MBOil6wXhRQNrRYEvQIUNU2XhH4A1WouBoRZwIPIOjaH0RppOJa5V4hRFbH7x5KqmfAVSwuLsrx0Xh7UQJNhLGgcB2kVIG2d+nH0oF553wyq/fYzw/vNAQbXft9fgQVf6kzsgdXxJ1Sna8OtnyFtUtlrenofyhJiO2h8J4FdAPudpLsl/ItqKPp33mx9vl1ecPy9vr04OOvEi/JdK98jNYkg7eElhP0AkbeiYtOY68z6LkcFx+AkywpRDqAqBjoAbO7zPsgndZWaI7z+OnA0FJeP8VAqaUt1bIWFwGU4IxeV7DIsaFDqKgaH2W0CPDx5uC9TrXGGOggdgw/KwyximRqfX9mKy07/epyOtDZlnaO9HWO0DnsoAsqnhdZ6B66qpg8NzA99MVYMBPDfx0efnD5QxglQrr/0uqhO4Dh929iL3zgdIuGQ2HjF/8B/wTAAD//wjCsm+hBgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/job-patch/psp.yaml + - content: H4sIAAAAAAAA/5SST4/TMBDF7/kUo4hj4xUSB5QvwBGJw3Ke2K+N1YnH8p+VoPS7I7uhu6hCwG0mz+/NL6O5XCbyR+LgyDyzVGQTk24oK2r+HJG4aDLsNp+z1/AVy6p6zgaBF8F/miIXuz5YT6ILi0kLW2MTuIDoeh04+mek5p+pa1zLqsl/5+I1mPPHbLw+vbwfzj64mb6oYNhQ2HHheSAKvGEmulyoYIvSYsdXykl/YR6rSHs7kqHrdbpT7xE5ssX895j721vOQMQhaOmwufEQjStkM3l9atsYZ4oJkw+5sMih1TWeEjscoubyKrRmVx5TJgdBwRRVvP02zrTgqAlT1/oyvYZD73K1FnBwA5HwAtmpOMZ//L2R3v2+oX48wUp1f3Dd5jTfD/LBIRT60JaTqqCPn4ij/5S0xp2mfRrHXiZkrcnijZJhE0ru/QvS8kY6odzr2xV1PATXBv4MAAD//5j1XnLnAgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/job-patch/role.yaml + - content: H4sIAAAAAAAA/6RSy44TMRC8z1e0RhwzXiFxQHODC0ekRVrOPXYlY+LptvxYCUL+HXl2NhFa8Qo3W+UqV1f16TSQ3xOLI/PAoSKbmHRBmVHzx4jERZNht/icvcpnTLPqMRsITwH/SIpc7PyCegg6cTBpYmtsAhcQnc8dR/+A1PgjrRjXMmvy37h4FXN8m43Xu8fX3dGLG+leA957cV4O3YLCjguPHZHwgpHodKKCJYam3l/NDvrsdl9DaG97MnQ+Dxfzm0SObDH+Weby9kmnI2IRLavn3PwQ9TPCYvJ810LpR4oJg5dcOIRdO9d4SOywi5rLFWiXDXmpMjgEFAxRg7df+5Em7DVhWLE1U6+yW2+5Wgs4uI4o8ISwueIY/3K8nl79nNC6Q2JDdb9gPf3TeN/Ji4MUetPCSRpwj30zwNF/SFrjb7ruiK5VX5q9vdhcpy+wZZ1/2KQ/IT16i3fWapWyBvO/3zxr3LpBLV2Ia8cfAQAA//+0BzJdrQMAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/job-patch/rolebinding.yaml + - content: H4sIAAAAAAAA/5SSTYsUMRCG7/0risbjdETxlJu/QGFhxWN18s502MoH+ViQtv+7pGecwRlE95ZQ9T55UtS6TuSOxMGSemZpKCrl6FEXtPIlIXONWbH1rhQXwzfMS4wvRSHwLHhjKHE1y0P0JHFmUXlmo0wGVxBt28DJPSP3vKbXD8OLC1bTE/KrM/hsTGyhDh6VLVfWA1FgD020rlThk3TMeLOa4m+tYxPpvSMp2rbpanlBlMQG+t+Ya++ZMxBxCLFydTGU7kM0LhCvyvK+/37UlDImF0plkUM/t3TKbHFIsdRboV8ulUfKZCGomFIUZ36MmmYcY8a01/bhuRgO+600YwALOxAJz5CLFaf0n98b6d2fE9qXJRhp9i+p8zs995NcsAiVPvXhOM8nfG0iTzAZteihC8Tv7OV+De5bb6SPndQVEGw//goAAP//hPm6HbsCAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/job-patch/serviceaccount.yaml + - content: H4sIAAAAAAAA/5RTTW/UMBC951eMVj0hxatKHFBuqFSIA6JCUM6zzmx2tI7H8kcRCvvfkeMk2yysaI8ez3vz/N54GGrgPaBtQT2iSRSU89JTPFAKXxx5jOIVtj2HwGJ/0O4gcgyKLO4MtXA6Vej4kXy+bWBp9NRxiB4ji1XHd0GxbJ9udxTxtjqybRv4nCJGtt1EeSd2z10qiKqniC1GbCoAiz01AMMAkXpnMBJszhprmUXukzG5dwMKTqd6kVIBGNyRCZkMAJ1r/k9WiG7WRKNZVpvUXkGVORn3G9i2ZCO8zRb9nGzLCurpQWe8T4b67AapXixH8Ww7pcWTBKWlH2VPQb0qJIdRH5aospDMtEc2ydODGNa/GvjUWfG0zCAT6ErnMLxu/Ao+c44zbDsf89unYLI16Pijl+SWUilft6UkOi/gBWzzZrOcPQVJXtNFyzqFsNyVSP+mvPt6//7b/ar0/eHDXNKGycayyjMukH9iTWeaHH9wqOmFazj2lqVecbwA/o+/cfOcxmE8NLBdoqsv7NiWtayehfYnAAD//1DKXHoxBAAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/mutatingWebhookConfiguration.yaml + - content: H4sIAAAAAAAA/5RTTYvbMBC9+1cMYU8FKyz0UHwr26X01KW06XliTZwhskboI6W4+e9Fke2s04bdPWo0783Te6NhqIF3gFaD2qBJFJTz0lPcUwpfHXmM4hXqnkNgsT9puxc5BEUWt4Y0nE4VOt6Qz7cNzI2eOg7RY2Sx6vAhKJb18X5LEe+rA1vdwAYNa4xsu5H0QeyOu1QwVU8RNUZsKgCLPTUAwwCRemcwEqwuKmuZZO6SMbl3BQpOp3oWUwEY3JIJmQwAnWteJitEd0uis122NUnfQJU5GfcH2GqyEd5nk36NxmUF9figC94nQ32KGEn1YjmKZ9upVjxJUK30Z9ljVG+KyWFs93NYWUhm2iGb5OlJDLe/G/jSWfE0zyAT6EbnMLxt/AI+cZ5nWD0d89vHYLI16Pizl+TmUinftqUkOq3gFWz1bjWfPQVJvqWrlmUKYb4rkf5L+fDt8eP3x0Xpx9OnqdQaJhvLKk+4QP7ILV1ocvzBYUuvXMNzb1nqBccr4P/5G3fPaRzGfQPrObr6yo71sXxTqp7F9jcAAP//QE47KzUEAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/admission-webhooks/validatingWebhookConfiguration.yaml + - content: H4sIAAAAAAAA/5yUPY/bMAyGd/8KIssBBeJDgQ5F1hs6FuhwOyPRiXAyKYhUWpyb/17463JxfEXaTeLHy1cPYXfdFkIDyB7qZ4yFtE5ZWrIjFf2eKKNJrolxH+lScoiyx1jnPbraZUIjOJ8rTOGZsgbhHQwpLHaUHF7RgnD98lXrII+nz9VLYL+Dp1jUKP+QSFVLhh4NdxUAY0s76DowalPstTcXS1uZPTUlxr50AzWcz2/xCiDinqL2UgCY0h1aazpdB4FdLP6DnnFK3/UbAntigy89hVwi6a6awP4FaouMB3rKXvu2LWAK37KUNDgfrvTLiHueOsGrADKplOxoqnJFTdo56KkJHHraWgGcKO+nsodPD4MjYr86rBUOJjnwoXaSSbR20t5Ow0jZRt9Zh8jlXTQG7Igs2kNYqXhsAmMMr3PuSm+ZfK+0zCnlU3A02Z4Gib++vw0eVrJSswC0soKktxDU0KgpUcnuEdlsVrYm3IRDi2l+jcv/L5bEL1pjUBsOniIZ3SczIb3ie8Od2CcJvPR6oHHe+C8YjiX5+fgvLlg8ffSan2jueKcMtqQJ3VJrNrrQfPdp/AkAAP//2JqxNhEFAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/clusterrole.yaml + - content: H4sIAAAAAAAA/6SST0sDMRDF7/kUQ++NCB5kb+rBm0KF3meTaTt2dhLypwfX/e4SrVvEPxS8Dcl7vzc8ZhyXwBtA9WDXKJWyjSkMVHZU82OkhCUkS4q90EmyldCj2NSjsy4RFoJpMhh5TSlz0A7ev7CWXUj8goWD2v11thwuDpdmz+o7uJOaC6VVELpl9axbM1BBjwU7A6A4UAfjCIWGKC1icdpsGT5X21SRJl2AhWma3w2AYE+SGwoAYzyD9RNnHIHVSfW/eD5SmusVWD1pgatWRgpCK9q0eIx8n0KNf7RiAL6V8v8Ocu2fyZXcmeUR/0TpwI5unAtVy/kJ85C/AB7m0CMqR3Tn8Gbt0d3OkNS38S0AAP//IgNMpZICAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/clusterrolebinding.yaml + - content: H4sIAAAAAAAA/8RY227jNhO+z1MMhPzAX6BSnGyApkJ9sXAbtMDGa2SBLXq1YKixzYYiVXLkRHD87gVFW9bBBzlJ21wENjnzzTcHDodeLkM4VyxFmzGOEA8hM0LRFIL/2QD+LxSXeYIQZEanSHPMbagzNIy0iSq1AKLvYLU6c2BiCtFXJnO00Vbn80YFFXuQmDhhlomvaKzQKgaWZfZicXn2KFQSw8+YSV2kqOgsRWIJIxafAThzMSyXQJhmktEeVtNcSicaQASrVbW+Bij59kCp++bYAkj2gNI6IuD49sRos1gu4WBMvRWn9QJCJagIrp19myF3tg1mUnBmY7g8A7AokZM2nlXKiM8/1Wi+hajXNyiRWR+w8+jef4vGLEV4gb9yTeiDs8FfE6llzf3JBqd/OXw3/Soz04kPnRcH0n+wVPbT6NpClfQ2+1EpTYyEVtYHswzRdjHuTaeOtJeTQ99UE0APhkZoI6gYSWZtmfmKZGerzOprsFr8ALhWxIRCUyubsG8L2FZOpQsgUjbDGIKGti0sYfotwSnLJX0zOBOWTOGVD/tS4kUGM20FaVPAahX30SA2g9UqaDOb5FJOtBS88ByP4mSVQguOmVktaFWKLaYLNCOdZswgBD/BYhB9+DEaBH0p1yBdLsIwZYrNMOQmscPDjL3kyCS2idNJe7+SfMwfUCJ9QbMQHOuXSpviWjK0XvQIzRbu9lpcrS5OvXfWWG93VurZrTYpo13+ST0Lp+XuEdf2oLye0ydcoNxHSbrN44x2YLySUIKqGG/SZXfRchJhldFjBdvCe4E/tVAQfB/0ZPskaA7nBwyoPWTdPausm8MiliTC9XK2I0QuGuu7eVyr0paUQxq629ZxdF/O1X7hjh8+bs2QnasTg1HVBGlLCRozJJPjDgHO5FxbGl5e/RANokF02ZGpHTqu1VTMQoNSswTN8L16+nZpVFq4Xxv47eRefxhpT0NtuRWW3ffdnPPoKcs8l9N92gnQ0xWe5UeOHG/EaZTlfWBTTLUpTkK+K1Wa4Jk21LgznbVqBJloQzHcDG4GDYnNi2ROlNU2DFqdG45957ZKfjuyXV416VnkeTk2aUX4TE2iTEr9NDFiISTO8BfLmSxHwBimTNrmUTPIks9KFvda062Q6KsphsaZPN5tSdqJ0c/Frpt3M6SRtO7EPhfdEey9Crqicfoo1lLtFHFnJDsJrjGaHZjMXLTcZIKm2xCFJVTD+Ob6+kNnk5iZYa1Vxp3aLGcfLIYcDV08YtE9SGjI77p/3dtSWJfZkOU0R0WClyX1hiqvItSj3Bda5ine6Vw1D2WntEKL3GCTferUJozmMXRd29R/q+J7NoB2KuoNwP6nx7X3c3P/yfVB3/HaOhBtv9D0b32Q73SCMVxfNcvSK4xf9UMOS1JhravCkzxuJWPrcCdLveq4DXfwmQ2wfnd85NyVZU/H9dZYW3v9qj3utpulxkhP2jxu2dQWG0WUKLvpcyOZW0JzK4yl3wXNf/Uqbc+qGffQiKsT/LL+gWrLob7aiHkrlNCdKPsYZdOpUIJqjXez8g8YIy3dp+YvN7XFE0zWPv4dAAD//yMxm+OTFQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/deployment.yaml + - content: H4sIAAAAAAAA/5ySQYvUQBCF7/kVxSDMKe0OKEhAL4PsQXBBZC+Lh0ryZreYTndT1T24xvx3SczsCo4ge+2899XjvYxjTXIgDj25W/YF5pLGAfkBxW4SlHNUh8Ctx7Pk3seWvdOWO9cpOOPip2Tp4+qcpuoooW9o74tl6JfoUXGSW6hJDA0tBi75Iar84CwxuOM7cxJfn3bVgMw9Z24qosADGhpHyhiSn09vnhPX8Rz5ULyfpRtyNE1P73WyVBF5buFtxhFxSv/Bu8CqxpEkdL70//D8vjK7fpKEHiHTm7kJLR7WVHP3r46lxVfWe+S1CmreU48DF5/J7TlxK16ywNyn0mIVuWt50p+b/4t0c4Kq9JhPrjsbhhN0H4fECtp8oJ3bvXVX9dXmUpJpqmriJNcaS7KG7rYpeuket98WHrzhggbfM8Lst7MuLPsTKSwW7bCiekNXVPLjQhXMeqITtLVmHobutsWwPJ6dn3nAMlv94j/gz0i/AgAA//903erW/gIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/psp-clusterrole.yaml + - content: H4sIAAAAAAAA/6ySPWvjQBCG+/0Vg3vtcXDFoe4uhHQJOOB+tBrbG49mh/1wEUX/PaziyIQ4wUU6oZ33eYeHGccG/BZQerAb5ELJagwD5T2V9KAUMYdoSbBjOo/sOHTINnborIuEmS4+adLbU3KazMFL38INl5QprgPTfy+9l51B9RuKyQdpYc5hyfsQ/TNmH8Qe/ibrw6/jbzNQxh4ztgZAcKAWxhEyDcp1g9V58Sa8b74tzHV0BRamafnfaFIDwNgRp4oDQNUreBdYZhzBi+PSf5F5a6mpF/DSk2T4U4XEwLSmba1H9XcxFP1GgAH4ZPBnPKTSPZHLs4fmVPJI8egd/XMuFMmzoCublo/0AXG/lC+wpOiuIS6zp3y9WZL5pl4DAAD///duoMy/AgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/psp-clusterrolebinding.yaml + - content: H4sIAAAAAAAA/7xUTW8bNxC961c8xAcfWqkNWvewN8F2CgNOIzitgR5Hy5HEhjtkh0Mpguv/XpBaSS4QFznlthwO3wffcJ+epvArkDjMHikUzrOkcWDbcMkfEitZ1BkLLQOfW9YhLinMdEn9rFcm4y9upZxux5PPzxNK/pE1+ygdUgy+3/+wfbtko7eTT15ch0V0H7kv6m2/aPuTgY0cGXUTQGjgDk9PMB5SqJRvzkqn8Sh1VUKorW8ww/PzqT4BAi055AoFUEpfgfUlnPHCXrE7F4lG5qPkahmgc6GbVML4Jw3ha47/Ay+OxfBzRaq0LO7wCS99KO4V1QefVfd/IXLivrpP6rc+8JpdhxWFzBPgAg/8d/HKDhaRlLf1GOeewijHIjRGm7VmCiHuFkec21PbS8DfNz7DZyi7Io7EsPO2gUSZViB8B+dzAzoresH4fQNZFsOO0ZMgadx6x/CGVVQ4XrFkhhc4TrZpwnQ0caMxXVOipQ/ePLfQL4Ap5vf37XPeePuojG0MZWDYPnGuIIf1OCdTXPZRVn79ntLlscJDsv2N11MhafyLe2N3qmTule20dHEnO1I3X9ydD9W3kI3FHhvjdSA/1N1NzPYb2y7qpzaj//MuX7Qexq0W7hbX5xxqYXF3cy5okXn+I7MeDF5gwTp4y7ANo49i5IW1xV3kEFmL65RRBmXsOIRZA9ASuMPlQ4Wdy74ayHzvpXw+ErRBODx4UM71chuZRFfBlFGylzXmKc11iAol21QJGxJ8vG1Yr3OVlAIPLEbhV40ljcGNre9LttZ+uHYlWR+jrdLeRV16B3KuCqiimtd1BZqNXVMMXjr8OC6BgT53+OXq6qerCbDKjfXbkiqT+yBh/xCjvfOB8z4bD8eMX/wq/g0AAP//qIRs4d4FAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/psp.yaml + - content: H4sIAAAAAAAA/6xVwU7jMBC95ytGEddGrLYHZGkve+PCVrBC2uNgD2CtYxt7gkAh/75ynJa0XbbJhltn6vfmvTet3bYr0PdQ3aJpKFY+uJr4kZr4w1NAdqEii3eGFHRdgV7fUojaWQHPX4rf2ioBNxSetaSiJkaFjKIAsFiTgLYFptobZILynXnlttT3jTHpaAkVdN2uPxBEj3IKy+5spikADN6RiUkIAHo/keNQRduCttI06gNMnpJQb6CtIsuwTvNPRxpzZANDxgC7X1ibGbDjqWTVPAForWNk7WzMyY0aYp6oMdWHyqInKWbok6aJTOFyk9Xtyn6jc/H/lRC9MAWL5nIzJDRqzExoTPUJuzMO1Xc0aOV7QPu9qSkdMy0WdOOaIOka7QPFY2njb9O/NM0IqYIzqVUA8W35PIBVsp8J+86BqeEjgHeBexmr4d56ZPY9w+CdnqbI4VdPUF45RRsXuNyqsENj6jK257f4PalZrICL84vzvmQMD8SZf5B9emFs4ia4l9fx1b7vPi62v9D9TxP/GcB6/fWv/mNxAIhkSLILSx+DhA5kCGN+ks6q61xVV1gTvMFT45jyzBSFgHKa4z63rivHv8k/AQAA///MU5WYlQcAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/service.yaml + - content: H4sIAAAAAAAA/4yRzUosMRCF9/0UxewncC+ueucLqDAw4LI6OY7Byg9JZTZx3l1CYw+KyuxCOOf7Ck7ve/IvxNGRObI0VJNLCtBXtPqYUVhTMYi8CP6MVJSzt7i3NrWoxhawgi6XibM/olSf4kznf9Obj26mw5f0FKDsWHmeiCIHzNQ7KUKWAdlddfv06Us/ix84YEdmiFdUzWxv4W3ZrS28QOo4iYhzvpGx1re/qXfy0Upzv3RWy2i9k48OUelu+H3gE56ayAG2QOs8SJqeOcg2w0nSwmK+R6+k/4M0JkZ04/kRAAD//4/0jvbuAQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/serviceaccount.yaml + - content: H4sIAAAAAAAA/6STzW7bMAzH734KItiA9hANA4Yd/AzdBrRAgR1ZmamFSZRG0bm4fvdBVuJ5yVaky82UyT9//BrHLbgdIHdgHtEPlE2SGEh7GvK3RIIaxRDjk6dXXTLJ3ln6EtlV0+8O3zBNDSb3SJJd5BZCfXb8bGwUitnYGD7sPzY/HHctPPwh1ARS7FCxbQAYA7UwjqAUkkcl2Pwm2cYjym7wvrhuwMA0Le8HgZzQXqKy+FaZBsDjE/lcQAAwpQs1TinGERxbP3T/iKlZStQLOO6IFT6V/DmRLbmJuxQd6wyyhRRFW+hV08zVR45yV0FBZaD59TDly8fnWEn26GvhAEd7rvn/ZQoHcVfMNyMFUnH2nub+OH7OR9GzH23psSYPNxq/Y/BXJVmG8Pm27sE1Ncg5vZxyvxVZ/gp7QgqQyZPVKHV9A6rt71b7fM1G13ghT5jrZb0z99UyXzEQvMDPISpVkOWuHs6JivcCtC1KSRzrDjbv8wZuXr2b9b3erlOu2vArAAD//ztYrVruBAAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus-operator/servicemonitor.yaml + - content: H4sIAAAAAAAA/6ySwWrzMAzH73kK0XsMH5TvkFvZC4wVCjuqsdKZybJnK4OR5t2Hm3ZZRwcp7BYi8ftLP2sYanAdoFgwO+SesokpeNIX6rMhwT3TzdL8uY3UGrTWqQuCvGFK+kSMe+KHIJ07ZBjHCqPbUcouSAPv/6pXJ7aBLbWJtPKkaFGxqQAEPTUwDKDkI6MSrOaoOkRKqCGZrmcurSswMI71txb0dZrS6zZIdzgzc8R2CfirdyJXZ0H3GHicC6f98kYkKJbiSQUAzj+aqowUntHz34UcwYklUVhfViCxU/TJTC6mATDGhUYWaB4GcNJyb3/BTMEFdD3d5eHn1WosJ3SFd4dsPtDzNO79tm4d5RH2/9ckLRzhrQ9KP1R9BgAA///7tQR6GgMAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/additionalAlertRelabelConfigs.yaml + - content: H4sIAAAAAAAA/6ySQWv7MAzF7/kUovcY/lD+h9zKzoNBobCjGiuZmSx7tjIYab77cNMu2+hGC7sZS35P72eNYw2uAxQLZoc8UDYxBU/6REM2JLhnulhajttIrUFrnbogyBumpPco2FO6C9K5PsM0VRjdjlJ2QRp4/Vc9O7ENbKlNpJUnRYuKTQUg6KmBcQQlHxmVYLVY1SFSQg3JdANzaV2BgWmqP7Wgr9sgXX/SyhHbawQ/emfF6gTmluQPS+GYK29EgmIpHhEA4HLRVGWk8Iie/87kAE4sicL6HIHEztaMe+JcCANgjFcS+QXvOIKTlgf7w/PZsAh8ner80UukGsvK+Hlljuquz+YNPc9T3g7p0g4eYP9/TdLCAV6GoPSN0HsAAAD//yseTXAJAwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/additionalAlertmanagerConfigs.yaml + - content: H4sIAAAAAAAA/9yTz0rzQBTF93mKQ+nySz66k4BvUEVcFFxeM9c6OP+YmXQz5t2lkwSb2pIILsTd3OTkd85lTlIqIV9gPaodqZZDRULIKK0h9eCt5vjKbXhsFYd5xR25rivIyR37IK2pcdgUb9KIGlsZYiEj61AXg+cSHLouyz2ZPWPtJoJ70vzv/CHq28VkoMRpWm2NjNZLs68a69mGqrH6/2FTAEC/xxSUX2iOJChSnSfAkOYaKSGydooiY/UZsbSOPUXrq6NshTW6rkzp0mp9wpEYHDVLsVnbsweComdWYUwIkHPfilikBGka1Yor0t7gKH6HNIJNxM1oP9z32Yont7PNHw820T6RVvPqyz5sxDgGx8248d7b1uXqXeP3iin0BJiPKvC0kPP/zO9qWR7/Wq9mivTjzVlUlS/HjwAAAP//DwL/YWkFAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/additionalPrometheusRules.yaml + - content: H4sIAAAAAAAA/6ySzUrEMBDH73mKYe8NCIuH3sQXEAoLHqfJtAaTSUxSQdK+u7TdtbuiuAveQmb4f/ySUiowHSBrkAe0AyUZoneUX2hIkhhbSz+OtmMTSEnU2mTjGW2jIgZ69NyZPsE0CQzmQDEZzzW834lXw7qGhlSkLBxl1JixFgCMjmooBTK5YDET7DaTygeKmH2U3WDtvLoDCdNUna2kxblSnrv+qJcCqmtEv3ZXVXHEckvvp22wdEsPzD7jPFwwAOB2UYs5kn9GZ//PZATDmjjD/lSBWK/WFluyaaYMgCFcSeQPxKWAYWUH/YvEajqLXCY7PfhW61zX9El+oLNrxtsRXf6/Edr7PbGCEd4Gn+kbmc8AAAD//1/7CPv/AgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/additionalScrapeConfigs.yaml + - content: H4sIAAAAAAAA/4yTMW/bMBCFd/2KgzJ0qSQU6FBo7dClk9FmCTxQ4lkiTN4Rx6NjV/V/Lyi7cII4QCaSfneP5+9Ry9KA24EhC+2j8RlTG4UD6ow5tUhm8HiTJs+D8a0MZmxHQaMI53NlontESY6ph1UyWWcW98eoY2r331LruDt8qfaObA/ffU6KsmGPVUA11qjpKwAyAXtYFlAM0Rfv+jZKwxHFKEu7y96X0hpaOJ+bW0kF4M2APhUzABPjB9zuOy0LOBp9tu90Xe4pfX/BkUVS+FpISPaY+qoBE90P4RzXWRqo6wpAMHGWEa+/EVtMXUAVN5bZDyjDVZpQ19W7dNk8Gx3n6gF+zS5BRAkuFdxgBIFYwRHojHBnVBCMXD0U+fRJECYxw4AWdsIBZtWY+q6bnM55aEcO3c3i5XbwPHTBlNg6y2MOSLqG2+HRhOgxdSX4JqHm2J6Cf4UAnup6+w6AFyii8PG0nhPKwY1XEclGdqSXU2R7gwVP9YRaf4a6kCrrCqrevk0Aj4pUmF1sakJ9Ztk7mq7v805CjibBlPBjFxLT5tr/e/Nzrf2f7vrvXzlsq/LhIdnyav4FAAD//20lQ5iEAwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/clusterrole.yaml + - content: H4sIAAAAAAAA/6ySPU8DMQyG9/wKq/sFITGg24CBjaFI3X2J25r6nCgfHTjuv6OUqgXxoQ5skeL3ea1HnqYOeA2oHuwKpVK2MYWRypZqtqQ4CJ2/NhIGFJsGdNYlwkIwzwYjryhlDtrD4Qtr2YbEr1g4qN3dZsvhan9tdqy+hwepuVBaBqF7Vs+6MSMV9FiwNwCKI/UwTVBojNIqFueNuhApYQnJrqtIG12AhXnuziMGQHAgyQ0GgDFeQPuZNE3A6qT6X1IfPS33BqyetMBNE5KC0JLWbQGM/JhCjX+YMQDfxPyHh1yHF3Ll4KE7VjxT2rOjO+dC1XIQdGHPp6vIXyBPp/ITLkd0lzBPs8d8O0ZS357mPQAA//9bnDsNmQIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/clusterrolebinding.yaml + - content: H4sIAAAAAAAA/+RUT2vcPhC976cYzAZ+v4NVAj0UQw+ll+ZSFgqBHmft8a5YWRLSOA04+e5FlvwvsTd7755kzXtvZt7OqOtykDWgrkA8omrJC+tMQ3ym1gvSeFS0GpL65MhPkNfXXdDae3JPsqSf2BAUX8E6qbmG7M7ndz6D/6QuVVsRZJNUbiw5ZONE3SqlsaEMxP9zRPZW/WAcB/WVuhJC2ADJB54zLdPBUS2fA09Jz2vk6fjLUinmrEHJIp/9Ru7Bk4h5gYpqbBUv0w81yRrEd7R4lEqyJC++HR4eyXlptBc/0EOmif8Yd5H6JC5fvJDm09P9kRjvez/QygQvYBO56zog5ektgZ6ZdJ9qgdRVX95F6qqAh9jNriHGChmLseztzlFrw8hBOKQEmF0EPrD5jY26VeIFpK5IM3we/A8l9sJhTgrouuXEjSFvsYxxpsYq5I2RG7EZiMhWeCTlix0AAFp7o0ak51M4NHt12GOewHvf5XWTIzNibzA0wTe99JbK0K5rFfV9f1zB2XhOf3AAO9Qngn24/WAzZkSAHMJnNNiqxN8PUYAzsy3SGaBfqmKZ0YZ0aSVHWpQOl5O0nevG3xHLC+mqWFwCzKZpY7xW0OE9WqD7B2r0Z9ir1a+0ncmQf6Hl67PFKjXG6tYng9+N9zLt/Pw3AAD//2PS/vPxBgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/ingress.yaml + - content: H4sIAAAAAAAA/7RVwWrcMBC9+yuGxcfaJbdg6KG0hwZKCQ0Eepy1J1mxsiSkcRpw/e9Flp3V2nI3Ja1PtvTmzdO8GbnvCxAPgKqB8h5lR640VrfEB+pcSQr3kpJbjuyTqOmW7HcyUtT4J7BQj5acS4CHIfMS8lp3iqH6kIo+vd4ZqksbKBz8AqEYipliVqTtFtFas/HgF4ZJZgjc4FgdZQxHI+7JOqFVBU9X2VGopoKvwnHWEmODjFUGoLClCvoehKpl1xDsTsSFNmSRtS0fOik9cgc5DEMRQabchuxUg4nTGawDMVNrJPIG8ws2UGeCqXVV1vdgUT0S5OId5OQP3ikWcnZlGDKAAsKhboKGDABgap68/IQG90IKFuTKj7c3Uy1c+QUd7BTxT22PQj2Wx2tXCv3+6WpPjFe7QA0Ql28TPaUEko5SgfTMpMa0qwjVjC75z9gP/7zVk76HXMxy3mZHYJC4J+lmef6I5rK+pLbsUlRI5eP8KDWkGK5PQmZ3z6ZiiolRwPoHtnIDuMXsPbmQCpXSjOwdPUGjxbFz08nj0FcocIbqueK2kxSVv4CDdjw6sMjh128tPYhnX/a5D8o08LNuUaiTAP8cmE0VfQMY5MNLbq9xmkvjZ3LBOmLPCYNevxG6z0gfmq9BAHusj6SaarUBMN2S3/7tYCQy+Js6FDa+ulceFcs20XZZC5bujmpL7EVvbqZ/P4Ga5cpzd16c4n+0QLrxX6U4FHI+dKpBUzRmpXahJr5d/yrJWPo13XLMp4XY3Pj9dwAAAP//ChWSIpAIAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/ingressperreplica.yaml + - content: H4sIAAAAAAAA/6SSMU8DMQyF9/sVVvceqsR0G4iRgYXubuLSiMSJEqcChfx3FK70WlqkFm475/n5s55LmYNZA7KGfok2U+pD9I5kQzn1xLiydPYpeP1gUsxBjOf7rF9I9vJaOwxmSTEZzwMEb416v9kuViS46F4N6wGeTvs7R4IaBYcOgNHRAKWAkAsWhWA2TZ/7QBHFx36drW3SGfRQ63yS7CxSQHWJz147GnUAFldkU0MBwBAu9DjlKAUMK5v1L13jnNb3AYY1scBtI0iBVJu+S+jCCJzhuy0a24IY9zisfC3xZ6dGQqxh+ruCC9+eGX+QHdWuYjvjdkyXyJISH8f8HIraPB4Euov06FzaNxX+dXvfLLV2nwEAAP//HG4aJ2EDAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/podDisruptionBudget.yaml + - content: H4sIAAAAAAAA/5SRT4/UMAzF7/0U1opri/aGeuc2KyGBVuLoacxgSOIo8cylzHdHbUjTGTL8uaV+9nu/2vPcA38B9AaGV7RnSkOI4ki/0jkN5PFoqSmhMawsHu0HMS/iWSUmuF47DPxKMbH4ES7P3Xf2ZoQDJ+1YyaWxWyIj+hP9ly1AD3trlzX2p2GSSJKGSdzby3MHAJBDq8NadKRoUHFcvwA8OhphnmFYXjmj1FPAKYtKLlhUgqdK2UugiCpx2Hqf4E11sHgkm0oOAIbwj17Zpq9yN8/AfrJn82AqZy1zP4C9Ia/wrpIA/DrwbrGHdWLpWZDkMzrbkB+7kTellAJN5TeDmBfSyFN6700Q9rreekto6I2QgvtNjitIDS+VfLJ7/Q6s2Gz3+UiWJpXYOHORbmh/H2yz7jIBUssp/dlgoQxiPmE8kdbTbDvdC/f7vBn6K19JS+iCpQM71h16LeYFN7p2fu3nzwAAAP//643WA00EAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/podmonitors.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/prometheus.yaml + - content: H4sIAAAAAAAA/6SSwWoUQRCG7/MUxSLkNG0WFGRAL4vkICiI5BI81Mz8mxTb091UdS/Gcd5detw1AVcQvHZ//1dFVc1zS7InDiO5W/YF5pLGCfkBxRwC9x5PX/c+9uyd9jy4QcEZF7+Spfen5LI0BwljRztfLEM/R4+Gk9xCTWLoaA1wyQ9R5TtnicEd3piT+PK4bSZkHjlz1xAFntDRPFPGlHwtvXnqtI0Jyjmq2xfvK7ohR8vSPkOSpYbIcw9vVUjEKf2D8aKtmWeSMPgy/iX1q07N/SAJI0KmV3UaWjysa+rcXxxKjy+s98incVD3lkbsufhMbseJe/GSBeY+lB4nyN3Ib/48/T9Mn45QlRG15GnHhukI3cUpsYI272jrtq/ddXu9udTJsjQtcZIbjSVZR3dXKXoZHq++rj54wwUG3zJCzduZC+sNECksFh1wUo2Goajkx9UqqDzREdpbV1dDd1fFsD6ekx95wrq49j+u4HlTPwMAAP//KYcXIfwCAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/psp-clusterrole.yaml + - content: H4sIAAAAAAAA/6ySvU4rQQyF+3kKK/3O1ZUo0HaAEB1FkNJ7Z51kiNdjzU8Kln13NEuUBBFQCmr7fD765HFswK8BpQe7Qi6UrMYwUN5SSZYEO6bTaMOhQ7axQ2ddJMx0caRJHw/JaTKofkUx+SAtzGMseRuif8Psg9jdbbI+/Nv/NzsvfQsPXFKmuAxM9156LxszUMYeM7YGQHCgFsYRMg3KtcHiVLgJShFziHZdmOvqAixMU3O2okkNAGNHnCoQAFWvIF6kmXEEL45L/0Pq807NvYOXniTDTZUSA9OS1rUAqn+KoegvdgzANzl/5SKV7pVcnl00hzMvFPfe0Z1zoUieJV156+x50hfI87HAEZcU3TXM4+4hX3+WZP4t8xEAAP//efe/ysACAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/psp-clusterrolebinding.yaml + - content: H4sIAAAAAAAA/7xUwW4jNwy9+yseNoccWk+7aNPD3IwkWwTItka2DdAjPaJtdTWUSnHsNdL8eyF5bGe3SZFe9jYiqfce+UZ8eJjCL0Hi0NxTGDg3SWPPtuYhNyy0CHxKrUJcUGh0QV3TKZPxs6mU0/V48/FxQsnfs2YfpUWKwXe77zZvF2z0dvLRi2sxj+4Dd4N6281rftKzkSOjdgII9dzi4QHGfQqF8s1J4TQmVrKozXIIoZS+QYPHx+mpZAIEWnDIBQyglF6B9jzSOKwXWp6JRCPzUXJpG6BToJ0UyvgH9eE11/+GF8di+LEgFVoWt/+Ely4M7gXd+06L8s8hcuKu9J/Ub3zgFbsWSwqZJ8AZ7vivwSs7WERS3pRrnDsKoxyL0BitqcUUQtzODzjXx7KngL+tfYbPUHaDOBLD1tsaEmVagPANnM8V6KToCeO3FWQxGLaMjgRJ48Y7hjcso8LxkiUzvMBxsnUVpmMTVxrTJSVa+ODNc7X9DJhidntbP2eVt4vK2MQw9AzbJc4FZH8e/5QpzrsoS796T+n8EOE+2e7K6zGQNP7JnbE7RjJ3ynY8uriVLambzW9Ol8p7yMZi95XxMpDvS3Yds/3Cto368TTPEryZX34emN9cnQI6yCz/nln3ys8wZ+29Zdia0UUx8sJafRxk70X14Tj8DMrYcghNBdAhcIvzuwI7k11RlvnWy/DpQFAd3r9mUM5lapVMoitgyhiylxVmKc20jwolWxcJaxJ8uK5YL3MNKQXuWYzCzxqHNDoylr4fstXy/TyVZHXwrEh7F3XhHci5IqCIqr2uClAzVk3Re2nx/XgEevrU4qeLix8uJsAyV9avS6pM7lcJu7sY7Z0PnHfZuD94/MXqebKj05fbs6kPi93TRzAupH8nnltM/xv8P9bV8fOfAAAA//9nPH40aQYAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/psp.yaml + - content: H4sIAAAAAAAA/7RWf2/bNhD935/iKiSIXURSgnUDIswDhmwNunVokWUFBhRwztTJ4kKRGkk5DRR994HUD8ux03TNZvgPmXx89+7x7qy6DiF+ObkgSRotpZBpVcARCtK2QIkr0pGuBJkjWGlVle1+bm1pkjjWeButuM2rZWVIMyUtSRsxVcRMaVImvqmWFJZaFWRzqkxcoLGk4wIlz8hYE2/2Qh8musNCTH5SIJUFlqNcEXAZlgIZvYA3EpROSYNV/abNuYGMC4KMa2NBE6aQKSHULZcrEFzeJJNeb6vVC8xJFDHLUVsTW03USzMWl4LGulTprFE6zpHdTF7GEDbNxPl24LK7Qr0i+4G04UpCMoeUMqyEhegcS1xywS0nE/1aLakDRRd8wEcfUFRkoh2md2vSmqcEXSyeAcoUpoaKNelzVZSoCYIf5qfR6avoJDwJ9siZ7eC/P4vOorPwbD+6V9OlcOkvhGlCS/v32isbF0uv96B37Re1dK6UmkubQXBowkMTwJRLJqqUINhjdJRVQkgsKIBoBkG/HAzc44DP5x+zbWK4fVMio232p6iHY567aSZY8s7fBAoluVWay1XU9oevxPXp5IbLNIH3A59zd1KQxRQtJhMAR5tAXf9XebY3F8A9WF1JBt994x958XuVZfwTBKF3og3s8/HRLRWlcNXwZO7taYFLEsYlAIBl+YUc3fG6hs9m15I78D1wmZK08GrULnsLtj3TsVv1Jxbis8BdZpLpU0FQSmXRciVNa8NoIXkq8Pjwo9FNScy56key9zfsSmT3kr35/qm9h7DFJPDjCHquZMZXbyRT0nDjprjHPpAO3acgY3BFCRxd5QTMn620R4HKwOZuZhuLkpHpF8bRgInKDVu4rmv3bRo4aA3f1BD49eumiXcwhvSajxDX4GabqqyLZe4kiyaDVIDhuPb/F30DjY1atCkscjR5PSiYfwwOzcfguAvX/WyCPVofKruHvyvSd4PCsZ7zLbtcSMiUhlKlG6nR25avW/QcwA0EA2KYA1EWdIU0IIO96bvS2afnqHumT6VOgKlKWljeTYfk+vxnMPWbi7Wv2scwwcjL4BgetfkvtZwHdb07zJsmON7cgYdsjG6aoJnN4MUcTjvZmdIJfFt0v8YDx30MrUlze5cA09xyhuLxHniNXFB6SUJh+kXV30LdW8aY5sg86IgcDWSe21/0V5V8qdJ+M9q6r33+CjR2ob24hakYI2OySjzDcZjP4WTs9+nJ04bfopZcrh73+zcqlqTNvx46W5PEmeteFTNVyRRQCFA2Jw1FS95Pn27gbHt3Hw7k2za24EXH8QzjRm32Yg5KuvexrlEuLt/98X7x9ufXV9PZAOu7b4Sb/k/SZl/bP5u/oX8CAAD//7jG43w8DAAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/alertmanager.rules.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/etcd.yaml + - content: H4sIAAAAAAAA/4xVbWvjRhD+7l8xFQmxQ7yyaShENAfthR6llB69cOW+ZSyNpL3szordkZ3g838vK8lvjZucP8k7zzzzzMvurNdTSC9HH4jJo1ABpXcWLqruv1G+NRQuoPKubXpTLdKELE09rlSlpW4XbSCfOxZiUbmzae48uZA+tguaNt5ZkprakFoMQj61yLqkICHd26ZdGPWM1ozuHLATyGvkikDztDGY0w/wO4PzBXkQtzVKrQOU2hCU2gcBT1hA6YxxK80VGM2P2Wirt9faCazJ2DSv0UtIxRNtpQXBhaFDXa6JVXE+rTF/HF2mMN1sRrFkZzG7e/QVyWfyQTuG7BYKKrE1Auo9NrjQRoumoP5oFzSA1Ae9w6vPaFoK6gXTX0vyXhcEQyxdAnIB40B2Sf69sw16guTd7VzNr9VsOktOyJm8wP98o27UzfTmNHqrZkjh764huScUOm3rWzbMSZSKjR7YMrCOtTivuVL9NHR1X85Hj5qLDD7uKhy5RpYECxTMRgCMljJYr6HxmqWE5DxMz0MCY825aQuC5ER7VNkaEz0TUBNIjoY3gW8gvuUcfvqx+9T2U1uW+gmSaRJ19zFDg3kfWMg2JqZ9MtIOm4DqvQ0uyISoHQCb5js5Bvf1Gl5NrCeP4G+guSAWuD6Yi5Od6X0GdnFf0JpXgS+ZiYu3giCzExTtOPRlODjI3gp86Py/0UNDeaxq9/Z09Z0O03HU367u3VffgimgIS8Z9AN+51bcnf9HIQw/SyFgRRlcrNcP6/XDZrOfPHVdJXC2jAlAZ3rYbM7BlSB1d9DDz/oyqq9usUOlL6yB/FLnex6QTl4AzS+pdkO2h++P4mUu3IrVxZAEPTU+g/lsBpcwzl3LMm4buL2F2QR+/QLjr25xtfe/gkHKBFLYol8HTuAdzGdDtNJ1wezw93D64y/QkryW5wxW6FlzddyUf1DyunDV97XkPj7wOgBy7w+WkCVuAOLQ+rgBULpuEIv21KPi29/ohoxmit5ly3kMgUaNdkEAOvKetvtY4XPcJvHRuoqcnkrnCbRAqF1rii1kQQMqtu6X6G+RsSJ/SB4f7D0lAVaoOQggeMpJL8kruI8xunZqFqr8cCFWWmpYoteuDXEV6lLnnemQ31LcgTrY0NcgxEuDR3BY1cT9jtxlGTdrL17Bb84DPaFtTKwjHbInd4TFn8jhE2vJ6+RQYMz6Y0z3rpXno4Iez+OScnF+PJ+8OSjsmA4u/r8BAAD//3O0fZuSCAAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/general.rules.yaml + - content: H4sIAAAAAAAA/+yYW4vbRhTH3/0pToaE2IslxTQtWVH3JYFQ+pCQlEApRYylI3vquXVmtLvG6372MpIsy5Z8aVKybdl9MLbmXH/nvzOS1usAoqvBW5RoqMMMcqMEPF++sqEpONrnMDeq0NXlhXPaxlFk6G04Z25RzAqLJlXSoXRhqkSUKoPKRstihoE2SqBbYGEjQa1DEwkqWY7W2Wi3FpRpwhUVfPBGgVQO0gWVcwQmA81pik/gRwnKZGjAqe2iWzALOeMIOTPWgUGaQa44V7dMzoEzuYwH23qrWssCF8hFlC6ocTZyBnFbmnV0xrFdl9KeiDLRgqbLwVUEwWYz8Lie+u5+pmaO7hMay5SEeAoZ5rTgDsLXVNMZ48wxtOFPxQxro/Ata+zDT5QXaMNOpHc3aAzLEOpcLAcqMxhaFDdoXiuhqUEgP0wn4eRl+CJ4QXrKGXXsv78Or8Pr4LrfeltN3cKHciCpQeqwf60a2fKV9WVSzepIMQglmVOGyXlYKaFkfjMZLJnMYnjf0PVxBgIdzaij8QBAUoExrNegDZMuB/LMBs8sgSGTKS8yBNIzmjAvOPeeBMIRkEa0BO7BmUKm8N035VcmPhZ5zu6ABMTXXOWzmqZVUodCc99ub5bGlkBYeXM6Q2593QBU6wtj1O7rNZxsqgruje+ByQylg5ctPfROpPKpozv1CxX8pGE3MsrsXBIqpXLUMSVthaF1IT6XuO18NLvVmHqq5Z5T8g1qZTSzLZmX3yr8AeCdNjHYQgz9Djb02xFlEk2S6iIpLJ1jYjFVMrOJU47y9e9qNiX+/4CjI2MQ6AxLbaKpW0xJVP+MUprdMKsMGQMTdI5PpoSMoYn+ZErev3tDNr9+K34bjWC2gmGjk1FZGYDBVJksbontbHGxLUTi+9hr7j6oI4Lvs0yW8sJvXONd8DFolbUqHMGw8QJ4MDZNDSO4AiWPVj6qpp5wzN1QqgxH4JRenmp2v8PJGAS9g9nqOJsq7ND3l2iVJUzmau0v+gY2rVIPB6gyTJpgpWvT7D8w010EgUKZVXKrzJLJeWLRJbOVQ/sFc9k0aSr8l1LvGA4n4xbtGvVXJnyMz8VkjX1k2SFyMb2Upgt85NdlcjFBe0v1I8AOks5R3rGq9tUv3Qx7DqnPOLu7Jfkt/tyJvUuxd2z1GPQcbu05HVoePfN3f80Id00YtKowKSYG/yj8Q9m2rQPGgXXUYVBTbSmwmX6pxVNSHB0p/Gy1PnVhE72gFtfl5/RP8h5lxuT8/kMhJZNzsoHpFCbdsgb9v44P+G9D+l9M3d+0+Ie1hxz5v3ngDZ9T094223fn6W9WuKJZT//l01hisHzPsQ/mxFKLl7qVaI4ObgzleuKfvqfkA2rOUvoRHdmMDwISUy3ackMlTyf+s3Iun1zHQIbh1YgMelSwc221vSeGXaDdgXTE67DT5qYe+j22LVbBu9oqSe08zwA7VPqBpPapke1gLyXWlWT7PYL/20ZM3EpjDBlqrlYCpTuQsGB3TJYC2Hp8PWF+lvbeUBRK9kjvK0AsU1v8zzP86Nfygj8IRVsnv4jj7o3OXwEAAP//iBn9Sl8WAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/k8s.rules.yaml + - content: H4sIAAAAAAAA/9SZb2/iRhDG3/Mppns9XbjGNilJpVilUpSL0lNPuqghJ1VVFS32GLZZ77q7a3IRJJ+92jUQOxAgf4gMb2Lw7M5vn5l5iMxo5EHwsXGKAhU1GEOiZAofrvIeejRjGtUQlUeHlHHaY5yZG1/lHPUH6CuZZ0X4wJhMh0Gg6LXfZ2aQ93KNKpLCoDB+JNMgkgqlDty2mZIpmgHmOkipNqiClAqWoDY6uL/nuTT+DU1545MEIQ1EAyr6CEx4GacR/gCfBUgVowIjpzfNgGlIGEdImNIGFNIYEsm5vGaiD5yJq7Ax5S1YHeAAeRpEA6qMDoxCnKJpQ3scy1wys0pJFQxodNX4GIB3e9uwMv5oT9elqo/mGyrNpICwAzEmNOcG/GOaFQoy1P4feQ8nQf4pm8X73yjPUftzO30dolIsRpjkYglQEcOOxnSI6limGVUI5LfOnr+377e8FlmA05yL//XQP/QPvcPF0VOayRH+dAWJFFKDFdKjjJ27PvFRWLXixSuLgk4WFI11VOorezSasUn2EFIpmJGKib5fdI+r03CvccVEHMLZrCJ290aKhsbU0LABIGiKIYxGkCkmTALkvfbeawI7TEQ8jxHIgnL6Sc65XUnAbwJZOQAExmBULiL4pe0uWXqeJwn7DsQj9iwFh85oVMAYTDNupVuYfRZLwC9Wc9pDru15AGiWrbnHZPloBEsPW2xug8fARIzCwH6ptxbWr1gz2d3Iv2jKlwbO74wiXpWECiENNUwKXchQ+iBclbi8+NHsOsPIqur8y+nrARMG1ZDyENqpE7xooZVN4GLdVVEnD/B7pkIYe+6tfe2BBzuzd1C5BngH14oZBCMlaC6vKzd1ntqWVUg17swwLhX+l6M2l3Gu3FkvNUZSxPoykrkwoyGqXueOnH09747PLrrjs6Pu8e/jTydfTron5Pbvdiv+p9ms5PFelLWXR1e4Iu0uxw7ZW5S9CT8tEce59+tr8+XzeXd8etJdR44q0kvlmWXe1ZHMsHNHFGqZqwjHhUgt/16mijSvn5vce84k9cGbpY54br9ei8QHi+vweJu8A1RKKt2o8kUyxnCezUhDeTiFb7fikQ3s3JED3ye3IBUMMTJS7bRKAPdXQeM5Oabryy5uX1aQECjnk08URlLFIcxtGZbdpt2K1/WX5w3Gv7LXIbNosrvGoHhL5vZVRnbSQqvQnjFJmyV5wlxtGGT1lJWvX3PCHBGx9k1232Dayvlul4+ejdnU7G1kDLbyW32jbeX+ZXrLvioSrmgsF/SiztJ5Cr0bcHS7btcmLCuaw11sBs4LZhL9bCWqVmlKaCMu3QHWkGNjtM60tgXWDsMW0V5sE6y1l+3BnfrgtvBWTKFdd9qyKdQetmIK9ae92CbYiinUHveBKdSet2IK+3WnLZtC7WErplB/2ottgq2YQu1xH5hC7XkrpnBQd9qyKdQetmIK9ae92CbYiinUHveBKWyct1n8WXuj+Z9Lnvxobd0HLa/O/MiDsqc/wln7BPc/Mf4fAAD//2cc9+BUIQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kube-apiserver-availability.rules.yaml + - content: H4sIAAAAAAAA/+yVTW/bRhCG7/oVU6JBbANcUpZtwEQTwEmLwOihRp0G6ClYkkNyof1gZ3flBLL/e7FL6iMxoyTw1T5Z4sw7M+8zI67XKWQns3eokbjDGhoyCl4ufYkp74VFWiGlVhr7Eloyvh8COud6W2QZ8TvWCtf50lukymiH2rHKqKwyhMZmUagno9B16G2muHVImeJaNGidzXbPUvISLfvMlZz9bkAbB1XHdYsgdNpLXuEvcK3BUI0Ezmweuk5YaIREaARZB4S8hsZIae6EbkEKvSxmm36HXmODHUqVVR0nZzNHiJvWrOOlxP2+TB+8MZR1vFrOTjJIHx5mwbhfw3TvObXoPiBZYTQUr6DGhnvpgL3lPS+FFE6gZX/6Escg9k5s49kHLj1a9kjprxUSiRphrCUa4LqGI4tqhfTWqJ4TQvL61ZzNz1ie5slEO8eP4n+7ZJfsMr2cjt50M47wdwRSEXKHX3R61YvbuBkMdXCrns4cgI4JwyrdSmPDSLwXY9UClNHCGRK6ZcPWRD6r+WwpdF3AzZZEUJ0pdLzmjhczAM0VFrBeQ09CuwaSFzZ9YRM4ErqSvkZIJjCyxksZMhNgx5BMrHoC9+DI6wouFvFfoW5904hPkKRJ6H6obHteDeUdql4GkybrbWMTYEO25CVKGyYA4H3/gxpj+noNB8cbxEPwPQhdo3ZwtrdFk6SGnFHdmX+5kgcDHyujrr9XhGttHHfCaDvYsPdF8b3C+8nfrG57rIKr8Zcq+puOOzJBObofV3QAkQKXSK6AcKpXN9d/EBl64+sW3RtPOsZ81TOMfwqt5S0W8L5DuLq5hqEMCAulJx1+h5wxoHzVAQZZKKPuVoC8Lo1ZfvQk4zJ845xi0D8k4eEh9pqG4dIwG+9FFB50y12/+KmnAu7TbSnr1dHWiI+E/3m0rggZ4QUw747hNRzNz9hZDieQs3ye5/nxNpvr+geVztUhpcZQAadq/LR/D/Gz0W0B825XCldIwn0uoCLhRMXl7lFnArRz9QxxY/3FAPGC5U9kuMjVAaXIcH5+GOLFz0Bc5M8Ud6dYR+8XT6Z42h0QGiB2hw+xnmB4x6ObXyM87Z4Jbs9nIDh/MsHxoKeFIsHFYYKLnyB40e29Uv8PAAD//5pHzYogDAAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kube-apiserver-slos.yaml + - content: H4sIAAAAAAAA/9xbf2/aSBD9n08xda8K6QUbQokU66hU0ahXXdREDde76nSKFnvAe7F33f2RtIL2s59sAwFsCmmN2ZY/KhvWO2/evLfrnSrjcQOcp7VXyFAQhT4MBY/g4EYPsEFiKlHcorCFDlEewEhwHWcjAqVi6TqOIHf2iKpAD7RE4XGmkCnb45HjcYFcOulMseARqgC1dCIiFQonIowOUSrp3P/WSMPYn0gU1l5yYFyBFxA2QqCsEYfEw0fwmgEXPgpQfPajCqiEIQ0RhlRIBQKJD0MehvyOshGElN24tRneDGsKMMAwcryACCUdJRBn0KQigxAXcfE4IYcLJyDeTe2pA43Pn2sJc78k2fWJGKF6h0JSzsDtgo9DokMFdo/EZEBDqihK+w89wOkg+xWdj7ffkVCjtHMzXdyiENRHmMaiQyDMh7rE6BZFj0cxEQjW827Lbj2zm42mVQDnMDf+t1P71D5tnBaPnqGZpvA2LYgnkChcQvoipleZNJAlbPnFT2YFnT6QaSlJh8R0GtGFiDOquKBsZGeKSWtz26rdUOa7cDmvQjJjLUJFfKKIWwNgJEIXxmOIBWVqCNYT2XgiLahT5oXaR7AKSmgPdRgmT1pgH4JVpHMLJqCEZh6ctNNLGl3p4ZB+BKthJfCz0DImXhZfYRSHCUOFAedjLbCzp0MywFAmKQCQON5yjunj4zF8Nb9s8mTwBCjzkSl4tiChwjJlz0xnV/w9icKvDszPjMzfFIQwxhVRlDOZ0bDwhbsp8OLDa6PLGL2E1XSZSvltTEVSVOaU/vQqq0QD8GMsXJg00tvkU59fLV8DPAbFOciQ3y19LXVUT5bR+jzWtcAPGqW69rVI8V9L9Djz5bXHNVPj//iga81HW0e3KAbdL9b566v+5NVZ3/r8T8v/9/BwKUpj6W4Z2MMwDLR3g5tBHEmPx9j9YgmUXAsPJ9ZRiF2rabdmAOHXymBY946aoujsA4UX6mS7yDB0Cgu1eLd4vYjyMaAQXMjaVqAVVyTcDNHjflKujm3ncN1fObXSAi4HWVzfkk8y2k235elXAj0ufBdy4dyBFixB0vLN9mRguicDIzxZNYq8J3OFMsSTQRWeDMr1ZGC0J49N9+SxEZ6sHEXOk/lCmeHJ4yo8eVyuJ4/N9mS7GRluygzh3l1ZPYycLQtqZYYvV4DtyJhLUUpwZrsZmW1N04+VbSOOlZWjyPvS0GNlu4pjZbvcY2Xb7GNlx/TdsmPEZlk5ipwn84Uyw5OdKnbKTrkbZcfsffLE9GPliRHHyspR5DyZL5QZnjyp4lh5Uu6x8sTAY+XlxVV/cvlnf3L5ot/7ffLy7Pysf7bF/4+Up8FiBKkAWwVA1knuW8u9JnxFvf5t6C9W3p2gCrfvMhr4irY29w17Q3XSCwyQ3s7WuW3oL0V6P9Cqt6nbXZn0VoHsQ3q769xuQ38Z0jOxj7su941N3cq0l0OyD/HtsD25VQXKkJ+Rzcq12ZvywrcKZC/qq/yFb3NL7oHa+4Fe+DY16CqT3iqQfUhvd82mbegvQ3omtp7W5b6pD1WZ9FaB7EN6u+upbEN/GdJb6bBIHcHgE9STLI9mbb5D2EurNsFwPcPgrgnuFvinzCTKXQK+OaWASsVHgkTXHzRhioZYb9qnp0fzXEM8gs2pfmuzc5rvITyH5pqkZ7hcOEiQHWxR36xzOs+ogI9VvG6eBwNo+qpGvoOzQgWVT9rCdvOQxVvqaCz1YMbmo64V8lHGyaOpdP5K+Uj/Te8zZnoX5+dnvf7rizeTy7cXf7+f9C7evDnrzVUGd1QFXKs6ZVIR5uERxNx/4OK6ZrPbA+CVym1TsAgJe8AC8L0yrpKUdWvmGitUvlb8pITui8/Oz8lnZ0d83v8R0f8BAAD//3ul4R4QOQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kube-apiserver.rules.yaml + - content: H4sIAAAAAAAA/5xUXWsbSRB831/Rt5yxZLyzEmcOtJzuxQET8pCQBEMeW7O9u4Pmi5ke20H2fw/7IUfEshzytmiqqqurGu12BZQX2Q1ZCshUQxOcgfNt2lDhgzPEHaVYtMO7FiFpiufQBpf8CO2YfazKMuC9aBV3aZMiBeksk2UhnSmlC+Ri+YtkaTAyhdKgVQ1FjuXBuGGM+I5GZ+8cWMcgO7QtgbKF1yjpL3hvwYWaArDbP3KnIjRKEzQqRIZAWEPjtHb3yragld1W2d7v6HUw2JE2pewwcCw5EO2tRcaNpkNfzvcpuVB2KLfZRQnF01PWR/h3v91XDC3xLYWonIVqDTU1mDSDuEaPG6UVK4riQ9rQBBI36hkvblEniuKF0sc7CkHVBNMs1QDaGmaRzB2Fa2c8BoL8//VSLK/EoljkR+zMX+D/W4mVWBWr4+i9m2mFz0MhMhAyHX8bK+uVPj3nNV6V7o2jV5N2BcZZxS4o24rxNoYW7pbZVtm6gp/8XjkzxFgjY5UBWDRUwW4HPijLDeRnsTiLOcyUlTrVBPmRskSTtO6ZOYg55CdPO4dH4JCshH//GT6V+ZKaRj1AXuT9HqOH6FGORpiM130oRyc/Y3MQI1vjhnTsdwFA739TY6LvdnBy0VG8Bz+CsjVZhquDqzna28iZ1Nl9Q6NPAl8qk63fGoLWOkZWzsYxhoMfqrcGH5JfnR49yT7V4Z9pyLeYruVk30MPw9dYSQH04EMF0iXLcK+4c4lnykZGK+kSvKsvwbqa5jBLHtZrWM4HIkAg6UI9Uavkl38ouHhNcHGw748AAAD///ilRIS3BQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kube-prometheus-general.rules.yaml + - content: H4sIAAAAAAAA/6xVXW/bRhB816/YEA0iBSYZI0kBE3UfmrZu0CIOXCdFUBTC6m4pHXRfuNuz4yr+78GRkiVbcmwHfqPI2ZnZ2cVqsSihfj44IksBmSS0wRl4Nk8TKn1whnhGKZbWSSoDCRekstMqJE3xGUyDS76vmDH72NR1wPNqqniWJilSEM4yWa6EM7VwgVysbzDXBiNTqA1a1VLkWG+odjLVBRo9+NWBdQxihnZKoGzpNQp6Am8tuCApALvVR56pCK3SBK0KkSEQSmid1u5c2SloZefNYOW399oZnJE2tZhh4FhzIFpZi4wTTZu+nM9huVDPUMwHz2soLy8HOckfcnenGKbEHylE5Sw0hyCpxaQZqjfocaK0YkWx+jNNaAmqjtQVvvqIOlGstpiOzygEJQmWWqoFtBKGkcwZhTfOeAwExc+H+9X+q+pF+aLYYWe0hf/poDqoDsqD3eiVm2ULJ91ARCBk2v2tH1lmen+V1zsn6WS1O9k+erVUaMA4q9iFvFX9hnSzONsfzJWVDaxZMv/AEKNExmYAYNFQA4sF+KAst1A8jeXTWMBQWaGTJCh2jKxqk9a5soBqBMV99ryAL8AhWQE/vuwelfk7ta36DEVZ5HZ6K9Gj6P0wGa9zQjsNXGELqPpqjRPSMbcEgN7fk2NZvljAN/vtyTP4CygryTK82lihnUPsa5bs7D6h0d8EbjOTlXeJoLWOkZWzsY9h40Vzl/Bm8a3q0ZPIqXZnqsu3XC7NfcbejaN76idTAn32oYGYzDCfymEuGgufxpGEszKO2THqhXGSnhwWSmoq9lY/3DkqLi7/fWn+G43gl095SSOjFTTqyAF69QZW75sVfZPFmpjMloveQb508SIymXFU/9N4csEUF8Yly94py4dFXVzmzm+A20C3gB/kcIMxRZzudrrOyxKfuzAfBxKkzpYG+uQeHM5Ortvj2jbBAW00ih/FxXWy+9h44O687oz98/b0j+MPpzAUPu1BxoyghuN3a7dwdHL84f34r99+Px2OQOTZDrPwbs3rre6B8Ol7NlS5R270hqjQKf8ZrzVjMuOs8Pp6wjdx13WbvgLq74vlLk99DusL9DUAAP//sY9w7F0JAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kube-prometheus-node-recording.rules.yaml + - content: H4sIAAAAAAAA/8yW328bRRDH3/1XDCeq2FVvL4EGySfCS5EqxAOIokoIIWu9O3e3eH8cs7NJkOv/Hd0PG7e5tkkEiv109s7OfOY78z15u82heD57jR5JMmqoKDg426Q15lE1qJNFEpQsxjOoKaR2iGiY21gWBckbURtu0jpFJBU8o2ehgitUIAyx6DO1FBxygykWTkZGKpz0psLIsfj3LO/LiL+ls7PvA/jAoBrpawTj89ZKhV/ADx4CaSTgsD/kxkSojEWoDEUGQqmhCtaGG+NrsMZvytmed2DtARu0rlCNJI4FE+IeLbJcWzzmCm0nTqCikWoze15AvtvNOuW+7Lr7VVKN/BYpmuChvAKNlUyWQbySrVwba9hgFD+mNY5B4rU5xIu30iaM4k6mn66RyGiEsZapQHoN84juGulVcK0khOy7qwtx8VKc5+fZBM7iTvy3S7EUy3w5Hb2nGVv4pR+IIpSM02fDyLpMb/bbcgQ8N17ZpBEyvG0DMdL7oQJ9p7XOQCx2u5lszUhSggvecCDjazFsUj+z64vZxnhdws+H6XQcM4cstWRZzgC8dFjCdgstGc8VZM9i/ixmRzAToxVVsra72aFANrX/GbwDpuQVfPN1/2jcm1RV5hayPOuaHkrHVqqhPqNrbafcZMFDbAZiuG3lGm3sWgCQbXvPHOP17RY+2d+QvAt+B8Zr9AwvjyY1Odzhzpidw2/S2U8G3s2MXn+uiPQ+sGQTfBxkOPqh/Fzh48sfrR5bVJ2q/eur1zcfl2RqzL38/dMwiRzwtqUSGhM51CTd6q8kPRuL83OxXL6AmNy8e3fOD4lW+BWuxm/G1yudqGdcRVTB67haJ7VB3v4Z1lcfrFq2+/3S/bFYwI3hJiSeGx9ZeoUvoA16seiR3l+V7rNHKuGsgzobDwhVIF2Csql7tR3Iy3ujlnfbfrQqR2WkrQMZbtxJa3Mv4P9SobXx+tQX5mOMj9PhFO3z1O45XfOchndOyjpP5ZzLE3TO5RM7Z1qTU3DOQ5T5/5wzrc8TOechkjzEOR/87Rwe/wkAAP//0fCv+ucOAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kube-scheduler.rules.yaml + - content: H4sIAAAAAAAA/9xUTW/bRhC961dMiQaxg3Jpo0kBE3UuaREUadGiSVMURWEMl0Npo/0gZof+gKz/XuySklVLcQKkyCE6cbXz5s2beTurVQnVk9lL8sQo1ELHwcHj5dBQGQWFSkfCRsfHMOcw9OP9QqSPdVUxXqm5kcXQDJFYBy/kRengKh2YQqxynp6DI1nQECuHUYgrh950FCVWd3clD5aiukFnZz8E8EFAL9DPCYwve4uavoKfPARuiUHC5lIWJkJnLEFnOAowYQtdsDZcGT8Ha/yynm3qHWvNBS7IukovkCVWwkSb0qJgY2m3rtCn1gSuFqiXsycVlOv1LPXt66TuDfKc5C1xNMFDfQ4tdThYAfUCe2yMNWIoqldDQ1OQemm28eot2oGi2sv06yUxm5Zg4jIdoG/hKJK7JH4RXI9MUDw/P1WnT9VJeVIcKOd4L/77M3Wmzsqzw9GbaiYJv+eBaCYU+k+lr5Mxfhl9ocinhrWHweNM72OSKOzNxFuDC95IYOPnavRNntDl6WxpfFvDb9tZpKQzR4ItCtYzAI+OalitoGfjpYPiUSwfxQKOjNd2aAmKA4NU3WBtQhagjqHY93oBtyA8eA3ffZs/jXs9dJ25hqIsUvEjcexRj+xCrrepSwfptrEFqBFtsSEbkwAA7PuPzDHBVyt4UN2YPAXfgvEteYGnOzY6OKcRM2WX8Bc6+2Dgfmby7YdI0PsgKCb4OLZh54/6Q8S74Peyx5506mpeVbm/5WSR/SHn5md/jnMoAS2x1PDqnlt/NlF+ZA48Qu6VDdPPUYw4P8gEJgJd98SGvE5LiXI2QAH0QJYu8+ZN+xeMB2uiwDjNRKHgTVpxJoI1S7I3oHGIKYuRtAbTnmwI0htMR7ruQyTYMGMTBsmK2JNQhNC8Iy0RdGAmLfYGAudCrFVbLTz4JoTlxcA2W/M9TzsH/cEW1uvcujK1ukz6s/yphiSHdttH1z3XcFtu6Y7i4I6S+qOEvcjgiwl9keAXEgTt6l1ozg+91m+Y4mDlvMg0xfrvZ+6f4+NteoBq+/2JTFPqu9zP4USdnE7HLnANp8/cdNx95JmbLomN3NSg2YjRaB/23Z8oevE5jXeVCL8g52U9n2C9jP883vsYqv/bfHd7898AAAD//1j0A8kFCgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kube-state-metrics.yaml + - content: H4sIAAAAAAAA/9xU32vcRhB+v79iKhp8Z6yVTePCibovKYTSh5a2BEopYrQaSdvbX92ddRIu/t/LSrqLja+JX0rAepK038z3zTcfu9+XUJ2vXpOlgEwd9MEZONulljSxCElTPIMhuOTno5HZx7qqAr4Vg+IxtSlSkM4yWRbSmUq6QC5WuUXpgzPEI6VYGYxMoTJoVU+RY/XxrJxoxHs0evWDA+sY5Ih2IFC29BolfQU/WnChowDsDoc8qgi90gS9CpEhEHbQO63dW2UH0Mru6tVB76x1EjiSNpUcMXCsOBAdpEXGVtN9Xc5nV1yoRpS71XkF5d3dKlv2dZ7udwwD8RsKUTkL9Q101GPSDOIVemyVVqwoip9SSwtIvFZHvHiDOlEUjzr9fEshqI5g4VI9oO1gHcncUnjljMdAUHx/cyWuXorL8rI4IWfzCP/dVmzFttyeRh/ULCP8Oi1EBkKmB0pzKMhmn7rTNfMqF2geAb1aWGowzip2QdlBzCmZ9nF7tdop29Xwy9H53GtliLFDxnoFYNFQDfs9+KAs91C8iOWLWMBaWalTR1CcWJvok9a5sgCxgeJBqAv4ABySlfDtN9OrMr+lvlfvoCiLrHvmjB7lTMxkvM52nGQ6YgsQc7XGlnTM2gHQ+yf2WMr3e/jkYHPzDP4AynZkGV7ey8vJzcw1S3d2f6DRnwQ+7ky2+xwJWusYWTkbZxvu/ag/R3y/+D/ZoyeZXZ3upMnfcknHg/1Ovk9v8wpKoHc+1DCqyG4IaJp/ElpWmtaXYru9gJjMOl+B66VN4zUNTSCtIjddCpOuJpJ0totNm+SO+M9r89dmA+37nMPIaCVdgKYNnIOzx1+bWWujqee1dR1tDlKb/NVk9fu/XXtzSGhxAYY4KBkbjzzeFNXyWdxtpmEepis/h2FqOMvjnC0HgaQLXQ0TzxHzlAnrx0Y9wcfnZeMXcvH6Wbl4/f+4+PFG+DcAAP//kc2eo8MIAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kubelet.rules.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kubernetes-apps.yaml + - content: H4sIAAAAAAAA/8xXYW/bRhL9rl8xIRJYCkzSuosPMHHyFx0uLYq2ahoHKIpCWZFDcePlLrM760Sl9d+LXVKkFCmO7SpB/UnWzrw3M+/tUKzrEOLng5coUTPCDHKtSji5tgvUEglNqNEoq1M0J7DUylZNREFUmSSONfsQLTkVdmEN6lRJQklRqso4VRqViR1SWGlVIhVoTVwyQ6jjkkmeoyET92ehtgJNtGKlGPxPgVQEacHkEoHLsBIsxSfwvQSlM9RAanNIBTeQc4GQc20INLIMciWE+sDlEgSX18lgU29Tqy+wQFHGacE0mZg04qY0Q2whcLsuVbnhKB0XLL0ePI8hXK8HbnJPXXevmV4ivUFtuJKQTCDDnFlBEE1ZxRZccOJooh/sAtug6CXv4qM3TFg00R7SzzeoNc8QWi6eA5MZDA2WN6inqqyYRgguJ+No/CI6C8+CA+WM9uL/exFdRBfhxeHoTTVtC6+8IKlGRnj4rJGst8urjVtc2aziLXICpZKclOZyGTXO8BrcjAfXXGYJzLppO9xBicQyRiwZAEhWYgJ1DZXmknIInpnwmQlgyGUqbIYQHJAqyq0QLjOAaATBIT8HcAukrUzhP//2H3n5q81z/hGCMHDlN9SmYmnDT1hWwk3iIGEXG0DUZAu2QGFcCwCsqu6J0abXNdzZXwPugm+BywwlwYstqxwUq8lp0Un9xkpxZ+A+MsrsSyRMSkWMuJKmGcPWF8mXiLeTP8tuKkzdVP068vMNW5McktmP39u0USIEJlBTAu5CTmdX7p6lqiw5+eNP6oX2r0Rj2BITmArrtgQUzIDqUt3mnM6uYMMKGt9bt94gVxpmKjP+8qYeG0gJv21BqgwhZ1xYjVHHpa1cKHU9t1p4z3zm4vmgKy1gvfYdhW4GoRtBWln1aVf4sdIJ3IYdi7HlsPe3S5tXKpu7Fc64RD3f9DLf9DJPKzt3l9ckxpb1etRhAcQ7uB7NNTc3xMiaORNCpcwv1h5lO/+y+zxMlZV0X4hwPIIYHpTSMuVKJ3Betv9t31XfBd6g5rRK4APTksvlvnd+xFLp1dHsU3q4f4iDmmK+ioka6PliRX/TR9tAj7fSDko4PlzLQ3GOZbHp7OoXq4h9gx3100ZFc9xF9N7Vfz8j+fluqvN59Tu1mPiHd+hGjmGJpHlqglOgVYWToGA6C067liZBWtnguIsJxtH5cVfGcSW9c298FVUbxm8sbEP6aG23r2dD7iJD/FgpTah3cY+quVf7/1aI1ZXB7F5id6pBXb+t67frNTxtmPtfmeC/d0fcgDXuTacPvnGKwi0U1r1n/Ykz1ClKYsutNJUDJ7PP0Bmpi/SKHdE/Hs/9Pl/ZfiJ7xnmEaRxcsN42CPCl9C8dQy4NMZniKbxTiyahl/zRDl3DJZztWGcC423njO9hHS5zteub6ezqdaEVkeBy+R1fFveyzcnDDEAdg/OCezJwCfJB1nMrpnvW72fsHLVmlVCpbD+0/dIHRSfH8Vpa2b7Hop/iwR3FpXvNNTjsf7v450Fu5i0IZvMKNVeZmZMiJuou8skkCE5h/ft5+cdoBIsV9CCnrt3TfqyfX193FLBL+2CeSxjCv84hhvHZGYwe6s7NYutfwP4KAAD//yZa+cQ0EgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kubernetes-resources.yaml + - content: H4sIAAAAAAAA/8xW3W7bRhO911PMRySIE5ik/OUHMBHlomkTFAXaoPkBiqJQRuRQ3Hq5u5gdylFp5dmLJSlKsZQ4AZqmvhAk7pmZM2fmrNm2MaT3Js/JEKNQASXbGu5cNAtiQ0I+9mIZl3QHlmwb159XIs5nacp4mSyVVM2i8cS5NUJGktzWaW6ZrE9DntixrUkqanxaoxfitEajSvLi091ZzI0mn6yx1pPvLRgrkFdolgTKxE5jTv+DHw1YLohB7PZQKuWhVJqgVOwFmLCA0mptL5VZglbmIpts+fZcO4IV6TrNK2TxqTDRlpoXXGja52VdkMZyWmF+MbmXQrzZTIJut0J3r5CXJG+IvbIGshkUVGKjBZKn6HChtBJFPvmpWdAASp6rEZ+8Qd2QTw4y/bIiZlUQDLVUCWgKOPFUr4if2tohE0RPZmfJ2YNkGk+jI3TuHuAfnyfnyXl8fhy9ZTO08Gs3kJwJhY6f9SPbLcvLfle2pG9Jl/9nrMk7zCnIczQPOjeCfE8q5ECnBm4Z1NYosazMMul3q5vi6mxyoUyRwYtxXiHjpCbBAgWzCYDBmjJoW3CsjJQQ3fbxbR/BiTK5bgqC6Miwk7LROkRGkNyF6NAPEVyBcGNyeHS/+6rql01ZqncQxVEg3xfuWuqqC9VOByWPlhuxESR9tMYFaR8aAEDnPjPHEN628Mnu+uQBfAXKFGQEHuyt2tEh9TFDdrG/Ya0/CTzMTKa4qQgaYwVFWeN7GfYeZDcV3g/+aHXvKA+qdtdZp288rMjhkDvxuyXv5xADamLJINj5RVhNH268N1Y3NT1TWiuzfO066DXmMPzV5D0uKYNXFcH1DJBrVDUVsFhD275t27ebDdzq5UzcCF514A4LHSbAlIGdzw6Czf7REODBGr1faBUkhSuomnA//xUazMlIMPQYVTJRMnbDjVlYezFvWHf7+ZFLogO9Zg2bTadfHOjEQe7rTZW9hs1WQ3rnOIOreKwYgjTJvIfPvaD4Oa5Q6XBtzxdrId/+aRezaEBGpzsfzt5HbXt4K2020SnUJKxyP3co1SxKh5/RZqwMkH6aRY4OcyXrr0viMUyT6f3hQWk5g7N6+LV/Y4Q/TytiJesMclaictT/9BJ/h54KsAaYwqaAx9qF8FOQ/8B60ztHeXinERveEDQ0Di6VVMpAaRuGAtc+gacNMxn5YicoD+PefUtHnOwtx7d0x74/vqFD7nYOOXs4PkBTjN8dU6FymWtlCPnkX5fr90fVH6fwAO7B/8PH/UfTacf3AztXN9r5Etkos7zZzT8wW/af/f9ot3vQS3KzTXd+qNBDULDxR6Iq9DvoV3QL7TfcWyXA5tdx857pvCPWdp+z99EzVJqKqxdkCmWW0ek4+jjAKR7nCE8+nNnDL7iCd68ifwcAAP//Fae1u3wNAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kubernetes-storage.yaml + - content: H4sIAAAAAAAA/+xX328TRxB+918xtUDYiDs7NFBiEaQoIBr1oahQpKqqzNzdnG/J3u51dtbBMv7fq907/yAxwVTwUKl5svbmxzfzfTs7WS4TGN3vvSRDjEIFlGxruHfpM2JDQi5xCydUJ9goRzwnvgcztr5pDSuRxk1GI8ardKak8pl3xLk1QkbS3Naj3DJZNwoBk4ZtTVKRd6ManRCPajSqJCdutP2WsNfk0gXWuvfcgrECeYVmRqBM0mjM6Qe4MGC5IAax649SKQel0gSlYifAhAWUVmt7pcwMtDKXk94ab4s1AqxI16O8QhY3EiZaQ3OCmaZdXLYJPbI8qjC/7N0fQbJa9UID74Tq3iDPSN4SO2UNTE6hoBK9FkjPscFMaSWKXPqLz6gzSl+qjX36FrUnl96I9OucmFVB0OVSJaApYOConhOf27pBJug/Oz1Kj47TcTLu74EzvGH/9CQ9SU+Sk/3WazRdCb9FQnImFNr/raVsq5rXUTQBMzaqCzuB2hollpWZpa0sIgHzo96lMsUEXm1aHYL2ahIsUHDSAzBY0wSWS2hYGSmhf9cld10fBsrk2hcE/T08paXXOnj2IR1C/xZN9+EjCHuTw+Mf409Vv/ZlqT5AP+mHKloErsG8hSFUNzp0Y2/ejW0f0tZbY0bahUoAsGkOjNG5L5dwa5lt8GD8EZQpyAgc78hlL2GtTxdd7B9Y61sNb0YmU3wpCRpjBUVZ49o27BxMvpR41/mz2V1DeehqHEmxv0mnlVvYjixExbaEJICaWCYQ7ua5VmTknFhUqXIUevGhURxxRONrRUD3V5NzOKMJnEEeI0C+DQHeURFGFXqpyEh7KBakItjAAuWAQrIwrpQBTc6BVGjgp3QMBS5cuknH3mTWXk4966ilz1zKaPQ7a1itYolJ6E0SWtOC3MFI18ukDw1Ptuimrcd0x2W69Zk6yq0p3DS33sjyvc1O+9vbtYJnMI5jy5rBe5sNoVJO7Iyxnv7t0YjSNBin46MH4HwN2QKC1QPQNIRBeJYGXwsj8/kl3cTx56P6r+FwCE/h8fj4yXjclbp7O8OfozmxksUErpCNMrP/hkweHqdjqKzn/4Xy7YTy5PHxATrJWQW69KdCOZvNmGZhrTp7dfGC2bI7TBwGcOMKZ68uYLl8t1y+W63gToshPg8Qj96tVqO9n+MLtLGBCh0wNZZDTIpgUnhTERhfZ8Rgy+4UKpyHXSu890GQpWVQEqQWdNigEyjVnKBWxgu5FH5WswrmUVdhTneyrVBa4c5R6Xb/WYQk4Sy0WeXUrW4OxFqwpZD5RsLddg8bRbuNb8XaimcQbB9sX/bhYF30YB3A8tSbrgJN004hKqdWv61M4Bk8/HeT5BOBPLdXB86O7yEP5aCwVyaFC4lSCWt3RmRgUz2ggKZIv+XPaOE70Fds23I7ec7XUxtuvqj6AAY33K1vd2l5Ao/qg5m8tvmEYXnWqNdxgqRkQrqiXXuuvR1fw3VnHykplMOmIeT1v2nbhRkkLvDBJA89WHzDF2AfB5g5MjLwzc0JfnoKR8Pdlh4d0NPN/Ly2WbY//wkAAP//rkSTaaUOAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kubernetes-system-apiserver.yaml + - content: H4sIAAAAAAAA/6RU34vbRhB+118xFQ25C2gV07Rwou7LBUIJpaU/An0qI2lkbb2/mJ313eH4fy8ryT6Tc5KD6mnt/b6Zb76Z2f2+gvpV8Y4cMQr1MLC38HKbWmJHQrGKD1HIVp13wt4Y4sqiww3xS9iwT2FmjCIhNnXNeKc2WsbUpkicSeREdd7WnWfysc6Rq8DekoyUYm0xCnFt0emBosT68a7iZCiqB7SmeOvBeYFuRLch0K4KBjv6Bn524LknBvHHSxl1hEEbgkFzFGDCHgZvjL/TbgNGu21THPXOWieBIxlbdyOyxFqY6CgtCraGznX5kM3yXI/YbYtXNVSHQ5Gd/DZX9yfyhuQDcdTeQbOGngZMRkDdYsBWGy2aonqfWlpA6p0+4dUHNImiehLp1x0x655gyaUHQNfDVSS7I771NiATlD+tV2r1Rr2uXpcX5Fw/wf94o27UTXVzGX1Us5Tw+9SQjgnlXMeVdp1JPUFJ98GzEE/yb08j88s8MYpctrIvQV0fDgUGvSRqwHqnxbN2GzUPytSS3arYatc38NvJ/CyhsCTYo2BTADi01MB+D4G1kwHKF7F6EcszURc6p4ZkTGZmKVA+Z9xL+AjCyXXww3fTUds/0jDoeyirMpsxS4kBu1mPkA0mG3VRwAlbgprZBlsyMZcEgCE8M8ZC3+/hi/XOwTP4I2jXkxN4c9bBi32eOUt08X+jNV8EPo1Mrv9aEnTOC4r2Ls42nP3RfC3xOfmz2WOgLrs6vVaTv9UyNM9p+9SO6SFq/ue450AVoCGWBt5fIrz1d26CfeICLJ+lGHFDn2HDiBF6HTEEQj4+5Y+bAzLtdoZ0fkf8oE6BObnW++0/ic00dhfNXkB/sYHDYSqjyjZWufZH3xbb+sdS6D5wA9hGcnKVwv5f366njbu0ZAdYr2F1vVAHzw2svrfLz/MNyV+kHbGWhwY61qI7NJ9O3ZPjfwEAAP//NvzZ3vAGAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kubernetes-system-controller-manager.yaml + - content: H4sIAAAAAAAA/8xYf2/bNhP+35/iKrSIXURy/L5NARtzgLXZumFdGzRpgaEYXJo6WZwpUiOPTj3X330gJdlK7TRp5wEzEEAS7/fz8I7MahVD/3HnBSo0jDCFzOgCjuZuikYhoY3t0hIWsf8ikY5gZrQrK7GcqLSjft+w62QmKHdTZ9FwrQgVJVwXfa4Natv3ynFpdIGUo7P9gllC0y+YEhlasv3tWmycRJssWSE75xqUJuA5UzMEoeJSMo4P4GcF2qRogHSzSLmwkAmJkAljCQyyFDItpb4WagZSqPmo08RbxRoCzFEWfZ4zQ7ZPBrEJzRKbSmzHpUtfIW36OePzzuM+xOt1x5fvoc/uipkZ0js0VmgFozGkmDEnCZLnrGRTIQUJtMkvboq1UPJCbOSTd0w6tMmOpdcLNEakCLUvkQFTKXQtFgs0z3VRMoMQnY0HyeBJchKfRHvC6e3IfzdMhskwHu6XbqKpU3gTAOEGGeH+tQqyLWcuA2V8zKwUtdkRFFoJ0kaoWVLRIgCwGHTmQqUjuNiU2hvtFEgsZcRGHQDFChzBagWlEYoyiB7Z+JGNoCsUly5FiPbglGROSq8ZQdKD6FZGR/AJyDjF4en/w6MoLl2WiY8QxZHPofJvS8arIAiLUvpa7PW6kY0gqbQlm6K0Pg8AVpb3tFGrr1bwxSQr4174EwiVoiJ40iLLXrgqndo66d9YIb8ouGsZVXqXE6aUJkZCK1uVofVhdJfjtvKt3m2J3Fc1NKRQ37hmyq1YBwwCWys4YmASDY3A78tXOsVXmt4gS5dh9bOYof4VaC2b4QiOVqsPq9WH9RoeVpVKlE4Rwif/NWcWpogKnPLtaAmZNlBo47sVUzA4hUIoR2iTo41x49RU6/nEGRmIcst+C0JvjYT1OmQQ+8RDlj4Epcm0ssCPpamKMvGrE0uMnJ1wrVLhc1v9oafjsEFiv4RxgWQEt9HxRmQchbJEx5XuOCLjMFrDeAwntZdMmxEMTov6tc16/7O4QCNoOYJrZpRQs/0AvPWl4rlvvgfBQNiq+pXJ0DytLhCutZlLzVILBVvCFMGg5TmmTmJ6aDjcTk4VIt0WJCXyCTGh6HYw5rgcR1661WkTofst89ExZhlyGkev9GWdTrQGpyRaC2KmQvvtznF5vPCJ9OAbQrjSz/Dc7yZMny2fS+fn5feOtOU+92jd86wYfDsNJNKV1r8ytbzQqb0XC2q1u9hw5OlgnPJ+gRFspUM14BPkzp9J/sILNBwVsVmLSjoDQRYudAqclYwLWiaHI4pEIq0LppblNuuKJwX72PV/tdikzmBS6nTCtWsD5ufZMdR4TUpG+TjqN/CtezBddoWyxBTHHjwGrVqvoY9OJGbU9VWruOH9BXr4QL/KT2WjD03kN3tPXUCfg72Vb2t4MIZBy9oZnCTD04M2HN/XhEJrf5SsLBuxuwh3lWM4YgZNqJLyBGnodtdYqE6t6Q4DN0IkCrQgFFCOIJml9rg4bHva5JHdrEBFPuuKbhWt3QPjZoTcmAu7c2P9fnBa/N7zUMIGy/8dDEiJdCFxdu5MQOwnMcvvDWPTO/y+fiky5EsuEX5Y+CNHfS3SJoDGYDikHMqqN/i7Rlo79NDfCqVFXw4LWt2HHodtKaXEWRNkvq1KBW1A8k/HQi6jZrd7lYlBKSxNGtVJncMoF5b0zLBio7dqHsbRSTIcRms4G8PgxqHgnyKr00tiht6WLxmh4st7w9uG1noTrtyBUFY2/WT4byKo0zr0OtIdGHcx6XokjsPW9Zf6zeDwA8MffNDsIDuZOj7He0+S99vd3AyQY5DY+xeHCpzB028+a352U9nepF43F6k6gEs0C8ExQeXPU2l1ddnl5Lm+Vl9FQd8/UmFZWSIzzb9ZtldeoHAF9yJcL9Ac+GSRbsOtOMOmFhV1XXnv6vszXe9ry8+NIMGZ/PzSWD/+HQAA//8m0l8ofRIAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kubernetes-system-kubelet.yaml + - content: H4sIAAAAAAAA/5xUTW/bRhC961dMiQaxA3AZoWkBE1UvCRAUObRo2gA9FUNyKG61X5idlW0o+u/FkpTM2opTlCdK++btm/dmeDiUUL1avSdHjEId9OwtvNylhtiRUCzjfRSyZWwH6pIhfglb9ilMwEEkxLqqGG/VVsuQmhSJW++EnKjW26r1TD5WmbAM7C3JQClWFqMQVxad7ilKrB7OSk6GorpHa1bvPDgv0A7otgTalcFgS9/Azw48d8Qg/nQog47Qa0PQa44CTNhB743xt9ptwWi3q1cnvZPWUeBAxlbtgCyxEiY6SYuCjaGlLh+yR56rAdvd6lUF5fG4ygZ+m7v7HXlL8ok4au+g3kBHPSYjoN5iwEYbLZqi+pAamkHqvT7j1Sc0iaJ6wvTLnph1RzDfpXtA18FVJLsnfuttQCYoftqs1fqNel2+Li7IuX6C//FG3aib8uYy+qRmbuG3MZCWCYUun02RZaaPpzlZCL7SrjWpIyjoLngW4n9DFbnsdVeAuj4eVxj0rKQG650Wz9pt1TRJY2b79WqnXVfDr+d0so6VJcEOBesVgENLNRwOEFg76aF4EcsXsViIuRCt6pMxuTJLgeKZNSjgMwgn18IP342v2n5Mfa/voCiL3PukIAZsJxlCNphs4MV7z9gC1FRtsCETcycAGMJ/5JjLDwd4ts2JPIM/g3YdOYE3i8AuZjzVzOzi/0RrngU+ZSbXfe0SdM4LivYuTjYs/qi/dvGy+Iu3x0BtdnX8io3+lvOsPJP2mMI45PX/HOpMUAIaYqnhwxL4zt+68fhRszA/lmLELT2qggEjdDpiCIR8+nA/7APIuNIZ0vo98b06E3Jyjfe7vxKbcaq+sNEj6A82cDyOssvsUpl7PNvSPUinu8A1YBPJyVUKh799sxn3Z7EyR9hsYH09V/Sea1h/b+efy3nPT6Q9sZb7GlrWols0j2foyes/AQAA//8Fel0QzQYAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kubernetes-system-scheduler.yaml + - content: H4sIAAAAAAAA/6xWbW/bRhP8rl+xIRxYMsyjhSd+ABO1gcItgqAoajRpgCIIlCO5lM6+F3ZvKcelld9e3JGWFEuOg6L8IIm8vd3Zmdmjui6F7Gj0Gi2SZKygJmfg8KYtkCwy+tTfeUZzCHNybdMvL5gbn2cZyVsxV7xoi9Yjlc4yWhalM1npCJ3PQpq0IWeQF9j6zEjPSJmRVtXo2WebtZRajV7cSaNHPzmwjqFcSDtHUDZttCzxBbyx4KhCAnYPi7xQHmqlEWpFnoFQVlA7rd2tsnPQyt7kowe8PdYIcIHaZOVCEvuMCfEBmmdZaNzG5ZrAjKNsIcub0VEG6Wo1CrQdhO7eSZojv0fyylnIz6HCWraaQVzKRhZKK1boxS9tgUOQeK3W8eK91C16sZPptyUSqQphqKVqkLaCsUezRLp0ppGEkFycT8X0lThJT5I9cCY78T+ciTNxlp7tj35AM7TwexSkJJSM+9d6yTZeeRutEjDLRg1pczDOKnak7Fz0togCLKejG2WrHK7WVIekI4MsK8kyHwFYaTCHroOGlOUakpc+fekTGCtb6rZCSPboJOpW67AzATGBZMfJCdwDU2tL+P//4k9l3rZ1rT5DkiYBe1/XN7LsizOaRgcO9lZbxyYg+t1aFqh9wA8gm+Y7cwzbuw6+2VyfPATfg7IVWoZXWybZK1O/Z8jO7k9p9DcDdzOjrZ4rIq11LFk563sath7kzxXe3vxkdd9gGViNB1HkNx0csqNx5D66s5chBamROIetOfxVeSO5XMSAR3BhuAx6L+eYw7sFEkKYoa771HWfVis4WIZGIN6E+0rVNVIA7tFIy6qEZV/Jg6tj5R4jlM40zqJlD9RaGwZjXZFaWzh3M2tJR+M8MXcx6A/SsFrFztJARBp4GGqar7vDzw3lULrW8jh+QnEH47naOiqi+DPCeNaON5TOilbpaqZs7bprV7z4Ekcqray/D+NcWZ+sjpNNquQ4OZgmj56Mlx9O0rOPR+Krr4k4SiaTCVzAdMBZO8phemqG2+1RCpcP7Sm+y+FWUiBuV91LrdDyz0SO/HdJuyXMj1dvwCMtkaCMaeBwI3ePRVy7Yq15trOqrGdpy40tDkH5wD6SQluGV9JjA93Dog0vxL/xCqlEy3K+5SqMjYjD/84gfWe4TVDvjvt0XWTsWzMO/wfGhJ5n/ZYZ4V9teGvP2LHUXekqPP+SnAqRrD6cmo+TSTTVAwXHcO2KyTolQLaR8fnsTybcZLyAE3Hyr42zOVj+CQAA//9+zf5eAwkAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/kubernetes-system.yaml + - content: H4sIAAAAAAAA/8xWbYvbRhD+7l8xEQ25SyoppqFwoi6UtIRSSksbAqUUsd4dWRvvG7uzujt8199eVrLvfLbsc6A54g/LWjvzvMyM1l6tcihfTt6hQc8IBTTeanhhrMAcr5z1hL7wUWF4AQtvoxsCWiIXqrL07LJYSGrjPAb03BpCQwW3uuTWow3lMs4xd95qpBZjKDULhL7UzMgGA4Xy/izvaYprptXkRwvGEvCWmQWCNLlTjOMz+NmA9QI9kN0cUisDNFIhNNIHAo9MQGOVspfSLEBJs6wmG72D1l5gi0qXvGWeQkkecSMtEJsr3NZlXaqN9WXL+HLysoT89naSCvdVcvee+QXSB/RBWgPVDAQ2LCqC4i1zbC6VJImh+CXOcR1UvJN38cUHpiKGYg/ptw69lwJhzSUbYEbAWUDdoX9rtWMeIft+Ni2mb4rX+etsRM75Xvx3F8VFcZFfjEdv1Kwt/NE3hHtkhHdnaTR+2kwGmlQsMZ449DPFJxPMyTVPBdoaSdZLsyiGOek70k0nS2lEBb/f1T4BTTQSE4xYNQEwTGMFqxU4Lw01kD0P+fOQwZk0XEWBkI00rmiiUikzg+IcspHhzuAGyEfD4dtv+q3Uf8amkVeQ5VlSPzAHx/hAT6idSmUZ5buLzaAYshWbowrJAQBz7kSMdfpqBUftDeAp+AakEWgI3mzNzWhzhpw1Otm/mFZHA/eR0YjHSJgxlhhJa8JQhq0H1WPE28kH2YNDnqra3019ffP1jIx0ua9+vxsakQNeOV/BTd5/TR9uoyG4lNTaSHDGXTyHs7vTvXNtBT4MgJ645i7WAbk1ItRkianVRzufPRy97HYr73yyu/PIrRcVSBOIGY5VD2yiTuBViPqQhynkwLrFAxdfw77UdOGfna52gJhlUijMbv+e6n9O1ZzgI0klQ9/OKhFPD8rfltinK8vE9Hj9yq2cg/U6DnHcQq+hduh7MJ98HCv/ngeN2vrr+lfUP3RMqnRr1vNrwnC6rx2c96lPp2AcN7YG3GnPjrv7Sel0IEa1W2j2sX9XR7m3h2Ocdg9nbCjuaYUMy1ramqTGUyZVYCc5zv7NTKexeHXj56J4dRPS0qXlql+FztPK0vPjousBsDoo5hPkX6JctITiy/Kxq+qRlzREfX+/DKCHLheDdGn9svbIUXbrsX/c9LNZpuyn3TPjTHiVfjqlWdTK/v+uyDMTtKQnsLVD9Xl9bWoovHVP0qye6Il69dlNPWQac3X/H+a/AAAA//+5uajigw0AAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/node-exporter.rules.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/node-exporter.yaml + - content: H4sIAAAAAAAA/4xUXW/bRhB816/YHBLYTstj7AYFTNR5SdEgKJAWbRGgKIp4RS7Fq+4Le0vZAaP+9oI8SlYrNQ6fpLvZmbnZxQ5DAeXzxRvyxCjUQMvBwZkPDRWe5C7w+gxWHPqYbzqRmKqyZLzTKyNdv+wTcR28kBddB1fWgSmkct0vqYgcHElHfSodJiEuHXrTUpJUPtwV3FtK+iM6u/g+gA8CdYd+RWB8ES3W9ATeegjcEIOE3aV0JkFrLEFrOAkwYQNtsDbcGb8Ca/y6Wuz8Zq+TwY6sK+sOWVIpTLSzlgSXlg59hTiGErjssF4vnpdQbLeLMbGn4+t+Q16RvCdOJniobqChFnsroF9jxKWxRgwl/WO/pBmk35g9Xr9H21PSR0w/bYjZNASzlmkBfQPnidyG+HVwEZlAvbq51Jcv9YvihTph5+II/921vtbXxfVp9M7N/IRfpobUTCh0+i63bJ6Q0SpGM7NV4II3Etj4lc7TMOW+uVysjW8q+Hmf8Mi1cCTYoGC1APDoqIJhgMjGSwvqWSqeJQXnxte2bwjUifbotrd2rFSgL0Adzq6CTyDc+xq+/Wb6adyvfduae1CFGm1nyRSxzrpCLtrx1SeF9lgFOldbXJJNo3UAjPELOebyYYDPviuTj+BPYHxDXuDlwVicbEyumdkl/I7OfhZ4zEy+eUwEvQ+CYoJPOYaDg+ox4cPi/1VPkeox1Wn1TPkW83ActneKfRrF3IEC0BJLBe9CQ+8y5q0X4hZr+sFijMavJuR/LMP8OUoJV1TBXAxmVw1qGG6H4Xa7hac5Ot3QxtQE0+HtdqvyYhp3j5GzBH2EJCh9gtAKeQg+e6f7GFiI4YhwP157zvIIE0PzoDj7pvvI1bwW0/ko8mEO6EMfh7/C8kb9S1l9na0/+VttSDr9ldr+ceX+vIBXcDVTtoEruHLzv8MpH79EG2IjHyu4Q/Zjpg+t+ycAAP//A9nQk1IGAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/node-network.yaml + - content: H4sIAAAAAAAA/5xUXW/bRhB816/YHBJYckUyRoMCJuoCrdsGRRG0aIoAfSKO5FK6+r5wt+dYkP3fizvSFGV9pMibxNvZ2Zkd7HabQXE5e48aHSdsoXNGwYU2LeYuSPQXsHIm2P77msj6sigc/5yvBK1DHTy6xmhCTXljVNEYh8YXd6HGzDqjkNYYfKG4J3SF4lp06MkXu7cs0eQbruTsZwPaEDRrrlcIQmdW8gZfwW8ajGvRAZnnR1oLD52QCJ1wnsAhb6EzUprPQq9ACn1Xzp7n7WdNA65RqqJZc0e+IIf4PJonXkuczmVstMS4Ys2bu9llAdnT0yz69Tqq+5u7FdIndF4YDeUNtNjxIAnyW255LaQggT7/PdQ4FOXvxViff+IyoM8POv1xj86JFmHgEh1w3cLco7pHd2uU5Q6B/XBzlV+9y99mb9mRcRYH9d9f59f5dXZ9vPp5mkHCX2khjUNOOL7FRPzyYI0jdDnqaFZ7HNjvM9ZHEdyKgacEZbQg44Re5X1O0kbur2Z3Qrcl/Dl6HxvNFBJvOfFyBqC5whK2W7BOaOqAvfHZG89gLnQjQ4vAjiwu74KUEckgXwDbZZrBI5ALuoHvvk0/hfoYuk48AMtYHLon9JY3PSuhsjK6cZRmrGWQ92jJa5Q+Dg7Arf2fPQb4dgtnVfXNY/EjCN2iJng3icvRnfSYoTuZf7iSZwsPO6Nuv0TCtTbESRjtexsmH8ovEU/BJ9m9xSa6mk5S8jcborFbbjI9/er9zwAfrCvBBzVXQs9j/itr2krozmwj7tUNY08LqDcwb2SI12CZ+i0WqQGAw8a4toSLcg9cxaKqMUFTebHH9ZgNSAAy9g7qzXwMyRKsaRcwv1qONQCKPyT+2HEJB7WTyiFclcN0G1/I+dfUNywdX0+cMFNITjSeLUedS2DWtGwJ7PUV2/2Z55cLthh5DqUnreNgkXHfjNMOJIOOuAtzH9REdWPDvtTeXhsqj43Rra/IEJe9xviW4XCP2NOIugSj4cDslJdKYkeJa/GS5Jyu055EaNnjg4qDlj6oUy7E+L2kVaiM21QfUP14z4WMN7WqN4T+qEYwbtJgPxPTdj+FrkPnz3X65iT4ljdrbL8O+wHVrw7PSjgN/ih5fQY5wU1SOk3Vy+2U5y1Ou9qdlv8CAAD//1zpvm4ICQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/node.rules.yaml + - content: H4sIAAAAAAAA/8xVW4vcRhN916+oT6zxrvnU2iFOYEXWL04wuWAHJxhCCOMaqTTqTF9EdWnXRtZ/D63LzDg78QSSQPS023X61Dmnq3v6PoP8SfKCHDEKVVCzt/C4ZW9JGupC5ttY8fwYtuy7dgI0Im0o8pzxXm21NN2mC8Sld0JOVOltXnomH/Jdt6HswJZbDEKcW3S6piAhP+rEnaGg3qM1yVcenBcoG3RbAu2y1mBJ/4NvHHiuiEH8UpRGB6i1Iag1BwEmrKD2xvh77bZgtNsVyaJ30joKbMjYvGyQJeTCRIu0ILgxlJ9IIG+w3CVPcsiGIYnBXUR3PyFvSd4QB+0dFLdQUY2dEVDPscWNNlo0BfVdt6EZpF7oPV69QdNRUA+YXt0Rs64I5l66BnQVXAayd8TPvW2RCdJntyu1eqqus+v0hJyrB/gvb9SNusluTqMXNbOF1+OBlEwodLo2Hdkhq1dzVIvqiyW7b/0mZtOydlJD+ihkj0IKl9qVpqsI0hNxq7ozxqGlFNQVpMtyuueOtdBiSR8zn6Pdbxt5hyHBVs8JFGC90+JZu62aJniclbtVstOuKuCHPV/0n1gSrFCwSAAibQF9/3c8nkCk8AGEO1fCF5+Nf2r7Y1fX+h2k2RjF1Hk0NLYXsq2JB3bW/LTb4IZMiA4AsG3/Ise8ve/hk/Ym8gj+ANpV5ASeHk30yZma9szs4n9Gaz4JfMhMrjrXBJ3zgqK9C1MMRwvFucbHm/+0e2ipjKmOr+aYbzbPyImgxvTHyzQdRAZoiOV44Jar9ZpK70pt6Gtmz2GE/0E+zJ+lEHBLBUxQuG/iM8kzQXwd+/5t378dBriYwlTxCWdvDDGMhVjT7iHucPf2sJfLkpoF0LuWC4g/K5cHy+vF8nrRQWsa5a3FC5r+N7+5Tfv+46djGNL/71tO5YOCYUiHXz63v17BM7hWq7l77bmA1bWd/z0e8/gFuiPW8r6Ae2Sn3fZc7i99Rd97v+vafyL4A/+/Fa/zFa2xqphCWJtR+H8k6MMl+T0AAP//cTOvZ34IAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/prometheus-operator.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules-1.14/prometheus.yaml + - content: H4sIAAAAAAAA/7RW72/bNhD97r/iKqSoHViSjXX7IMwDtmwNul8psqxAP3ln6mSxoUiBpJwEiv73gZRky7VTd8tmGIFFPr67e3x3Sl2HEJ+PLkmSRkspZFoV8AoFaVugxDXpSFeCzCtYa1WV7X5ubWmSONZ4F625zatVZUgzJS1JGzFVxExpUia+rVYUlloVZHOqTKxJEBoKZ9E8LlDyjIw18Q4Q+ljRAxZi9KMCqSywHOWagMuwFMjoBbyVoHRKGqzqN23ODWRcEGRcGwuaMIVMCaHuuFyD4PI2GfVJtwn7LHMSRcxy1NbEVhPFBRpLOjYWV4KGeanS6aN0nCO7HZ3HEDbNyIl35kq8Qb0m+5604UpCsoCUMqyEhegCS1xxwS0nE/1SragDRZd8i4/eo6jIRAdMVxvSmqcEXSyeAcoUxoaKDekLVZSoCYLvFvNoPotm4Sw4ks7kAP/tPJq/fhrep9PVcO1vhGlCS8f32jsbWqZP+KyX7We1crKUmkubQfDShC9NAGMumahSguCI0lFWCSGxoACiCQT9crDlHgZ8Pv+QbRfD7ZsSGe2zn6LeHvPcTTPCknf6JlAoya3SXK6jtku8FTfz0S2XaQLvtnxO3VFBFlO0mIwAHG0Cdf1f1dneXACPYHUlGXzzlf/Jiz+qLOP3EIReiTawr8dHt1SUwrnhZO3taYErEsYVAIBl+YUc3fG6hs9W15I78CNwmZK08HrQL0cN257p2K36gIX4LPCQmWR6KghKqSxarqRpZRgsJKcCDw8/Gd2UxJyqfjB7fcPOIoeX7MX3v9p7CFtMAt8PoBdKZnz9VjIlDTdulnvsJ6lD9ynIGFxTAjc5AfNHK+1BoDKwuZvZxqJkZPqFYTBgonLDFv6qa/dtmrNW7siQ3nBGfs19wU0tVVnHYh4ki7oU6L7UCTBVSbvceBHHQZvHMkeTB9M9HZaDrfqjWi2Cuj4cIk0TTLcObiG7GdA0QTOBHz64iepTnEAMV7/vni6vr/58t/z1pzc340lr+6Um/9oaF3g/3vl32ft36S7RgzhDs8trODhP5TR1L16thCC92J9jzQRWDzB26Cl8VKvprpOnsDs1mULQ1RBMITibu7++B6cQjKPzSTCBFwuYd7pnSifwddE9DbvbfQxtSHP7kADT3HKG4mnDvUEuKL0moTD9Iqu1UPdOH9K8Mp/4L0cDmed2yUJvMOgdtpOvN1l8gClV2m/uG+6YqQQau9Q+uaWpGCNjsko8w2awWMBsqPd8dlrwO9SSy/XTev9GxYq0+ccdvte3Tlz3j1mmKpkCCgHK5qShaMn7Xu/ae1+7x3BLvi9jC152HM8QbssPzrJKwvHu3ML8+PBdssWN/6fUJv+2f3Yz/+8AAAD//2mQ/LGvCwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/alertmanager.rules.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/etcd.yaml + - content: H4sIAAAAAAAA/4xVUW/bRgx+96/ghAaxg0mysWIPwlJga7BiGIYVa9Chb6ElSrrmjifwKDuB6/8+nKQ49pI21ZN09/Hjdx8p3m6XQn4xe0dMgkoV1OIdnDfDt82ktxTOoRHfd+NWq9qFIs8Ft1ljtO3XfSApPSuxZqV3eemFfMhv+zWlnXhH2lIfciFLGChdZqvcIZuagob8EZAOubJ7dHZ25YG9QtkiNwSG085iST/AHwxeKhJQ/7CprQlQG0tQGwkKQlhB7a31W8MNWMO3xexB9Ch4UNmSdXnZomjIVYhyh0FJ8qC4tnSsy3fRGi95i+Xt7CKHdL+fRd9exSNeozSkH0mC8QzFJVRUY28VsrfY4dpYo4ZC9me/pgmUvTMHfPYRbU8he8L094ZETEUw5TI1IFcwD+Q2JG+961AIkjeXq2y1zJbpMnlGzuIJ/pdVtnr9dfiDnOkM/wwVKYVQ6fm9sWZTt0St2JmJrQDn2agXw0029sRg/GY1uzVcFfD+YHHkmjlSrFCxmAEwOipgt4NODGsNyVlIz0ICc8Ol7SuC5Jn6ZHVvbYxMIFtActLCCXwBlZ5L+Pmn4dW4D31dmztI0iTqHnOGDssxsZLrbDz2s5kO2ASyMdrimmyI2gGw676TYwrf7eCbBxvJI/gLGK6IFV4fNcazlRljJnb1n9DZbwKfMhNXLyVBZq+oxnMYbThaKF5KfBz81eyhozK6Okygwd906o6T+g6+D29jCVJAS6IFjA1+5bc8rP9PIUyPoxCwoQLOd7ub3e5mv4dXmygZho+b/f4MfA3aDgsTYDQu++zXBxTokC5A/Nkqv+XsfMpBd50UsFou4QLmpe9Z530Hl5ewXMBvn2D+2a8XkMPDzuPiAt7Aajmx1H4gcdPncdPFJ9CGxOh9AVsUNtycevEvatlWvvk+J67jYDUBkMd4cISscfISh17i5EUdLCFWIzSi4sztTEfWMMXouucypkCbzQ5JAAbykXZ42eJ9nOJxVvwYOYVqLwRGIbS+t9UDZE0TCgzDrzHeIWNDckweB+UjJQE2aDgoIAiVZDYkGVzHHEOZDCs1MvXh1mgLGxTj+xCvIFObctg65ncU7x4TXBg9CLFX8QQO25Z4vJsOp4w32ig+g9+9AN2h62z0kY7ZkyvC6i/k8IGNlm1yLDCe+n087lWv9yeGnvbZhkr1Ml8tXmwU9kxH/9t/AQAA///mJVj/DwgAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/general.rules.yaml + - content: H4sIAAAAAAAA/+xW24obRxB911eUmzWeWTQzK+IEM0R5scGEPMTsBkMIydCaqZHa6lv6srtCq3x76B5dRpe9hhA/RA9CdFfVOXVOqbuXywyK88FHlGiowwZaowS8mb+zufEc7RuYGuV1tzxzTtuyKAy9yafMzfzEWzS1kg6ly2sliloZVLaY+wlm2iiBbobeFgY5UovZRT4qBJWsRetssQvIIla+oIIPPiiQykE9o3KKwGSmOa3xFfwoQZkGDTi12XQzZqFlHKFlxjowSBtoFefqhskpcCbn5WBDuiMcWc6Qi6KeUeNs4QxiIah1aArr6IRjn5fSQRZlihmt54PzArLVahA0Owst/kLNFN1nNJYpCeUYGmyp5w7y91TTCePMMbT5T36C66D8I9vG558p92jzo0o/X6MxrEFYY7EWqGwgsSiu0bxXQlODQH4Yj/LRRX6RXZATdNKj+O9H+ejt/eEbOuseLqMjtUHq8PRe59n8nQ08qWbrSiUIJZlThslp3s1DFP16NJgz2ZTwaStvqDMQ6GhDHS0HAJIKLGG5BG2YdC2Q1zZ7bQkkTNbcNwjkhDd56zkPmQTyFMh2dAncgTNe1vDdN/EnE1e+bdktkIwEzh2e1bTuQB0KzUO7J1G2sQTyLpvTCXIbeANQrZ9YY52+XMKDTXXFQ/AdMNmgdPC2NxAnHely1tWd+pUK/mDgcWWUzWMgVErlqGNK2k6G3kL5GHA/+V50q7EOqsaTJ+qbrSdj623UPP7q5M8Ab7UpwXqRhHMsCYcSZRJNVWtfeUunWFmslWxs5ZSjfPlFTcYk/A84OjIEJugUX40JGcIuN6CGtdVv34rf0xQmC0i2c5BGZACDtTJN2RumR8FL60UVeB6R36UKFMos1tmThUP7PMovYHsMGYjucbzL1nUg0N2HGIJWTSRwSCiFZJsG8K8ZtMW4t9lqw7Dar/FSy47k6Am+1zNA6CTC76AMWuVNjZXBP324EjcOHNidWUcdZgKdYbUlq17dc1ASEpSNVky6ITBpHZXBiy9qMoR9b4Zg0Vyz3TB0n/g/qzi2LtEzagPzLdmA7G0V15fxe/wX+SP5hLJhcnp36aVkcpqekRWMxzB6igVR72er8axJfJH2wfhwX/0v/E6KR1TvqxzvlMpgfK7ty//AVs8bdSPR3Kv9EOJ+Fd4QY3KJmrOaXqEjq+FBQWK6TRuPDXI2Ct9dcrx/h0CS/Dwle2lpNDTZpfYsTPtG7QqlHfVdyiMdHBAlN8rMuaLNU0n2LD48dzel4rBt4vrPk/DZBFVuobGEBjVXC4HSHQyMYLdMRkc2Gf98Al5k8geKQskTHv/n0kViFr9a5a7CXuv5V6idXVN7knq7R+HfAQAA///haHFtqA4AAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/k8s.rules.yaml + - content: H4sIAAAAAAAA/8xUXYsbRxB816/oLDEnOd5ZifgMXnKB4IAJeUiIgyGEcLRme7UTzZd7eu4c5PvvYXb35DMnn/0QgvU0aKq7qrp653CooXm8eEmeGIU66Dk4ONvnLdUYTSK+IlacLaUz2HHIcUIMIjG1TcN4rXZGhrzNiVgHL+RF6eAaHZhCasZOkYMjGSinhskSJqrXatM49KanJKl5D6hHLvUPOrv4MYAPAnpAvyMwvo4WNX0FP3kI3BGDhNtLGUyC3liC3nASYMIO+mBtuDZ+B9b4fbu4FT0JHlUOZF2jB2RJjTBR4zAJcZMEt5bu6gqxTChwM6DeLx43UN/cLMr4vi4Wf0fekbwmTiZ4aC+gox6zFVAvMOLWWCOGkvo5b2kGqZfmiFev0WZK6l6nX66I2XQEM5fpAX0Hy0TuivhFcBGZoPr+YqM2a7Wu19UJOat7+O82avP04/BbObOH38ZENBMKfSD1h2heTQtCvoyrO105JToXTBtV/GA0M2MLLngjgY3fqWlvxnCuNou98V0Lvx5jKB0XjgQ7FGwXAB4dtXA4QGTjpYfqUaofpQqWxmubO4LqRIaqz9aWygrUCqpT217BOxDOXsOzb8ejca9y35u3UNVVkT9Rp4h64hdy0ZYJnSQ8YitQU7XFLdlULABgjJ/ZYy4/HOBBf1PzAn4HxnfkBZ7e2aGTMU01c3cJf6CzDwLvdybffYoEvQ+CYoJP0xju/NF+ivhu8UfZUyRdpjo+VuN863lJTsU8jn88TUnUQG8jtzCYJGHH6C7fZPRiLC3X6vnzJ5CyW5aXcnlsdMn0JlOSy5Kc14bS5TbrPcnh77C9qI646ubPc/fXagXXRoaQZWl8EvSankAM3WoFDWzom/WzUceH+1F+tzpaOCtKzuYLJh24a0HbXB6uo9z2AX3tfXefYf6L8f6/Wz//Uqyf/9fW3383/wYAAP//xBENtgkIAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/kube-apiserver.rules.yaml + - content: H4sIAAAAAAAA/9xU34vbRhB+918xFQl3PqqVnLseRSSBkqOhFNqSlkAp5TKWRtbi/SFmR/Ydiv/3spLOMbGTu6c+RA9mvTvzzTfzfbt9n0J2MXtLjhiFKqjZWzhbd0tKW/aWpKEupM5XlKIhFu1WijtD4QxW7Lt2TGhE2lBkGeNWrbQ03bILxKV3Qk5U6W1WeiYfss+AMyZDGCjN1SKz6HRNQUJ2UHmope7RmtmNB+cFygbdikC7tDVY0nfwiwPPFTGIfziURgeotSGoNQcBJqyg9sb4rXYrMNqti9kD6ZHwwLIhY7OyQZaQCRNlFoMQZ0FwaeiQl2/jwDxnDZbr2UUG6W43i9N8Flv8C3lF8p44aO+geAUV1dgZAfUGW1xqo0VTUL92S5qC1Fu9j1fv0XQU1BHS7xti1hXBVEvXgK6C80B2Q/zG2xaZIHn9aqEWucrTPDlBZ34U/3KhFldfDn+gM/XwblCkZEKh02ejZhHpj/3AfvMV/TQZKNLHVk8FCrDeafEcrTXaZNBis5ittasK+AQS4WeWBCsULGYADi0V0PfQsnZSQ/I8pM9DAufalaarCJITkqm6MyZmJqDmkDzB6wl8BOHOlXB9OSy1/bOra30HSZrEbkYmocVypCNkWxPnc7L+PjYBNWYbXJIJsSMAbNsnYkzpfQ9fbXcEj8EfQbuKnMDVgYNOSjjmTOji/0Zrvhp4jEyueqwIOucFRXsXxjEcbBSPFT5M/mL10FIZpzo8VcN808kzT1B9UGNYjcKkMJwXEL18o8P6XeecdqufO2OGgM8agOmzFAKuqIAb2uiSoO8/9P2H3Q6ejcNT1X5/t4v7voaBDt21noX4OGPvoH1SdhTT+uoT5FYbA0uCaH3Yamm0A2kIHN0JvLiCxncc1ESZ7lou4Ow8kijiz218SsN9ELK33djLa8jVjz/Mx/enZap0KbdGO0I+nYcb1Kb457r593u4vM5zuIAXV3N4Cfn8bKpbey7gMrfT38NLEb9AG2It9wVskePgv3FV/j9RLnN7oMoJURZPEKVkLbpEc3D//gsAAP//PKilAV4IAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/kube-prometheus-node-alerting.rules.yaml + - content: H4sIAAAAAAAA/6xVXW/bRhB816/YEA0iBSZpIUkfiLoPTVs3aBEHrpMiKAphdbeUDrov3O3ZcRX/9+BIyZItObaDvFHk7Mzs7GK1XJZQPx8ck6WATBLa4Aw8W6QplT44QzynFEvrJJWBhAtS2VkVkqb4DGbBJd9XzJl9bOo64EU1UzxP0xQpCGeZLFfCmVq4QC7Wt5jrQJowUnlYjWuDVrUUOdZb0p1WdYlGD351YB2DmKOdEShbeo2CnsAbCy5ICsBu/ZHnKkKrNEGrQmQIhBJap7W7UHYGWtlFM1ib7g13LuekTS3mGDjWHIhqg5Ep1JFxqmnbl/M5MRfqOYrF4HkN5dXVIMf5Q27xDMOM+AOFqJyF5ggktZg0Q/UaPU6VVqwoVn+mKa1A1bG6xlcfUCeK1Q7TyTmFoCTBSku1gFbCMJI5p/DaGY+BoPj5aFyND6vD8rDYY2e0g/9pXI1f3g1f21n1cNpNRARCpv3f+pllpnfXgb11kk7XG5T9o1crhQaMs4pdyLvV70k3jPPxYKGsbGDDkvkHhhglMjYDAIuGGlguwQdluYXiaSyfxgKGygqdJEGxZ2ZVm7TOlQVUIygesu0FfAYOyQr48UX3qMzfqW3VJyjKIrfTW4keRe+HyXidE9pr4BpbQNVXa5ySjrklAPT+gRyr8uUSvtpvT57Bn0FZSZbh5dYO7R1iX7NiZ/cRjf4qcJeZrLxPBK11jKycjX0MWy+a+4S3i+9Uj55ETrU7Vl2+5WppHjL2bhzdUz+ZEuiTDw3EZIb5YA5z0UT4NIkknJVxwo5RL42T9OSoUFJTcbD+4S5QcXH17wvz32gEv3zMSxoZraBRRw7Qqzewft+s6Zss1sRkdlz0DvKpi5eRyUyi+p8m00umuDQuWfZOWT4q6uIqd34L3Aa6A/woh1uMKeJsv9NNXpb4woXFJJAgdb4y0Cf36HD2ct0d164JDmijUfxdXNwke4iNR+7Oq87YP2/O/jh5fwZD4dMBZMwIajh5u3ELx6cn799N/vrt97PhCESe7TAL79e82eoBCJ++ZUOV+86N3hIVOuV/441mTGaSFV7dTPg27qZu01dA/W2x3Oepz2Fzgb4EAAD//wMUJzNjCQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/kube-prometheus-node-recording.rules.yaml + - content: H4sIAAAAAAAA/9RWXY/bRBR9z6+4WFSblHqcQFupFstLkSrEA4iiSgihaDK+jofMh7lzZ3erNP8dje2EdNfdbauKzeZpkrkf555zzyjbbQ7F48krdEiSsYKavIWzTVxhHlSDVTRIgqLBcAZr8rHtIxrmNpRFQfJSrDU3cRUDkvKO0bFQ3hbKE/pQdJVa8ha5wRgKQoMyYD4Xi8JKp2sMHIr/AvKul3grrZn86MF5BtVIt0bQLm+NVPgV/OTAU4UE7PeX3OgAtTYItabAQCgrqL0x/lK7NRjtNuVkD7oH3KFs0NhCNZI4FEyIhZWBkYrAcmXwGJdvE0OeikaqzeRxAfluN0n0fZ1G/F3SGvkNUtDeQXkOFdYyGgbxUrZypY1mjUH8HFc4BIlX+hAv3kgTMYgblX65QCJdIQy9dA3SVTANaC+QXnrbSkLIfjhfiMVczPN5NgJndiP++4VYPP1w+B7OMMNvnSKKUDKO3/WapUqv9ztzhHiqnTKxQsjwqvXESO+HCnSJ7CoDMdvtJrLVA5ISrHeaPWm3Fv0+daJdLCYb7aoSfj3Ik3BMLLKsJMtyAuCkxRK2W2hJO64hexTyRyE7AjOiraijMSkzQYFszAUZvAOm6BQ8/647avs61rW+gizP0tB969BK1fdntK1JzI02PMRmIPpsI1doQhoBQLbtR9YY0rdbuHW+vngKfgfaVegYnh4pNSpunzNUZ/+HtObWwJuV0VV3NZHOeZasvQs9DUc/lHc1Pk7+YPfQokqsdo9Yx28+LMmYzB393alXIge8aqmERgf2a5J2+U+UjrXB6Vy8ePEEQrTT9IJOD4WW+C0uh2/arZdJQKfeLq1W5AMq76qwXEW1Qd7+7Vfn19Yt2/35zP41m8Gl5sZHnmoXWDqFT6D11WwGBSzwm/nzDt77a5M+e3glnCWAZ8MFofJUlaBMTO/cYYryLtjlzck/m5ij6tKsPWlu7IOh5zbwX5KklXbVQ1qba3g/j4pT99E92ehhuOheTXSyHvqfLfTsxC307H4sNE7LqVnoU8j54hYap+gELPQprHyEha79I+2P/wYAAP//SygZOwgPAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/kube-scheduler.rules.yaml + - content: H4sIAAAAAAAA/8RYb2/bthN+709xP6FFm+InKca6vRCWAUEyFF3RNli2Ans10NLJ5kKRxPHkJHD93QdSkqXE8Z+sTexXtvncw7vnOR1pLxYxpG9G71AjCcYCSjIVvLqqJ0gaGV0sJg41v4Ipmdo2yzNm67I0JXGdTCXP6kntkHKjGTUnuanS3BAal3qa2JKpkGdYu5RQoXAYHyfjtBJalujYpT0gplqhS25FpUbnBrRhyGdCTxGkjq0SOf4P3mswVCABm26RZ9JBKRVCKckxEIoCSqOUuZZ6Ckrqq2zUJd0kHLKcoarSfCaIXcqEmFbCMVLqWEwUDvMy1stjKJ2J/Gr0JoV4uRx57V74Ev8QNEX+guSk0ZCdQIGlqBVDciasmEglWaJLPtQTbEHJO7nCJ1+EqtEla0yf50gkC4R2L1mC0AW8dljNkc5MZQUhRL+cjJPxcXIcH0cPpHO0hv95nIzfboZ36bQ1/B4cyQkF48NrjWd9x5yGhumSftFJ95uZeGksSc0lRC9d/NJF8FrqXNUFQvSA2klZK6VFhREkRxB1X0cr7j7m29l7RM8vFBJXQospfof8h2z9Hn7dWZHjXfZd1KuwwL1cjoSVrYcZVEZLNiT1NGmexNDu8/HoSuoig4sVn3dwVCGLQrDIRgCeNoPF4lvqXBseEXwFplrn8NMP4a2sLuuylDcQxUGIZt9QTticsbLKN9zO0ptoJSaonM8fQFi7J0cbvljA1uIacg/+ClIXvrffDh7JB5+JJqZlZ/OXqNRW4Doz6mLXJkJrw4Kl0a6RYfBFtmvjYfDG3Z3F3KsaZn/QN247ZM3joH0YBdn9pId9n6D2s7VoEvZ8YTWD0wHo3FzrsHqvJGhfFTonpng3CGbCQSGdsBYFdSdZ3+rAYc55SG7mSLfJio9qPTHm6u+aVGidDWMugP4kBctlSDr2UsTD6oo+cbyxlEGjzevaLv4xk5NosVifKctl9P9VRzeQfiQsl9ESTk5gfNTSloYyGP9YtR+Hje9fDudIkm8zyEmyzIXa0kzew3PtNlpyZgjPP13u7UaLP5QRftIV2u3yINxJCu2eWNhTKy+R5ls63l8HTi/e7y1viz+UvL4oYeUueYWVLtT9BPr2hxDeWEOMFKQ+M5rJKIX08e6Q8cfRQ6qvBTzKg7XoQzqSr5LZcwSF9u+j4u4+8mxuXeYzLGq126UV8FHurKIO6YrrktjLjRX6iUfSJQvGj8gk881D/8M94OPEHwQeVH+fR9XksZ8FPiBuI57Qhv5++bm7Xvr9FbI/LGSOW31RyI+yQyEf0gWFvI/4CvkJFdemwF+7+bNJ3E8D0N4KD4MOJbOvrpuuu7T22LgDf0/F70jZ17y3kAOZDiRj/1juc4O/+6/Dc9zft0+QTV19sQb9D5Z0oYe3pvtBvo9Fwz+dnvkHVvP23wAAAP//hCiTc1gVAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/kubernetes-absent.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/kubernetes-apps.yaml + - content: H4sIAAAAAAAA/9RX227bRhB911dMiASWA5OU2rhAidovbpEWRVo3jQMURcGsyKG48V6Y2VnHhqJ/L5aUKCmSL3WctPWDIWlnzlzOmeFyNoshfTp4jgZJMJZQkdWwd+4nSAYZXUzorKcC3R5Myfqms6iZG5elKYn3yVRy7SfeIRXWMBpOCqvTwhJalwakuCGrkWv0LiVUKBzGo2ScamFkhY5dujKIySt0yZXQavC9BWMZilqYKYI0caNEgY/gJwOWSiRguzzkWjqopEKoJDkGQlFCZZWy76WZgpLmPBssk+4SbrOsUem0qAWxS5kQUy0cI6WOxUThel62CR2ylNaiOB88TSGezwehfY9Dia8ETZFfIzlpDWRHUGIlvGJITkQjJlJJluiSn/0EF0bJc9nbJ6+F8uiSLaRfL5BIlgiLWLICYUoYOtQXSCdWN4IQouOjcTIeJaN4FO1IZ3/L/rtxMn52vfkynUUNL1tGCkLBuPus42wlmpdLzYS8RSMXyBloayRbkmaadPpoSbgYD86lKTM47dsdcAcaWZSCRTYAMEJjBrMZNCQNVxA9cfETF8FQmkL5EiHawVVSeaWCZwTJPkS7VB3BB2DypoBvvm4/Sv27ryp5CVEchfS70K4RRRefUTcqdGJnwN42gqTzVmKCyoUSAETT3BFj4T6bwY31deDB+ANIU6JheLamlZ1kdT4LdLZ/CK1uNNxGRlPeFkQYY1mwtMZ1bVj7Ibst8LrztdFdg0XoaruU2v7GC5HsorltfyvTjokYhELiDMJEnpyehUErrNaS2+OP8oXFn0bnxBQzOFE+rAmohQPbu4b9eXJ6BsuoQPjOh/0GlSU4taVrp7dosYGtancuGFsiVEIqT5j0scibibXnuSfVauaawWuNzkjBfN5WFIcexKEFRePtx1XhZUMZfIj7KM7rYa/ZvO1f8M0bW+ZhmwtpkPJlQfmyoLxofB4m2GXO6/0eDiDdhLYlZuFfbrwOTh+bH/efh4X1hq/xiMf7kMJNFgucylIGh3rxbX322pTwAknyVQbvBRlppttaeIH6wbSgUVu6+o/IISTz2eTQVZpPrvguiliav0D9yrJQnd/9ZLEz0JcQypdZGr8syXD/xmZouV8m9s5bFrO3dnLUPkhjx4Ix1sgkCxcdAF81eBTVgsrooK/mKCoaH80/ZUPAODn83033Z+HtziP8ELx15d1G3e5R7qKF8xgvG0uMtAn0oKT+Fgr84bJALLG8E6k9OzCbvZnN3szn8LgLvLrAQft7OJIOvAtvEb1xfwcdJaMqgscXgcje4QnYCiS7bfBeKz12S84DSqTFw81ebElkPBrBU7iHSLzDMpqvCwLk1LT3+aE0joUp8ADe2knnsGL83oqcwzGMNpXz7WhdOOP7Kufk9OxVTZZZSTP9UU7rOyln784a4B48yCFseGnA/CPhhUXSP3W3PVYP5OC7plcDjS237cNDfMMy2XsY4RWNX1Vbr1p5jfDC7pAmvE86HK6KaK+UlcsXUFjmDZK0pcs5bJbZZrmPjqLoAOZ/Huq/9vdhcgXDzfMDWJZ7sOr69bvshnw2s/iEiMfw1eF9pbt68fk7AAD//wmstEKyEQAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/kubernetes-resources.yaml + - content: H4sIAAAAAAAA/8xWXW/bVgx996/ghBRNg0iy+/UgNH1YuhTFgC1Y2wDDMLi0RFl3ubpX4KWcGIr724crKbIbOx8bmmF+MCTrkDw8PLxy04QQH4zekyFGoQxytiU8Pa9nxIaEXOjEMs7pKczZ1lX3vBCpXBLHjBfRXElRz2pHnFojZCRKbRmnlsm62OcJK7YlSUG1i5k0oaNwHE3iEo3KyYmL14CQa00uWmKpR+8sGCuQFmjmBMqElcaUfoAPBixnxCD2+qEUykGuNEGu2AkwYQa51dpeKDMHrcx5Mrom3RFuWRakyzgtkMXFwkRxiU6IYyc407TJy1ZeH8txgen56CCGcLUaefH2fIufkOckZ8ROWQPJEWSUY60FomOscKa0EkUu+rmeUQ+K3qsBH52hrslFW5l+XRCzygj6WioHNBnsOyoXxMe2rJAJgrdHk2gyjsbhONhB59kW/s0kmry8HX5Np+/ht3YiKRMK7X7WzWxtmY+dY65Z70mb/xcsyVWYktdnZx6sqgHkOlI+B1aq55ZAaY0Sy8rMo85h7RgXk9G5MlkCp8PAfMZRSYIZCiYjAIMlJdA0ULEykkPwxIVPXAD7yqS6zgiCHdOO8lprHxlA9AyC7a0I4AqEa5PC6xftpSo/1nmuLiEIA0++K9y21FYXKivtldxZbsAGEHXRGmeknW8AAKvqgTn68KaBO7vrknvwFSiTkRF4ueG1nUPqYvrsYn/HUt8J3M5MJruvCBpjBUVZ4zoZNn5I7iu8GXxrdVdR6lVtD7VW37C3yPaQW/Fbk3dzCAE1sSTg9/nUW9P5c+/M6rqkzw7ndMxKVIq6hd9gD/2nJOehCXwqCG5mgVSjKimD2RKa5kvTfFmtYK+TNKoG8KIFt1hoMR6mDKx3bSvYbD7qAxxYozcKDSsyjp7nAewtvMoD/gnkTBQNjXBtZtaeT2vWrT1vOSNa0GfWsFq18oWeSejVvtlP7XVJv5WQLitO4Cocqk7GYzhoh6VJpl3g1AmKm+IClfYH+HS2FHLNX3Z2FPTI4HC9kEdfg6bZPp5Wq2A1lAGIh+udxVKsMFWy/C613sCL/i63nMCk7O82TwH/cbQgVrJM4BuZ7jTmSa31B3Nia36HS/cgZ/6IjjKwBphSv0QOy0orMz8E+R94li4rSv1fFrH+3a+hruBCSaEM5LZmyHDpIjiumcnIP7G3cjBY6BFt7t8tyniq2Xogt/h8f8Mk/4HnN13/+L5/Bm9g8mq4RZMN1xVTplKZamUIef+xWv/jdfHnIbyEA3juv168Ho89qfHmMr76nsv4E7Plhy2hfz2srQNd6/cv2HpVCnTglardjqgC3Rr6iGanzYY7k3vY9CZu2jGdtsSa9vvoa3CCSlN2dUomU2YeHA4jDj2cwpKEVeqCFbz990Nb/zv4OwAA//8dk1DdFQ0AAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/kubernetes-storage.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/kubernetes-system.yaml + - content: H4sIAAAAAAAA/8RW74/bRBD9nr9iarW6u4LXyVHxweL6pUBVIQEqVSWE0N3EHsdL9pdmx7mr3PC3I3udXErSFpBK/Snxvpn35r3RJn2fQ/F49pwcMQrV0LC3cOZ8TbkjufW8PoMV+y6kk1YkxLIoGG/VSkvbLbtIXHkn5ERV3haVZ/KxWHdLygN7S9JSFwsmQxgpn6tFYdHphqLE4h6Qc2coqjdozexbD84LVC26FYF2eTBY0QN44cBzTQzid4fS6giNNgSN5ijAhDU03hh/q90KjHbrcrYTnQSPKlsytqhaZImFMFFhMQpxEQWXhg51+TA447losVrPHheQb7ezwbaHw4ivkFckr4mj9g7KK6ipwc4IqGcYcKmNFk1R/dAtaQKp53qPV6/RdBTVUaefNsSsa4KJSzeArobzSHZD/MzbgEyQPb1aqMVczfN5dkLOxRH+m4VaPHk/fCdnmuHlmEjFhEKnz1Jm054MWjHoqVsJ1jstnrVbqbQTo/GbxWytXV3Cz3uLh14zS4I1CpYzAIeWSuh7CKydNJA9ivmjmMG5dpXpaoLsRD6q6YwZKjNQF5AdbnAGb0G4cxV8/dX4UdtfuqbRd5Dl2SA7UcaAVeIVssEMU58k2mMzUKna4JJMHKQDYAj/sMdU3vfwwblS8wH8FrSryQk8OdiLk8Gkmqm7+F/Rmg8CjzuTqz9Ggs55QdHexWTDwYvyY8SHxe9lj4GqwdXxAhr9zaflOIx3tH1cxZRADmiIpYQf0/lLqkhv6Dtmz3FE/E0qTI+lGHFF+0LQTogbrAiyvr/p+5vtFh4my1RNG10RjC9vttsMYpvuHE50QCMfeJfE0l3wLMRw1Gm/T/tmxREm+PqeahJMd4FLGK7t84HherLjehJwTczxWryg6f/wy6vsHRnZl2mAB39mG5JWfZFtf7u0v1/AU5hP/RvPJVza6dvhjg9PpA2xljcl3CI77VYnvX/F6KLV8n+ZLxPf53N/p+Az2+9rmox8sfPxe4Mh7JCfJIXxR3mIQctZhC5AFJQugm+E3CfPIv0liO/G0YV/5/7lf3T//tb6KwAA//9M2VlGUwkAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/node-network.yaml + - content: H4sIAAAAAAAA/4xUTW/bRhC961dMiQSxA3ApNUEPRJ2LUwRFgTZoggA92aPlkNxqP4iZoWWD0X8v+GFFrZWkPEm7b+a9efOww5BD8XL1jiIxKlVQcwrwIqaKcnWBXkDDqe/m41a1k7IoGPemcdr2216IbYpKUY1NobCJKUmx67eUd5wCaUu9FEyeUChfm00RMLqaRKX4Asi59yTmAYNfvU0Qk4JtMTYELuadR0s/wK8RElfEoOnxUlsnUDtPUDsWBSasoE7ep72LDXgXd+XqUfQseFLZkg+FbZFVCmWiIqAocSGKW0+nulI32pK4aNHuVi8LyA+H1ejZs3HEj8gN6SdicSlCeQUV1dh7BXONHW6dd+pIzG/9lhaQeeeOePMJfU9innT6446YXUWwcLkaMFZwIRTuiK9T6JAJsjdXG7NZm3W+zs7IuXyC/3ljNq+/Dn+Us8zw57QRy4RK5+/mnY0hGYVi55ZWJYQUnSZ2sTFzICbX7zarnYtVCe+P/o6NVoEUK1QsVwARA5UwDNCxi1pD9lzy55LBhYvW9xVBdmY5pu69HyszMJeQHbObwWdQ7qOFn15NP1340Ne1u4csz0bNM590aGdSpdD5cd6zLEdsBmau9rglL6NuAOy6/9ljKR8G+OZQc/MR/BlcrCgqvD5JxNmVzDVLd01/YfDfBD7tTLH6HgnGmBTVpSizDScH5feIT4u/yi4d2dHV6emZ/M2XZBx3O3k+JXC2Pwf0xFrCtU9292FH+7ekZJWq6fo/ImH5AolgQ0sVyI72UC11kOJMR/ddYiWGYbgdhtvDAZ7N9n1JBEznt4dD8QTTpep4a+CXKD0T/P7xPTgBm2Ltmp6pApuYyap/GGmnd61NomZRSvcdl4BbuRgV3YwG3N+kuhbSGyGbYiXD32l7lf1LcHa4hDewNutXS5s6cQk/huXfaXrHT+iO2OlDCXvk6GJzspJ/AgAA//+gzZMQJwYAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/node-time.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/node.rules.yaml + - content: H4sIAAAAAAAA/8xVXY/cRBB8969orES5i/B4VwQeLC4vAUV8KEEBRUIIbXrt9nrY+bB62neJHP93NP7Y3XCbLBIg4ae76Zrqqpqe2b7PIH+cPCdHjEIV1OwtPGrZW5KGupD5NlY8P4Id+66dAI1IG4o8Z7xTOy1Nt+0CcemdkBNVepuXnsmHfN9tKTuy5UyGMFC2UuvcotM1BQn5STvuDAX1Dq1JvvHgvEDZoNsRaJe1Bkv6DL5z4LkiBvFLURodoNaGoNYcBJiwgtob4++024HRbl8ki+hJ8KiyIWPzskGWkAsT5RaDEOdBcGsoPxND3mC5Tx7nkA1DEtN7EC3+grwjeU0ctHdQ3EBFNXZGQD3DFrfaaNEU1A/dlmaQeq4PePUaTUdB3WN6eUvMuiKYe+ka0FVwFcjeEj/ztkUmSJ/erNV6pVbZKj0j5/oe/uu1Wj/5OHyRM3t4NZ5IyYRC52vTmR3Dejlntch+sIT3vd/GcFrWTmpIH4bsYUjhSrvSdBVBeiZvVXfGOLSUgrqGdFlOD9yxFlos6UPmS7SHbSPvMCTY6jmBAqx3Wjxrt1PTHI/DcrtO9tpVBfx04Iv+E0uCFQoWCUCkLaDv/4nHM4gU3oNw50r46ovxT21/7upav4U0G6OYOo+GxvZCtjXxwC6an3Yb3JIJ0QEAtu3f5Ji39z180t5EHsHvQbuKnMCTk5E+O1PTnpld/K9ozSeB95nJVZeaoHNeULR3YYrhZKG41Ph080e7h5bKmOr4do75ZvOMnAlqTH+8TNNBZICGWE4Hbrlar6j0rtSGvmX2HEb4X+TD/FkKAXdUwASFuya+kzwTxOex79/0/ZthgAdTmCo+5OyNIYaxEGva3ccd794B9mJZUrMAettyAfHH5epoebNY3iw6aEOjvI14QdP/4bc3ad9/+HQMQ/r5oeVUPioYhnT47Uv7+zU8hZVaz91rzwWsV3b+93TM4xfolljLuwLukJ12u0u5v/AV/ej9vmv/jeCP/P9VvM5XtMGqYgphY0bh/5Ogj5fkzwAAAP//XgLnCoQIAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/prometheus-operator.yaml + - content: H4sIAAAAAAAA/+xYYW/buhX97l9xZ7RIUtSS3Xb9YDQFunQtuhXd1hQthmFQafLKYkORGi+ZNHP93x9IyZZiO7GT+OEVeC+fHPPy3MN7Dq+uPJsNIH3Ue4saLXMoILemhIPKmhJdgZ4S6xXSAUyt8VW9WjhX0ThNLbtIptIVfuIJLTfaoXYJN2XKjUVD6Zmf4KCFSi0qZISDYTJKS6ZljuQobQMGMVdyyUrVe21AGwe8YHqKIPWgUozjn+CdBmMFWnBmsegKSZBLhZBLSw4sMgG5UcpcSD0FJfXZuLcgXROOLAtUZcoLZh2lziKmJSOHNiXHJgq7vEwVqmNsWjB+1nuUwmA+74XSPQhH/MTsFN1ntCSNhvExCMyZVw6SE1axiVTSSaTk736CTVDyVi7jk89MeaRkDekf52itFAhNLpkD0wIOCctztCemrJhF6L88HiWjYTIcDPsb6Bytxb8YJaNn14cv6DRn+BgV4RaZw81rtWZtsRZ0H7Rf/c1MQlkqK7XLof+QBg+pD4dSc+UFQn9DpZPcK6VZiX1IjroR/SV+WKWKcbyKvQ14uS0iz+c9Vsnm9GMojZbOWKmnSe3haJTzUe9MajGGfy7xwtl7JTommGPjHkCAHcNstp9T1lXtww9w1msOz5/Gj7I89Xkuv0N/EOtQp42nibkdlpUKSm09eb1bsQkqCvQBWFXtiNFsn83gxrPV4CH4B0gtUDt41vHyRjPVexp0Z/7NSnVj4DoyarEtCdPaOOak0VSXofPFeFvi7uZrs1OFPFQ1Ns1Y30FjkFWJY+njp1qFATCF1nWtdmJ0LqcfURkm3jCpUMTIFdrQ/AkkbmXlop3rTaEJtnAHwCOgt3ErFIwgj7CQGwuz2dfZ7Ot8/qCucGua+O3X+TxdjaiMWKwtWZAvS2Yvd2OQdw+F3yvbLVNWx2aKkctsRMvIc45EuVezb2Zy3J/NVrvNfN5/vGReB7TtYj7vz+H4GIZNytzYMYyGZfNv91LEs+A5Wukux3DBrJZ6ep1QH4yTueTxUP/y6PGj1yH+jVdqZ8m6ZYoZwmNwCQv/C7ggCWyNDaGD3FI42Em5uxBZ0RCF5C5TUiOzhx1Ju0CURaRMoZ664s56/ufP5X8fw/MhPIKnwyN4CVvScVYxLt3lnRPu2Tt/tdbYU9ThqrwKi7SzY+JWgosiTEBUQ9QJqJ7X2iz3NEmYuSK5kmk2xXXPdRevd9b1hFf5XvFTmE+vdxFG0MwZx+7eFYKLjiDdkopQu70kegnDZDj6w0m/gpPWCP8erPT0tlbiVjrJmbrhiXZitEbuUHwyXU12N9UGz8CaaWA310iqXwoXnIKNmL6ETcw2PspuhbA2ilzVjnW3ZEISN+doUdx9JnkB+24Gn05f/6UewSiMjovIXXQ7WL2S38xkKQRzazdWanJMt/cfCibaoPMwSsMPKHx48f9/G1WPdHEG9BYJQg3BFQhh4IPceAuF8ZaSgxt1DVOsJPJIDWLoBOHdDCbK8LOmHQhJZ1fElTq82tKVG+pITJpJk7IFr/te0idFfUmv6Puk2Ie+8c2eRyl/Uo35kuE+dV6g6ikQKyuFjdS7CdxyqkVG8RNL/OXV+xNjrY+y7d569yAvAQNep0YBF1Y6HLACmQBlpnD45dX7oy2Kre6R1AJe12ijQhdMZbw99T3lWVXm2b2F+WDcOz1FCg48jQb8rR6K+sCBXFBpLgMlW56DGzfdOCVFVYKOWROdsapCLe5/deII82L/b+T1b5un3LIK6bWvVHh4493vz61+DIm3pwzDRVMusPitHjqExzB4iAUjcLJEcqysCCbegZB5jha1g9hTaXtP3JhneyeM9cmoLlAja7aklS1p7WtGvau+7W9rvwQAAP//OQdicLEYAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/rules/prometheus.rules.yaml + - content: H4sIAAAAAAAA/6RVTW/bMAy9+1cQxq42sGEnAztstx5WBAtQYEdWojthsqRKdLHC9X8fFCux8zVrzU1iyPceHyN6GCpQLdQPqHsKtfO2I/5FfajJ4KMmCeNYoFMP5IOypoGXj8VvZWQDW/IvSlDREaNExqYAMNhRA8MATJ3TyATljFhZRx7Z+rrttY6pJdQwjtWckiCCQ5GDc8idgAoAjY+kQ5QCgM5lYlzSARBIt1VnjWLrd0AXTAqTCd+nrDqWpDO8wXNvmaKuYQBlhO7lFQ2T6qjiDZSRZBg+T3XXhpN4U2XiYPsTO52Rfs5CRuYRojGWkZU1YXJ8EWjyRCwhrioJjkSToUfoPjD5u82k5nBdGdhx3X85QH+YvEF9t0kOLAKZDiwhbpiFtii/oUYjZgOOY2sunCO8W8DW9l7QDzRPFM6lLH+NrzNi+3iDD0JJD82X9/MAVLHNCWgXOWkiHQGc9byjr+ZNdYF2Pm4diTpW3WNHe7bkCz3/SzK/OoLy3kraWM/lvtakwNpg9nlLzkMbUyNrEG5RzuifiHOI58zMfSClik8ZdazJ30SndYdn8OlsaoE0ibiD561+sqnn600fn/VuA4X4Ffzatsooft3rOwquOXwB46jd+M9poFwZU/x7jWO5LP0bAAD//13s2HHLBwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/service.yaml + - content: H4sIAAAAAAAA/5SRwUoDMRCG7/sUQ+8bUDztzRcQoVDwOJuMNTiZhGTSS+y7S1jpam2x3kJm/u/7SVobwb8CigOzQ65UTMoxkL5RLYYEZ6aLo0L54C09WhurqLGZUAmOxwGT31EuPsoEh7vh3YubYPtjewik6FBxGgAEA03QGiiFxB2yWTVjTJRRY76ufsJAGzBdvcBKQnsL8bR7SjPOxKWXAsCUbmQs8XEdD62BF8vVXUktnp77AC+OROGhN/j6jL9fG0WiovooZWn+7WLqeo0vGPifpN9lSFw/+oB7eq7MW7KZ9KJiz3FGNuerK/T+DPoZAAD//ymHm/p6AgAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/serviceaccount.yaml + - content: H4sIAAAAAAAA/6SUTYvbMBCG7/4Vg2lh92CFQtmDr4We2lI2ZaFHRR4nYvXV0TgUHP/3osj5Trre3ZwkWe87z4wm0/cV6Baka0A8SdNhFIG8RV5hFwU6uTB49VNEWmuF373T7ElENO24hmEoZNBPSFF7V4PNx9othfKEPgrl7Wz9qXjWrqlhfmJUWGTZSJZ1AeCkxRr6HhhtMJIRygNB5QOSTLHbzph0tQQBw1AdrowWMUg1xWd/NxsVAEYu0MSEAiBDmOhxydH3oJ0yXXNDleMk3Qa0a9AxfE4EMaBK0SMaVOwpk1jJavXtCO19cNmB0KCMuUwfxGPeiR/SImzgT+cZc0nSLz12NT5rDSVTh+VxreeXuMloT1ulIIG04xbKj7GEu/9W5/hd7k9p0DXBa8db6wqCJ95mcKVhD8t5QCXS1W12Y1bjH+HlTteOkdbS7IS7/a24L8hTXHTNqzGiWuGBPu8mIpxK3wrAJn7xrtXLnXJ/kDvR/5bWvMpnA25s/of3wi1QEtIv/4zuqzb7XM+OJ9brhtkZW5C8qqFMqZO2865t9V8oZ+WEXiTfMf4kTIphmFlk0iqWxeR0s+IRt3NEu2XcQV18qNMs4mDgbvIDXZrvh9TDfZ6UR6WYzEyXtHTOORWRrsJdIRuX/wIAAP//n/dIzvYGAAA= + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/servicemonitor.yaml + - content: H4sIAAAAAAAA/5SRz27yMBDE73mKFfquySduVZ6BnpCQelziLXVrry174ZLy7lXiOn+oQe3N7Oz+Zsj0fQ36FZAVNAc0Z4qND86SvNE5NsR4NFSUUCkt2jGaPYWL7ujZsRYXIlyvFXp9oBC14xYu2+pDs2php6NUWsjGthpsA/KJ/owGqGGJt0nTfGo6F8jFpnP2/2VbAQAk4zVlFCwJKhRsx18AjJZa6HtohlfyyfPosUuikPUGhWAzp62dp4DiQjPtbuDfTDB4JBOzDwB6/0tWwtSzXPU9aO7MWd25Sl7D3SdoVsQCT3MSgO+yFx94N14MO0Mk94LWFOT7NGKVR9FTl/8msfJOs4xNT9xpWgDmaO/uOJrORnmS6rnVb0JkzNTFngx14kKh0iytMv48LGddeALEEik+BgwpBcOJZO4g0ZbTFXG1/jBW+fkVAAD//88jpd7sAwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/servicemonitors.yaml + - content: H4sIAAAAAAAA/6xUTYvbMBC9+1cMxsfapbdi6KW3QlnCBhZ6nMiTrVhZUqXRQnH934viLyWxE9pdn8xo3pv3ZkbquhLkEVA3UD2hCuQr60xL/JOCr0jjQdHqkSf3KgXtyD2SVVLgnNz3WWQthAmaof6yhl5+95ZE5QYKD39AaoZyohiLDPgNqishEQ4ZWvlEzkuja3j9lL1I3dTwXXrOWmJskLHOADS2VEPXgdRChYYgX5hLY8khG1cdg1IxM4cC+r5MUsbiltxoYeT0FsVAzNRahbzBPOfmUMXGSabW1yfzDvUzQSE/QEHRetAs1dTVvs8ASrgwCQAwGN0Puk6R1G/83uq566CQg4KJ7j/sFguDwgMpP8kDQGvv61vVlt1DDaUiLm5aQ5rh8yJkvAzna1eh1oaRpdF+SU2CcVzA5ge26hZ0qyDpZgp4S6K+qUWo4Jnct93CMYdOPbuff1Fzq5Iy2HxFhVqQ25vgBD3GhUxasJWROhiXWMjGxR3+5xpxyaOrE8FtC2cBaxwnG1UuS1/cf40i+AFbSmXMbaJfly74tyXIH0xDO+M4P0fpMbw2nOnsus6Zl8nPGoW9gjO6Z+KtksvpgvKkSLBxFxcwuVWzijn0hvdjZvOMTMegPHH1Eg7kNDH5SpqP1jTlMLDzZ+d9Hqw4rxrylebEQfZ9niUjSH7/BgAA//9sL69RKwcAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/prometheus/serviceperreplica.yaml + - content: H4sIAAAAAAAA/+yUz2obQQzG7/sUYi+Gwk4o9FD22kLvpeQuz8prkdnRotE4EDfvXvaPE9txHRpcWkNusxqN9H2zP812WwGvAGMD7hZDpuTaIEsMTpfonVdCo5NbOZF+l0Bpl/T4WFRVVWDPt6SJJdYwJmK2tSg/oLFEd/c5OZabzcfijmNTw5eQk02Vio4MGzSsC4CIHdXQSWQT5dhW2HQcC4CASwqphu0WOPqQG4KyV+nI1pRTJT0pmqib8kpw8BMix4aiwadBJMBs+rwrbFulFo1+yFdaYQ42xqcKcMba08HKZFJdQ2maqZxbU2yGKpoDpbqoAHv+ppL7NPiu9jw7L0qSnJeuAFBKktXTnIaB1DqM2JKmMfJ8C/QycLPiiIEfdskHxw83N6TLucmiJVtMq8Bpt7xH8+vFm5XbGqOkwf6sZT9wrDORbtjTXHr2Jc3h95PP8U5P5Oxb+nBCeVm+lOklrrjtsN8J8Up2qthfhJ4atqtjfhB9Fvl38t/Jf438DdP91ZE/iL6yx/6fQ/lHc/ZmWs91OQZEcYURHUVcBhr/3kUhn+tXk+6LPfG/I+y/GvAj75ca8ot7fw2Xeaqfl78CAAD///hXaq1ICwAA + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/rancher-monitoring/clusterrole.yaml + - content: H4sIAAAAAAAA/6SSQUv7QBDFz///pxhiDxVMilfBQ6kXEaG04lW2m0l3YLNjZyZFKf3ukqatrShie0t4j997b9gLWK1y6FXcpBJubqEkb5Cv1/87QdF2YlZzImOhNC88C7IWnuvB8nowjChWu+TmKBlULir+FTHm8rHTTgUI12gBGz0bMGkingiZoizJ43lTnoJLvGnxDUFcmiMUI/fqZhTJCLUYju+fUZQ46YGTKghOH/B9l9g3nlqbB8Xl1vfvS6kji0lzmIyp/PGva9V7uYIevpGatk9pyzxq1MfF3rKZdtREcNGQYAnZZPc1mtwpOEGoSbW9FYwjOkWgpOZiBAvYxvuAkn+eNPdSgg9ODGZYsez97TYLpJ1YZJBlv278CAAA//91eh8bJAMAAA== + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/templates/validate-install-crd.yaml + - content: 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 + encoding: base64+gz + name: .chart/c16b73f96b24b9ea4655e093669ad382e6abe38195613acaa76acec94dbc393c/rancher-monitoring/values.yaml + - content: H4sIAAAAAAAA/9xUwWrbQBC9+ysWnWsruRXdSkIhh6aihvQ8WT1Lg1c7y+xIwZT+e5HUhgTcOnZuPUm7vDfvzdvZjdQjJ/KonCezgHUvkU2UY7vOh2zoVx1CX62cUwRQxj31qJxS9B30BXxGJKlcZ5ZyVZa+I7W8+Y3csKycm/eOshve7SYVL30iRU3mO+RpZ+0o8QM0s8TKUdNznn4VLWdTMpa42X/MG5ZyvH6E0fXKOef2HJvKfRmMjGP7HY+dyP5G4o7bYWHNsPiXdtbPQjNMEhbSbGky9aOQVFSFopcRxQdXJLKuqIryaZHK5VW5Iw6DopbA/lD8PIOpQ8D0zV4SZua7YnigwM1/GUSaSx5puZZmCz8o22GRPdd+TvBlJ9nu6pvTlp/R97An0f0ZjPru9o3opDxyQIvmjQQFNV9jOHwTsc8csFzpY/OUUi7Hl/ndIgU59Ij27/FolXYU6Rl06jm55BQMfQpkWFZeohFH6DQXiGN5VY4UhqPX5FRb73Ny/nm/5kdpsEWAN9GLCiRlmSb8JlDO08t8URWT8CeFIxm+im8LHdnjk/cynB8h99SiHkLYwitsUvsVAAD///ltWy6CBgAA + encoding: base64+gz + name: fleet.yaml + targets: + - clusterGroup: default + name: default +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test-rancher-monitoring-crd + namespace: fleet-local +spec: + helm: + chart: rancher-monitoring-crd + releaseName: rancher-monitoring-crd + repo: https://charts.rancher.io + namespace: cattle-monitoring-system + resources: + - content: | + annotations: + catalog.cattle.io/certified: rancher + catalog.cattle.io/hidden: "true" + catalog.cattle.io/namespace: cattle-monitoring-system + catalog.cattle.io/release-name: rancher-monitoring-crd + apiVersion: v1 + description: Installs the CRDs for rancher-monitoring. + name: rancher-monitoring-crd + type: application + version: 8.16.100 + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/Chart.yaml + - content: | + # rancher-monitoring-crd + A Rancher chart that installs the CRDs used by [rancher-monitoring](https://github.com/rancher/dev-charts/tree/master/packages/rancher-monitoring). + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/README.md + - content: | + # https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.38/example/prometheus-operator-crd/monitoring.coreos.com_alertmanagers.yaml + apiVersion: apiextensions.k8s.io/v1beta1 + kind: CustomResourceDefinition + metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.2.4 + creationTimestamp: null + name: alertmanagers.monitoring.coreos.com + spec: + additionalPrinterColumns: + - JSONPath: .spec.version + description: The version of Alertmanager + name: Version + type: string + - JSONPath: .spec.replicas + description: The desired replicas number of Alertmanagers + name: Replicas + type: integer + - JSONPath: .metadata.creationTimestamp + name: Age + type: date + group: monitoring.coreos.com + names: + kind: Alertmanager + listKind: AlertmanagerList + plural: alertmanagers + singular: alertmanager + preserveUnknownFields: false + scope: Namespaced + subresources: {} + validation: + openAPIV3Schema: + description: Alertmanager describes an Alertmanager cluster. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: 'Specification of the desired behavior of the Alertmanager + cluster. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' + properties: + additionalPeers: + description: AdditionalPeers allows injecting a set of additional Alertmanagers + to peer with to form a highly available cluster. + items: + type: string + type: array + affinity: + description: If specified, the pod's scheduling constraints. + properties: + nodeAffinity: + description: Describes node affinity scheduling rules for the pod. + properties: + preferredDuringSchedulingIgnoredDuringExecution: + description: The scheduler will prefer to schedule pods to nodes + that satisfy the affinity expressions specified by this field, + but it may choose a node that violates one or more of the + expressions. The node that is most preferred is the one with + the greatest sum of weights, i.e. for each node that meets + all of the scheduling requirements (resource request, requiredDuringScheduling + affinity expressions, etc.), compute a sum by iterating through + the elements of this field and adding "weight" to the sum + if the node matches the corresponding matchExpressions; the + node(s) with the highest sum are the most preferred. + items: + description: An empty preferred scheduling term matches all + objects with implicit weight 0 (i.e. it's a no-op). A null + preferred scheduling term matches no objects (i.e. is also + a no-op). + properties: + preference: + description: A node selector term, associated with the + corresponding weight. + properties: + matchExpressions: + description: A list of node selector requirements + by node's labels. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + description: A list of node selector requirements + by node's fields. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + description: Weight associated with matching the corresponding + nodeSelectorTerm, in the range 1-100. + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + description: If the affinity requirements specified by this + field are not met at scheduling time, the pod will not be + scheduled onto the node. If the affinity requirements specified + by this field cease to be met at some point during pod execution + (e.g. due to an update), the system may or may not try to + eventually evict the pod from its node. + properties: + nodeSelectorTerms: + description: Required. A list of node selector terms. The + terms are ORed. + items: + description: A null or empty node selector term matches + no objects. The requirements of them are ANDed. The + TopologySelectorTerm type implements a subset of the + NodeSelectorTerm. + properties: + matchExpressions: + description: A list of node selector requirements + by node's labels. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + description: A list of node selector requirements + by node's fields. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + description: Describes pod affinity scheduling rules (e.g. co-locate + this pod in the same node, zone, etc. as some other pod(s)). + properties: + preferredDuringSchedulingIgnoredDuringExecution: + description: The scheduler will prefer to schedule pods to nodes + that satisfy the affinity expressions specified by this field, + but it may choose a node that violates one or more of the + expressions. The node that is most preferred is the one with + the greatest sum of weights, i.e. for each node that meets + all of the scheduling requirements (resource request, requiredDuringScheduling + affinity expressions, etc.), compute a sum by iterating through + the elements of this field and adding "weight" to the sum + if the node has pods which matches the corresponding podAffinityTerm; + the node(s) with the highest sum are the most preferred. + items: + description: The weights of all of the matched WeightedPodAffinityTerm + fields are added per-node to find the most preferred node(s) + properties: + podAffinityTerm: + description: Required. A pod affinity term, associated + with the corresponding weight. + properties: + labelSelector: + description: A label query over a set of resources, + in this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label + selector requirements. The requirements are + ANDed. + items: + description: A label selector requirement is + a selector that contains values, a key, and + an operator that relates the key and values. + properties: + key: + description: key is the label key that the + selector applies to. + type: string + operator: + description: operator represents a key's + relationship to a set of values. Valid + operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string + values. If the operator is In or NotIn, + the values array must be non-empty. If + the operator is Exists or DoesNotExist, + the values array must be empty. This array + is replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} + pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, + whose key field is "key", the operator is "In", + and the values array contains only "value". + The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces + the labelSelector applies to (matches against); + null or empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods + matching the labelSelector in the specified namespaces, + where co-located is defined as running on a node + whose value of the label with key topologyKey matches + that of any node on which any of the selected pods + is running. Empty topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + weight: + description: weight associated with matching the corresponding + podAffinityTerm, in the range 1-100. + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + description: If the affinity requirements specified by this + field are not met at scheduling time, the pod will not be + scheduled onto the node. If the affinity requirements specified + by this field cease to be met at some point during pod execution + (e.g. due to a pod label update), the system may or may not + try to eventually evict the pod from its node. When there + are multiple elements, the lists of nodes corresponding to + each podAffinityTerm are intersected, i.e. all terms must + be satisfied. + items: + description: Defines a set of pods (namely those matching + the labelSelector relative to the given namespace(s)) that + this pod should be co-located (affinity) or not co-located + (anti-affinity) with, where co-located is defined as running + on a node whose value of the label with key + matches that of any node on which a pod of the set of pods + is running + properties: + labelSelector: + description: A label query over a set of resources, in + this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values + array must be non-empty. If the operator is + Exists or DoesNotExist, the values array must + be empty. This array is replaced during a + strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces the + labelSelector applies to (matches against); null or + empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods matching + the labelSelector in the specified namespaces, where + co-located is defined as running on a node whose value + of the label with key topologyKey matches that of any + node on which any of the selected pods is running. Empty + topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + description: Describes pod anti-affinity scheduling rules (e.g. + avoid putting this pod in the same node, zone, etc. as some other + pod(s)). + properties: + preferredDuringSchedulingIgnoredDuringExecution: + description: The scheduler will prefer to schedule pods to nodes + that satisfy the anti-affinity expressions specified by this + field, but it may choose a node that violates one or more + of the expressions. The node that is most preferred is the + one with the greatest sum of weights, i.e. for each node that + meets all of the scheduling requirements (resource request, + requiredDuringScheduling anti-affinity expressions, etc.), + compute a sum by iterating through the elements of this field + and adding "weight" to the sum if the node has pods which + matches the corresponding podAffinityTerm; the node(s) with + the highest sum are the most preferred. + items: + description: The weights of all of the matched WeightedPodAffinityTerm + fields are added per-node to find the most preferred node(s) + properties: + podAffinityTerm: + description: Required. A pod affinity term, associated + with the corresponding weight. + properties: + labelSelector: + description: A label query over a set of resources, + in this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label + selector requirements. The requirements are + ANDed. + items: + description: A label selector requirement is + a selector that contains values, a key, and + an operator that relates the key and values. + properties: + key: + description: key is the label key that the + selector applies to. + type: string + operator: + description: operator represents a key's + relationship to a set of values. Valid + operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string + values. If the operator is In or NotIn, + the values array must be non-empty. If + the operator is Exists or DoesNotExist, + the values array must be empty. This array + is replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} + pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, + whose key field is "key", the operator is "In", + and the values array contains only "value". + The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces + the labelSelector applies to (matches against); + null or empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods + matching the labelSelector in the specified namespaces, + where co-located is defined as running on a node + whose value of the label with key topologyKey matches + that of any node on which any of the selected pods + is running. Empty topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + weight: + description: weight associated with matching the corresponding + podAffinityTerm, in the range 1-100. + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + description: If the anti-affinity requirements specified by + this field are not met at scheduling time, the pod will not + be scheduled onto the node. If the anti-affinity requirements + specified by this field cease to be met at some point during + pod execution (e.g. due to a pod label update), the system + may or may not try to eventually evict the pod from its node. + When there are multiple elements, the lists of nodes corresponding + to each podAffinityTerm are intersected, i.e. all terms must + be satisfied. + items: + description: Defines a set of pods (namely those matching + the labelSelector relative to the given namespace(s)) that + this pod should be co-located (affinity) or not co-located + (anti-affinity) with, where co-located is defined as running + on a node whose value of the label with key + matches that of any node on which a pod of the set of pods + is running + properties: + labelSelector: + description: A label query over a set of resources, in + this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values + array must be non-empty. If the operator is + Exists or DoesNotExist, the values array must + be empty. This array is replaced during a + strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces the + labelSelector applies to (matches against); null or + empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods matching + the labelSelector in the specified namespaces, where + co-located is defined as running on a node whose value + of the label with key topologyKey matches that of any + node on which any of the selected pods is running. Empty + topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + baseImage: + description: Base image that is used to deploy pods, without tag. + type: string + configMaps: + description: ConfigMaps is a list of ConfigMaps in the same namespace + as the Alertmanager object, which shall be mounted into the Alertmanager + Pods. The ConfigMaps are mounted into /etc/alertmanager/configmaps/. + items: + type: string + type: array + configSecret: + description: ConfigSecret is the name of a Kubernetes Secret in the + same namespace as the Alertmanager object, which contains configuration + for this Alertmanager instance. Defaults to 'alertmanager-' + The secret is mounted into /etc/alertmanager/config. + type: string + containers: + description: Containers allows injecting additional containers. This + is meant to allow adding an authentication proxy to an Alertmanager + pod. + items: + description: A single application container that you want to run within + a pod. + properties: + args: + description: 'Arguments to the entrypoint. The docker image''s + CMD is used if this is not provided. Variable references $(VAR_NAME) + are expanded using the container''s environment. If a variable + cannot be resolved, the reference in the input string will be + unchanged. The $(VAR_NAME) syntax can be escaped with a double + $$, ie: $$(VAR_NAME). Escaped references will never be expanded, + regardless of whether the variable exists or not. Cannot be + updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + command: + description: 'Entrypoint array. Not executed within a shell. The + docker image''s ENTRYPOINT is used if this is not provided. + Variable references $(VAR_NAME) are expanded using the container''s + environment. If a variable cannot be resolved, the reference + in the input string will be unchanged. The $(VAR_NAME) syntax + can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable exists + or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + env: + description: List of environment variables to set in the container. + Cannot be updated. + items: + description: EnvVar represents an environment variable present + in a Container. + properties: + name: + description: Name of the environment variable. Must be a + C_IDENTIFIER. + type: string + value: + description: 'Variable references $(VAR_NAME) are expanded + using the previous defined environment variables in the + container and any service environment variables. If a + variable cannot be resolved, the reference in the input + string will be unchanged. The $(VAR_NAME) syntax can be + escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable + exists or not. Defaults to "".' + type: string + valueFrom: + description: Source for the environment variable's value. + Cannot be used if value is not empty. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + fieldRef: + description: 'Selects a field of the pod: supports metadata.name, + metadata.namespace, metadata.labels, metadata.annotations, + spec.nodeName, spec.serviceAccountName, status.hostIP, + status.podIP, status.podIPs.' + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in the + specified API version. + type: string + required: + - fieldPath + type: object + resourceFieldRef: + description: 'Selects a resource of the container: only + resources limits and requests (limits.cpu, limits.memory, + limits.ephemeral-storage, requests.cpu, requests.memory + and requests.ephemeral-storage) are currently supported.' + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + description: Specifies the output format of the + exposed resources, defaults to "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + secretKeyRef: + description: Selects a key of a secret in the pod's + namespace + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + description: List of sources to populate environment variables + in the container. The keys defined within a source must be a + C_IDENTIFIER. All invalid keys will be reported as an event + when the container is starting. When a key exists in multiple + sources, the value associated with the last source will take + precedence. Values defined by an Env with a duplicate key will + take precedence. Cannot be updated. + items: + description: EnvFromSource represents the source of a set of + ConfigMaps + properties: + configMapRef: + description: The ConfigMap to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap must be defined + type: boolean + type: object + prefix: + description: An optional identifier to prepend to each key + in the ConfigMap. Must be a C_IDENTIFIER. + type: string + secretRef: + description: The Secret to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret must be defined + type: boolean + type: object + type: object + type: array + image: + description: 'Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images + This field is optional to allow higher level config management + to default or override container images in workload controllers + like Deployments and StatefulSets.' + type: string + imagePullPolicy: + description: 'Image pull policy. One of Always, Never, IfNotPresent. + Defaults to Always if :latest tag is specified, or IfNotPresent + otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images' + type: string + lifecycle: + description: Actions that the management system should take in + response to container lifecycle events. Cannot be updated. + properties: + postStart: + description: 'PostStart is called immediately after a container + is created. If the handler fails, the container is terminated + and restarted according to its restart policy. Other management + of the container blocks until the hook completes. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + description: 'PreStop is called immediately before a container + is terminated due to an API request or management event + such as liveness/startup probe failure, preemption, resource + contention, etc. The handler is not called if the container + crashes or exits. The reason for termination is passed to + the handler. The Pod''s termination grace period countdown + begins before the PreStop hooked is executed. Regardless + of the outcome of the handler, the container will eventually + terminate within the Pod''s termination grace period. Other + management of the container blocks until the hook completes + or until the termination grace period is reached. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + description: 'Periodic probe of container liveness. Container + will be restarted if the probe fails. Cannot be updated. More + info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + name: + description: Name of the container specified as a DNS_LABEL. Each + container in a pod must have a unique name (DNS_LABEL). Cannot + be updated. + type: string + ports: + description: List of ports to expose from the container. Exposing + a port here gives the system additional information about the + network connections a container uses, but is primarily informational. + Not specifying a port here DOES NOT prevent that port from being + exposed. Any port which is listening on the default "0.0.0.0" + address inside a container will be accessible from the network. + Cannot be updated. + items: + description: ContainerPort represents a network port in a single + container. + properties: + containerPort: + description: Number of port to expose on the pod's IP address. + This must be a valid port number, 0 < x < 65536. + format: int32 + type: integer + hostIP: + description: What host IP to bind the external port to. + type: string + hostPort: + description: Number of port to expose on the host. If specified, + this must be a valid port number, 0 < x < 65536. If HostNetwork + is specified, this must match ContainerPort. Most containers + do not need this. + format: int32 + type: integer + name: + description: If specified, this must be an IANA_SVC_NAME + and unique within the pod. Each named port in a pod must + have a unique name. Name for the port that can be referred + to by services. + type: string + protocol: + description: Protocol for port. Must be UDP, TCP, or SCTP. + Defaults to "TCP". + type: string + required: + - containerPort + type: object + type: array + readinessProbe: + description: 'Periodic probe of container service readiness. Container + will be removed from service endpoints if the probe fails. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + resources: + description: 'Compute Resources required by this container. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute + resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute + resources required. If Requests is omitted for a container, + it defaults to Limits if that is explicitly specified, otherwise + to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + securityContext: + description: 'Security options the pod should run with. More info: + https://kubernetes.io/docs/concepts/policy/security-context/ + More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/' + properties: + allowPrivilegeEscalation: + description: 'AllowPrivilegeEscalation controls whether a + process can gain more privileges than its parent process. + This bool directly controls if the no_new_privs flag will + be set on the container process. AllowPrivilegeEscalation + is true always when the container is: 1) run as Privileged + 2) has CAP_SYS_ADMIN' + type: boolean + capabilities: + description: The capabilities to add/drop when running containers. + Defaults to the default set of capabilities granted by the + container runtime. + properties: + add: + description: Added capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + drop: + description: Removed capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + type: object + privileged: + description: Run container in privileged mode. Processes in + privileged containers are essentially equivalent to root + on the host. Defaults to false. + type: boolean + procMount: + description: procMount denotes the type of proc mount to use + for the containers. The default is DefaultProcMount which + uses the container runtime defaults for readonly paths and + masked paths. This requires the ProcMountType feature flag + to be enabled. + type: string + readOnlyRootFilesystem: + description: Whether this container has a read-only root filesystem. + Default is false. + type: boolean + runAsGroup: + description: The GID to run the entrypoint of the container + process. Uses runtime default if unset. May also be set + in PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + format: int64 + type: integer + runAsNonRoot: + description: Indicates that the container must run as a non-root + user. If true, the Kubelet will validate the image at runtime + to ensure that it does not run as UID 0 (root) and fail + to start the container if it does. If unset or false, no + such validation will be performed. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + type: boolean + runAsUser: + description: The UID to run the entrypoint of the container + process. Defaults to user specified in image metadata if + unspecified. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + format: int64 + type: integer + seLinuxOptions: + description: The SELinux context to be applied to the container. + If unspecified, the container runtime will allocate a random + SELinux context for each container. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + properties: + level: + description: Level is SELinux level label that applies + to the container. + type: string + role: + description: Role is a SELinux role label that applies + to the container. + type: string + type: + description: Type is a SELinux type label that applies + to the container. + type: string + user: + description: User is a SELinux user label that applies + to the container. + type: string + type: object + windowsOptions: + description: The Windows specific settings applied to all + containers. If unspecified, the options from the PodSecurityContext + will be used. If set in both SecurityContext and PodSecurityContext, + the value specified in SecurityContext takes precedence. + properties: + gmsaCredentialSpec: + description: GMSACredentialSpec is where the GMSA admission + webhook (https://github.com/kubernetes-sigs/windows-gmsa) + inlines the contents of the GMSA credential spec named + by the GMSACredentialSpecName field. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + gmsaCredentialSpecName: + description: GMSACredentialSpecName is the name of the + GMSA credential spec to use. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + runAsUserName: + description: The UserName in Windows to run the entrypoint + of the container process. Defaults to the user specified + in image metadata if unspecified. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. This field is beta-level and may be + disabled with the WindowsRunAsUserName feature flag. + type: string + type: object + type: object + startupProbe: + description: 'StartupProbe indicates that the Pod has successfully + initialized. If specified, no other probes are executed until + this completes successfully. If this probe fails, the Pod will + be restarted, just as if the livenessProbe failed. This can + be used to provide different probe parameters at the beginning + of a Pod''s lifecycle, when it might take a long time to load + data or warm a cache, than during steady-state operation. This + cannot be updated. This is an alpha feature enabled by the StartupProbe + feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + stdin: + description: Whether this container should allocate a buffer for + stdin in the container runtime. If this is not set, reads from + stdin in the container will always result in EOF. Default is + false. + type: boolean + stdinOnce: + description: Whether the container runtime should close the stdin + channel after it has been opened by a single attach. When stdin + is true the stdin stream will remain open across multiple attach + sessions. If stdinOnce is set to true, stdin is opened on container + start, is empty until the first client attaches to stdin, and + then remains open and accepts data until the client disconnects, + at which time stdin is closed and remains closed until the container + is restarted. If this flag is false, a container processes that + reads from stdin will never receive an EOF. Default is false + type: boolean + terminationMessagePath: + description: 'Optional: Path at which the file to which the container''s + termination message will be written is mounted into the container''s + filesystem. Message written is intended to be brief final status, + such as an assertion failure message. Will be truncated by the + node if greater than 4096 bytes. The total message length across + all containers will be limited to 12kb. Defaults to /dev/termination-log. + Cannot be updated.' + type: string + terminationMessagePolicy: + description: Indicate how the termination message should be populated. + File will use the contents of terminationMessagePath to populate + the container status message on both success and failure. FallbackToLogsOnError + will use the last chunk of container log output if the termination + message file is empty and the container exited with an error. + The log output is limited to 2048 bytes or 80 lines, whichever + is smaller. Defaults to File. Cannot be updated. + type: string + tty: + description: Whether this container should allocate a TTY for + itself, also requires 'stdin' to be true. Default is false. + type: boolean + volumeDevices: + description: volumeDevices is the list of block devices to be + used by the container. This is a beta feature. + items: + description: volumeDevice describes a mapping of a raw block + device within a container. + properties: + devicePath: + description: devicePath is the path inside of the container + that the device will be mapped to. + type: string + name: + description: name must match the name of a persistentVolumeClaim + in the pod + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + description: Pod volumes to mount into the container's filesystem. + Cannot be updated. + items: + description: VolumeMount describes a mounting of a Volume within + a container. + properties: + mountPath: + description: Path within the container at which the volume + should be mounted. Must not contain ':'. + type: string + mountPropagation: + description: mountPropagation determines how mounts are + propagated from the host to container and the other way + around. When not set, MountPropagationNone is used. This + field is beta in 1.10. + type: string + name: + description: This must match the Name of a Volume. + type: string + readOnly: + description: Mounted read-only if true, read-write otherwise + (false or unspecified). Defaults to false. + type: boolean + subPath: + description: Path within the volume from which the container's + volume should be mounted. Defaults to "" (volume's root). + type: string + subPathExpr: + description: Expanded path within the volume from which + the container's volume should be mounted. Behaves similarly + to SubPath but environment variable references $(VAR_NAME) + are expanded using the container's environment. Defaults + to "" (volume's root). SubPathExpr and SubPath are mutually + exclusive. + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + description: Container's working directory. If not specified, + the container runtime's default will be used, which might be + configured in the container image. Cannot be updated. + type: string + required: + - name + type: object + type: array + externalUrl: + description: The external URL the Alertmanager instances will be available + under. This is necessary to generate correct URLs. This is necessary + if Alertmanager is not served from root of a DNS name. + type: string + image: + description: Image if specified has precedence over baseImage, tag and + sha combinations. Specifying the version is still necessary to ensure + the Prometheus Operator knows what version of Alertmanager is being + configured. + type: string + imagePullSecrets: + description: An optional list of references to secrets in the same namespace + to use for pulling prometheus and alertmanager images from registries + see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod + items: + description: LocalObjectReference contains enough information to let + you locate the referenced object inside the same namespace. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + type: array + initContainers: + description: 'InitContainers allows adding initContainers to the pod + definition. Those can be used to e.g. fetch secrets for injection + into the Alertmanager configuration from external sources. Any errors + during the execution of an initContainer will lead to a restart of + the Pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ + Using initContainers for any use case other then secret fetching is + entirely outside the scope of what the maintainers will support and + by doing so, you accept that this behaviour may break at any time + without notice.' + items: + description: A single application container that you want to run within + a pod. + properties: + args: + description: 'Arguments to the entrypoint. The docker image''s + CMD is used if this is not provided. Variable references $(VAR_NAME) + are expanded using the container''s environment. If a variable + cannot be resolved, the reference in the input string will be + unchanged. The $(VAR_NAME) syntax can be escaped with a double + $$, ie: $$(VAR_NAME). Escaped references will never be expanded, + regardless of whether the variable exists or not. Cannot be + updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + command: + description: 'Entrypoint array. Not executed within a shell. The + docker image''s ENTRYPOINT is used if this is not provided. + Variable references $(VAR_NAME) are expanded using the container''s + environment. If a variable cannot be resolved, the reference + in the input string will be unchanged. The $(VAR_NAME) syntax + can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable exists + or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + env: + description: List of environment variables to set in the container. + Cannot be updated. + items: + description: EnvVar represents an environment variable present + in a Container. + properties: + name: + description: Name of the environment variable. Must be a + C_IDENTIFIER. + type: string + value: + description: 'Variable references $(VAR_NAME) are expanded + using the previous defined environment variables in the + container and any service environment variables. If a + variable cannot be resolved, the reference in the input + string will be unchanged. The $(VAR_NAME) syntax can be + escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable + exists or not. Defaults to "".' + type: string + valueFrom: + description: Source for the environment variable's value. + Cannot be used if value is not empty. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + fieldRef: + description: 'Selects a field of the pod: supports metadata.name, + metadata.namespace, metadata.labels, metadata.annotations, + spec.nodeName, spec.serviceAccountName, status.hostIP, + status.podIP, status.podIPs.' + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in the + specified API version. + type: string + required: + - fieldPath + type: object + resourceFieldRef: + description: 'Selects a resource of the container: only + resources limits and requests (limits.cpu, limits.memory, + limits.ephemeral-storage, requests.cpu, requests.memory + and requests.ephemeral-storage) are currently supported.' + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + description: Specifies the output format of the + exposed resources, defaults to "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + secretKeyRef: + description: Selects a key of a secret in the pod's + namespace + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + description: List of sources to populate environment variables + in the container. The keys defined within a source must be a + C_IDENTIFIER. All invalid keys will be reported as an event + when the container is starting. When a key exists in multiple + sources, the value associated with the last source will take + precedence. Values defined by an Env with a duplicate key will + take precedence. Cannot be updated. + items: + description: EnvFromSource represents the source of a set of + ConfigMaps + properties: + configMapRef: + description: The ConfigMap to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap must be defined + type: boolean + type: object + prefix: + description: An optional identifier to prepend to each key + in the ConfigMap. Must be a C_IDENTIFIER. + type: string + secretRef: + description: The Secret to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret must be defined + type: boolean + type: object + type: object + type: array + image: + description: 'Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images + This field is optional to allow higher level config management + to default or override container images in workload controllers + like Deployments and StatefulSets.' + type: string + imagePullPolicy: + description: 'Image pull policy. One of Always, Never, IfNotPresent. + Defaults to Always if :latest tag is specified, or IfNotPresent + otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images' + type: string + lifecycle: + description: Actions that the management system should take in + response to container lifecycle events. Cannot be updated. + properties: + postStart: + description: 'PostStart is called immediately after a container + is created. If the handler fails, the container is terminated + and restarted according to its restart policy. Other management + of the container blocks until the hook completes. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + description: 'PreStop is called immediately before a container + is terminated due to an API request or management event + such as liveness/startup probe failure, preemption, resource + contention, etc. The handler is not called if the container + crashes or exits. The reason for termination is passed to + the handler. The Pod''s termination grace period countdown + begins before the PreStop hooked is executed. Regardless + of the outcome of the handler, the container will eventually + terminate within the Pod''s termination grace period. Other + management of the container blocks until the hook completes + or until the termination grace period is reached. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + description: 'Periodic probe of container liveness. Container + will be restarted if the probe fails. Cannot be updated. More + info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + name: + description: Name of the container specified as a DNS_LABEL. Each + container in a pod must have a unique name (DNS_LABEL). Cannot + be updated. + type: string + ports: + description: List of ports to expose from the container. Exposing + a port here gives the system additional information about the + network connections a container uses, but is primarily informational. + Not specifying a port here DOES NOT prevent that port from being + exposed. Any port which is listening on the default "0.0.0.0" + address inside a container will be accessible from the network. + Cannot be updated. + items: + description: ContainerPort represents a network port in a single + container. + properties: + containerPort: + description: Number of port to expose on the pod's IP address. + This must be a valid port number, 0 < x < 65536. + format: int32 + type: integer + hostIP: + description: What host IP to bind the external port to. + type: string + hostPort: + description: Number of port to expose on the host. If specified, + this must be a valid port number, 0 < x < 65536. If HostNetwork + is specified, this must match ContainerPort. Most containers + do not need this. + format: int32 + type: integer + name: + description: If specified, this must be an IANA_SVC_NAME + and unique within the pod. Each named port in a pod must + have a unique name. Name for the port that can be referred + to by services. + type: string + protocol: + description: Protocol for port. Must be UDP, TCP, or SCTP. + Defaults to "TCP". + type: string + required: + - containerPort + type: object + type: array + readinessProbe: + description: 'Periodic probe of container service readiness. Container + will be removed from service endpoints if the probe fails. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + resources: + description: 'Compute Resources required by this container. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute + resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute + resources required. If Requests is omitted for a container, + it defaults to Limits if that is explicitly specified, otherwise + to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + securityContext: + description: 'Security options the pod should run with. More info: + https://kubernetes.io/docs/concepts/policy/security-context/ + More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/' + properties: + allowPrivilegeEscalation: + description: 'AllowPrivilegeEscalation controls whether a + process can gain more privileges than its parent process. + This bool directly controls if the no_new_privs flag will + be set on the container process. AllowPrivilegeEscalation + is true always when the container is: 1) run as Privileged + 2) has CAP_SYS_ADMIN' + type: boolean + capabilities: + description: The capabilities to add/drop when running containers. + Defaults to the default set of capabilities granted by the + container runtime. + properties: + add: + description: Added capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + drop: + description: Removed capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + type: object + privileged: + description: Run container in privileged mode. Processes in + privileged containers are essentially equivalent to root + on the host. Defaults to false. + type: boolean + procMount: + description: procMount denotes the type of proc mount to use + for the containers. The default is DefaultProcMount which + uses the container runtime defaults for readonly paths and + masked paths. This requires the ProcMountType feature flag + to be enabled. + type: string + readOnlyRootFilesystem: + description: Whether this container has a read-only root filesystem. + Default is false. + type: boolean + runAsGroup: + description: The GID to run the entrypoint of the container + process. Uses runtime default if unset. May also be set + in PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + format: int64 + type: integer + runAsNonRoot: + description: Indicates that the container must run as a non-root + user. If true, the Kubelet will validate the image at runtime + to ensure that it does not run as UID 0 (root) and fail + to start the container if it does. If unset or false, no + such validation will be performed. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + type: boolean + runAsUser: + description: The UID to run the entrypoint of the container + process. Defaults to user specified in image metadata if + unspecified. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + format: int64 + type: integer + seLinuxOptions: + description: The SELinux context to be applied to the container. + If unspecified, the container runtime will allocate a random + SELinux context for each container. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + properties: + level: + description: Level is SELinux level label that applies + to the container. + type: string + role: + description: Role is a SELinux role label that applies + to the container. + type: string + type: + description: Type is a SELinux type label that applies + to the container. + type: string + user: + description: User is a SELinux user label that applies + to the container. + type: string + type: object + windowsOptions: + description: The Windows specific settings applied to all + containers. If unspecified, the options from the PodSecurityContext + will be used. If set in both SecurityContext and PodSecurityContext, + the value specified in SecurityContext takes precedence. + properties: + gmsaCredentialSpec: + description: GMSACredentialSpec is where the GMSA admission + webhook (https://github.com/kubernetes-sigs/windows-gmsa) + inlines the contents of the GMSA credential spec named + by the GMSACredentialSpecName field. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + gmsaCredentialSpecName: + description: GMSACredentialSpecName is the name of the + GMSA credential spec to use. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + runAsUserName: + description: The UserName in Windows to run the entrypoint + of the container process. Defaults to the user specified + in image metadata if unspecified. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. This field is beta-level and may be + disabled with the WindowsRunAsUserName feature flag. + type: string + type: object + type: object + startupProbe: + description: 'StartupProbe indicates that the Pod has successfully + initialized. If specified, no other probes are executed until + this completes successfully. If this probe fails, the Pod will + be restarted, just as if the livenessProbe failed. This can + be used to provide different probe parameters at the beginning + of a Pod''s lifecycle, when it might take a long time to load + data or warm a cache, than during steady-state operation. This + cannot be updated. This is an alpha feature enabled by the StartupProbe + feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + stdin: + description: Whether this container should allocate a buffer for + stdin in the container runtime. If this is not set, reads from + stdin in the container will always result in EOF. Default is + false. + type: boolean + stdinOnce: + description: Whether the container runtime should close the stdin + channel after it has been opened by a single attach. When stdin + is true the stdin stream will remain open across multiple attach + sessions. If stdinOnce is set to true, stdin is opened on container + start, is empty until the first client attaches to stdin, and + then remains open and accepts data until the client disconnects, + at which time stdin is closed and remains closed until the container + is restarted. If this flag is false, a container processes that + reads from stdin will never receive an EOF. Default is false + type: boolean + terminationMessagePath: + description: 'Optional: Path at which the file to which the container''s + termination message will be written is mounted into the container''s + filesystem. Message written is intended to be brief final status, + such as an assertion failure message. Will be truncated by the + node if greater than 4096 bytes. The total message length across + all containers will be limited to 12kb. Defaults to /dev/termination-log. + Cannot be updated.' + type: string + terminationMessagePolicy: + description: Indicate how the termination message should be populated. + File will use the contents of terminationMessagePath to populate + the container status message on both success and failure. FallbackToLogsOnError + will use the last chunk of container log output if the termination + message file is empty and the container exited with an error. + The log output is limited to 2048 bytes or 80 lines, whichever + is smaller. Defaults to File. Cannot be updated. + type: string + tty: + description: Whether this container should allocate a TTY for + itself, also requires 'stdin' to be true. Default is false. + type: boolean + volumeDevices: + description: volumeDevices is the list of block devices to be + used by the container. This is a beta feature. + items: + description: volumeDevice describes a mapping of a raw block + device within a container. + properties: + devicePath: + description: devicePath is the path inside of the container + that the device will be mapped to. + type: string + name: + description: name must match the name of a persistentVolumeClaim + in the pod + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + description: Pod volumes to mount into the container's filesystem. + Cannot be updated. + items: + description: VolumeMount describes a mounting of a Volume within + a container. + properties: + mountPath: + description: Path within the container at which the volume + should be mounted. Must not contain ':'. + type: string + mountPropagation: + description: mountPropagation determines how mounts are + propagated from the host to container and the other way + around. When not set, MountPropagationNone is used. This + field is beta in 1.10. + type: string + name: + description: This must match the Name of a Volume. + type: string + readOnly: + description: Mounted read-only if true, read-write otherwise + (false or unspecified). Defaults to false. + type: boolean + subPath: + description: Path within the volume from which the container's + volume should be mounted. Defaults to "" (volume's root). + type: string + subPathExpr: + description: Expanded path within the volume from which + the container's volume should be mounted. Behaves similarly + to SubPath but environment variable references $(VAR_NAME) + are expanded using the container's environment. Defaults + to "" (volume's root). SubPathExpr and SubPath are mutually + exclusive. + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + description: Container's working directory. If not specified, + the container runtime's default will be used, which might be + configured in the container image. Cannot be updated. + type: string + required: + - name + type: object + type: array + listenLocal: + description: ListenLocal makes the Alertmanager server listen on loopback, + so that it does not bind against the Pod IP. Note this is only for + the Alertmanager UI, not the gossip communication. + type: boolean + logFormat: + description: Log format for Alertmanager to be configured with. + type: string + logLevel: + description: Log level for Alertmanager to be configured with. + type: string + nodeSelector: + additionalProperties: + type: string + description: Define which Nodes the Pods are scheduled on. + type: object + paused: + description: If set to true all actions on the underlaying managed objects + are not goint to be performed, except for delete actions. + type: boolean + podMetadata: + description: PodMetadata configures Labels and Annotations which are + propagated to the alertmanager pods. + properties: + annotations: + additionalProperties: + type: string + description: 'Annotations is an unstructured key value map stored + with a resource that may be set by external tools to store and + retrieve arbitrary metadata. They are not queryable and should + be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations' + type: object + labels: + additionalProperties: + type: string + description: 'Map of string keys and values that can be used to + organize and categorize (scope and select) objects. May match + selectors of replication controllers and services. More info: + http://kubernetes.io/docs/user-guide/labels' + type: object + type: object + portName: + description: Port name used for the pods and governing service. This + defaults to web + type: string + priorityClassName: + description: Priority class assigned to the Pods + type: string + replicas: + description: Size is the expected size of the alertmanager cluster. + The controller will eventually make the size of the running cluster + equal to the expected size. + format: int32 + type: integer + resources: + description: Define resources requests and limits for single Pods. + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute resources + allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute resources + required. If Requests is omitted for a container, it defaults + to Limits if that is explicitly specified, otherwise to an implementation-defined + value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + retention: + description: Time duration Alertmanager shall retain data for. Default + is '120h', and must match the regular expression `[0-9]+(ms|s|m|h)` + (milliseconds seconds minutes hours). + type: string + routePrefix: + description: The route prefix Alertmanager registers HTTP handlers for. + This is useful, if using ExternalURL and a proxy is rewriting HTTP + routes of a request, and the actual ExternalURL is still true, but + the server serves requests under a different route prefix. For example + for use with `kubectl proxy`. + type: string + secrets: + description: Secrets is a list of Secrets in the same namespace as the + Alertmanager object, which shall be mounted into the Alertmanager + Pods. The Secrets are mounted into /etc/alertmanager/secrets/. + items: + type: string + type: array + securityContext: + description: SecurityContext holds pod-level security attributes and + common container settings. This defaults to the default PodSecurityContext. + properties: + fsGroup: + description: "A special supplemental group that applies to all containers + in a pod. Some volume types allow the Kubelet to change the ownership + of that volume to be owned by the pod: \n 1. The owning GID will + be the FSGroup 2. The setgid bit is set (new files created in + the volume will be owned by FSGroup) 3. The permission bits are + OR'd with rw-rw---- \n If unset, the Kubelet will not modify the + ownership and permissions of any volume." + format: int64 + type: integer + runAsGroup: + description: The GID to run the entrypoint of the container process. + Uses runtime default if unset. May also be set in SecurityContext. If + set in both SecurityContext and PodSecurityContext, the value + specified in SecurityContext takes precedence for that container. + format: int64 + type: integer + runAsNonRoot: + description: Indicates that the container must run as a non-root + user. If true, the Kubelet will validate the image at runtime + to ensure that it does not run as UID 0 (root) and fail to start + the container if it does. If unset or false, no such validation + will be performed. May also be set in SecurityContext. If set + in both SecurityContext and PodSecurityContext, the value specified + in SecurityContext takes precedence. + type: boolean + runAsUser: + description: The UID to run the entrypoint of the container process. + Defaults to user specified in image metadata if unspecified. May + also be set in SecurityContext. If set in both SecurityContext + and PodSecurityContext, the value specified in SecurityContext + takes precedence for that container. + format: int64 + type: integer + seLinuxOptions: + description: The SELinux context to be applied to all containers. + If unspecified, the container runtime will allocate a random SELinux + context for each container. May also be set in SecurityContext. If + set in both SecurityContext and PodSecurityContext, the value + specified in SecurityContext takes precedence for that container. + properties: + level: + description: Level is SELinux level label that applies to the + container. + type: string + role: + description: Role is a SELinux role label that applies to the + container. + type: string + type: + description: Type is a SELinux type label that applies to the + container. + type: string + user: + description: User is a SELinux user label that applies to the + container. + type: string + type: object + supplementalGroups: + description: A list of groups applied to the first process run in + each container, in addition to the container's primary GID. If + unspecified, no groups will be added to any container. + items: + format: int64 + type: integer + type: array + sysctls: + description: Sysctls hold a list of namespaced sysctls used for + the pod. Pods with unsupported sysctls (by the container runtime) + might fail to launch. + items: + description: Sysctl defines a kernel parameter to be set + properties: + name: + description: Name of a property to set + type: string + value: + description: Value of a property to set + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + description: The Windows specific settings applied to all containers. + If unspecified, the options within a container's SecurityContext + will be used. If set in both SecurityContext and PodSecurityContext, + the value specified in SecurityContext takes precedence. + properties: + gmsaCredentialSpec: + description: GMSACredentialSpec is where the GMSA admission + webhook (https://github.com/kubernetes-sigs/windows-gmsa) + inlines the contents of the GMSA credential spec named by + the GMSACredentialSpecName field. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + gmsaCredentialSpecName: + description: GMSACredentialSpecName is the name of the GMSA + credential spec to use. This field is alpha-level and is only + honored by servers that enable the WindowsGMSA feature flag. + type: string + runAsUserName: + description: The UserName in Windows to run the entrypoint of + the container process. Defaults to the user specified in image + metadata if unspecified. May also be set in PodSecurityContext. + If set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. This + field is beta-level and may be disabled with the WindowsRunAsUserName + feature flag. + type: string + type: object + type: object + serviceAccountName: + description: ServiceAccountName is the name of the ServiceAccount to + use to run the Prometheus Pods. + type: string + sha: + description: SHA of Alertmanager container image to be deployed. Defaults + to the value of `version`. Similar to a tag, but the SHA explicitly + deploys an immutable container image. Version and Tag are ignored + if SHA is set. + type: string + storage: + description: Storage is the definition of how storage will be used by + the Alertmanager instances. + properties: + emptyDir: + description: 'EmptyDirVolumeSource to be used by the Prometheus + StatefulSets. If specified, used in place of any volumeClaimTemplate. + More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir' + properties: + medium: + description: 'What type of storage medium should back this directory. + The default is "" which means to use the node''s default medium. + Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' + type: string + sizeLimit: + description: 'Total amount of local storage required for this + EmptyDir volume. The size limit is also applicable for memory + medium. The maximum usage on memory medium EmptyDir would + be the minimum value between the SizeLimit specified here + and the sum of memory limits of all containers in a pod. The + default is nil which means that the limit is undefined. More + info: http://kubernetes.io/docs/user-guide/volumes#emptydir' + type: string + type: object + volumeClaimTemplate: + description: A PVC spec to be used by the Prometheus StatefulSets. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this + representation of an object. Servers should convert recognized + schemas to the latest internal value, and may reject unrecognized + values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource + this object represents. Servers may infer this from the endpoint + the client submits requests to. Cannot be updated. In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + description: 'Standard object''s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata' + type: object + spec: + description: 'Spec defines the desired characteristics of a + volume requested by a pod author. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + properties: + accessModes: + description: 'AccessModes contains the desired access modes + the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1' + items: + type: string + type: array + dataSource: + description: This field requires the VolumeSnapshotDataSource + alpha feature gate to be enabled and currently VolumeSnapshot + is the only supported data source. If the provisioner + can support VolumeSnapshot data source, it will create + a new volume and data will be restored to the volume at + the same time. If the provisioner does not support VolumeSnapshot + data source, volume will not be created and the failure + will be reported as an event. In the future, we plan to + support more data source types and the behavior of the + provisioner may change. + properties: + apiGroup: + description: APIGroup is the group for the resource + being referenced. If APIGroup is not specified, the + specified Kind must be in the core API group. For + any other third-party types, APIGroup is required. + type: string + kind: + description: Kind is the type of resource being referenced + type: string + name: + description: Name is the name of resource being referenced + type: string + required: + - kind + - name + type: object + resources: + description: 'Resources represents the minimum resources + the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of + compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount + of compute resources required. If Requests is omitted + for a container, it defaults to Limits if that is + explicitly specified, otherwise to an implementation-defined + value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + selector: + description: A label query over volumes to consider for + binding. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be empty. + This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + storageClassName: + description: 'Name of the StorageClass required by the claim. + More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' + type: string + volumeMode: + description: volumeMode defines what type of volume is required + by the claim. Value of Filesystem is implied when not + included in claim spec. This is a beta feature. + type: string + volumeName: + description: VolumeName is the binding reference to the + PersistentVolume backing this claim. + type: string + type: object + status: + description: 'Status represents the current information/status + of a persistent volume claim. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + properties: + accessModes: + description: 'AccessModes contains the actual access modes + the volume backing the PVC has. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1' + items: + type: string + type: array + capacity: + additionalProperties: + type: string + description: Represents the actual resources of the underlying + volume. + type: object + conditions: + description: Current Condition of persistent volume claim. + If underlying persistent volume is being resized then + the Condition will be set to 'ResizeStarted'. + items: + description: PersistentVolumeClaimCondition contails details + about state of pvc + properties: + lastProbeTime: + description: Last time we probed the condition. + format: date-time + type: string + lastTransitionTime: + description: Last time the condition transitioned + from one status to another. + format: date-time + type: string + message: + description: Human-readable message indicating details + about last transition. + type: string + reason: + description: Unique, this should be a short, machine + understandable string that gives the reason for + condition's last transition. If it reports "ResizeStarted" + that means the underlying persistent volume is being + resized. + type: string + status: + type: string + type: + description: PersistentVolumeClaimConditionType is + a valid value of PersistentVolumeClaimCondition.Type + type: string + required: + - status + - type + type: object + type: array + phase: + description: Phase represents the current phase of PersistentVolumeClaim. + type: string + type: object + type: object + type: object + tag: + description: Tag of Alertmanager container image to be deployed. Defaults + to the value of `version`. Version is ignored if Tag is set. + type: string + tolerations: + description: If specified, the pod's tolerations. + items: + description: The pod this Toleration is attached to tolerates any + taint that matches the triple using the matching + operator . + properties: + effect: + description: Effect indicates the taint effect to match. Empty + means match all taint effects. When specified, allowed values + are NoSchedule, PreferNoSchedule and NoExecute. + type: string + key: + description: Key is the taint key that the toleration applies + to. Empty means match all taint keys. If the key is empty, operator + must be Exists; this combination means to match all values and + all keys. + type: string + operator: + description: Operator represents a key's relationship to the value. + Valid operators are Exists and Equal. Defaults to Equal. Exists + is equivalent to wildcard for value, so that a pod can tolerate + all taints of a particular category. + type: string + tolerationSeconds: + description: TolerationSeconds represents the period of time the + toleration (which must be of effect NoExecute, otherwise this + field is ignored) tolerates the taint. By default, it is not + set, which means tolerate the taint forever (do not evict). + Zero and negative values will be treated as 0 (evict immediately) + by the system. + format: int64 + type: integer + value: + description: Value is the taint value the toleration matches to. + If the operator is Exists, the value should be empty, otherwise + just a regular string. + type: string + type: object + type: array + version: + description: Version the cluster should be on. + type: string + volumeMounts: + description: VolumeMounts allows configuration of additional VolumeMounts + on the output StatefulSet definition. VolumeMounts specified will + be appended to other VolumeMounts in the alertmanager container, that + are generated as a result of StorageSpec objects. + items: + description: VolumeMount describes a mounting of a Volume within a + container. + properties: + mountPath: + description: Path within the container at which the volume should + be mounted. Must not contain ':'. + type: string + mountPropagation: + description: mountPropagation determines how mounts are propagated + from the host to container and the other way around. When not + set, MountPropagationNone is used. This field is beta in 1.10. + type: string + name: + description: This must match the Name of a Volume. + type: string + readOnly: + description: Mounted read-only if true, read-write otherwise (false + or unspecified). Defaults to false. + type: boolean + subPath: + description: Path within the volume from which the container's + volume should be mounted. Defaults to "" (volume's root). + type: string + subPathExpr: + description: Expanded path within the volume from which the container's + volume should be mounted. Behaves similarly to SubPath but environment + variable references $(VAR_NAME) are expanded using the container's + environment. Defaults to "" (volume's root). SubPathExpr and + SubPath are mutually exclusive. + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + description: Volumes allows configuration of additional volumes on the + output StatefulSet definition. Volumes specified will be appended + to other volumes that are generated as a result of StorageSpec objects. + items: + description: Volume represents a named volume in a pod that may be + accessed by any container in the pod. + properties: + awsElasticBlockStore: + description: 'AWSElasticBlockStore represents an AWS Disk resource + that is attached to a kubelet''s host machine and then exposed + to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' + properties: + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + partition: + description: 'The partition in the volume that you want to + mount. If omitted, the default is to mount by volume name. + Examples: For volume /dev/sda1, you specify the partition + as "1". Similarly, the volume partition for /dev/sda is + "0" (or you can leave the property empty).' + format: int32 + type: integer + readOnly: + description: 'Specify "true" to force and set the ReadOnly + property in VolumeMounts to "true". If omitted, the default + is "false". More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' + type: boolean + volumeID: + description: 'Unique ID of the persistent disk resource in + AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' + type: string + required: + - volumeID + type: object + azureDisk: + description: AzureDisk represents an Azure Data Disk mount on + the host and bind mount to the pod. + properties: + cachingMode: + description: 'Host Caching mode: None, Read Only, Read Write.' + type: string + diskName: + description: The Name of the data disk in the blob storage + type: string + diskURI: + description: The URI the data disk in the blob storage + type: string + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + kind: + description: 'Expected values Shared: multiple blob disks + per storage account Dedicated: single blob disk per storage + account Managed: azure managed data disk (only in managed + availability set). defaults to shared' + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + description: AzureFile represents an Azure File Service mount + on the host and bind mount to the pod. + properties: + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + secretName: + description: the name of secret that contains Azure Storage + Account Name and Key + type: string + shareName: + description: Share Name + type: string + required: + - secretName + - shareName + type: object + cephfs: + description: CephFS represents a Ceph FS mount on the host that + shares a pod's lifetime + properties: + monitors: + description: 'Required: Monitors is a collection of Ceph monitors + More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + items: + type: string + type: array + path: + description: 'Optional: Used as the mounted root, rather than + the full Ceph tree, default is /' + type: string + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts. More + info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + type: boolean + secretFile: + description: 'Optional: SecretFile is the path to key ring + for User, default is /etc/ceph/user.secret More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + type: string + secretRef: + description: 'Optional: SecretRef is reference to the authentication + secret for User, default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + user: + description: 'Optional: User is the rados user name, default + is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + type: string + required: + - monitors + type: object + cinder: + description: 'Cinder represents a cinder volume attached and mounted + on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md' + properties: + fsType: + description: 'Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Examples: "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + More info: https://examples.k8s.io/mysql-cinder-pd/README.md' + type: string + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts. More + info: https://examples.k8s.io/mysql-cinder-pd/README.md' + type: boolean + secretRef: + description: 'Optional: points to a secret object containing + parameters used to connect to OpenStack.' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + volumeID: + description: 'volume id used to identify the volume in cinder. + More info: https://examples.k8s.io/mysql-cinder-pd/README.md' + type: string + required: + - volumeID + type: object + configMap: + description: ConfigMap represents a configMap that should populate + this volume + properties: + defaultMode: + description: 'Optional: mode bits to use on created files + by default. Must be a value between 0 and 0777. Defaults + to 0644. Directories within the path are not affected by + this setting. This might be in conflict with other options + that affect the file mode, like fsGroup, and the result + can be other mode bits set.' + format: int32 + type: integer + items: + description: If unspecified, each key-value pair in the Data + field of the referenced ConfigMap will be projected into + the volume as a file whose name is the key and content is + the value. If specified, the listed keys will be projected + into the specified paths, and unlisted keys will not be + present. If a key is specified which is not present in the + ConfigMap, the volume setup will error unless it is marked + optional. Paths must be relative and may not contain the + '..' path or start with '..'. + items: + description: Maps a string key to a path within a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on this file, + must be a value between 0 and 0777. If not specified, + the volume defaultMode will be used. This might be + in conflict with other options that affect the file + mode, like fsGroup, and the result can be other mode + bits set.' + format: int32 + type: integer + path: + description: The relative path of the file to map the + key to. May not be an absolute path. May not contain + the path element '..'. May not start with the string + '..'. + type: string + required: + - key + - path + type: object + type: array + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap or its keys must + be defined + type: boolean + type: object + csi: + description: CSI (Container Storage Interface) represents storage + that is handled by an external CSI driver (Alpha feature). + properties: + driver: + description: Driver is the name of the CSI driver that handles + this volume. Consult with your admin for the correct name + as registered in the cluster. + type: string + fsType: + description: Filesystem type to mount. Ex. "ext4", "xfs", + "ntfs". If not provided, the empty value is passed to the + associated CSI driver which will determine the default filesystem + to apply. + type: string + nodePublishSecretRef: + description: NodePublishSecretRef is a reference to the secret + object containing sensitive information to pass to the CSI + driver to complete the CSI NodePublishVolume and NodeUnpublishVolume + calls. This field is optional, and may be empty if no secret + is required. If the secret object contains more than one + secret, all secret references are passed. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + readOnly: + description: Specifies a read-only configuration for the volume. + Defaults to false (read/write). + type: boolean + volumeAttributes: + additionalProperties: + type: string + description: VolumeAttributes stores driver-specific properties + that are passed to the CSI driver. Consult your driver's + documentation for supported values. + type: object + required: + - driver + type: object + downwardAPI: + description: DownwardAPI represents downward API about the pod + that should populate this volume + properties: + defaultMode: + description: 'Optional: mode bits to use on created files + by default. Must be a value between 0 and 0777. Defaults + to 0644. Directories within the path are not affected by + this setting. This might be in conflict with other options + that affect the file mode, like fsGroup, and the result + can be other mode bits set.' + format: int32 + type: integer + items: + description: Items is a list of downward API volume file + items: + description: DownwardAPIVolumeFile represents information + to create the file containing the pod field + properties: + fieldRef: + description: 'Required: Selects a field of the pod: + only annotations, labels, name and namespace are supported.' + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in the + specified API version. + type: string + required: + - fieldPath + type: object + mode: + description: 'Optional: mode bits to use on this file, + must be a value between 0 and 0777. If not specified, + the volume defaultMode will be used. This might be + in conflict with other options that affect the file + mode, like fsGroup, and the result can be other mode + bits set.' + format: int32 + type: integer + path: + description: 'Required: Path is the relative path name + of the file to be created. Must not be absolute or + contain the ''..'' path. Must be utf-8 encoded. The + first item of the relative path must not start with + ''..''' + type: string + resourceFieldRef: + description: 'Selects a resource of the container: only + resources limits and requests (limits.cpu, limits.memory, + requests.cpu and requests.memory) are currently supported.' + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + description: Specifies the output format of the + exposed resources, defaults to "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + emptyDir: + description: 'EmptyDir represents a temporary directory that shares + a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' + properties: + medium: + description: 'What type of storage medium should back this + directory. The default is "" which means to use the node''s + default medium. Must be an empty string (default) or Memory. + More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' + type: string + sizeLimit: + description: 'Total amount of local storage required for this + EmptyDir volume. The size limit is also applicable for memory + medium. The maximum usage on memory medium EmptyDir would + be the minimum value between the SizeLimit specified here + and the sum of memory limits of all containers in a pod. + The default is nil which means that the limit is undefined. + More info: http://kubernetes.io/docs/user-guide/volumes#emptydir' + type: string + type: object + fc: + description: FC represents a Fibre Channel resource that is attached + to a kubelet's host machine and then exposed to the pod. + properties: + fsType: + description: 'Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + lun: + description: 'Optional: FC target lun number' + format: int32 + type: integer + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts.' + type: boolean + targetWWNs: + description: 'Optional: FC target worldwide names (WWNs)' + items: + type: string + type: array + wwids: + description: 'Optional: FC volume world wide identifiers (wwids) + Either wwids or combination of targetWWNs and lun must be + set, but not both simultaneously.' + items: + type: string + type: array + type: object + flexVolume: + description: FlexVolume represents a generic volume resource that + is provisioned/attached using an exec based plugin. + properties: + driver: + description: Driver is the name of the driver to use for this + volume. + type: string + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". The default filesystem depends on FlexVolume + script. + type: string + options: + additionalProperties: + type: string + description: 'Optional: Extra command options if any.' + type: object + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts.' + type: boolean + secretRef: + description: 'Optional: SecretRef is reference to the secret + object containing sensitive information to pass to the plugin + scripts. This may be empty if no secret object is specified. + If the secret object contains more than one secret, all + secrets are passed to the plugin scripts.' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + required: + - driver + type: object + flocker: + description: Flocker represents a Flocker volume attached to a + kubelet's host machine. This depends on the Flocker control + service being running + properties: + datasetName: + description: Name of the dataset stored as metadata -> name + on the dataset for Flocker should be considered as deprecated + type: string + datasetUUID: + description: UUID of the dataset. This is unique identifier + of a Flocker dataset + type: string + type: object + gcePersistentDisk: + description: 'GCEPersistentDisk represents a GCE Disk resource + that is attached to a kubelet''s host machine and then exposed + to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + properties: + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + partition: + description: 'The partition in the volume that you want to + mount. If omitted, the default is to mount by volume name. + Examples: For volume /dev/sda1, you specify the partition + as "1". Similarly, the volume partition for /dev/sda is + "0" (or you can leave the property empty). More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + format: int32 + type: integer + pdName: + description: 'Unique name of the PD resource in GCE. Used + to identify the disk in GCE. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + type: string + readOnly: + description: 'ReadOnly here will force the ReadOnly setting + in VolumeMounts. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + type: boolean + required: + - pdName + type: object + gitRepo: + description: 'GitRepo represents a git repository at a particular + revision. DEPRECATED: GitRepo is deprecated. To provision a + container with a git repo, mount an EmptyDir into an InitContainer + that clones the repo using git, then mount the EmptyDir into + the Pod''s container.' + properties: + directory: + description: Target directory name. Must not contain or start + with '..'. If '.' is supplied, the volume directory will + be the git repository. Otherwise, if specified, the volume + will contain the git repository in the subdirectory with + the given name. + type: string + repository: + description: Repository URL + type: string + revision: + description: Commit hash for the specified revision. + type: string + required: + - repository + type: object + glusterfs: + description: 'Glusterfs represents a Glusterfs mount on the host + that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/glusterfs/README.md' + properties: + endpoints: + description: 'EndpointsName is the endpoint name that details + Glusterfs topology. More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod' + type: string + path: + description: 'Path is the Glusterfs volume path. More info: + https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod' + type: string + readOnly: + description: 'ReadOnly here will force the Glusterfs volume + to be mounted with read-only permissions. Defaults to false. + More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod' + type: boolean + required: + - endpoints + - path + type: object + hostPath: + description: 'HostPath represents a pre-existing file or directory + on the host machine that is directly exposed to the container. + This is generally used for system agents or other privileged + things that are allowed to see the host machine. Most containers + will NOT need this. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath + --- TODO(jonesdl) We need to restrict who can use host directory + mounts and who can/can not mount host directories as read/write.' + properties: + path: + description: 'Path of the directory on the host. If the path + is a symlink, it will follow the link to the real path. + More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath' + type: string + type: + description: 'Type for HostPath Volume Defaults to "" More + info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath' + type: string + required: + - path + type: object + iscsi: + description: 'ISCSI represents an ISCSI Disk resource that is + attached to a kubelet''s host machine and then exposed to the + pod. More info: https://examples.k8s.io/volumes/iscsi/README.md' + properties: + chapAuthDiscovery: + description: whether support iSCSI Discovery CHAP authentication + type: boolean + chapAuthSession: + description: whether support iSCSI Session CHAP authentication + type: boolean + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#iscsi + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + initiatorName: + description: Custom iSCSI Initiator Name. If initiatorName + is specified with iscsiInterface simultaneously, new iSCSI + interface : will be created + for the connection. + type: string + iqn: + description: Target iSCSI Qualified Name. + type: string + iscsiInterface: + description: iSCSI Interface Name that uses an iSCSI transport. + Defaults to 'default' (tcp). + type: string + lun: + description: iSCSI Target Lun number. + format: int32 + type: integer + portals: + description: iSCSI Target Portal List. The portal is either + an IP or ip_addr:port if the port is other than default + (typically TCP ports 860 and 3260). + items: + type: string + type: array + readOnly: + description: ReadOnly here will force the ReadOnly setting + in VolumeMounts. Defaults to false. + type: boolean + secretRef: + description: CHAP Secret for iSCSI target and initiator authentication + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + targetPortal: + description: iSCSI Target Portal. The Portal is either an + IP or ip_addr:port if the port is other than default (typically + TCP ports 860 and 3260). + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + description: 'Volume''s name. Must be a DNS_LABEL and unique within + the pod. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + nfs: + description: 'NFS represents an NFS mount on the host that shares + a pod''s lifetime More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + properties: + path: + description: 'Path that is exported by the NFS server. More + info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + type: string + readOnly: + description: 'ReadOnly here will force the NFS export to be + mounted with read-only permissions. Defaults to false. More + info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + type: boolean + server: + description: 'Server is the hostname or IP address of the + NFS server. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + description: 'PersistentVolumeClaimVolumeSource represents a reference + to a PersistentVolumeClaim in the same namespace. More info: + https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + properties: + claimName: + description: 'ClaimName is the name of a PersistentVolumeClaim + in the same namespace as the pod using this volume. More + info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + type: string + readOnly: + description: Will force the ReadOnly setting in VolumeMounts. + Default false. + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + description: PhotonPersistentDisk represents a PhotonController + persistent disk attached and mounted on kubelets host machine + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + pdID: + description: ID that identifies Photon Controller persistent + disk + type: string + required: + - pdID + type: object + portworxVolume: + description: PortworxVolume represents a portworx volume attached + and mounted on kubelets host machine + properties: + fsType: + description: FSType represents the filesystem type to mount + Must be a filesystem type supported by the host operating + system. Ex. "ext4", "xfs". Implicitly inferred to be "ext4" + if unspecified. + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + volumeID: + description: VolumeID uniquely identifies a Portworx volume + type: string + required: + - volumeID + type: object + projected: + description: Items for all in one resources secrets, configmaps, + and downward API + properties: + defaultMode: + description: Mode bits to use on created files by default. + Must be a value between 0 and 0777. Directories within the + path are not affected by this setting. This might be in + conflict with other options that affect the file mode, like + fsGroup, and the result can be other mode bits set. + format: int32 + type: integer + sources: + description: list of volume projections + items: + description: Projection that may be projected along with + other supported volume types + properties: + configMap: + description: information about the configMap data to + project + properties: + items: + description: If unspecified, each key-value pair + in the Data field of the referenced ConfigMap + will be projected into the volume as a file whose + name is the key and content is the value. If specified, + the listed keys will be projected into the specified + paths, and unlisted keys will not be present. + If a key is specified which is not present in + the ConfigMap, the volume setup will error unless + it is marked optional. Paths must be relative + and may not contain the '..' path or start with + '..'. + items: + description: Maps a string key to a path within + a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on + this file, must be a value between 0 and + 0777. If not specified, the volume defaultMode + will be used. This might be in conflict + with other options that affect the file + mode, like fsGroup, and the result can be + other mode bits set.' + format: int32 + type: integer + path: + description: The relative path of the file + to map the key to. May not be an absolute + path. May not contain the path element '..'. + May not start with the string '..'. + type: string + required: + - key + - path + type: object + type: array + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + keys must be defined + type: boolean + type: object + downwardAPI: + description: information about the downwardAPI data + to project + properties: + items: + description: Items is a list of DownwardAPIVolume + file + items: + description: DownwardAPIVolumeFile represents + information to create the file containing the + pod field + properties: + fieldRef: + description: 'Required: Selects a field of + the pod: only annotations, labels, name + and namespace are supported.' + properties: + apiVersion: + description: Version of the schema the + FieldPath is written in terms of, defaults + to "v1". + type: string + fieldPath: + description: Path of the field to select + in the specified API version. + type: string + required: + - fieldPath + type: object + mode: + description: 'Optional: mode bits to use on + this file, must be a value between 0 and + 0777. If not specified, the volume defaultMode + will be used. This might be in conflict + with other options that affect the file + mode, like fsGroup, and the result can be + other mode bits set.' + format: int32 + type: integer + path: + description: 'Required: Path is the relative + path name of the file to be created. Must + not be absolute or contain the ''..'' path. + Must be utf-8 encoded. The first item of + the relative path must not start with ''..''' + type: string + resourceFieldRef: + description: 'Selects a resource of the container: + only resources limits and requests (limits.cpu, + limits.memory, requests.cpu and requests.memory) + are currently supported.' + properties: + containerName: + description: 'Container name: required + for volumes, optional for env vars' + type: string + divisor: + description: Specifies the output format + of the exposed resources, defaults to + "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + secret: + description: information about the secret data to project + properties: + items: + description: If unspecified, each key-value pair + in the Data field of the referenced Secret will + be projected into the volume as a file whose name + is the key and content is the value. If specified, + the listed keys will be projected into the specified + paths, and unlisted keys will not be present. + If a key is specified which is not present in + the Secret, the volume setup will error unless + it is marked optional. Paths must be relative + and may not contain the '..' path or start with + '..'. + items: + description: Maps a string key to a path within + a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on + this file, must be a value between 0 and + 0777. If not specified, the volume defaultMode + will be used. This might be in conflict + with other options that affect the file + mode, like fsGroup, and the result can be + other mode bits set.' + format: int32 + type: integer + path: + description: The relative path of the file + to map the key to. May not be an absolute + path. May not contain the path element '..'. + May not start with the string '..'. + type: string + required: + - key + - path + type: object + type: array + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + type: object + serviceAccountToken: + description: information about the serviceAccountToken + data to project + properties: + audience: + description: Audience is the intended audience of + the token. A recipient of a token must identify + itself with an identifier specified in the audience + of the token, and otherwise should reject the + token. The audience defaults to the identifier + of the apiserver. + type: string + expirationSeconds: + description: ExpirationSeconds is the requested + duration of validity of the service account token. + As the token approaches expiration, the kubelet + volume plugin will proactively rotate the service + account token. The kubelet will start trying to + rotate the token if the token is older than 80 + percent of its time to live or if the token is + older than 24 hours.Defaults to 1 hour and must + be at least 10 minutes. + format: int64 + type: integer + path: + description: Path is the path relative to the mount + point of the file to project the token into. + type: string + required: + - path + type: object + type: object + type: array + required: + - sources + type: object + quobyte: + description: Quobyte represents a Quobyte mount on the host that + shares a pod's lifetime + properties: + group: + description: Group to map volume access to Default is no group + type: string + readOnly: + description: ReadOnly here will force the Quobyte volume to + be mounted with read-only permissions. Defaults to false. + type: boolean + registry: + description: Registry represents a single or multiple Quobyte + Registry services specified as a string as host:port pair + (multiple entries are separated with commas) which acts + as the central registry for volumes + type: string + tenant: + description: Tenant owning the given Quobyte volume in the + Backend Used with dynamically provisioned Quobyte volumes, + value is set by the plugin + type: string + user: + description: User to map volume access to Defaults to serivceaccount + user + type: string + volume: + description: Volume is a string that references an already + created Quobyte volume by name. + type: string + required: + - registry + - volume + type: object + rbd: + description: 'RBD represents a Rados Block Device mount on the + host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md' + properties: + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#rbd + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + image: + description: 'The rados image name. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + keyring: + description: 'Keyring is the path to key ring for RBDUser. + Default is /etc/ceph/keyring. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + monitors: + description: 'A collection of Ceph monitors. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + items: + type: string + type: array + pool: + description: 'The rados pool name. Default is rbd. More info: + https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + readOnly: + description: 'ReadOnly here will force the ReadOnly setting + in VolumeMounts. Defaults to false. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: boolean + secretRef: + description: 'SecretRef is name of the authentication secret + for RBDUser. If provided overrides keyring. Default is nil. + More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + user: + description: 'The rados user name. Default is admin. More + info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + required: + - image + - monitors + type: object + scaleIO: + description: ScaleIO represents a ScaleIO persistent volume attached + and mounted on Kubernetes nodes. + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Default is "xfs". + type: string + gateway: + description: The host address of the ScaleIO API Gateway. + type: string + protectionDomain: + description: The name of the ScaleIO Protection Domain for + the configured storage. + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + secretRef: + description: SecretRef references to the secret for ScaleIO + user and other sensitive information. If this is not provided, + Login operation will fail. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + sslEnabled: + description: Flag to enable/disable SSL communication with + Gateway, default false + type: boolean + storageMode: + description: Indicates whether the storage for a volume should + be ThickProvisioned or ThinProvisioned. Default is ThinProvisioned. + type: string + storagePool: + description: The ScaleIO Storage Pool associated with the + protection domain. + type: string + system: + description: The name of the storage system as configured + in ScaleIO. + type: string + volumeName: + description: The name of a volume already created in the ScaleIO + system that is associated with this volume source. + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + description: 'Secret represents a secret that should populate + this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret' + properties: + defaultMode: + description: 'Optional: mode bits to use on created files + by default. Must be a value between 0 and 0777. Defaults + to 0644. Directories within the path are not affected by + this setting. This might be in conflict with other options + that affect the file mode, like fsGroup, and the result + can be other mode bits set.' + format: int32 + type: integer + items: + description: If unspecified, each key-value pair in the Data + field of the referenced Secret will be projected into the + volume as a file whose name is the key and content is the + value. If specified, the listed keys will be projected into + the specified paths, and unlisted keys will not be present. + If a key is specified which is not present in the Secret, + the volume setup will error unless it is marked optional. + Paths must be relative and may not contain the '..' path + or start with '..'. + items: + description: Maps a string key to a path within a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on this file, + must be a value between 0 and 0777. If not specified, + the volume defaultMode will be used. This might be + in conflict with other options that affect the file + mode, like fsGroup, and the result can be other mode + bits set.' + format: int32 + type: integer + path: + description: The relative path of the file to map the + key to. May not be an absolute path. May not contain + the path element '..'. May not start with the string + '..'. + type: string + required: + - key + - path + type: object + type: array + optional: + description: Specify whether the Secret or its keys must be + defined + type: boolean + secretName: + description: 'Name of the secret in the pod''s namespace to + use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret' + type: string + type: object + storageos: + description: StorageOS represents a StorageOS volume attached + and mounted on Kubernetes nodes. + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + secretRef: + description: SecretRef specifies the secret to use for obtaining + the StorageOS API credentials. If not specified, default + values will be attempted. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + volumeName: + description: VolumeName is the human-readable name of the + StorageOS volume. Volume names are only unique within a + namespace. + type: string + volumeNamespace: + description: VolumeNamespace specifies the scope of the volume + within StorageOS. If no namespace is specified then the + Pod's namespace will be used. This allows the Kubernetes + name scoping to be mirrored within StorageOS for tighter + integration. Set VolumeName to any name to override the + default behaviour. Set to "default" if you are not using + namespaces within StorageOS. Namespaces that do not pre-exist + within StorageOS will be created. + type: string + type: object + vsphereVolume: + description: VsphereVolume represents a vSphere volume attached + and mounted on kubelets host machine + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + storagePolicyID: + description: Storage Policy Based Management (SPBM) profile + ID associated with the StoragePolicyName. + type: string + storagePolicyName: + description: Storage Policy Based Management (SPBM) profile + name. + type: string + volumePath: + description: Path that identifies vSphere volume vmdk + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + type: object + status: + description: 'Most recent observed status of the Alertmanager cluster. Read-only. + Not included when requesting from the apiserver, only from the Prometheus + Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' + properties: + availableReplicas: + description: Total number of available pods (ready for at least minReadySeconds) + targeted by this Alertmanager cluster. + format: int32 + type: integer + paused: + description: Represents whether any actions on the underlaying managed + objects are being performed. Only delete actions will be performed. + type: boolean + replicas: + description: Total number of non-terminated pods targeted by this Alertmanager + cluster (their labels match the selector). + format: int32 + type: integer + unavailableReplicas: + description: Total number of unavailable pods targeted by this Alertmanager + cluster. + format: int32 + type: integer + updatedReplicas: + description: Total number of non-terminated pods targeted by this Alertmanager + cluster that have the desired version spec. + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/crd-manifest/crd-alertmanager.yaml + - content: | + # https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.38/example/prometheus-operator-crd/monitoring.coreos.com_podmonitors.yaml + apiVersion: apiextensions.k8s.io/v1beta1 + kind: CustomResourceDefinition + metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.2.4 + creationTimestamp: null + name: podmonitors.monitoring.coreos.com + spec: + group: monitoring.coreos.com + names: + kind: PodMonitor + listKind: PodMonitorList + plural: podmonitors + singular: podmonitor + preserveUnknownFields: false + scope: Namespaced + validation: + openAPIV3Schema: + description: PodMonitor defines monitoring for a set of pods. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: Specification of desired Pod selection for target discovery + by Prometheus. + properties: + jobLabel: + description: The label to use to retrieve the job name from. + type: string + namespaceSelector: + description: Selector to select which namespaces the Endpoints objects + are discovered from. + properties: + any: + description: Boolean describing whether all namespaces are selected + in contrast to a list restricting them. + type: boolean + matchNames: + description: List of namespace names. + items: + type: string + type: array + type: object + podMetricsEndpoints: + description: A list of endpoints allowed as part of this PodMonitor. + items: + description: PodMetricsEndpoint defines a scrapeable endpoint of a + Kubernetes Pod serving Prometheus metrics. + properties: + honorLabels: + description: HonorLabels chooses the metric's labels on collisions + with target labels. + type: boolean + honorTimestamps: + description: HonorTimestamps controls whether Prometheus respects + the timestamps present in scraped data. + type: boolean + interval: + description: Interval at which metrics should be scraped + type: string + metricRelabelings: + description: MetricRelabelConfigs to apply to samples before ingestion. + items: + description: 'RelabelConfig allows dynamic rewriting of the + label set, being applied to samples before ingestion. It defines + ``-section of Prometheus configuration. + More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs' + properties: + action: + description: Action to perform based on regex matching. + Default is 'replace' + type: string + modulus: + description: Modulus to take of the hash of the source label + values. + format: int64 + type: integer + regex: + description: Regular expression against which the extracted + value is matched. Default is '(.*)' + type: string + replacement: + description: Replacement value against which a regex replace + is performed if the regular expression matches. Regex + capture groups are available. Default is '$1' + type: string + separator: + description: Separator placed between concatenated source + label values. default is ';'. + type: string + sourceLabels: + description: The source labels select values from existing + labels. Their content is concatenated using the configured + separator and matched against the configured regular expression + for the replace, keep, and drop actions. + items: + type: string + type: array + targetLabel: + description: Label to which the resulting value is written + in a replace action. It is mandatory for replace actions. + Regex capture groups are available. + type: string + type: object + type: array + params: + additionalProperties: + items: + type: string + type: array + description: Optional HTTP URL parameters + type: object + path: + description: HTTP path to scrape for metrics. + type: string + port: + description: Name of the pod port this endpoint refers to. Mutually + exclusive with targetPort. + type: string + proxyUrl: + description: ProxyURL eg http://proxyserver:2195 Directs scrapes + to proxy through this endpoint. + type: string + relabelings: + description: 'RelabelConfigs to apply to samples before ingestion. + More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config' + items: + description: 'RelabelConfig allows dynamic rewriting of the + label set, being applied to samples before ingestion. It defines + ``-section of Prometheus configuration. + More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs' + properties: + action: + description: Action to perform based on regex matching. + Default is 'replace' + type: string + modulus: + description: Modulus to take of the hash of the source label + values. + format: int64 + type: integer + regex: + description: Regular expression against which the extracted + value is matched. Default is '(.*)' + type: string + replacement: + description: Replacement value against which a regex replace + is performed if the regular expression matches. Regex + capture groups are available. Default is '$1' + type: string + separator: + description: Separator placed between concatenated source + label values. default is ';'. + type: string + sourceLabels: + description: The source labels select values from existing + labels. Their content is concatenated using the configured + separator and matched against the configured regular expression + for the replace, keep, and drop actions. + items: + type: string + type: array + targetLabel: + description: Label to which the resulting value is written + in a replace action. It is mandatory for replace actions. + Regex capture groups are available. + type: string + type: object + type: array + scheme: + description: HTTP scheme to use for scraping. + type: string + scrapeTimeout: + description: Timeout after which the scrape is ended + type: string + targetPort: + anyOf: + - type: integer + - type: string + description: 'Deprecated: Use ''port'' instead.' + x-kubernetes-int-or-string: true + type: object + type: array + podTargetLabels: + description: PodTargetLabels transfers labels on the Kubernetes Pod + onto the target. + items: + type: string + type: array + sampleLimit: + description: SampleLimit defines per-scrape limit on number of scraped + samples that will be accepted. + format: int64 + type: integer + selector: + description: Selector to select Pod objects. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + required: + - podMetricsEndpoints + - selector + type: object + required: + - spec + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/crd-manifest/crd-podmonitor.yaml + - content: | + # https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.38/example/prometheus-operator-crd/monitoring.coreos.com_prometheuses.yaml + apiVersion: apiextensions.k8s.io/v1beta1 + kind: CustomResourceDefinition + metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.2.4 + creationTimestamp: null + name: prometheuses.monitoring.coreos.com + spec: + additionalPrinterColumns: + - JSONPath: .spec.version + description: The version of Prometheus + name: Version + type: string + - JSONPath: .spec.replicas + description: The desired replicas number of Prometheuses + name: Replicas + type: integer + - JSONPath: .metadata.creationTimestamp + name: Age + type: date + group: monitoring.coreos.com + names: + kind: Prometheus + listKind: PrometheusList + plural: prometheuses + singular: prometheus + preserveUnknownFields: false + scope: Namespaced + subresources: {} + validation: + openAPIV3Schema: + description: Prometheus defines a Prometheus deployment. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: 'Specification of the desired behavior of the Prometheus cluster. + More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' + properties: + additionalAlertManagerConfigs: + description: 'AdditionalAlertManagerConfigs allows specifying a key + of a Secret containing additional Prometheus AlertManager configurations. + AlertManager configurations specified are appended to the configurations + generated by the Prometheus Operator. Job configurations specified + must have the form as specified in the official Prometheus documentation: + https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alertmanager_config. + As AlertManager configs are appended, the user is responsible to make + sure it is valid. Note that using this feature may expose the possibility + to break upgrades of Prometheus. It is advised to review Prometheus + release notes to ensure that no incompatible AlertManager configs + are going to break Prometheus after the upgrade.' + properties: + key: + description: The key of the secret to select from. Must be a valid + secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + additionalAlertRelabelConfigs: + description: 'AdditionalAlertRelabelConfigs allows specifying a key + of a Secret containing additional Prometheus alert relabel configurations. + Alert relabel configurations specified are appended to the configurations + generated by the Prometheus Operator. Alert relabel configurations + specified must have the form as specified in the official Prometheus + documentation: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#alert_relabel_configs. + As alert relabel configs are appended, the user is responsible to + make sure it is valid. Note that using this feature may expose the + possibility to break upgrades of Prometheus. It is advised to review + Prometheus release notes to ensure that no incompatible alert relabel + configs are going to break Prometheus after the upgrade.' + properties: + key: + description: The key of the secret to select from. Must be a valid + secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + additionalScrapeConfigs: + description: 'AdditionalScrapeConfigs allows specifying a key of a Secret + containing additional Prometheus scrape configurations. Scrape configurations + specified are appended to the configurations generated by the Prometheus + Operator. Job configurations specified must have the form as specified + in the official Prometheus documentation: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config. + As scrape configs are appended, the user is responsible to make sure + it is valid. Note that using this feature may expose the possibility + to break upgrades of Prometheus. It is advised to review Prometheus + release notes to ensure that no incompatible scrape configs are going + to break Prometheus after the upgrade.' + properties: + key: + description: The key of the secret to select from. Must be a valid + secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + affinity: + description: If specified, the pod's scheduling constraints. + properties: + nodeAffinity: + description: Describes node affinity scheduling rules for the pod. + properties: + preferredDuringSchedulingIgnoredDuringExecution: + description: The scheduler will prefer to schedule pods to nodes + that satisfy the affinity expressions specified by this field, + but it may choose a node that violates one or more of the + expressions. The node that is most preferred is the one with + the greatest sum of weights, i.e. for each node that meets + all of the scheduling requirements (resource request, requiredDuringScheduling + affinity expressions, etc.), compute a sum by iterating through + the elements of this field and adding "weight" to the sum + if the node matches the corresponding matchExpressions; the + node(s) with the highest sum are the most preferred. + items: + description: An empty preferred scheduling term matches all + objects with implicit weight 0 (i.e. it's a no-op). A null + preferred scheduling term matches no objects (i.e. is also + a no-op). + properties: + preference: + description: A node selector term, associated with the + corresponding weight. + properties: + matchExpressions: + description: A list of node selector requirements + by node's labels. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + description: A list of node selector requirements + by node's fields. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + description: Weight associated with matching the corresponding + nodeSelectorTerm, in the range 1-100. + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + description: If the affinity requirements specified by this + field are not met at scheduling time, the pod will not be + scheduled onto the node. If the affinity requirements specified + by this field cease to be met at some point during pod execution + (e.g. due to an update), the system may or may not try to + eventually evict the pod from its node. + properties: + nodeSelectorTerms: + description: Required. A list of node selector terms. The + terms are ORed. + items: + description: A null or empty node selector term matches + no objects. The requirements of them are ANDed. The + TopologySelectorTerm type implements a subset of the + NodeSelectorTerm. + properties: + matchExpressions: + description: A list of node selector requirements + by node's labels. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + description: A list of node selector requirements + by node's fields. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + description: Describes pod affinity scheduling rules (e.g. co-locate + this pod in the same node, zone, etc. as some other pod(s)). + properties: + preferredDuringSchedulingIgnoredDuringExecution: + description: The scheduler will prefer to schedule pods to nodes + that satisfy the affinity expressions specified by this field, + but it may choose a node that violates one or more of the + expressions. The node that is most preferred is the one with + the greatest sum of weights, i.e. for each node that meets + all of the scheduling requirements (resource request, requiredDuringScheduling + affinity expressions, etc.), compute a sum by iterating through + the elements of this field and adding "weight" to the sum + if the node has pods which matches the corresponding podAffinityTerm; + the node(s) with the highest sum are the most preferred. + items: + description: The weights of all of the matched WeightedPodAffinityTerm + fields are added per-node to find the most preferred node(s) + properties: + podAffinityTerm: + description: Required. A pod affinity term, associated + with the corresponding weight. + properties: + labelSelector: + description: A label query over a set of resources, + in this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label + selector requirements. The requirements are + ANDed. + items: + description: A label selector requirement is + a selector that contains values, a key, and + an operator that relates the key and values. + properties: + key: + description: key is the label key that the + selector applies to. + type: string + operator: + description: operator represents a key's + relationship to a set of values. Valid + operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string + values. If the operator is In or NotIn, + the values array must be non-empty. If + the operator is Exists or DoesNotExist, + the values array must be empty. This array + is replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} + pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, + whose key field is "key", the operator is "In", + and the values array contains only "value". + The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces + the labelSelector applies to (matches against); + null or empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods + matching the labelSelector in the specified namespaces, + where co-located is defined as running on a node + whose value of the label with key topologyKey matches + that of any node on which any of the selected pods + is running. Empty topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + weight: + description: weight associated with matching the corresponding + podAffinityTerm, in the range 1-100. + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + description: If the affinity requirements specified by this + field are not met at scheduling time, the pod will not be + scheduled onto the node. If the affinity requirements specified + by this field cease to be met at some point during pod execution + (e.g. due to a pod label update), the system may or may not + try to eventually evict the pod from its node. When there + are multiple elements, the lists of nodes corresponding to + each podAffinityTerm are intersected, i.e. all terms must + be satisfied. + items: + description: Defines a set of pods (namely those matching + the labelSelector relative to the given namespace(s)) that + this pod should be co-located (affinity) or not co-located + (anti-affinity) with, where co-located is defined as running + on a node whose value of the label with key + matches that of any node on which a pod of the set of pods + is running + properties: + labelSelector: + description: A label query over a set of resources, in + this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values + array must be non-empty. If the operator is + Exists or DoesNotExist, the values array must + be empty. This array is replaced during a + strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces the + labelSelector applies to (matches against); null or + empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods matching + the labelSelector in the specified namespaces, where + co-located is defined as running on a node whose value + of the label with key topologyKey matches that of any + node on which any of the selected pods is running. Empty + topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + description: Describes pod anti-affinity scheduling rules (e.g. + avoid putting this pod in the same node, zone, etc. as some other + pod(s)). + properties: + preferredDuringSchedulingIgnoredDuringExecution: + description: The scheduler will prefer to schedule pods to nodes + that satisfy the anti-affinity expressions specified by this + field, but it may choose a node that violates one or more + of the expressions. The node that is most preferred is the + one with the greatest sum of weights, i.e. for each node that + meets all of the scheduling requirements (resource request, + requiredDuringScheduling anti-affinity expressions, etc.), + compute a sum by iterating through the elements of this field + and adding "weight" to the sum if the node has pods which + matches the corresponding podAffinityTerm; the node(s) with + the highest sum are the most preferred. + items: + description: The weights of all of the matched WeightedPodAffinityTerm + fields are added per-node to find the most preferred node(s) + properties: + podAffinityTerm: + description: Required. A pod affinity term, associated + with the corresponding weight. + properties: + labelSelector: + description: A label query over a set of resources, + in this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label + selector requirements. The requirements are + ANDed. + items: + description: A label selector requirement is + a selector that contains values, a key, and + an operator that relates the key and values. + properties: + key: + description: key is the label key that the + selector applies to. + type: string + operator: + description: operator represents a key's + relationship to a set of values. Valid + operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string + values. If the operator is In or NotIn, + the values array must be non-empty. If + the operator is Exists or DoesNotExist, + the values array must be empty. This array + is replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} + pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, + whose key field is "key", the operator is "In", + and the values array contains only "value". + The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces + the labelSelector applies to (matches against); + null or empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods + matching the labelSelector in the specified namespaces, + where co-located is defined as running on a node + whose value of the label with key topologyKey matches + that of any node on which any of the selected pods + is running. Empty topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + weight: + description: weight associated with matching the corresponding + podAffinityTerm, in the range 1-100. + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + description: If the anti-affinity requirements specified by + this field are not met at scheduling time, the pod will not + be scheduled onto the node. If the anti-affinity requirements + specified by this field cease to be met at some point during + pod execution (e.g. due to a pod label update), the system + may or may not try to eventually evict the pod from its node. + When there are multiple elements, the lists of nodes corresponding + to each podAffinityTerm are intersected, i.e. all terms must + be satisfied. + items: + description: Defines a set of pods (namely those matching + the labelSelector relative to the given namespace(s)) that + this pod should be co-located (affinity) or not co-located + (anti-affinity) with, where co-located is defined as running + on a node whose value of the label with key + matches that of any node on which a pod of the set of pods + is running + properties: + labelSelector: + description: A label query over a set of resources, in + this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values + array must be non-empty. If the operator is + Exists or DoesNotExist, the values array must + be empty. This array is replaced during a + strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces the + labelSelector applies to (matches against); null or + empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods matching + the labelSelector in the specified namespaces, where + co-located is defined as running on a node whose value + of the label with key topologyKey matches that of any + node on which any of the selected pods is running. Empty + topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + alerting: + description: Define details regarding alerting. + properties: + alertmanagers: + description: AlertmanagerEndpoints Prometheus should fire alerts + against. + items: + description: AlertmanagerEndpoints defines a selection of a single + Endpoints object containing alertmanager IPs to fire alerts + against. + properties: + apiVersion: + description: Version of the Alertmanager API that Prometheus + uses to send alerts. It can be "v1" or "v2". + type: string + bearerTokenFile: + description: BearerTokenFile to read from filesystem to use + when authenticating to Alertmanager. + type: string + name: + description: Name of Endpoints object in Namespace. + type: string + namespace: + description: Namespace of Endpoints object. + type: string + pathPrefix: + description: Prefix for the HTTP path alerts are pushed to. + type: string + port: + anyOf: + - type: integer + - type: string + description: Port the Alertmanager API is exposed on. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use when firing alerts. + type: string + tlsConfig: + description: TLS Config to use for alertmanager connection. + properties: + ca: + description: Stuct containing the CA cert to use for the + targets. + properties: + configMap: + description: ConfigMap containing data to use for + the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or + its key must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the + targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + type: object + caFile: + description: Path to the CA cert in the Prometheus container + to use for the targets. + type: string + cert: + description: Struct containing the client cert file for + the targets. + properties: + configMap: + description: ConfigMap containing data to use for + the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or + its key must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the + targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: + https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + type: object + certFile: + description: Path to the client cert file in the Prometheus + container for the targets. + type: string + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keyFile: + description: Path to the client key file in the Prometheus + container for the targets. + type: string + keySecret: + description: Secret containing the client key file for + the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the targets. + type: string + type: object + required: + - name + - namespace + - port + type: object + type: array + required: + - alertmanagers + type: object + apiserverConfig: + description: APIServerConfig allows specifying a host and auth methods + to access apiserver. If left empty, Prometheus is assumed to run inside + of the cluster and will discover API servers automatically and use + the pod's CA certificate and bearer token file at /var/run/secrets/kubernetes.io/serviceaccount/. + properties: + basicAuth: + description: BasicAuth allow an endpoint to authenticate over basic + authentication + properties: + password: + description: The secret in the service monitor namespace that + contains the password for authentication. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + username: + description: The secret in the service monitor namespace that + contains the username for authentication. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + bearerToken: + description: Bearer token for accessing apiserver. + type: string + bearerTokenFile: + description: File to read bearer token for accessing apiserver. + type: string + host: + description: Host of apiserver. A valid string consisting of a hostname + or IP followed by an optional port number + type: string + tlsConfig: + description: TLS Config to use for accessing apiserver. + properties: + ca: + description: Stuct containing the CA cert to use for the targets. + properties: + configMap: + description: ConfigMap containing data to use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap or its key + must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + caFile: + description: Path to the CA cert in the Prometheus container + to use for the targets. + type: string + cert: + description: Struct containing the client cert file for the + targets. + properties: + configMap: + description: ConfigMap containing data to use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap or its key + must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + certFile: + description: Path to the client cert file in the Prometheus + container for the targets. + type: string + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keyFile: + description: Path to the client key file in the Prometheus container + for the targets. + type: string + keySecret: + description: Secret containing the client key file for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the targets. + type: string + type: object + required: + - host + type: object + arbitraryFSAccessThroughSMs: + description: ArbitraryFSAccessThroughSMs configures whether configuration + based on a service monitor can access arbitrary files on the file + system of the Prometheus container e.g. bearer token files. + properties: + deny: + type: boolean + type: object + baseImage: + description: Base image to use for a Prometheus deployment. + type: string + configMaps: + description: ConfigMaps is a list of ConfigMaps in the same namespace + as the Prometheus object, which shall be mounted into the Prometheus + Pods. The ConfigMaps are mounted into /etc/prometheus/configmaps/. + items: + type: string + type: array + containers: + description: 'Containers allows injecting additional containers or modifying + operator generated containers. This can be used to allow adding an + authentication proxy to a Prometheus pod or to change the behavior + of an operator generated container. Containers described here modify + an operator generated container if they share the same name and modifications + are done via a strategic merge patch. The current container names + are: `prometheus`, `prometheus-config-reloader`, `rules-configmap-reloader`, + and `thanos-sidecar`. Overriding containers is entirely outside the + scope of what the maintainers will support and by doing so, you accept + that this behaviour may break at any time without notice.' + items: + description: A single application container that you want to run within + a pod. + properties: + args: + description: 'Arguments to the entrypoint. The docker image''s + CMD is used if this is not provided. Variable references $(VAR_NAME) + are expanded using the container''s environment. If a variable + cannot be resolved, the reference in the input string will be + unchanged. The $(VAR_NAME) syntax can be escaped with a double + $$, ie: $$(VAR_NAME). Escaped references will never be expanded, + regardless of whether the variable exists or not. Cannot be + updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + command: + description: 'Entrypoint array. Not executed within a shell. The + docker image''s ENTRYPOINT is used if this is not provided. + Variable references $(VAR_NAME) are expanded using the container''s + environment. If a variable cannot be resolved, the reference + in the input string will be unchanged. The $(VAR_NAME) syntax + can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable exists + or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + env: + description: List of environment variables to set in the container. + Cannot be updated. + items: + description: EnvVar represents an environment variable present + in a Container. + properties: + name: + description: Name of the environment variable. Must be a + C_IDENTIFIER. + type: string + value: + description: 'Variable references $(VAR_NAME) are expanded + using the previous defined environment variables in the + container and any service environment variables. If a + variable cannot be resolved, the reference in the input + string will be unchanged. The $(VAR_NAME) syntax can be + escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable + exists or not. Defaults to "".' + type: string + valueFrom: + description: Source for the environment variable's value. + Cannot be used if value is not empty. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + fieldRef: + description: 'Selects a field of the pod: supports metadata.name, + metadata.namespace, metadata.labels, metadata.annotations, + spec.nodeName, spec.serviceAccountName, status.hostIP, + status.podIP, status.podIPs.' + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in the + specified API version. + type: string + required: + - fieldPath + type: object + resourceFieldRef: + description: 'Selects a resource of the container: only + resources limits and requests (limits.cpu, limits.memory, + limits.ephemeral-storage, requests.cpu, requests.memory + and requests.ephemeral-storage) are currently supported.' + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + description: Specifies the output format of the + exposed resources, defaults to "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + secretKeyRef: + description: Selects a key of a secret in the pod's + namespace + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + description: List of sources to populate environment variables + in the container. The keys defined within a source must be a + C_IDENTIFIER. All invalid keys will be reported as an event + when the container is starting. When a key exists in multiple + sources, the value associated with the last source will take + precedence. Values defined by an Env with a duplicate key will + take precedence. Cannot be updated. + items: + description: EnvFromSource represents the source of a set of + ConfigMaps + properties: + configMapRef: + description: The ConfigMap to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap must be defined + type: boolean + type: object + prefix: + description: An optional identifier to prepend to each key + in the ConfigMap. Must be a C_IDENTIFIER. + type: string + secretRef: + description: The Secret to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret must be defined + type: boolean + type: object + type: object + type: array + image: + description: 'Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images + This field is optional to allow higher level config management + to default or override container images in workload controllers + like Deployments and StatefulSets.' + type: string + imagePullPolicy: + description: 'Image pull policy. One of Always, Never, IfNotPresent. + Defaults to Always if :latest tag is specified, or IfNotPresent + otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images' + type: string + lifecycle: + description: Actions that the management system should take in + response to container lifecycle events. Cannot be updated. + properties: + postStart: + description: 'PostStart is called immediately after a container + is created. If the handler fails, the container is terminated + and restarted according to its restart policy. Other management + of the container blocks until the hook completes. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + description: 'PreStop is called immediately before a container + is terminated due to an API request or management event + such as liveness/startup probe failure, preemption, resource + contention, etc. The handler is not called if the container + crashes or exits. The reason for termination is passed to + the handler. The Pod''s termination grace period countdown + begins before the PreStop hooked is executed. Regardless + of the outcome of the handler, the container will eventually + terminate within the Pod''s termination grace period. Other + management of the container blocks until the hook completes + or until the termination grace period is reached. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + description: 'Periodic probe of container liveness. Container + will be restarted if the probe fails. Cannot be updated. More + info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + name: + description: Name of the container specified as a DNS_LABEL. Each + container in a pod must have a unique name (DNS_LABEL). Cannot + be updated. + type: string + ports: + description: List of ports to expose from the container. Exposing + a port here gives the system additional information about the + network connections a container uses, but is primarily informational. + Not specifying a port here DOES NOT prevent that port from being + exposed. Any port which is listening on the default "0.0.0.0" + address inside a container will be accessible from the network. + Cannot be updated. + items: + description: ContainerPort represents a network port in a single + container. + properties: + containerPort: + description: Number of port to expose on the pod's IP address. + This must be a valid port number, 0 < x < 65536. + format: int32 + type: integer + hostIP: + description: What host IP to bind the external port to. + type: string + hostPort: + description: Number of port to expose on the host. If specified, + this must be a valid port number, 0 < x < 65536. If HostNetwork + is specified, this must match ContainerPort. Most containers + do not need this. + format: int32 + type: integer + name: + description: If specified, this must be an IANA_SVC_NAME + and unique within the pod. Each named port in a pod must + have a unique name. Name for the port that can be referred + to by services. + type: string + protocol: + description: Protocol for port. Must be UDP, TCP, or SCTP. + Defaults to "TCP". + type: string + required: + - containerPort + type: object + type: array + readinessProbe: + description: 'Periodic probe of container service readiness. Container + will be removed from service endpoints if the probe fails. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + resources: + description: 'Compute Resources required by this container. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute + resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute + resources required. If Requests is omitted for a container, + it defaults to Limits if that is explicitly specified, otherwise + to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + securityContext: + description: 'Security options the pod should run with. More info: + https://kubernetes.io/docs/concepts/policy/security-context/ + More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/' + properties: + allowPrivilegeEscalation: + description: 'AllowPrivilegeEscalation controls whether a + process can gain more privileges than its parent process. + This bool directly controls if the no_new_privs flag will + be set on the container process. AllowPrivilegeEscalation + is true always when the container is: 1) run as Privileged + 2) has CAP_SYS_ADMIN' + type: boolean + capabilities: + description: The capabilities to add/drop when running containers. + Defaults to the default set of capabilities granted by the + container runtime. + properties: + add: + description: Added capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + drop: + description: Removed capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + type: object + privileged: + description: Run container in privileged mode. Processes in + privileged containers are essentially equivalent to root + on the host. Defaults to false. + type: boolean + procMount: + description: procMount denotes the type of proc mount to use + for the containers. The default is DefaultProcMount which + uses the container runtime defaults for readonly paths and + masked paths. This requires the ProcMountType feature flag + to be enabled. + type: string + readOnlyRootFilesystem: + description: Whether this container has a read-only root filesystem. + Default is false. + type: boolean + runAsGroup: + description: The GID to run the entrypoint of the container + process. Uses runtime default if unset. May also be set + in PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + format: int64 + type: integer + runAsNonRoot: + description: Indicates that the container must run as a non-root + user. If true, the Kubelet will validate the image at runtime + to ensure that it does not run as UID 0 (root) and fail + to start the container if it does. If unset or false, no + such validation will be performed. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + type: boolean + runAsUser: + description: The UID to run the entrypoint of the container + process. Defaults to user specified in image metadata if + unspecified. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + format: int64 + type: integer + seLinuxOptions: + description: The SELinux context to be applied to the container. + If unspecified, the container runtime will allocate a random + SELinux context for each container. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + properties: + level: + description: Level is SELinux level label that applies + to the container. + type: string + role: + description: Role is a SELinux role label that applies + to the container. + type: string + type: + description: Type is a SELinux type label that applies + to the container. + type: string + user: + description: User is a SELinux user label that applies + to the container. + type: string + type: object + windowsOptions: + description: The Windows specific settings applied to all + containers. If unspecified, the options from the PodSecurityContext + will be used. If set in both SecurityContext and PodSecurityContext, + the value specified in SecurityContext takes precedence. + properties: + gmsaCredentialSpec: + description: GMSACredentialSpec is where the GMSA admission + webhook (https://github.com/kubernetes-sigs/windows-gmsa) + inlines the contents of the GMSA credential spec named + by the GMSACredentialSpecName field. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + gmsaCredentialSpecName: + description: GMSACredentialSpecName is the name of the + GMSA credential spec to use. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + runAsUserName: + description: The UserName in Windows to run the entrypoint + of the container process. Defaults to the user specified + in image metadata if unspecified. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. This field is beta-level and may be + disabled with the WindowsRunAsUserName feature flag. + type: string + type: object + type: object + startupProbe: + description: 'StartupProbe indicates that the Pod has successfully + initialized. If specified, no other probes are executed until + this completes successfully. If this probe fails, the Pod will + be restarted, just as if the livenessProbe failed. This can + be used to provide different probe parameters at the beginning + of a Pod''s lifecycle, when it might take a long time to load + data or warm a cache, than during steady-state operation. This + cannot be updated. This is an alpha feature enabled by the StartupProbe + feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + stdin: + description: Whether this container should allocate a buffer for + stdin in the container runtime. If this is not set, reads from + stdin in the container will always result in EOF. Default is + false. + type: boolean + stdinOnce: + description: Whether the container runtime should close the stdin + channel after it has been opened by a single attach. When stdin + is true the stdin stream will remain open across multiple attach + sessions. If stdinOnce is set to true, stdin is opened on container + start, is empty until the first client attaches to stdin, and + then remains open and accepts data until the client disconnects, + at which time stdin is closed and remains closed until the container + is restarted. If this flag is false, a container processes that + reads from stdin will never receive an EOF. Default is false + type: boolean + terminationMessagePath: + description: 'Optional: Path at which the file to which the container''s + termination message will be written is mounted into the container''s + filesystem. Message written is intended to be brief final status, + such as an assertion failure message. Will be truncated by the + node if greater than 4096 bytes. The total message length across + all containers will be limited to 12kb. Defaults to /dev/termination-log. + Cannot be updated.' + type: string + terminationMessagePolicy: + description: Indicate how the termination message should be populated. + File will use the contents of terminationMessagePath to populate + the container status message on both success and failure. FallbackToLogsOnError + will use the last chunk of container log output if the termination + message file is empty and the container exited with an error. + The log output is limited to 2048 bytes or 80 lines, whichever + is smaller. Defaults to File. Cannot be updated. + type: string + tty: + description: Whether this container should allocate a TTY for + itself, also requires 'stdin' to be true. Default is false. + type: boolean + volumeDevices: + description: volumeDevices is the list of block devices to be + used by the container. This is a beta feature. + items: + description: volumeDevice describes a mapping of a raw block + device within a container. + properties: + devicePath: + description: devicePath is the path inside of the container + that the device will be mapped to. + type: string + name: + description: name must match the name of a persistentVolumeClaim + in the pod + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + description: Pod volumes to mount into the container's filesystem. + Cannot be updated. + items: + description: VolumeMount describes a mounting of a Volume within + a container. + properties: + mountPath: + description: Path within the container at which the volume + should be mounted. Must not contain ':'. + type: string + mountPropagation: + description: mountPropagation determines how mounts are + propagated from the host to container and the other way + around. When not set, MountPropagationNone is used. This + field is beta in 1.10. + type: string + name: + description: This must match the Name of a Volume. + type: string + readOnly: + description: Mounted read-only if true, read-write otherwise + (false or unspecified). Defaults to false. + type: boolean + subPath: + description: Path within the volume from which the container's + volume should be mounted. Defaults to "" (volume's root). + type: string + subPathExpr: + description: Expanded path within the volume from which + the container's volume should be mounted. Behaves similarly + to SubPath but environment variable references $(VAR_NAME) + are expanded using the container's environment. Defaults + to "" (volume's root). SubPathExpr and SubPath are mutually + exclusive. + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + description: Container's working directory. If not specified, + the container runtime's default will be used, which might be + configured in the container image. Cannot be updated. + type: string + required: + - name + type: object + type: array + disableCompaction: + description: Disable prometheus compaction. + type: boolean + enableAdminAPI: + description: 'Enable access to prometheus web admin API. Defaults to + the value of `false`. WARNING: Enabling the admin APIs enables mutating + endpoints, to delete data, shutdown Prometheus, and more. Enabling + this should be done with care and the user is advised to add additional + authentication authorization via a proxy to ensure only clients authorized + to perform these actions can do so. For more information see https://prometheus.io/docs/prometheus/latest/querying/api/#tsdb-admin-apis' + type: boolean + enforcedNamespaceLabel: + description: EnforcedNamespaceLabel enforces adding a namespace label + of origin for each alert and metric that is user created. The label + value will always be the namespace of the object that is being created. + type: string + evaluationInterval: + description: Interval between consecutive evaluations. + type: string + externalLabels: + additionalProperties: + type: string + description: The labels to add to any time series or alerts when communicating + with external systems (federation, remote storage, Alertmanager). + type: object + externalUrl: + description: The external URL the Prometheus instances will be available + under. This is necessary to generate correct URLs. This is necessary + if Prometheus is not served from root of a DNS name. + type: string + ignoreNamespaceSelectors: + description: IgnoreNamespaceSelectors if set to true will ignore NamespaceSelector + settings from the podmonitor and servicemonitor configs, and they + will only discover endpoints within their current namespace. Defaults + to false. + type: boolean + image: + description: Image if specified has precedence over baseImage, tag and + sha combinations. Specifying the version is still necessary to ensure + the Prometheus Operator knows what version of Prometheus is being + configured. + type: string + imagePullSecrets: + description: An optional list of references to secrets in the same namespace + to use for pulling prometheus and alertmanager images from registries + see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod + items: + description: LocalObjectReference contains enough information to let + you locate the referenced object inside the same namespace. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + type: array + initContainers: + description: 'InitContainers allows adding initContainers to the pod + definition. Those can be used to e.g. fetch secrets for injection + into the Prometheus configuration from external sources. Any errors + during the execution of an initContainer will lead to a restart of + the Pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ + Using initContainers for any use case other then secret fetching is + entirely outside the scope of what the maintainers will support and + by doing so, you accept that this behaviour may break at any time + without notice.' + items: + description: A single application container that you want to run within + a pod. + properties: + args: + description: 'Arguments to the entrypoint. The docker image''s + CMD is used if this is not provided. Variable references $(VAR_NAME) + are expanded using the container''s environment. If a variable + cannot be resolved, the reference in the input string will be + unchanged. The $(VAR_NAME) syntax can be escaped with a double + $$, ie: $$(VAR_NAME). Escaped references will never be expanded, + regardless of whether the variable exists or not. Cannot be + updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + command: + description: 'Entrypoint array. Not executed within a shell. The + docker image''s ENTRYPOINT is used if this is not provided. + Variable references $(VAR_NAME) are expanded using the container''s + environment. If a variable cannot be resolved, the reference + in the input string will be unchanged. The $(VAR_NAME) syntax + can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable exists + or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + env: + description: List of environment variables to set in the container. + Cannot be updated. + items: + description: EnvVar represents an environment variable present + in a Container. + properties: + name: + description: Name of the environment variable. Must be a + C_IDENTIFIER. + type: string + value: + description: 'Variable references $(VAR_NAME) are expanded + using the previous defined environment variables in the + container and any service environment variables. If a + variable cannot be resolved, the reference in the input + string will be unchanged. The $(VAR_NAME) syntax can be + escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable + exists or not. Defaults to "".' + type: string + valueFrom: + description: Source for the environment variable's value. + Cannot be used if value is not empty. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + fieldRef: + description: 'Selects a field of the pod: supports metadata.name, + metadata.namespace, metadata.labels, metadata.annotations, + spec.nodeName, spec.serviceAccountName, status.hostIP, + status.podIP, status.podIPs.' + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in the + specified API version. + type: string + required: + - fieldPath + type: object + resourceFieldRef: + description: 'Selects a resource of the container: only + resources limits and requests (limits.cpu, limits.memory, + limits.ephemeral-storage, requests.cpu, requests.memory + and requests.ephemeral-storage) are currently supported.' + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + description: Specifies the output format of the + exposed resources, defaults to "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + secretKeyRef: + description: Selects a key of a secret in the pod's + namespace + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + description: List of sources to populate environment variables + in the container. The keys defined within a source must be a + C_IDENTIFIER. All invalid keys will be reported as an event + when the container is starting. When a key exists in multiple + sources, the value associated with the last source will take + precedence. Values defined by an Env with a duplicate key will + take precedence. Cannot be updated. + items: + description: EnvFromSource represents the source of a set of + ConfigMaps + properties: + configMapRef: + description: The ConfigMap to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap must be defined + type: boolean + type: object + prefix: + description: An optional identifier to prepend to each key + in the ConfigMap. Must be a C_IDENTIFIER. + type: string + secretRef: + description: The Secret to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret must be defined + type: boolean + type: object + type: object + type: array + image: + description: 'Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images + This field is optional to allow higher level config management + to default or override container images in workload controllers + like Deployments and StatefulSets.' + type: string + imagePullPolicy: + description: 'Image pull policy. One of Always, Never, IfNotPresent. + Defaults to Always if :latest tag is specified, or IfNotPresent + otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images' + type: string + lifecycle: + description: Actions that the management system should take in + response to container lifecycle events. Cannot be updated. + properties: + postStart: + description: 'PostStart is called immediately after a container + is created. If the handler fails, the container is terminated + and restarted according to its restart policy. Other management + of the container blocks until the hook completes. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + description: 'PreStop is called immediately before a container + is terminated due to an API request or management event + such as liveness/startup probe failure, preemption, resource + contention, etc. The handler is not called if the container + crashes or exits. The reason for termination is passed to + the handler. The Pod''s termination grace period countdown + begins before the PreStop hooked is executed. Regardless + of the outcome of the handler, the container will eventually + terminate within the Pod''s termination grace period. Other + management of the container blocks until the hook completes + or until the termination grace period is reached. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + description: 'Periodic probe of container liveness. Container + will be restarted if the probe fails. Cannot be updated. More + info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + name: + description: Name of the container specified as a DNS_LABEL. Each + container in a pod must have a unique name (DNS_LABEL). Cannot + be updated. + type: string + ports: + description: List of ports to expose from the container. Exposing + a port here gives the system additional information about the + network connections a container uses, but is primarily informational. + Not specifying a port here DOES NOT prevent that port from being + exposed. Any port which is listening on the default "0.0.0.0" + address inside a container will be accessible from the network. + Cannot be updated. + items: + description: ContainerPort represents a network port in a single + container. + properties: + containerPort: + description: Number of port to expose on the pod's IP address. + This must be a valid port number, 0 < x < 65536. + format: int32 + type: integer + hostIP: + description: What host IP to bind the external port to. + type: string + hostPort: + description: Number of port to expose on the host. If specified, + this must be a valid port number, 0 < x < 65536. If HostNetwork + is specified, this must match ContainerPort. Most containers + do not need this. + format: int32 + type: integer + name: + description: If specified, this must be an IANA_SVC_NAME + and unique within the pod. Each named port in a pod must + have a unique name. Name for the port that can be referred + to by services. + type: string + protocol: + description: Protocol for port. Must be UDP, TCP, or SCTP. + Defaults to "TCP". + type: string + required: + - containerPort + type: object + type: array + readinessProbe: + description: 'Periodic probe of container service readiness. Container + will be removed from service endpoints if the probe fails. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + resources: + description: 'Compute Resources required by this container. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute + resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute + resources required. If Requests is omitted for a container, + it defaults to Limits if that is explicitly specified, otherwise + to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + securityContext: + description: 'Security options the pod should run with. More info: + https://kubernetes.io/docs/concepts/policy/security-context/ + More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/' + properties: + allowPrivilegeEscalation: + description: 'AllowPrivilegeEscalation controls whether a + process can gain more privileges than its parent process. + This bool directly controls if the no_new_privs flag will + be set on the container process. AllowPrivilegeEscalation + is true always when the container is: 1) run as Privileged + 2) has CAP_SYS_ADMIN' + type: boolean + capabilities: + description: The capabilities to add/drop when running containers. + Defaults to the default set of capabilities granted by the + container runtime. + properties: + add: + description: Added capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + drop: + description: Removed capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + type: object + privileged: + description: Run container in privileged mode. Processes in + privileged containers are essentially equivalent to root + on the host. Defaults to false. + type: boolean + procMount: + description: procMount denotes the type of proc mount to use + for the containers. The default is DefaultProcMount which + uses the container runtime defaults for readonly paths and + masked paths. This requires the ProcMountType feature flag + to be enabled. + type: string + readOnlyRootFilesystem: + description: Whether this container has a read-only root filesystem. + Default is false. + type: boolean + runAsGroup: + description: The GID to run the entrypoint of the container + process. Uses runtime default if unset. May also be set + in PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + format: int64 + type: integer + runAsNonRoot: + description: Indicates that the container must run as a non-root + user. If true, the Kubelet will validate the image at runtime + to ensure that it does not run as UID 0 (root) and fail + to start the container if it does. If unset or false, no + such validation will be performed. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + type: boolean + runAsUser: + description: The UID to run the entrypoint of the container + process. Defaults to user specified in image metadata if + unspecified. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + format: int64 + type: integer + seLinuxOptions: + description: The SELinux context to be applied to the container. + If unspecified, the container runtime will allocate a random + SELinux context for each container. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + properties: + level: + description: Level is SELinux level label that applies + to the container. + type: string + role: + description: Role is a SELinux role label that applies + to the container. + type: string + type: + description: Type is a SELinux type label that applies + to the container. + type: string + user: + description: User is a SELinux user label that applies + to the container. + type: string + type: object + windowsOptions: + description: The Windows specific settings applied to all + containers. If unspecified, the options from the PodSecurityContext + will be used. If set in both SecurityContext and PodSecurityContext, + the value specified in SecurityContext takes precedence. + properties: + gmsaCredentialSpec: + description: GMSACredentialSpec is where the GMSA admission + webhook (https://github.com/kubernetes-sigs/windows-gmsa) + inlines the contents of the GMSA credential spec named + by the GMSACredentialSpecName field. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + gmsaCredentialSpecName: + description: GMSACredentialSpecName is the name of the + GMSA credential spec to use. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + runAsUserName: + description: The UserName in Windows to run the entrypoint + of the container process. Defaults to the user specified + in image metadata if unspecified. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. This field is beta-level and may be + disabled with the WindowsRunAsUserName feature flag. + type: string + type: object + type: object + startupProbe: + description: 'StartupProbe indicates that the Pod has successfully + initialized. If specified, no other probes are executed until + this completes successfully. If this probe fails, the Pod will + be restarted, just as if the livenessProbe failed. This can + be used to provide different probe parameters at the beginning + of a Pod''s lifecycle, when it might take a long time to load + data or warm a cache, than during steady-state operation. This + cannot be updated. This is an alpha feature enabled by the StartupProbe + feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + stdin: + description: Whether this container should allocate a buffer for + stdin in the container runtime. If this is not set, reads from + stdin in the container will always result in EOF. Default is + false. + type: boolean + stdinOnce: + description: Whether the container runtime should close the stdin + channel after it has been opened by a single attach. When stdin + is true the stdin stream will remain open across multiple attach + sessions. If stdinOnce is set to true, stdin is opened on container + start, is empty until the first client attaches to stdin, and + then remains open and accepts data until the client disconnects, + at which time stdin is closed and remains closed until the container + is restarted. If this flag is false, a container processes that + reads from stdin will never receive an EOF. Default is false + type: boolean + terminationMessagePath: + description: 'Optional: Path at which the file to which the container''s + termination message will be written is mounted into the container''s + filesystem. Message written is intended to be brief final status, + such as an assertion failure message. Will be truncated by the + node if greater than 4096 bytes. The total message length across + all containers will be limited to 12kb. Defaults to /dev/termination-log. + Cannot be updated.' + type: string + terminationMessagePolicy: + description: Indicate how the termination message should be populated. + File will use the contents of terminationMessagePath to populate + the container status message on both success and failure. FallbackToLogsOnError + will use the last chunk of container log output if the termination + message file is empty and the container exited with an error. + The log output is limited to 2048 bytes or 80 lines, whichever + is smaller. Defaults to File. Cannot be updated. + type: string + tty: + description: Whether this container should allocate a TTY for + itself, also requires 'stdin' to be true. Default is false. + type: boolean + volumeDevices: + description: volumeDevices is the list of block devices to be + used by the container. This is a beta feature. + items: + description: volumeDevice describes a mapping of a raw block + device within a container. + properties: + devicePath: + description: devicePath is the path inside of the container + that the device will be mapped to. + type: string + name: + description: name must match the name of a persistentVolumeClaim + in the pod + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + description: Pod volumes to mount into the container's filesystem. + Cannot be updated. + items: + description: VolumeMount describes a mounting of a Volume within + a container. + properties: + mountPath: + description: Path within the container at which the volume + should be mounted. Must not contain ':'. + type: string + mountPropagation: + description: mountPropagation determines how mounts are + propagated from the host to container and the other way + around. When not set, MountPropagationNone is used. This + field is beta in 1.10. + type: string + name: + description: This must match the Name of a Volume. + type: string + readOnly: + description: Mounted read-only if true, read-write otherwise + (false or unspecified). Defaults to false. + type: boolean + subPath: + description: Path within the volume from which the container's + volume should be mounted. Defaults to "" (volume's root). + type: string + subPathExpr: + description: Expanded path within the volume from which + the container's volume should be mounted. Behaves similarly + to SubPath but environment variable references $(VAR_NAME) + are expanded using the container's environment. Defaults + to "" (volume's root). SubPathExpr and SubPath are mutually + exclusive. + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + description: Container's working directory. If not specified, + the container runtime's default will be used, which might be + configured in the container image. Cannot be updated. + type: string + required: + - name + type: object + type: array + listenLocal: + description: ListenLocal makes the Prometheus server listen on loopback, + so that it does not bind against the Pod IP. + type: boolean + logFormat: + description: Log format for Prometheus to be configured with. + type: string + logLevel: + description: Log level for Prometheus to be configured with. + type: string + nodeSelector: + additionalProperties: + type: string + description: Define which Nodes the Pods are scheduled on. + type: object + overrideHonorLabels: + description: OverrideHonorLabels if set to true overrides all user configured + honor_labels. If HonorLabels is set in ServiceMonitor or PodMonitor + to true, this overrides honor_labels to false. + type: boolean + overrideHonorTimestamps: + description: OverrideHonorTimestamps allows to globally enforce honoring + timestamps in all scrape configs. + type: boolean + paused: + description: When a Prometheus deployment is paused, no actions except + for deletion will be performed on the underlying objects. + type: boolean + podMetadata: + description: PodMetadata configures Labels and Annotations which are + propagated to the prometheus pods. + properties: + annotations: + additionalProperties: + type: string + description: 'Annotations is an unstructured key value map stored + with a resource that may be set by external tools to store and + retrieve arbitrary metadata. They are not queryable and should + be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations' + type: object + labels: + additionalProperties: + type: string + description: 'Map of string keys and values that can be used to + organize and categorize (scope and select) objects. May match + selectors of replication controllers and services. More info: + http://kubernetes.io/docs/user-guide/labels' + type: object + type: object + podMonitorNamespaceSelector: + description: Namespaces to be selected for PodMonitor discovery. If + nil, only check own namespace. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + podMonitorSelector: + description: '*Experimental* PodMonitors to be selected for target discovery.' + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + portName: + description: Port name used for the pods and governing service. This + defaults to web + type: string + priorityClassName: + description: Priority class assigned to the Pods + type: string + prometheusExternalLabelName: + description: Name of Prometheus external label used to denote Prometheus + instance name. Defaults to the value of `prometheus`. External label + will _not_ be added when value is set to empty string (`""`). + type: string + query: + description: QuerySpec defines the query command line flags when starting + Prometheus. + properties: + lookbackDelta: + description: The delta difference allowed for retrieving metrics + during expression evaluations. + type: string + maxConcurrency: + description: Number of concurrent queries that can be run at once. + format: int32 + type: integer + maxSamples: + description: Maximum number of samples a single query can load into + memory. Note that queries will fail if they would load more samples + than this into memory, so this also limits the number of samples + a query can return. + format: int32 + type: integer + timeout: + description: Maximum time a query may take before being aborted. + type: string + type: object + remoteRead: + description: If specified, the remote_read spec. This is an experimental + feature, it may change in any upcoming release in a breaking way. + items: + description: RemoteReadSpec defines the remote_read configuration + for prometheus. + properties: + basicAuth: + description: BasicAuth for the URL. + properties: + password: + description: The secret in the service monitor namespace that + contains the password for authentication. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + username: + description: The secret in the service monitor namespace that + contains the username for authentication. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + bearerToken: + description: bearer token for remote read. + type: string + bearerTokenFile: + description: File to read bearer token for remote read. + type: string + proxyUrl: + description: Optional ProxyURL + type: string + readRecent: + description: Whether reads should be made for queries for time + ranges that the local storage should have complete data for. + type: boolean + remoteTimeout: + description: Timeout for requests to the remote read endpoint. + type: string + requiredMatchers: + additionalProperties: + type: string + description: An optional list of equality matchers which have + to be present in a selector to query the remote read endpoint. + type: object + tlsConfig: + description: TLS Config to use for remote read. + properties: + ca: + description: Stuct containing the CA cert to use for the targets. + properties: + configMap: + description: ConfigMap containing data to use for the + targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + caFile: + description: Path to the CA cert in the Prometheus container + to use for the targets. + type: string + cert: + description: Struct containing the client cert file for the + targets. + properties: + configMap: + description: ConfigMap containing data to use for the + targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + certFile: + description: Path to the client cert file in the Prometheus + container for the targets. + type: string + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keyFile: + description: Path to the client key file in the Prometheus + container for the targets. + type: string + keySecret: + description: Secret containing the client key file for the + targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the targets. + type: string + type: object + url: + description: The URL of the endpoint to send samples to. + type: string + required: + - url + type: object + type: array + remoteWrite: + description: If specified, the remote_write spec. This is an experimental + feature, it may change in any upcoming release in a breaking way. + items: + description: RemoteWriteSpec defines the remote_write configuration + for prometheus. + properties: + basicAuth: + description: BasicAuth for the URL. + properties: + password: + description: The secret in the service monitor namespace that + contains the password for authentication. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + username: + description: The secret in the service monitor namespace that + contains the username for authentication. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + bearerToken: + description: File to read bearer token for remote write. + type: string + bearerTokenFile: + description: File to read bearer token for remote write. + type: string + proxyUrl: + description: Optional ProxyURL + type: string + queueConfig: + description: QueueConfig allows tuning of the remote write queue + parameters. + properties: + batchSendDeadline: + description: BatchSendDeadline is the maximum time a sample + will wait in buffer. + type: string + capacity: + description: Capacity is the number of samples to buffer per + shard before we start dropping them. + type: integer + maxBackoff: + description: MaxBackoff is the maximum retry delay. + type: string + maxRetries: + description: MaxRetries is the maximum number of times to + retry a batch on recoverable errors. + type: integer + maxSamplesPerSend: + description: MaxSamplesPerSend is the maximum number of samples + per send. + type: integer + maxShards: + description: MaxShards is the maximum number of shards, i.e. + amount of concurrency. + type: integer + minBackoff: + description: MinBackoff is the initial retry delay. Gets doubled + for every retry. + type: string + minShards: + description: MinShards is the minimum number of shards, i.e. + amount of concurrency. + type: integer + type: object + remoteTimeout: + description: Timeout for requests to the remote write endpoint. + type: string + tlsConfig: + description: TLS Config to use for remote write. + properties: + ca: + description: Stuct containing the CA cert to use for the targets. + properties: + configMap: + description: ConfigMap containing data to use for the + targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + caFile: + description: Path to the CA cert in the Prometheus container + to use for the targets. + type: string + cert: + description: Struct containing the client cert file for the + targets. + properties: + configMap: + description: ConfigMap containing data to use for the + targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + certFile: + description: Path to the client cert file in the Prometheus + container for the targets. + type: string + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keyFile: + description: Path to the client key file in the Prometheus + container for the targets. + type: string + keySecret: + description: Secret containing the client key file for the + targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the targets. + type: string + type: object + url: + description: The URL of the endpoint to send samples to. + type: string + writeRelabelConfigs: + description: The list of remote write relabel configurations. + items: + description: 'RelabelConfig allows dynamic rewriting of the + label set, being applied to samples before ingestion. It defines + ``-section of Prometheus configuration. + More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs' + properties: + action: + description: Action to perform based on regex matching. + Default is 'replace' + type: string + modulus: + description: Modulus to take of the hash of the source label + values. + format: int64 + type: integer + regex: + description: Regular expression against which the extracted + value is matched. Default is '(.*)' + type: string + replacement: + description: Replacement value against which a regex replace + is performed if the regular expression matches. Regex + capture groups are available. Default is '$1' + type: string + separator: + description: Separator placed between concatenated source + label values. default is ';'. + type: string + sourceLabels: + description: The source labels select values from existing + labels. Their content is concatenated using the configured + separator and matched against the configured regular expression + for the replace, keep, and drop actions. + items: + type: string + type: array + targetLabel: + description: Label to which the resulting value is written + in a replace action. It is mandatory for replace actions. + Regex capture groups are available. + type: string + type: object + type: array + required: + - url + type: object + type: array + replicaExternalLabelName: + description: Name of Prometheus external label used to denote replica + name. Defaults to the value of `prometheus_replica`. External label + will _not_ be added when value is set to empty string (`""`). + type: string + replicas: + description: Number of instances to deploy for a Prometheus deployment. + format: int32 + type: integer + resources: + description: Define resources requests and limits for single Pods. + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute resources + allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute resources + required. If Requests is omitted for a container, it defaults + to Limits if that is explicitly specified, otherwise to an implementation-defined + value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + retention: + description: Time duration Prometheus shall retain data for. Default + is '24h', and must match the regular expression `[0-9]+(ms|s|m|h|d|w|y)` + (milliseconds seconds minutes hours days weeks years). + type: string + retentionSize: + description: Maximum amount of disk space used by blocks. + type: string + routePrefix: + description: The route prefix Prometheus registers HTTP handlers for. + This is useful, if using ExternalURL and a proxy is rewriting HTTP + routes of a request, and the actual ExternalURL is still true, but + the server serves requests under a different route prefix. For example + for use with `kubectl proxy`. + type: string + ruleNamespaceSelector: + description: Namespaces to be selected for PrometheusRules discovery. + If unspecified, only the same namespace as the Prometheus object is + in is used. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + ruleSelector: + description: A selector to select which PrometheusRules to mount for + loading alerting rules from. Until (excluding) Prometheus Operator + v0.24.0 Prometheus Operator will migrate any legacy rule ConfigMaps + to PrometheusRule custom resources selected by RuleSelector. Make + sure it does not match any config maps that you do not want to be + migrated. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + rules: + description: /--rules.*/ command-line arguments. + properties: + alert: + description: /--rules.alert.*/ command-line arguments + properties: + forGracePeriod: + description: Minimum duration between alert and restored 'for' + state. This is maintained only for alerts with configured + 'for' time greater than grace period. + type: string + forOutageTolerance: + description: Max time to tolerate prometheus outage for restoring + 'for' state of alert. + type: string + resendDelay: + description: Minimum amount of time to wait before resending + an alert to Alertmanager. + type: string + type: object + type: object + scrapeInterval: + description: Interval between consecutive scrapes. + type: string + secrets: + description: Secrets is a list of Secrets in the same namespace as the + Prometheus object, which shall be mounted into the Prometheus Pods. + The Secrets are mounted into /etc/prometheus/secrets/. + items: + type: string + type: array + securityContext: + description: SecurityContext holds pod-level security attributes and + common container settings. This defaults to the default PodSecurityContext. + properties: + fsGroup: + description: "A special supplemental group that applies to all containers + in a pod. Some volume types allow the Kubelet to change the ownership + of that volume to be owned by the pod: \n 1. The owning GID will + be the FSGroup 2. The setgid bit is set (new files created in + the volume will be owned by FSGroup) 3. The permission bits are + OR'd with rw-rw---- \n If unset, the Kubelet will not modify the + ownership and permissions of any volume." + format: int64 + type: integer + runAsGroup: + description: The GID to run the entrypoint of the container process. + Uses runtime default if unset. May also be set in SecurityContext. If + set in both SecurityContext and PodSecurityContext, the value + specified in SecurityContext takes precedence for that container. + format: int64 + type: integer + runAsNonRoot: + description: Indicates that the container must run as a non-root + user. If true, the Kubelet will validate the image at runtime + to ensure that it does not run as UID 0 (root) and fail to start + the container if it does. If unset or false, no such validation + will be performed. May also be set in SecurityContext. If set + in both SecurityContext and PodSecurityContext, the value specified + in SecurityContext takes precedence. + type: boolean + runAsUser: + description: The UID to run the entrypoint of the container process. + Defaults to user specified in image metadata if unspecified. May + also be set in SecurityContext. If set in both SecurityContext + and PodSecurityContext, the value specified in SecurityContext + takes precedence for that container. + format: int64 + type: integer + seLinuxOptions: + description: The SELinux context to be applied to all containers. + If unspecified, the container runtime will allocate a random SELinux + context for each container. May also be set in SecurityContext. If + set in both SecurityContext and PodSecurityContext, the value + specified in SecurityContext takes precedence for that container. + properties: + level: + description: Level is SELinux level label that applies to the + container. + type: string + role: + description: Role is a SELinux role label that applies to the + container. + type: string + type: + description: Type is a SELinux type label that applies to the + container. + type: string + user: + description: User is a SELinux user label that applies to the + container. + type: string + type: object + supplementalGroups: + description: A list of groups applied to the first process run in + each container, in addition to the container's primary GID. If + unspecified, no groups will be added to any container. + items: + format: int64 + type: integer + type: array + sysctls: + description: Sysctls hold a list of namespaced sysctls used for + the pod. Pods with unsupported sysctls (by the container runtime) + might fail to launch. + items: + description: Sysctl defines a kernel parameter to be set + properties: + name: + description: Name of a property to set + type: string + value: + description: Value of a property to set + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + description: The Windows specific settings applied to all containers. + If unspecified, the options within a container's SecurityContext + will be used. If set in both SecurityContext and PodSecurityContext, + the value specified in SecurityContext takes precedence. + properties: + gmsaCredentialSpec: + description: GMSACredentialSpec is where the GMSA admission + webhook (https://github.com/kubernetes-sigs/windows-gmsa) + inlines the contents of the GMSA credential spec named by + the GMSACredentialSpecName field. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + gmsaCredentialSpecName: + description: GMSACredentialSpecName is the name of the GMSA + credential spec to use. This field is alpha-level and is only + honored by servers that enable the WindowsGMSA feature flag. + type: string + runAsUserName: + description: The UserName in Windows to run the entrypoint of + the container process. Defaults to the user specified in image + metadata if unspecified. May also be set in PodSecurityContext. + If set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. This + field is beta-level and may be disabled with the WindowsRunAsUserName + feature flag. + type: string + type: object + type: object + serviceAccountName: + description: ServiceAccountName is the name of the ServiceAccount to + use to run the Prometheus Pods. + type: string + serviceMonitorNamespaceSelector: + description: Namespaces to be selected for ServiceMonitor discovery. + If nil, only check own namespace. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + serviceMonitorSelector: + description: ServiceMonitors to be selected for target discovery. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + sha: + description: SHA of Prometheus container image to be deployed. Defaults + to the value of `version`. Similar to a tag, but the SHA explicitly + deploys an immutable container image. Version and Tag are ignored + if SHA is set. + type: string + storage: + description: Storage spec to specify how storage shall be used. + properties: + emptyDir: + description: 'EmptyDirVolumeSource to be used by the Prometheus + StatefulSets. If specified, used in place of any volumeClaimTemplate. + More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir' + properties: + medium: + description: 'What type of storage medium should back this directory. + The default is "" which means to use the node''s default medium. + Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' + type: string + sizeLimit: + description: 'Total amount of local storage required for this + EmptyDir volume. The size limit is also applicable for memory + medium. The maximum usage on memory medium EmptyDir would + be the minimum value between the SizeLimit specified here + and the sum of memory limits of all containers in a pod. The + default is nil which means that the limit is undefined. More + info: http://kubernetes.io/docs/user-guide/volumes#emptydir' + type: string + type: object + volumeClaimTemplate: + description: A PVC spec to be used by the Prometheus StatefulSets. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this + representation of an object. Servers should convert recognized + schemas to the latest internal value, and may reject unrecognized + values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource + this object represents. Servers may infer this from the endpoint + the client submits requests to. Cannot be updated. In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + description: 'Standard object''s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata' + type: object + spec: + description: 'Spec defines the desired characteristics of a + volume requested by a pod author. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + properties: + accessModes: + description: 'AccessModes contains the desired access modes + the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1' + items: + type: string + type: array + dataSource: + description: This field requires the VolumeSnapshotDataSource + alpha feature gate to be enabled and currently VolumeSnapshot + is the only supported data source. If the provisioner + can support VolumeSnapshot data source, it will create + a new volume and data will be restored to the volume at + the same time. If the provisioner does not support VolumeSnapshot + data source, volume will not be created and the failure + will be reported as an event. In the future, we plan to + support more data source types and the behavior of the + provisioner may change. + properties: + apiGroup: + description: APIGroup is the group for the resource + being referenced. If APIGroup is not specified, the + specified Kind must be in the core API group. For + any other third-party types, APIGroup is required. + type: string + kind: + description: Kind is the type of resource being referenced + type: string + name: + description: Name is the name of resource being referenced + type: string + required: + - kind + - name + type: object + resources: + description: 'Resources represents the minimum resources + the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of + compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount + of compute resources required. If Requests is omitted + for a container, it defaults to Limits if that is + explicitly specified, otherwise to an implementation-defined + value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + selector: + description: A label query over volumes to consider for + binding. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be empty. + This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + storageClassName: + description: 'Name of the StorageClass required by the claim. + More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' + type: string + volumeMode: + description: volumeMode defines what type of volume is required + by the claim. Value of Filesystem is implied when not + included in claim spec. This is a beta feature. + type: string + volumeName: + description: VolumeName is the binding reference to the + PersistentVolume backing this claim. + type: string + type: object + status: + description: 'Status represents the current information/status + of a persistent volume claim. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + properties: + accessModes: + description: 'AccessModes contains the actual access modes + the volume backing the PVC has. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1' + items: + type: string + type: array + capacity: + additionalProperties: + type: string + description: Represents the actual resources of the underlying + volume. + type: object + conditions: + description: Current Condition of persistent volume claim. + If underlying persistent volume is being resized then + the Condition will be set to 'ResizeStarted'. + items: + description: PersistentVolumeClaimCondition contails details + about state of pvc + properties: + lastProbeTime: + description: Last time we probed the condition. + format: date-time + type: string + lastTransitionTime: + description: Last time the condition transitioned + from one status to another. + format: date-time + type: string + message: + description: Human-readable message indicating details + about last transition. + type: string + reason: + description: Unique, this should be a short, machine + understandable string that gives the reason for + condition's last transition. If it reports "ResizeStarted" + that means the underlying persistent volume is being + resized. + type: string + status: + type: string + type: + description: PersistentVolumeClaimConditionType is + a valid value of PersistentVolumeClaimCondition.Type + type: string + required: + - status + - type + type: object + type: array + phase: + description: Phase represents the current phase of PersistentVolumeClaim. + type: string + type: object + type: object + type: object + tag: + description: Tag of Prometheus container image to be deployed. Defaults + to the value of `version`. Version is ignored if Tag is set. + type: string + thanos: + description: "Thanos configuration allows configuring various aspects + of a Prometheus server in a Thanos environment. \n This section is + experimental, it may change significantly without deprecation notice + in any release. \n This is experimental and may change significantly + without backward compatibility in any release." + properties: + baseImage: + description: Thanos base image if other than default. + type: string + grpcServerTlsConfig: + description: 'GRPCServerTLSConfig configures the gRPC server from + which Thanos Querier reads recorded rule data. Note: Currently + only the CAFile, CertFile, and KeyFile fields are supported. Maps + to the ''--grpc-server-tls-*'' CLI args.' + properties: + ca: + description: Stuct containing the CA cert to use for the targets. + properties: + configMap: + description: ConfigMap containing data to use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap or its key + must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + caFile: + description: Path to the CA cert in the Prometheus container + to use for the targets. + type: string + cert: + description: Struct containing the client cert file for the + targets. + properties: + configMap: + description: ConfigMap containing data to use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap or its key + must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + certFile: + description: Path to the client cert file in the Prometheus + container for the targets. + type: string + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keyFile: + description: Path to the client key file in the Prometheus container + for the targets. + type: string + keySecret: + description: Secret containing the client key file for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the targets. + type: string + type: object + image: + description: Image if specified has precedence over baseImage, tag + and sha combinations. Specifying the version is still necessary + to ensure the Prometheus Operator knows what version of Thanos + is being configured. + type: string + listenLocal: + description: ListenLocal makes the Thanos sidecar listen on loopback, + so that it does not bind against the Pod IP. + type: boolean + objectStorageConfig: + description: ObjectStorageConfig configures object storage in Thanos. + properties: + key: + description: The key of the secret to select from. Must be + a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + resources: + description: Resources defines the resource requirements for the + Thanos sidecar. If not provided, no requests/limits will be set + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute + resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute + resources required. If Requests is omitted for a container, + it defaults to Limits if that is explicitly specified, otherwise + to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + sha: + description: SHA of Thanos container image to be deployed. Defaults + to the value of `version`. Similar to a tag, but the SHA explicitly + deploys an immutable container image. Version and Tag are ignored + if SHA is set. + type: string + tag: + description: Tag of Thanos sidecar container image to be deployed. + Defaults to the value of `version`. Version is ignored if Tag + is set. + type: string + tracingConfig: + description: TracingConfig configures tracing in Thanos. This is + an experimental feature, it may change in any upcoming release + in a breaking way. + properties: + key: + description: The key of the secret to select from. Must be + a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + version: + description: Version describes the version of Thanos to use. + type: string + type: object + tolerations: + description: If specified, the pod's tolerations. + items: + description: The pod this Toleration is attached to tolerates any + taint that matches the triple using the matching + operator . + properties: + effect: + description: Effect indicates the taint effect to match. Empty + means match all taint effects. When specified, allowed values + are NoSchedule, PreferNoSchedule and NoExecute. + type: string + key: + description: Key is the taint key that the toleration applies + to. Empty means match all taint keys. If the key is empty, operator + must be Exists; this combination means to match all values and + all keys. + type: string + operator: + description: Operator represents a key's relationship to the value. + Valid operators are Exists and Equal. Defaults to Equal. Exists + is equivalent to wildcard for value, so that a pod can tolerate + all taints of a particular category. + type: string + tolerationSeconds: + description: TolerationSeconds represents the period of time the + toleration (which must be of effect NoExecute, otherwise this + field is ignored) tolerates the taint. By default, it is not + set, which means tolerate the taint forever (do not evict). + Zero and negative values will be treated as 0 (evict immediately) + by the system. + format: int64 + type: integer + value: + description: Value is the taint value the toleration matches to. + If the operator is Exists, the value should be empty, otherwise + just a regular string. + type: string + type: object + type: array + version: + description: Version of Prometheus to be deployed. + type: string + volumeMounts: + description: VolumeMounts allows configuration of additional VolumeMounts + on the output StatefulSet definition. VolumeMounts specified will + be appended to other VolumeMounts in the prometheus container, that + are generated as a result of StorageSpec objects. + items: + description: VolumeMount describes a mounting of a Volume within a + container. + properties: + mountPath: + description: Path within the container at which the volume should + be mounted. Must not contain ':'. + type: string + mountPropagation: + description: mountPropagation determines how mounts are propagated + from the host to container and the other way around. When not + set, MountPropagationNone is used. This field is beta in 1.10. + type: string + name: + description: This must match the Name of a Volume. + type: string + readOnly: + description: Mounted read-only if true, read-write otherwise (false + or unspecified). Defaults to false. + type: boolean + subPath: + description: Path within the volume from which the container's + volume should be mounted. Defaults to "" (volume's root). + type: string + subPathExpr: + description: Expanded path within the volume from which the container's + volume should be mounted. Behaves similarly to SubPath but environment + variable references $(VAR_NAME) are expanded using the container's + environment. Defaults to "" (volume's root). SubPathExpr and + SubPath are mutually exclusive. + type: string + required: + - mountPath + - name + type: object + type: array + volumes: + description: Volumes allows configuration of additional volumes on the + output StatefulSet definition. Volumes specified will be appended + to other volumes that are generated as a result of StorageSpec objects. + items: + description: Volume represents a named volume in a pod that may be + accessed by any container in the pod. + properties: + awsElasticBlockStore: + description: 'AWSElasticBlockStore represents an AWS Disk resource + that is attached to a kubelet''s host machine and then exposed + to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' + properties: + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + partition: + description: 'The partition in the volume that you want to + mount. If omitted, the default is to mount by volume name. + Examples: For volume /dev/sda1, you specify the partition + as "1". Similarly, the volume partition for /dev/sda is + "0" (or you can leave the property empty).' + format: int32 + type: integer + readOnly: + description: 'Specify "true" to force and set the ReadOnly + property in VolumeMounts to "true". If omitted, the default + is "false". More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' + type: boolean + volumeID: + description: 'Unique ID of the persistent disk resource in + AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' + type: string + required: + - volumeID + type: object + azureDisk: + description: AzureDisk represents an Azure Data Disk mount on + the host and bind mount to the pod. + properties: + cachingMode: + description: 'Host Caching mode: None, Read Only, Read Write.' + type: string + diskName: + description: The Name of the data disk in the blob storage + type: string + diskURI: + description: The URI the data disk in the blob storage + type: string + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + kind: + description: 'Expected values Shared: multiple blob disks + per storage account Dedicated: single blob disk per storage + account Managed: azure managed data disk (only in managed + availability set). defaults to shared' + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + description: AzureFile represents an Azure File Service mount + on the host and bind mount to the pod. + properties: + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + secretName: + description: the name of secret that contains Azure Storage + Account Name and Key + type: string + shareName: + description: Share Name + type: string + required: + - secretName + - shareName + type: object + cephfs: + description: CephFS represents a Ceph FS mount on the host that + shares a pod's lifetime + properties: + monitors: + description: 'Required: Monitors is a collection of Ceph monitors + More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + items: + type: string + type: array + path: + description: 'Optional: Used as the mounted root, rather than + the full Ceph tree, default is /' + type: string + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts. More + info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + type: boolean + secretFile: + description: 'Optional: SecretFile is the path to key ring + for User, default is /etc/ceph/user.secret More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + type: string + secretRef: + description: 'Optional: SecretRef is reference to the authentication + secret for User, default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + user: + description: 'Optional: User is the rados user name, default + is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + type: string + required: + - monitors + type: object + cinder: + description: 'Cinder represents a cinder volume attached and mounted + on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md' + properties: + fsType: + description: 'Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Examples: "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + More info: https://examples.k8s.io/mysql-cinder-pd/README.md' + type: string + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts. More + info: https://examples.k8s.io/mysql-cinder-pd/README.md' + type: boolean + secretRef: + description: 'Optional: points to a secret object containing + parameters used to connect to OpenStack.' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + volumeID: + description: 'volume id used to identify the volume in cinder. + More info: https://examples.k8s.io/mysql-cinder-pd/README.md' + type: string + required: + - volumeID + type: object + configMap: + description: ConfigMap represents a configMap that should populate + this volume + properties: + defaultMode: + description: 'Optional: mode bits to use on created files + by default. Must be a value between 0 and 0777. Defaults + to 0644. Directories within the path are not affected by + this setting. This might be in conflict with other options + that affect the file mode, like fsGroup, and the result + can be other mode bits set.' + format: int32 + type: integer + items: + description: If unspecified, each key-value pair in the Data + field of the referenced ConfigMap will be projected into + the volume as a file whose name is the key and content is + the value. If specified, the listed keys will be projected + into the specified paths, and unlisted keys will not be + present. If a key is specified which is not present in the + ConfigMap, the volume setup will error unless it is marked + optional. Paths must be relative and may not contain the + '..' path or start with '..'. + items: + description: Maps a string key to a path within a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on this file, + must be a value between 0 and 0777. If not specified, + the volume defaultMode will be used. This might be + in conflict with other options that affect the file + mode, like fsGroup, and the result can be other mode + bits set.' + format: int32 + type: integer + path: + description: The relative path of the file to map the + key to. May not be an absolute path. May not contain + the path element '..'. May not start with the string + '..'. + type: string + required: + - key + - path + type: object + type: array + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap or its keys must + be defined + type: boolean + type: object + csi: + description: CSI (Container Storage Interface) represents storage + that is handled by an external CSI driver (Alpha feature). + properties: + driver: + description: Driver is the name of the CSI driver that handles + this volume. Consult with your admin for the correct name + as registered in the cluster. + type: string + fsType: + description: Filesystem type to mount. Ex. "ext4", "xfs", + "ntfs". If not provided, the empty value is passed to the + associated CSI driver which will determine the default filesystem + to apply. + type: string + nodePublishSecretRef: + description: NodePublishSecretRef is a reference to the secret + object containing sensitive information to pass to the CSI + driver to complete the CSI NodePublishVolume and NodeUnpublishVolume + calls. This field is optional, and may be empty if no secret + is required. If the secret object contains more than one + secret, all secret references are passed. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + readOnly: + description: Specifies a read-only configuration for the volume. + Defaults to false (read/write). + type: boolean + volumeAttributes: + additionalProperties: + type: string + description: VolumeAttributes stores driver-specific properties + that are passed to the CSI driver. Consult your driver's + documentation for supported values. + type: object + required: + - driver + type: object + downwardAPI: + description: DownwardAPI represents downward API about the pod + that should populate this volume + properties: + defaultMode: + description: 'Optional: mode bits to use on created files + by default. Must be a value between 0 and 0777. Defaults + to 0644. Directories within the path are not affected by + this setting. This might be in conflict with other options + that affect the file mode, like fsGroup, and the result + can be other mode bits set.' + format: int32 + type: integer + items: + description: Items is a list of downward API volume file + items: + description: DownwardAPIVolumeFile represents information + to create the file containing the pod field + properties: + fieldRef: + description: 'Required: Selects a field of the pod: + only annotations, labels, name and namespace are supported.' + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in the + specified API version. + type: string + required: + - fieldPath + type: object + mode: + description: 'Optional: mode bits to use on this file, + must be a value between 0 and 0777. If not specified, + the volume defaultMode will be used. This might be + in conflict with other options that affect the file + mode, like fsGroup, and the result can be other mode + bits set.' + format: int32 + type: integer + path: + description: 'Required: Path is the relative path name + of the file to be created. Must not be absolute or + contain the ''..'' path. Must be utf-8 encoded. The + first item of the relative path must not start with + ''..''' + type: string + resourceFieldRef: + description: 'Selects a resource of the container: only + resources limits and requests (limits.cpu, limits.memory, + requests.cpu and requests.memory) are currently supported.' + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + description: Specifies the output format of the + exposed resources, defaults to "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + emptyDir: + description: 'EmptyDir represents a temporary directory that shares + a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' + properties: + medium: + description: 'What type of storage medium should back this + directory. The default is "" which means to use the node''s + default medium. Must be an empty string (default) or Memory. + More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' + type: string + sizeLimit: + description: 'Total amount of local storage required for this + EmptyDir volume. The size limit is also applicable for memory + medium. The maximum usage on memory medium EmptyDir would + be the minimum value between the SizeLimit specified here + and the sum of memory limits of all containers in a pod. + The default is nil which means that the limit is undefined. + More info: http://kubernetes.io/docs/user-guide/volumes#emptydir' + type: string + type: object + fc: + description: FC represents a Fibre Channel resource that is attached + to a kubelet's host machine and then exposed to the pod. + properties: + fsType: + description: 'Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + lun: + description: 'Optional: FC target lun number' + format: int32 + type: integer + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts.' + type: boolean + targetWWNs: + description: 'Optional: FC target worldwide names (WWNs)' + items: + type: string + type: array + wwids: + description: 'Optional: FC volume world wide identifiers (wwids) + Either wwids or combination of targetWWNs and lun must be + set, but not both simultaneously.' + items: + type: string + type: array + type: object + flexVolume: + description: FlexVolume represents a generic volume resource that + is provisioned/attached using an exec based plugin. + properties: + driver: + description: Driver is the name of the driver to use for this + volume. + type: string + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". The default filesystem depends on FlexVolume + script. + type: string + options: + additionalProperties: + type: string + description: 'Optional: Extra command options if any.' + type: object + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts.' + type: boolean + secretRef: + description: 'Optional: SecretRef is reference to the secret + object containing sensitive information to pass to the plugin + scripts. This may be empty if no secret object is specified. + If the secret object contains more than one secret, all + secrets are passed to the plugin scripts.' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + required: + - driver + type: object + flocker: + description: Flocker represents a Flocker volume attached to a + kubelet's host machine. This depends on the Flocker control + service being running + properties: + datasetName: + description: Name of the dataset stored as metadata -> name + on the dataset for Flocker should be considered as deprecated + type: string + datasetUUID: + description: UUID of the dataset. This is unique identifier + of a Flocker dataset + type: string + type: object + gcePersistentDisk: + description: 'GCEPersistentDisk represents a GCE Disk resource + that is attached to a kubelet''s host machine and then exposed + to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + properties: + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + partition: + description: 'The partition in the volume that you want to + mount. If omitted, the default is to mount by volume name. + Examples: For volume /dev/sda1, you specify the partition + as "1". Similarly, the volume partition for /dev/sda is + "0" (or you can leave the property empty). More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + format: int32 + type: integer + pdName: + description: 'Unique name of the PD resource in GCE. Used + to identify the disk in GCE. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + type: string + readOnly: + description: 'ReadOnly here will force the ReadOnly setting + in VolumeMounts. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + type: boolean + required: + - pdName + type: object + gitRepo: + description: 'GitRepo represents a git repository at a particular + revision. DEPRECATED: GitRepo is deprecated. To provision a + container with a git repo, mount an EmptyDir into an InitContainer + that clones the repo using git, then mount the EmptyDir into + the Pod''s container.' + properties: + directory: + description: Target directory name. Must not contain or start + with '..'. If '.' is supplied, the volume directory will + be the git repository. Otherwise, if specified, the volume + will contain the git repository in the subdirectory with + the given name. + type: string + repository: + description: Repository URL + type: string + revision: + description: Commit hash for the specified revision. + type: string + required: + - repository + type: object + glusterfs: + description: 'Glusterfs represents a Glusterfs mount on the host + that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/glusterfs/README.md' + properties: + endpoints: + description: 'EndpointsName is the endpoint name that details + Glusterfs topology. More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod' + type: string + path: + description: 'Path is the Glusterfs volume path. More info: + https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod' + type: string + readOnly: + description: 'ReadOnly here will force the Glusterfs volume + to be mounted with read-only permissions. Defaults to false. + More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod' + type: boolean + required: + - endpoints + - path + type: object + hostPath: + description: 'HostPath represents a pre-existing file or directory + on the host machine that is directly exposed to the container. + This is generally used for system agents or other privileged + things that are allowed to see the host machine. Most containers + will NOT need this. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath + --- TODO(jonesdl) We need to restrict who can use host directory + mounts and who can/can not mount host directories as read/write.' + properties: + path: + description: 'Path of the directory on the host. If the path + is a symlink, it will follow the link to the real path. + More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath' + type: string + type: + description: 'Type for HostPath Volume Defaults to "" More + info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath' + type: string + required: + - path + type: object + iscsi: + description: 'ISCSI represents an ISCSI Disk resource that is + attached to a kubelet''s host machine and then exposed to the + pod. More info: https://examples.k8s.io/volumes/iscsi/README.md' + properties: + chapAuthDiscovery: + description: whether support iSCSI Discovery CHAP authentication + type: boolean + chapAuthSession: + description: whether support iSCSI Session CHAP authentication + type: boolean + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#iscsi + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + initiatorName: + description: Custom iSCSI Initiator Name. If initiatorName + is specified with iscsiInterface simultaneously, new iSCSI + interface : will be created + for the connection. + type: string + iqn: + description: Target iSCSI Qualified Name. + type: string + iscsiInterface: + description: iSCSI Interface Name that uses an iSCSI transport. + Defaults to 'default' (tcp). + type: string + lun: + description: iSCSI Target Lun number. + format: int32 + type: integer + portals: + description: iSCSI Target Portal List. The portal is either + an IP or ip_addr:port if the port is other than default + (typically TCP ports 860 and 3260). + items: + type: string + type: array + readOnly: + description: ReadOnly here will force the ReadOnly setting + in VolumeMounts. Defaults to false. + type: boolean + secretRef: + description: CHAP Secret for iSCSI target and initiator authentication + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + targetPortal: + description: iSCSI Target Portal. The Portal is either an + IP or ip_addr:port if the port is other than default (typically + TCP ports 860 and 3260). + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + description: 'Volume''s name. Must be a DNS_LABEL and unique within + the pod. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + nfs: + description: 'NFS represents an NFS mount on the host that shares + a pod''s lifetime More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + properties: + path: + description: 'Path that is exported by the NFS server. More + info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + type: string + readOnly: + description: 'ReadOnly here will force the NFS export to be + mounted with read-only permissions. Defaults to false. More + info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + type: boolean + server: + description: 'Server is the hostname or IP address of the + NFS server. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + description: 'PersistentVolumeClaimVolumeSource represents a reference + to a PersistentVolumeClaim in the same namespace. More info: + https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + properties: + claimName: + description: 'ClaimName is the name of a PersistentVolumeClaim + in the same namespace as the pod using this volume. More + info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + type: string + readOnly: + description: Will force the ReadOnly setting in VolumeMounts. + Default false. + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + description: PhotonPersistentDisk represents a PhotonController + persistent disk attached and mounted on kubelets host machine + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + pdID: + description: ID that identifies Photon Controller persistent + disk + type: string + required: + - pdID + type: object + portworxVolume: + description: PortworxVolume represents a portworx volume attached + and mounted on kubelets host machine + properties: + fsType: + description: FSType represents the filesystem type to mount + Must be a filesystem type supported by the host operating + system. Ex. "ext4", "xfs". Implicitly inferred to be "ext4" + if unspecified. + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + volumeID: + description: VolumeID uniquely identifies a Portworx volume + type: string + required: + - volumeID + type: object + projected: + description: Items for all in one resources secrets, configmaps, + and downward API + properties: + defaultMode: + description: Mode bits to use on created files by default. + Must be a value between 0 and 0777. Directories within the + path are not affected by this setting. This might be in + conflict with other options that affect the file mode, like + fsGroup, and the result can be other mode bits set. + format: int32 + type: integer + sources: + description: list of volume projections + items: + description: Projection that may be projected along with + other supported volume types + properties: + configMap: + description: information about the configMap data to + project + properties: + items: + description: If unspecified, each key-value pair + in the Data field of the referenced ConfigMap + will be projected into the volume as a file whose + name is the key and content is the value. If specified, + the listed keys will be projected into the specified + paths, and unlisted keys will not be present. + If a key is specified which is not present in + the ConfigMap, the volume setup will error unless + it is marked optional. Paths must be relative + and may not contain the '..' path or start with + '..'. + items: + description: Maps a string key to a path within + a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on + this file, must be a value between 0 and + 0777. If not specified, the volume defaultMode + will be used. This might be in conflict + with other options that affect the file + mode, like fsGroup, and the result can be + other mode bits set.' + format: int32 + type: integer + path: + description: The relative path of the file + to map the key to. May not be an absolute + path. May not contain the path element '..'. + May not start with the string '..'. + type: string + required: + - key + - path + type: object + type: array + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + keys must be defined + type: boolean + type: object + downwardAPI: + description: information about the downwardAPI data + to project + properties: + items: + description: Items is a list of DownwardAPIVolume + file + items: + description: DownwardAPIVolumeFile represents + information to create the file containing the + pod field + properties: + fieldRef: + description: 'Required: Selects a field of + the pod: only annotations, labels, name + and namespace are supported.' + properties: + apiVersion: + description: Version of the schema the + FieldPath is written in terms of, defaults + to "v1". + type: string + fieldPath: + description: Path of the field to select + in the specified API version. + type: string + required: + - fieldPath + type: object + mode: + description: 'Optional: mode bits to use on + this file, must be a value between 0 and + 0777. If not specified, the volume defaultMode + will be used. This might be in conflict + with other options that affect the file + mode, like fsGroup, and the result can be + other mode bits set.' + format: int32 + type: integer + path: + description: 'Required: Path is the relative + path name of the file to be created. Must + not be absolute or contain the ''..'' path. + Must be utf-8 encoded. The first item of + the relative path must not start with ''..''' + type: string + resourceFieldRef: + description: 'Selects a resource of the container: + only resources limits and requests (limits.cpu, + limits.memory, requests.cpu and requests.memory) + are currently supported.' + properties: + containerName: + description: 'Container name: required + for volumes, optional for env vars' + type: string + divisor: + description: Specifies the output format + of the exposed resources, defaults to + "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + secret: + description: information about the secret data to project + properties: + items: + description: If unspecified, each key-value pair + in the Data field of the referenced Secret will + be projected into the volume as a file whose name + is the key and content is the value. If specified, + the listed keys will be projected into the specified + paths, and unlisted keys will not be present. + If a key is specified which is not present in + the Secret, the volume setup will error unless + it is marked optional. Paths must be relative + and may not contain the '..' path or start with + '..'. + items: + description: Maps a string key to a path within + a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on + this file, must be a value between 0 and + 0777. If not specified, the volume defaultMode + will be used. This might be in conflict + with other options that affect the file + mode, like fsGroup, and the result can be + other mode bits set.' + format: int32 + type: integer + path: + description: The relative path of the file + to map the key to. May not be an absolute + path. May not contain the path element '..'. + May not start with the string '..'. + type: string + required: + - key + - path + type: object + type: array + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + type: object + serviceAccountToken: + description: information about the serviceAccountToken + data to project + properties: + audience: + description: Audience is the intended audience of + the token. A recipient of a token must identify + itself with an identifier specified in the audience + of the token, and otherwise should reject the + token. The audience defaults to the identifier + of the apiserver. + type: string + expirationSeconds: + description: ExpirationSeconds is the requested + duration of validity of the service account token. + As the token approaches expiration, the kubelet + volume plugin will proactively rotate the service + account token. The kubelet will start trying to + rotate the token if the token is older than 80 + percent of its time to live or if the token is + older than 24 hours.Defaults to 1 hour and must + be at least 10 minutes. + format: int64 + type: integer + path: + description: Path is the path relative to the mount + point of the file to project the token into. + type: string + required: + - path + type: object + type: object + type: array + required: + - sources + type: object + quobyte: + description: Quobyte represents a Quobyte mount on the host that + shares a pod's lifetime + properties: + group: + description: Group to map volume access to Default is no group + type: string + readOnly: + description: ReadOnly here will force the Quobyte volume to + be mounted with read-only permissions. Defaults to false. + type: boolean + registry: + description: Registry represents a single or multiple Quobyte + Registry services specified as a string as host:port pair + (multiple entries are separated with commas) which acts + as the central registry for volumes + type: string + tenant: + description: Tenant owning the given Quobyte volume in the + Backend Used with dynamically provisioned Quobyte volumes, + value is set by the plugin + type: string + user: + description: User to map volume access to Defaults to serivceaccount + user + type: string + volume: + description: Volume is a string that references an already + created Quobyte volume by name. + type: string + required: + - registry + - volume + type: object + rbd: + description: 'RBD represents a Rados Block Device mount on the + host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md' + properties: + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#rbd + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + image: + description: 'The rados image name. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + keyring: + description: 'Keyring is the path to key ring for RBDUser. + Default is /etc/ceph/keyring. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + monitors: + description: 'A collection of Ceph monitors. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + items: + type: string + type: array + pool: + description: 'The rados pool name. Default is rbd. More info: + https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + readOnly: + description: 'ReadOnly here will force the ReadOnly setting + in VolumeMounts. Defaults to false. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: boolean + secretRef: + description: 'SecretRef is name of the authentication secret + for RBDUser. If provided overrides keyring. Default is nil. + More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + user: + description: 'The rados user name. Default is admin. More + info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + required: + - image + - monitors + type: object + scaleIO: + description: ScaleIO represents a ScaleIO persistent volume attached + and mounted on Kubernetes nodes. + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Default is "xfs". + type: string + gateway: + description: The host address of the ScaleIO API Gateway. + type: string + protectionDomain: + description: The name of the ScaleIO Protection Domain for + the configured storage. + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + secretRef: + description: SecretRef references to the secret for ScaleIO + user and other sensitive information. If this is not provided, + Login operation will fail. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + sslEnabled: + description: Flag to enable/disable SSL communication with + Gateway, default false + type: boolean + storageMode: + description: Indicates whether the storage for a volume should + be ThickProvisioned or ThinProvisioned. Default is ThinProvisioned. + type: string + storagePool: + description: The ScaleIO Storage Pool associated with the + protection domain. + type: string + system: + description: The name of the storage system as configured + in ScaleIO. + type: string + volumeName: + description: The name of a volume already created in the ScaleIO + system that is associated with this volume source. + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + description: 'Secret represents a secret that should populate + this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret' + properties: + defaultMode: + description: 'Optional: mode bits to use on created files + by default. Must be a value between 0 and 0777. Defaults + to 0644. Directories within the path are not affected by + this setting. This might be in conflict with other options + that affect the file mode, like fsGroup, and the result + can be other mode bits set.' + format: int32 + type: integer + items: + description: If unspecified, each key-value pair in the Data + field of the referenced Secret will be projected into the + volume as a file whose name is the key and content is the + value. If specified, the listed keys will be projected into + the specified paths, and unlisted keys will not be present. + If a key is specified which is not present in the Secret, + the volume setup will error unless it is marked optional. + Paths must be relative and may not contain the '..' path + or start with '..'. + items: + description: Maps a string key to a path within a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on this file, + must be a value between 0 and 0777. If not specified, + the volume defaultMode will be used. This might be + in conflict with other options that affect the file + mode, like fsGroup, and the result can be other mode + bits set.' + format: int32 + type: integer + path: + description: The relative path of the file to map the + key to. May not be an absolute path. May not contain + the path element '..'. May not start with the string + '..'. + type: string + required: + - key + - path + type: object + type: array + optional: + description: Specify whether the Secret or its keys must be + defined + type: boolean + secretName: + description: 'Name of the secret in the pod''s namespace to + use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret' + type: string + type: object + storageos: + description: StorageOS represents a StorageOS volume attached + and mounted on Kubernetes nodes. + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + secretRef: + description: SecretRef specifies the secret to use for obtaining + the StorageOS API credentials. If not specified, default + values will be attempted. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + volumeName: + description: VolumeName is the human-readable name of the + StorageOS volume. Volume names are only unique within a + namespace. + type: string + volumeNamespace: + description: VolumeNamespace specifies the scope of the volume + within StorageOS. If no namespace is specified then the + Pod's namespace will be used. This allows the Kubernetes + name scoping to be mirrored within StorageOS for tighter + integration. Set VolumeName to any name to override the + default behaviour. Set to "default" if you are not using + namespaces within StorageOS. Namespaces that do not pre-exist + within StorageOS will be created. + type: string + type: object + vsphereVolume: + description: VsphereVolume represents a vSphere volume attached + and mounted on kubelets host machine + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + storagePolicyID: + description: Storage Policy Based Management (SPBM) profile + ID associated with the StoragePolicyName. + type: string + storagePolicyName: + description: Storage Policy Based Management (SPBM) profile + name. + type: string + volumePath: + description: Path that identifies vSphere volume vmdk + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + walCompression: + description: Enable compression of the write-ahead log using Snappy. + This flag is only available in versions of Prometheus >= 2.11.0. + type: boolean + type: object + status: + description: 'Most recent observed status of the Prometheus cluster. Read-only. + Not included when requesting from the apiserver, only from the Prometheus + Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' + properties: + availableReplicas: + description: Total number of available pods (ready for at least minReadySeconds) + targeted by this Prometheus deployment. + format: int32 + type: integer + paused: + description: Represents whether any actions on the underlaying managed + objects are being performed. Only delete actions will be performed. + type: boolean + replicas: + description: Total number of non-terminated pods targeted by this Prometheus + deployment (their labels match the selector). + format: int32 + type: integer + unavailableReplicas: + description: Total number of unavailable pods targeted by this Prometheus + deployment. + format: int32 + type: integer + updatedReplicas: + description: Total number of non-terminated pods targeted by this Prometheus + deployment that have the desired version spec. + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/crd-manifest/crd-prometheus.yaml + - content: | + # https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.38/example/prometheus-operator-crd/monitoring.coreos.com_prometheusrules.yaml + apiVersion: apiextensions.k8s.io/v1beta1 + kind: CustomResourceDefinition + metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.2.4 + creationTimestamp: null + name: prometheusrules.monitoring.coreos.com + spec: + group: monitoring.coreos.com + names: + kind: PrometheusRule + listKind: PrometheusRuleList + plural: prometheusrules + singular: prometheusrule + preserveUnknownFields: false + scope: Namespaced + validation: + openAPIV3Schema: + description: PrometheusRule defines alerting rules for a Prometheus instance + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: Specification of desired alerting rule definitions for Prometheus. + properties: + groups: + description: Content of Prometheus rule file + items: + description: 'RuleGroup is a list of sequentially evaluated recording + and alerting rules. Note: PartialResponseStrategy is only used by + ThanosRuler and will be ignored by Prometheus instances. Valid + values for this field are ''warn'' or ''abort''. More info: https://github.com/thanos-io/thanos/blob/master/docs/components/rule.md#partial-response' + properties: + interval: + type: string + name: + type: string + partial_response_strategy: + type: string + rules: + items: + description: Rule describes an alerting or recording rule. + properties: + alert: + type: string + annotations: + additionalProperties: + type: string + type: object + expr: + anyOf: + - type: integer + - type: string + x-kubernetes-int-or-string: true + for: + type: string + labels: + additionalProperties: + type: string + type: object + record: + type: string + required: + - expr + type: object + type: array + required: + - name + - rules + type: object + type: array + type: object + required: + - spec + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/crd-manifest/crd-prometheusrules.yaml + - content: | + # https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.38/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml + apiVersion: apiextensions.k8s.io/v1beta1 + kind: CustomResourceDefinition + metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.2.4 + creationTimestamp: null + name: servicemonitors.monitoring.coreos.com + spec: + group: monitoring.coreos.com + names: + kind: ServiceMonitor + listKind: ServiceMonitorList + plural: servicemonitors + singular: servicemonitor + preserveUnknownFields: false + scope: Namespaced + validation: + openAPIV3Schema: + description: ServiceMonitor defines monitoring for a set of services. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: Specification of desired Service selection for target discovery + by Prometheus. + properties: + endpoints: + description: A list of endpoints allowed as part of this ServiceMonitor. + items: + description: Endpoint defines a scrapeable endpoint serving Prometheus + metrics. + properties: + basicAuth: + description: 'BasicAuth allow an endpoint to authenticate over + basic authentication More info: https://prometheus.io/docs/operating/configuration/#endpoints' + properties: + password: + description: The secret in the service monitor namespace that + contains the password for authentication. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + username: + description: The secret in the service monitor namespace that + contains the username for authentication. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + bearerTokenFile: + description: File to read bearer token for scraping targets. + type: string + bearerTokenSecret: + description: Secret to mount to read bearer token for scraping + targets. The secret needs to be in the same namespace as the + service monitor and accessible by the Prometheus Operator. + properties: + key: + description: The key of the secret to select from. Must be + a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be + defined + type: boolean + required: + - key + type: object + honorLabels: + description: HonorLabels chooses the metric's labels on collisions + with target labels. + type: boolean + honorTimestamps: + description: HonorTimestamps controls whether Prometheus respects + the timestamps present in scraped data. + type: boolean + interval: + description: Interval at which metrics should be scraped + type: string + metricRelabelings: + description: MetricRelabelConfigs to apply to samples before ingestion. + items: + description: 'RelabelConfig allows dynamic rewriting of the + label set, being applied to samples before ingestion. It defines + ``-section of Prometheus configuration. + More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs' + properties: + action: + description: Action to perform based on regex matching. + Default is 'replace' + type: string + modulus: + description: Modulus to take of the hash of the source label + values. + format: int64 + type: integer + regex: + description: Regular expression against which the extracted + value is matched. Default is '(.*)' + type: string + replacement: + description: Replacement value against which a regex replace + is performed if the regular expression matches. Regex + capture groups are available. Default is '$1' + type: string + separator: + description: Separator placed between concatenated source + label values. default is ';'. + type: string + sourceLabels: + description: The source labels select values from existing + labels. Their content is concatenated using the configured + separator and matched against the configured regular expression + for the replace, keep, and drop actions. + items: + type: string + type: array + targetLabel: + description: Label to which the resulting value is written + in a replace action. It is mandatory for replace actions. + Regex capture groups are available. + type: string + type: object + type: array + params: + additionalProperties: + items: + type: string + type: array + description: Optional HTTP URL parameters + type: object + path: + description: HTTP path to scrape for metrics. + type: string + port: + description: Name of the service port this endpoint refers to. + Mutually exclusive with targetPort. + type: string + proxyUrl: + description: ProxyURL eg http://proxyserver:2195 Directs scrapes + to proxy through this endpoint. + type: string + relabelings: + description: 'RelabelConfigs to apply to samples before scraping. + More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config' + items: + description: 'RelabelConfig allows dynamic rewriting of the + label set, being applied to samples before ingestion. It defines + ``-section of Prometheus configuration. + More info: https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs' + properties: + action: + description: Action to perform based on regex matching. + Default is 'replace' + type: string + modulus: + description: Modulus to take of the hash of the source label + values. + format: int64 + type: integer + regex: + description: Regular expression against which the extracted + value is matched. Default is '(.*)' + type: string + replacement: + description: Replacement value against which a regex replace + is performed if the regular expression matches. Regex + capture groups are available. Default is '$1' + type: string + separator: + description: Separator placed between concatenated source + label values. default is ';'. + type: string + sourceLabels: + description: The source labels select values from existing + labels. Their content is concatenated using the configured + separator and matched against the configured regular expression + for the replace, keep, and drop actions. + items: + type: string + type: array + targetLabel: + description: Label to which the resulting value is written + in a replace action. It is mandatory for replace actions. + Regex capture groups are available. + type: string + type: object + type: array + scheme: + description: HTTP scheme to use for scraping. + type: string + scrapeTimeout: + description: Timeout after which the scrape is ended + type: string + targetPort: + anyOf: + - type: integer + - type: string + description: Name or number of the pod port this endpoint refers + to. Mutually exclusive with port. + x-kubernetes-int-or-string: true + tlsConfig: + description: TLS configuration to use when scraping the endpoint + properties: + ca: + description: Stuct containing the CA cert to use for the targets. + properties: + configMap: + description: ConfigMap containing data to use for the + targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + caFile: + description: Path to the CA cert in the Prometheus container + to use for the targets. + type: string + cert: + description: Struct containing the client cert file for the + targets. + properties: + configMap: + description: ConfigMap containing data to use for the + targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + certFile: + description: Path to the client cert file in the Prometheus + container for the targets. + type: string + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keyFile: + description: Path to the client key file in the Prometheus + container for the targets. + type: string + keySecret: + description: Secret containing the client key file for the + targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the targets. + type: string + type: object + type: object + type: array + jobLabel: + description: The label to use to retrieve the job name from. + type: string + namespaceSelector: + description: Selector to select which namespaces the Endpoints objects + are discovered from. + properties: + any: + description: Boolean describing whether all namespaces are selected + in contrast to a list restricting them. + type: boolean + matchNames: + description: List of namespace names. + items: + type: string + type: array + type: object + podTargetLabels: + description: PodTargetLabels transfers labels on the Kubernetes Pod + onto the target. + items: + type: string + type: array + sampleLimit: + description: SampleLimit defines per-scrape limit on number of scraped + samples that will be accepted. + format: int64 + type: integer + selector: + description: Selector to select Endpoints objects. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + targetLabels: + description: TargetLabels transfers labels on the Kubernetes Service + onto the target. + items: + type: string + type: array + required: + - endpoints + - selector + type: object + required: + - spec + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/crd-manifest/crd-servicemonitor.yaml + - content: | + # https://raw.githubusercontent.com/coreos/prometheus-operator/release-0.38/example/prometheus-operator-crd/monitoring.coreos.com_thanosrulers.yaml + apiVersion: apiextensions.k8s.io/v1beta1 + kind: CustomResourceDefinition + metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.2.4 + creationTimestamp: null + name: thanosrulers.monitoring.coreos.com + spec: + group: monitoring.coreos.com + names: + kind: ThanosRuler + listKind: ThanosRulerList + plural: thanosrulers + singular: thanosruler + preserveUnknownFields: false + scope: Namespaced + validation: + openAPIV3Schema: + description: ThanosRuler defines a ThanosRuler deployment. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this representation + of an object. Servers should convert recognized schemas to the latest + internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource this + object represents. Servers may infer this from the endpoint the client + submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + type: object + spec: + description: 'Specification of the desired behavior of the ThanosRuler cluster. + More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' + properties: + affinity: + description: If specified, the pod's scheduling constraints. + properties: + nodeAffinity: + description: Describes node affinity scheduling rules for the pod. + properties: + preferredDuringSchedulingIgnoredDuringExecution: + description: The scheduler will prefer to schedule pods to nodes + that satisfy the affinity expressions specified by this field, + but it may choose a node that violates one or more of the + expressions. The node that is most preferred is the one with + the greatest sum of weights, i.e. for each node that meets + all of the scheduling requirements (resource request, requiredDuringScheduling + affinity expressions, etc.), compute a sum by iterating through + the elements of this field and adding "weight" to the sum + if the node matches the corresponding matchExpressions; the + node(s) with the highest sum are the most preferred. + items: + description: An empty preferred scheduling term matches all + objects with implicit weight 0 (i.e. it's a no-op). A null + preferred scheduling term matches no objects (i.e. is also + a no-op). + properties: + preference: + description: A node selector term, associated with the + corresponding weight. + properties: + matchExpressions: + description: A list of node selector requirements + by node's labels. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + description: A list of node selector requirements + by node's fields. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + description: Weight associated with matching the corresponding + nodeSelectorTerm, in the range 1-100. + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + description: If the affinity requirements specified by this + field are not met at scheduling time, the pod will not be + scheduled onto the node. If the affinity requirements specified + by this field cease to be met at some point during pod execution + (e.g. due to an update), the system may or may not try to + eventually evict the pod from its node. + properties: + nodeSelectorTerms: + description: Required. A list of node selector terms. The + terms are ORed. + items: + description: A null or empty node selector term matches + no objects. The requirements of them are ANDed. The + TopologySelectorTerm type implements a subset of the + NodeSelectorTerm. + properties: + matchExpressions: + description: A list of node selector requirements + by node's labels. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + description: A list of node selector requirements + by node's fields. + items: + description: A node selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: The label key that the selector + applies to. + type: string + operator: + description: Represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists, DoesNotExist. Gt, and Lt. + type: string + values: + description: An array of string values. If the + operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be + empty. If the operator is Gt or Lt, the values + array must have a single element, which will + be interpreted as an integer. This array is + replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + description: Describes pod affinity scheduling rules (e.g. co-locate + this pod in the same node, zone, etc. as some other pod(s)). + properties: + preferredDuringSchedulingIgnoredDuringExecution: + description: The scheduler will prefer to schedule pods to nodes + that satisfy the affinity expressions specified by this field, + but it may choose a node that violates one or more of the + expressions. The node that is most preferred is the one with + the greatest sum of weights, i.e. for each node that meets + all of the scheduling requirements (resource request, requiredDuringScheduling + affinity expressions, etc.), compute a sum by iterating through + the elements of this field and adding "weight" to the sum + if the node has pods which matches the corresponding podAffinityTerm; + the node(s) with the highest sum are the most preferred. + items: + description: The weights of all of the matched WeightedPodAffinityTerm + fields are added per-node to find the most preferred node(s) + properties: + podAffinityTerm: + description: Required. A pod affinity term, associated + with the corresponding weight. + properties: + labelSelector: + description: A label query over a set of resources, + in this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label + selector requirements. The requirements are + ANDed. + items: + description: A label selector requirement is + a selector that contains values, a key, and + an operator that relates the key and values. + properties: + key: + description: key is the label key that the + selector applies to. + type: string + operator: + description: operator represents a key's + relationship to a set of values. Valid + operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string + values. If the operator is In or NotIn, + the values array must be non-empty. If + the operator is Exists or DoesNotExist, + the values array must be empty. This array + is replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} + pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, + whose key field is "key", the operator is "In", + and the values array contains only "value". + The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces + the labelSelector applies to (matches against); + null or empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods + matching the labelSelector in the specified namespaces, + where co-located is defined as running on a node + whose value of the label with key topologyKey matches + that of any node on which any of the selected pods + is running. Empty topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + weight: + description: weight associated with matching the corresponding + podAffinityTerm, in the range 1-100. + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + description: If the affinity requirements specified by this + field are not met at scheduling time, the pod will not be + scheduled onto the node. If the affinity requirements specified + by this field cease to be met at some point during pod execution + (e.g. due to a pod label update), the system may or may not + try to eventually evict the pod from its node. When there + are multiple elements, the lists of nodes corresponding to + each podAffinityTerm are intersected, i.e. all terms must + be satisfied. + items: + description: Defines a set of pods (namely those matching + the labelSelector relative to the given namespace(s)) that + this pod should be co-located (affinity) or not co-located + (anti-affinity) with, where co-located is defined as running + on a node whose value of the label with key + matches that of any node on which a pod of the set of pods + is running + properties: + labelSelector: + description: A label query over a set of resources, in + this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values + array must be non-empty. If the operator is + Exists or DoesNotExist, the values array must + be empty. This array is replaced during a + strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces the + labelSelector applies to (matches against); null or + empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods matching + the labelSelector in the specified namespaces, where + co-located is defined as running on a node whose value + of the label with key topologyKey matches that of any + node on which any of the selected pods is running. Empty + topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + description: Describes pod anti-affinity scheduling rules (e.g. + avoid putting this pod in the same node, zone, etc. as some other + pod(s)). + properties: + preferredDuringSchedulingIgnoredDuringExecution: + description: The scheduler will prefer to schedule pods to nodes + that satisfy the anti-affinity expressions specified by this + field, but it may choose a node that violates one or more + of the expressions. The node that is most preferred is the + one with the greatest sum of weights, i.e. for each node that + meets all of the scheduling requirements (resource request, + requiredDuringScheduling anti-affinity expressions, etc.), + compute a sum by iterating through the elements of this field + and adding "weight" to the sum if the node has pods which + matches the corresponding podAffinityTerm; the node(s) with + the highest sum are the most preferred. + items: + description: The weights of all of the matched WeightedPodAffinityTerm + fields are added per-node to find the most preferred node(s) + properties: + podAffinityTerm: + description: Required. A pod affinity term, associated + with the corresponding weight. + properties: + labelSelector: + description: A label query over a set of resources, + in this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label + selector requirements. The requirements are + ANDed. + items: + description: A label selector requirement is + a selector that contains values, a key, and + an operator that relates the key and values. + properties: + key: + description: key is the label key that the + selector applies to. + type: string + operator: + description: operator represents a key's + relationship to a set of values. Valid + operators are In, NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string + values. If the operator is In or NotIn, + the values array must be non-empty. If + the operator is Exists or DoesNotExist, + the values array must be empty. This array + is replaced during a strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} + pairs. A single {key,value} in the matchLabels + map is equivalent to an element of matchExpressions, + whose key field is "key", the operator is "In", + and the values array contains only "value". + The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces + the labelSelector applies to (matches against); + null or empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods + matching the labelSelector in the specified namespaces, + where co-located is defined as running on a node + whose value of the label with key topologyKey matches + that of any node on which any of the selected pods + is running. Empty topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + weight: + description: weight associated with matching the corresponding + podAffinityTerm, in the range 1-100. + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + description: If the anti-affinity requirements specified by + this field are not met at scheduling time, the pod will not + be scheduled onto the node. If the anti-affinity requirements + specified by this field cease to be met at some point during + pod execution (e.g. due to a pod label update), the system + may or may not try to eventually evict the pod from its node. + When there are multiple elements, the lists of nodes corresponding + to each podAffinityTerm are intersected, i.e. all terms must + be satisfied. + items: + description: Defines a set of pods (namely those matching + the labelSelector relative to the given namespace(s)) that + this pod should be co-located (affinity) or not co-located + (anti-affinity) with, where co-located is defined as running + on a node whose value of the label with key + matches that of any node on which a pod of the set of pods + is running + properties: + labelSelector: + description: A label query over a set of resources, in + this case pods. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values + array must be non-empty. If the operator is + Exists or DoesNotExist, the values array must + be empty. This array is replaced during a + strategic merge patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + namespaces: + description: namespaces specifies which namespaces the + labelSelector applies to (matches against); null or + empty list means "this pod's namespace" + items: + type: string + type: array + topologyKey: + description: This pod should be co-located (affinity) + or not co-located (anti-affinity) with the pods matching + the labelSelector in the specified namespaces, where + co-located is defined as running on a node whose value + of the label with key topologyKey matches that of any + node on which any of the selected pods is running. Empty + topologyKey is not allowed. + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + alertDropLabels: + description: AlertDropLabels configure the label names which should + be dropped in ThanosRuler alerts. If `labels` field is not provided, + `thanos_ruler_replica` will be dropped in alerts by default. + items: + type: string + type: array + alertQueryUrl: + description: The external Query URL the Thanos Ruler will set in the + 'Source' field of all alerts. Maps to the '--alert.query-url' CLI + arg. + type: string + alertmanagersConfig: + description: Define configuration for connecting to alertmanager. Only + available with thanos v0.10.0 and higher. Maps to the `alertmanagers.config` + arg. + properties: + key: + description: The key of the secret to select from. Must be a valid + secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + alertmanagersUrl: + description: 'Define URLs to send alerts to Alertmanager. For Thanos + v0.10.0 and higher, AlertManagersConfig should be used instead. Note: + this field will be ignored if AlertManagersConfig is specified. Maps + to the `alertmanagers.url` arg.' + items: + type: string + type: array + containers: + description: 'Containers allows injecting additional containers or modifying + operator generated containers. This can be used to allow adding an + authentication proxy to a ThanosRuler pod or to change the behavior + of an operator generated container. Containers described here modify + an operator generated container if they share the same name and modifications + are done via a strategic merge patch. The current container names + are: `thanos-ruler` and `rules-configmap-reloader`. Overriding containers + is entirely outside the scope of what the maintainers will support + and by doing so, you accept that this behaviour may break at any time + without notice.' + items: + description: A single application container that you want to run within + a pod. + properties: + args: + description: 'Arguments to the entrypoint. The docker image''s + CMD is used if this is not provided. Variable references $(VAR_NAME) + are expanded using the container''s environment. If a variable + cannot be resolved, the reference in the input string will be + unchanged. The $(VAR_NAME) syntax can be escaped with a double + $$, ie: $$(VAR_NAME). Escaped references will never be expanded, + regardless of whether the variable exists or not. Cannot be + updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + command: + description: 'Entrypoint array. Not executed within a shell. The + docker image''s ENTRYPOINT is used if this is not provided. + Variable references $(VAR_NAME) are expanded using the container''s + environment. If a variable cannot be resolved, the reference + in the input string will be unchanged. The $(VAR_NAME) syntax + can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable exists + or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + env: + description: List of environment variables to set in the container. + Cannot be updated. + items: + description: EnvVar represents an environment variable present + in a Container. + properties: + name: + description: Name of the environment variable. Must be a + C_IDENTIFIER. + type: string + value: + description: 'Variable references $(VAR_NAME) are expanded + using the previous defined environment variables in the + container and any service environment variables. If a + variable cannot be resolved, the reference in the input + string will be unchanged. The $(VAR_NAME) syntax can be + escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable + exists or not. Defaults to "".' + type: string + valueFrom: + description: Source for the environment variable's value. + Cannot be used if value is not empty. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + fieldRef: + description: 'Selects a field of the pod: supports metadata.name, + metadata.namespace, metadata.labels, metadata.annotations, + spec.nodeName, spec.serviceAccountName, status.hostIP, + status.podIP, status.podIPs.' + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in the + specified API version. + type: string + required: + - fieldPath + type: object + resourceFieldRef: + description: 'Selects a resource of the container: only + resources limits and requests (limits.cpu, limits.memory, + limits.ephemeral-storage, requests.cpu, requests.memory + and requests.ephemeral-storage) are currently supported.' + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + description: Specifies the output format of the + exposed resources, defaults to "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + secretKeyRef: + description: Selects a key of a secret in the pod's + namespace + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + description: List of sources to populate environment variables + in the container. The keys defined within a source must be a + C_IDENTIFIER. All invalid keys will be reported as an event + when the container is starting. When a key exists in multiple + sources, the value associated with the last source will take + precedence. Values defined by an Env with a duplicate key will + take precedence. Cannot be updated. + items: + description: EnvFromSource represents the source of a set of + ConfigMaps + properties: + configMapRef: + description: The ConfigMap to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap must be defined + type: boolean + type: object + prefix: + description: An optional identifier to prepend to each key + in the ConfigMap. Must be a C_IDENTIFIER. + type: string + secretRef: + description: The Secret to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret must be defined + type: boolean + type: object + type: object + type: array + image: + description: 'Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images + This field is optional to allow higher level config management + to default or override container images in workload controllers + like Deployments and StatefulSets.' + type: string + imagePullPolicy: + description: 'Image pull policy. One of Always, Never, IfNotPresent. + Defaults to Always if :latest tag is specified, or IfNotPresent + otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images' + type: string + lifecycle: + description: Actions that the management system should take in + response to container lifecycle events. Cannot be updated. + properties: + postStart: + description: 'PostStart is called immediately after a container + is created. If the handler fails, the container is terminated + and restarted according to its restart policy. Other management + of the container blocks until the hook completes. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + description: 'PreStop is called immediately before a container + is terminated due to an API request or management event + such as liveness/startup probe failure, preemption, resource + contention, etc. The handler is not called if the container + crashes or exits. The reason for termination is passed to + the handler. The Pod''s termination grace period countdown + begins before the PreStop hooked is executed. Regardless + of the outcome of the handler, the container will eventually + terminate within the Pod''s termination grace period. Other + management of the container blocks until the hook completes + or until the termination grace period is reached. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + description: 'Periodic probe of container liveness. Container + will be restarted if the probe fails. Cannot be updated. More + info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + name: + description: Name of the container specified as a DNS_LABEL. Each + container in a pod must have a unique name (DNS_LABEL). Cannot + be updated. + type: string + ports: + description: List of ports to expose from the container. Exposing + a port here gives the system additional information about the + network connections a container uses, but is primarily informational. + Not specifying a port here DOES NOT prevent that port from being + exposed. Any port which is listening on the default "0.0.0.0" + address inside a container will be accessible from the network. + Cannot be updated. + items: + description: ContainerPort represents a network port in a single + container. + properties: + containerPort: + description: Number of port to expose on the pod's IP address. + This must be a valid port number, 0 < x < 65536. + format: int32 + type: integer + hostIP: + description: What host IP to bind the external port to. + type: string + hostPort: + description: Number of port to expose on the host. If specified, + this must be a valid port number, 0 < x < 65536. If HostNetwork + is specified, this must match ContainerPort. Most containers + do not need this. + format: int32 + type: integer + name: + description: If specified, this must be an IANA_SVC_NAME + and unique within the pod. Each named port in a pod must + have a unique name. Name for the port that can be referred + to by services. + type: string + protocol: + description: Protocol for port. Must be UDP, TCP, or SCTP. + Defaults to "TCP". + type: string + required: + - containerPort + type: object + type: array + readinessProbe: + description: 'Periodic probe of container service readiness. Container + will be removed from service endpoints if the probe fails. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + resources: + description: 'Compute Resources required by this container. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute + resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute + resources required. If Requests is omitted for a container, + it defaults to Limits if that is explicitly specified, otherwise + to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + securityContext: + description: 'Security options the pod should run with. More info: + https://kubernetes.io/docs/concepts/policy/security-context/ + More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/' + properties: + allowPrivilegeEscalation: + description: 'AllowPrivilegeEscalation controls whether a + process can gain more privileges than its parent process. + This bool directly controls if the no_new_privs flag will + be set on the container process. AllowPrivilegeEscalation + is true always when the container is: 1) run as Privileged + 2) has CAP_SYS_ADMIN' + type: boolean + capabilities: + description: The capabilities to add/drop when running containers. + Defaults to the default set of capabilities granted by the + container runtime. + properties: + add: + description: Added capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + drop: + description: Removed capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + type: object + privileged: + description: Run container in privileged mode. Processes in + privileged containers are essentially equivalent to root + on the host. Defaults to false. + type: boolean + procMount: + description: procMount denotes the type of proc mount to use + for the containers. The default is DefaultProcMount which + uses the container runtime defaults for readonly paths and + masked paths. This requires the ProcMountType feature flag + to be enabled. + type: string + readOnlyRootFilesystem: + description: Whether this container has a read-only root filesystem. + Default is false. + type: boolean + runAsGroup: + description: The GID to run the entrypoint of the container + process. Uses runtime default if unset. May also be set + in PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + format: int64 + type: integer + runAsNonRoot: + description: Indicates that the container must run as a non-root + user. If true, the Kubelet will validate the image at runtime + to ensure that it does not run as UID 0 (root) and fail + to start the container if it does. If unset or false, no + such validation will be performed. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + type: boolean + runAsUser: + description: The UID to run the entrypoint of the container + process. Defaults to user specified in image metadata if + unspecified. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + format: int64 + type: integer + seLinuxOptions: + description: The SELinux context to be applied to the container. + If unspecified, the container runtime will allocate a random + SELinux context for each container. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + properties: + level: + description: Level is SELinux level label that applies + to the container. + type: string + role: + description: Role is a SELinux role label that applies + to the container. + type: string + type: + description: Type is a SELinux type label that applies + to the container. + type: string + user: + description: User is a SELinux user label that applies + to the container. + type: string + type: object + windowsOptions: + description: The Windows specific settings applied to all + containers. If unspecified, the options from the PodSecurityContext + will be used. If set in both SecurityContext and PodSecurityContext, + the value specified in SecurityContext takes precedence. + properties: + gmsaCredentialSpec: + description: GMSACredentialSpec is where the GMSA admission + webhook (https://github.com/kubernetes-sigs/windows-gmsa) + inlines the contents of the GMSA credential spec named + by the GMSACredentialSpecName field. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + gmsaCredentialSpecName: + description: GMSACredentialSpecName is the name of the + GMSA credential spec to use. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + runAsUserName: + description: The UserName in Windows to run the entrypoint + of the container process. Defaults to the user specified + in image metadata if unspecified. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. This field is beta-level and may be + disabled with the WindowsRunAsUserName feature flag. + type: string + type: object + type: object + startupProbe: + description: 'StartupProbe indicates that the Pod has successfully + initialized. If specified, no other probes are executed until + this completes successfully. If this probe fails, the Pod will + be restarted, just as if the livenessProbe failed. This can + be used to provide different probe parameters at the beginning + of a Pod''s lifecycle, when it might take a long time to load + data or warm a cache, than during steady-state operation. This + cannot be updated. This is an alpha feature enabled by the StartupProbe + feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + stdin: + description: Whether this container should allocate a buffer for + stdin in the container runtime. If this is not set, reads from + stdin in the container will always result in EOF. Default is + false. + type: boolean + stdinOnce: + description: Whether the container runtime should close the stdin + channel after it has been opened by a single attach. When stdin + is true the stdin stream will remain open across multiple attach + sessions. If stdinOnce is set to true, stdin is opened on container + start, is empty until the first client attaches to stdin, and + then remains open and accepts data until the client disconnects, + at which time stdin is closed and remains closed until the container + is restarted. If this flag is false, a container processes that + reads from stdin will never receive an EOF. Default is false + type: boolean + terminationMessagePath: + description: 'Optional: Path at which the file to which the container''s + termination message will be written is mounted into the container''s + filesystem. Message written is intended to be brief final status, + such as an assertion failure message. Will be truncated by the + node if greater than 4096 bytes. The total message length across + all containers will be limited to 12kb. Defaults to /dev/termination-log. + Cannot be updated.' + type: string + terminationMessagePolicy: + description: Indicate how the termination message should be populated. + File will use the contents of terminationMessagePath to populate + the container status message on both success and failure. FallbackToLogsOnError + will use the last chunk of container log output if the termination + message file is empty and the container exited with an error. + The log output is limited to 2048 bytes or 80 lines, whichever + is smaller. Defaults to File. Cannot be updated. + type: string + tty: + description: Whether this container should allocate a TTY for + itself, also requires 'stdin' to be true. Default is false. + type: boolean + volumeDevices: + description: volumeDevices is the list of block devices to be + used by the container. This is a beta feature. + items: + description: volumeDevice describes a mapping of a raw block + device within a container. + properties: + devicePath: + description: devicePath is the path inside of the container + that the device will be mapped to. + type: string + name: + description: name must match the name of a persistentVolumeClaim + in the pod + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + description: Pod volumes to mount into the container's filesystem. + Cannot be updated. + items: + description: VolumeMount describes a mounting of a Volume within + a container. + properties: + mountPath: + description: Path within the container at which the volume + should be mounted. Must not contain ':'. + type: string + mountPropagation: + description: mountPropagation determines how mounts are + propagated from the host to container and the other way + around. When not set, MountPropagationNone is used. This + field is beta in 1.10. + type: string + name: + description: This must match the Name of a Volume. + type: string + readOnly: + description: Mounted read-only if true, read-write otherwise + (false or unspecified). Defaults to false. + type: boolean + subPath: + description: Path within the volume from which the container's + volume should be mounted. Defaults to "" (volume's root). + type: string + subPathExpr: + description: Expanded path within the volume from which + the container's volume should be mounted. Behaves similarly + to SubPath but environment variable references $(VAR_NAME) + are expanded using the container's environment. Defaults + to "" (volume's root). SubPathExpr and SubPath are mutually + exclusive. + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + description: Container's working directory. If not specified, + the container runtime's default will be used, which might be + configured in the container image. Cannot be updated. + type: string + required: + - name + type: object + type: array + enforcedNamespaceLabel: + description: EnforcedNamespaceLabel enforces adding a namespace label + of origin for each alert and metric that is user created. The label + value will always be the namespace of the object that is being created. + type: string + evaluationInterval: + description: Interval between consecutive evaluations. + type: string + externalPrefix: + description: The external URL the Thanos Ruler instances will be available + under. This is necessary to generate correct URLs. This is necessary + if Thanos Ruler is not served from root of a DNS name. + type: string + grpcServerTlsConfig: + description: 'GRPCServerTLSConfig configures the gRPC server from which + Thanos Querier reads recorded rule data. Note: Currently only the + CAFile, CertFile, and KeyFile fields are supported. Maps to the ''--grpc-server-tls-*'' + CLI args.' + properties: + ca: + description: Stuct containing the CA cert to use for the targets. + properties: + configMap: + description: ConfigMap containing data to use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap or its key must + be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + caFile: + description: Path to the CA cert in the Prometheus container to + use for the targets. + type: string + cert: + description: Struct containing the client cert file for the targets. + properties: + configMap: + description: ConfigMap containing data to use for the targets. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap or its key must + be defined + type: boolean + required: + - key + type: object + secret: + description: Secret containing data to use for the targets. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must + be defined + type: boolean + required: + - key + type: object + type: object + certFile: + description: Path to the client cert file in the Prometheus container + for the targets. + type: string + insecureSkipVerify: + description: Disable target certificate validation. + type: boolean + keyFile: + description: Path to the client key file in the Prometheus container + for the targets. + type: string + keySecret: + description: Secret containing the client key file for the targets. + properties: + key: + description: The key of the secret to select from. Must be + a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + serverName: + description: Used to verify the hostname for the targets. + type: string + type: object + image: + description: Thanos container image URL. + type: string + imagePullSecrets: + description: An optional list of references to secrets in the same namespace + to use for pulling thanos images from registries see http://kubernetes.io/docs/user-guide/images#specifying-imagepullsecrets-on-a-pod + items: + description: LocalObjectReference contains enough information to let + you locate the referenced object inside the same namespace. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + type: array + initContainers: + description: 'InitContainers allows adding initContainers to the pod + definition. Those can be used to e.g. fetch secrets for injection + into the ThanosRuler configuration from external sources. Any errors + during the execution of an initContainer will lead to a restart of + the Pod. More info: https://kubernetes.io/docs/concepts/workloads/pods/init-containers/ + Using initContainers for any use case other then secret fetching is + entirely outside the scope of what the maintainers will support and + by doing so, you accept that this behaviour may break at any time + without notice.' + items: + description: A single application container that you want to run within + a pod. + properties: + args: + description: 'Arguments to the entrypoint. The docker image''s + CMD is used if this is not provided. Variable references $(VAR_NAME) + are expanded using the container''s environment. If a variable + cannot be resolved, the reference in the input string will be + unchanged. The $(VAR_NAME) syntax can be escaped with a double + $$, ie: $$(VAR_NAME). Escaped references will never be expanded, + regardless of whether the variable exists or not. Cannot be + updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + command: + description: 'Entrypoint array. Not executed within a shell. The + docker image''s ENTRYPOINT is used if this is not provided. + Variable references $(VAR_NAME) are expanded using the container''s + environment. If a variable cannot be resolved, the reference + in the input string will be unchanged. The $(VAR_NAME) syntax + can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable exists + or not. Cannot be updated. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell' + items: + type: string + type: array + env: + description: List of environment variables to set in the container. + Cannot be updated. + items: + description: EnvVar represents an environment variable present + in a Container. + properties: + name: + description: Name of the environment variable. Must be a + C_IDENTIFIER. + type: string + value: + description: 'Variable references $(VAR_NAME) are expanded + using the previous defined environment variables in the + container and any service environment variables. If a + variable cannot be resolved, the reference in the input + string will be unchanged. The $(VAR_NAME) syntax can be + escaped with a double $$, ie: $$(VAR_NAME). Escaped references + will never be expanded, regardless of whether the variable + exists or not. Defaults to "".' + type: string + valueFrom: + description: Source for the environment variable's value. + Cannot be used if value is not empty. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + fieldRef: + description: 'Selects a field of the pod: supports metadata.name, + metadata.namespace, metadata.labels, metadata.annotations, + spec.nodeName, spec.serviceAccountName, status.hostIP, + status.podIP, status.podIPs.' + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in the + specified API version. + type: string + required: + - fieldPath + type: object + resourceFieldRef: + description: 'Selects a resource of the container: only + resources limits and requests (limits.cpu, limits.memory, + limits.ephemeral-storage, requests.cpu, requests.memory + and requests.ephemeral-storage) are currently supported.' + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + description: Specifies the output format of the + exposed resources, defaults to "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + secretKeyRef: + description: Selects a key of a secret in the pod's + namespace + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + type: object + required: + - name + type: object + type: array + envFrom: + description: List of sources to populate environment variables + in the container. The keys defined within a source must be a + C_IDENTIFIER. All invalid keys will be reported as an event + when the container is starting. When a key exists in multiple + sources, the value associated with the last source will take + precedence. Values defined by an Env with a duplicate key will + take precedence. Cannot be updated. + items: + description: EnvFromSource represents the source of a set of + ConfigMaps + properties: + configMapRef: + description: The ConfigMap to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap must be defined + type: boolean + type: object + prefix: + description: An optional identifier to prepend to each key + in the ConfigMap. Must be a C_IDENTIFIER. + type: string + secretRef: + description: The Secret to select from + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret must be defined + type: boolean + type: object + type: object + type: array + image: + description: 'Docker image name. More info: https://kubernetes.io/docs/concepts/containers/images + This field is optional to allow higher level config management + to default or override container images in workload controllers + like Deployments and StatefulSets.' + type: string + imagePullPolicy: + description: 'Image pull policy. One of Always, Never, IfNotPresent. + Defaults to Always if :latest tag is specified, or IfNotPresent + otherwise. Cannot be updated. More info: https://kubernetes.io/docs/concepts/containers/images#updating-images' + type: string + lifecycle: + description: Actions that the management system should take in + response to container lifecycle events. Cannot be updated. + properties: + postStart: + description: 'PostStart is called immediately after a container + is created. If the handler fails, the container is terminated + and restarted according to its restart policy. Other management + of the container blocks until the hook completes. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + preStop: + description: 'PreStop is called immediately before a container + is terminated due to an API request or management event + such as liveness/startup probe failure, preemption, resource + contention, etc. The handler is not called if the container + crashes or exits. The reason for termination is passed to + the handler. The Pod''s termination grace period countdown + begins before the PreStop hooked is executed. Regardless + of the outcome of the handler, the container will eventually + terminate within the Pod''s termination grace period. Other + management of the container blocks until the hook completes + or until the termination grace period is reached. More info: + https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks' + properties: + exec: + description: One and only one of the following should + be specified. Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute + inside the container, the working directory for + the command is root ('/') in the container's filesystem. + The command is simply exec'd, it is not run inside + a shell, so traditional shell instructions ('|', + etc) won't work. To use a shell, you need to explicitly + call out to that shell. Exit status of 0 is treated + as live/healthy and non-zero is unhealthy. + items: + type: string + type: array + type: object + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to + the pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. + HTTP allows repeated headers. + items: + description: HTTPHeader describes a custom header + to be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + tcpSocket: + description: 'TCPSocket specifies an action involving + a TCP port. TCP hooks not yet supported TODO: implement + a realistic TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access + on the container. Number must be in the range 1 + to 65535. Name must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + type: object + type: object + livenessProbe: + description: 'Periodic probe of container liveness. Container + will be restarted if the probe fails. Cannot be updated. More + info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + name: + description: Name of the container specified as a DNS_LABEL. Each + container in a pod must have a unique name (DNS_LABEL). Cannot + be updated. + type: string + ports: + description: List of ports to expose from the container. Exposing + a port here gives the system additional information about the + network connections a container uses, but is primarily informational. + Not specifying a port here DOES NOT prevent that port from being + exposed. Any port which is listening on the default "0.0.0.0" + address inside a container will be accessible from the network. + Cannot be updated. + items: + description: ContainerPort represents a network port in a single + container. + properties: + containerPort: + description: Number of port to expose on the pod's IP address. + This must be a valid port number, 0 < x < 65536. + format: int32 + type: integer + hostIP: + description: What host IP to bind the external port to. + type: string + hostPort: + description: Number of port to expose on the host. If specified, + this must be a valid port number, 0 < x < 65536. If HostNetwork + is specified, this must match ContainerPort. Most containers + do not need this. + format: int32 + type: integer + name: + description: If specified, this must be an IANA_SVC_NAME + and unique within the pod. Each named port in a pod must + have a unique name. Name for the port that can be referred + to by services. + type: string + protocol: + description: Protocol for port. Must be UDP, TCP, or SCTP. + Defaults to "TCP". + type: string + required: + - containerPort + type: object + type: array + readinessProbe: + description: 'Periodic probe of container service readiness. Container + will be removed from service endpoints if the probe fails. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + resources: + description: 'Compute Resources required by this container. Cannot + be updated. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute + resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute + resources required. If Requests is omitted for a container, + it defaults to Limits if that is explicitly specified, otherwise + to an implementation-defined value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + securityContext: + description: 'Security options the pod should run with. More info: + https://kubernetes.io/docs/concepts/policy/security-context/ + More info: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/' + properties: + allowPrivilegeEscalation: + description: 'AllowPrivilegeEscalation controls whether a + process can gain more privileges than its parent process. + This bool directly controls if the no_new_privs flag will + be set on the container process. AllowPrivilegeEscalation + is true always when the container is: 1) run as Privileged + 2) has CAP_SYS_ADMIN' + type: boolean + capabilities: + description: The capabilities to add/drop when running containers. + Defaults to the default set of capabilities granted by the + container runtime. + properties: + add: + description: Added capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + drop: + description: Removed capabilities + items: + description: Capability represent POSIX capabilities + type + type: string + type: array + type: object + privileged: + description: Run container in privileged mode. Processes in + privileged containers are essentially equivalent to root + on the host. Defaults to false. + type: boolean + procMount: + description: procMount denotes the type of proc mount to use + for the containers. The default is DefaultProcMount which + uses the container runtime defaults for readonly paths and + masked paths. This requires the ProcMountType feature flag + to be enabled. + type: string + readOnlyRootFilesystem: + description: Whether this container has a read-only root filesystem. + Default is false. + type: boolean + runAsGroup: + description: The GID to run the entrypoint of the container + process. Uses runtime default if unset. May also be set + in PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + format: int64 + type: integer + runAsNonRoot: + description: Indicates that the container must run as a non-root + user. If true, the Kubelet will validate the image at runtime + to ensure that it does not run as UID 0 (root) and fail + to start the container if it does. If unset or false, no + such validation will be performed. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + type: boolean + runAsUser: + description: The UID to run the entrypoint of the container + process. Defaults to user specified in image metadata if + unspecified. May also be set in PodSecurityContext. If + set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. + format: int64 + type: integer + seLinuxOptions: + description: The SELinux context to be applied to the container. + If unspecified, the container runtime will allocate a random + SELinux context for each container. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. + properties: + level: + description: Level is SELinux level label that applies + to the container. + type: string + role: + description: Role is a SELinux role label that applies + to the container. + type: string + type: + description: Type is a SELinux type label that applies + to the container. + type: string + user: + description: User is a SELinux user label that applies + to the container. + type: string + type: object + windowsOptions: + description: The Windows specific settings applied to all + containers. If unspecified, the options from the PodSecurityContext + will be used. If set in both SecurityContext and PodSecurityContext, + the value specified in SecurityContext takes precedence. + properties: + gmsaCredentialSpec: + description: GMSACredentialSpec is where the GMSA admission + webhook (https://github.com/kubernetes-sigs/windows-gmsa) + inlines the contents of the GMSA credential spec named + by the GMSACredentialSpecName field. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + gmsaCredentialSpecName: + description: GMSACredentialSpecName is the name of the + GMSA credential spec to use. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + runAsUserName: + description: The UserName in Windows to run the entrypoint + of the container process. Defaults to the user specified + in image metadata if unspecified. May also be set in + PodSecurityContext. If set in both SecurityContext and + PodSecurityContext, the value specified in SecurityContext + takes precedence. This field is beta-level and may be + disabled with the WindowsRunAsUserName feature flag. + type: string + type: object + type: object + startupProbe: + description: 'StartupProbe indicates that the Pod has successfully + initialized. If specified, no other probes are executed until + this completes successfully. If this probe fails, the Pod will + be restarted, just as if the livenessProbe failed. This can + be used to provide different probe parameters at the beginning + of a Pod''s lifecycle, when it might take a long time to load + data or warm a cache, than during steady-state operation. This + cannot be updated. This is an alpha feature enabled by the StartupProbe + feature flag. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + properties: + exec: + description: One and only one of the following should be specified. + Exec specifies the action to take. + properties: + command: + description: Command is the command line to execute inside + the container, the working directory for the command is + root ('/') in the container's filesystem. The command + is simply exec'd, it is not run inside a shell, so traditional + shell instructions ('|', etc) won't work. To use a shell, + you need to explicitly call out to that shell. Exit + status of 0 is treated as live/healthy and non-zero + is unhealthy. + items: + type: string + type: array + type: object + failureThreshold: + description: Minimum consecutive failures for the probe to + be considered failed after having succeeded. Defaults to + 3. Minimum value is 1. + format: int32 + type: integer + httpGet: + description: HTTPGet specifies the http request to perform. + properties: + host: + description: Host name to connect to, defaults to the + pod IP. You probably want to set "Host" in httpHeaders + instead. + type: string + httpHeaders: + description: Custom headers to set in the request. HTTP + allows repeated headers. + items: + description: HTTPHeader describes a custom header to + be used in HTTP probes + properties: + name: + description: The header field name + type: string + value: + description: The header field value + type: string + required: + - name + - value + type: object + type: array + path: + description: Path to access on the HTTP server. + type: string + port: + anyOf: + - type: integer + - type: string + description: Name or number of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + scheme: + description: Scheme to use for connecting to the host. + Defaults to HTTP. + type: string + required: + - port + type: object + initialDelaySeconds: + description: 'Number of seconds after the container has started + before liveness probes are initiated. More info: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + periodSeconds: + description: How often (in seconds) to perform the probe. + Default to 10 seconds. Minimum value is 1. + format: int32 + type: integer + successThreshold: + description: Minimum consecutive successes for the probe to + be considered successful after having failed. Defaults to + 1. Must be 1 for liveness and startup. Minimum value is + 1. + format: int32 + type: integer + tcpSocket: + description: 'TCPSocket specifies an action involving a TCP + port. TCP hooks not yet supported TODO: implement a realistic + TCP lifecycle hook' + properties: + host: + description: 'Optional: Host name to connect to, defaults + to the pod IP.' + type: string + port: + anyOf: + - type: integer + - type: string + description: Number or name of the port to access on the + container. Number must be in the range 1 to 65535. Name + must be an IANA_SVC_NAME. + x-kubernetes-int-or-string: true + required: + - port + type: object + timeoutSeconds: + description: 'Number of seconds after which the probe times + out. Defaults to 1 second. Minimum value is 1. More info: + https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes' + format: int32 + type: integer + type: object + stdin: + description: Whether this container should allocate a buffer for + stdin in the container runtime. If this is not set, reads from + stdin in the container will always result in EOF. Default is + false. + type: boolean + stdinOnce: + description: Whether the container runtime should close the stdin + channel after it has been opened by a single attach. When stdin + is true the stdin stream will remain open across multiple attach + sessions. If stdinOnce is set to true, stdin is opened on container + start, is empty until the first client attaches to stdin, and + then remains open and accepts data until the client disconnects, + at which time stdin is closed and remains closed until the container + is restarted. If this flag is false, a container processes that + reads from stdin will never receive an EOF. Default is false + type: boolean + terminationMessagePath: + description: 'Optional: Path at which the file to which the container''s + termination message will be written is mounted into the container''s + filesystem. Message written is intended to be brief final status, + such as an assertion failure message. Will be truncated by the + node if greater than 4096 bytes. The total message length across + all containers will be limited to 12kb. Defaults to /dev/termination-log. + Cannot be updated.' + type: string + terminationMessagePolicy: + description: Indicate how the termination message should be populated. + File will use the contents of terminationMessagePath to populate + the container status message on both success and failure. FallbackToLogsOnError + will use the last chunk of container log output if the termination + message file is empty and the container exited with an error. + The log output is limited to 2048 bytes or 80 lines, whichever + is smaller. Defaults to File. Cannot be updated. + type: string + tty: + description: Whether this container should allocate a TTY for + itself, also requires 'stdin' to be true. Default is false. + type: boolean + volumeDevices: + description: volumeDevices is the list of block devices to be + used by the container. This is a beta feature. + items: + description: volumeDevice describes a mapping of a raw block + device within a container. + properties: + devicePath: + description: devicePath is the path inside of the container + that the device will be mapped to. + type: string + name: + description: name must match the name of a persistentVolumeClaim + in the pod + type: string + required: + - devicePath + - name + type: object + type: array + volumeMounts: + description: Pod volumes to mount into the container's filesystem. + Cannot be updated. + items: + description: VolumeMount describes a mounting of a Volume within + a container. + properties: + mountPath: + description: Path within the container at which the volume + should be mounted. Must not contain ':'. + type: string + mountPropagation: + description: mountPropagation determines how mounts are + propagated from the host to container and the other way + around. When not set, MountPropagationNone is used. This + field is beta in 1.10. + type: string + name: + description: This must match the Name of a Volume. + type: string + readOnly: + description: Mounted read-only if true, read-write otherwise + (false or unspecified). Defaults to false. + type: boolean + subPath: + description: Path within the volume from which the container's + volume should be mounted. Defaults to "" (volume's root). + type: string + subPathExpr: + description: Expanded path within the volume from which + the container's volume should be mounted. Behaves similarly + to SubPath but environment variable references $(VAR_NAME) + are expanded using the container's environment. Defaults + to "" (volume's root). SubPathExpr and SubPath are mutually + exclusive. + type: string + required: + - mountPath + - name + type: object + type: array + workingDir: + description: Container's working directory. If not specified, + the container runtime's default will be used, which might be + configured in the container image. Cannot be updated. + type: string + required: + - name + type: object + type: array + labels: + additionalProperties: + type: string + description: Labels configure the external label pairs to ThanosRuler. + If not provided, default replica label `thanos_ruler_replica` will + be added as a label and be dropped in alerts. + type: object + listenLocal: + description: ListenLocal makes the Thanos ruler listen on loopback, + so that it does not bind against the Pod IP. + type: boolean + logFormat: + description: Log format for ThanosRuler to be configured with. + type: string + logLevel: + description: Log level for ThanosRuler to be configured with. + type: string + nodeSelector: + additionalProperties: + type: string + description: Define which Nodes the Pods are scheduled on. + type: object + objectStorageConfig: + description: ObjectStorageConfig configures object storage in Thanos. + properties: + key: + description: The key of the secret to select from. Must be a valid + secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + paused: + description: When a ThanosRuler deployment is paused, no actions except + for deletion will be performed on the underlying objects. + type: boolean + podMetadata: + description: PodMetadata contains Labels and Annotations gets propagated + to the thanos ruler pods. + properties: + annotations: + additionalProperties: + type: string + description: 'Annotations is an unstructured key value map stored + with a resource that may be set by external tools to store and + retrieve arbitrary metadata. They are not queryable and should + be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations' + type: object + labels: + additionalProperties: + type: string + description: 'Map of string keys and values that can be used to + organize and categorize (scope and select) objects. May match + selectors of replication controllers and services. More info: + http://kubernetes.io/docs/user-guide/labels' + type: object + type: object + portName: + description: Port name used for the pods and governing service. This + defaults to web + type: string + priorityClassName: + description: Priority class assigned to the Pods + type: string + queryConfig: + description: Define configuration for connecting to thanos query instances. + If this is defined, the QueryEndpoints field will be ignored. Maps + to the `query.config` CLI argument. Only available with thanos v0.11.0 + and higher. + properties: + key: + description: The key of the secret to select from. Must be a valid + secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + queryEndpoints: + description: QueryEndpoints defines Thanos querier endpoints from which + to query metrics. Maps to the --query flag of thanos ruler. + items: + type: string + type: array + replicas: + description: Number of thanos ruler instances to deploy. + format: int32 + type: integer + resources: + description: Resources defines the resource requirements for single + Pods. If not provided, no requests/limits will be set + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of compute resources + allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount of compute resources + required. If Requests is omitted for a container, it defaults + to Limits if that is explicitly specified, otherwise to an implementation-defined + value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + retention: + description: Time duration ThanosRuler shall retain data for. Default + is '24h', and must match the regular expression `[0-9]+(ms|s|m|h|d|w|y)` + (milliseconds seconds minutes hours days weeks years). + type: string + routePrefix: + description: The route prefix ThanosRuler registers HTTP handlers for. + This allows thanos UI to be served on a sub-path. + type: string + ruleNamespaceSelector: + description: Namespaces to be selected for Rules discovery. If unspecified, + only the same namespace as the ThanosRuler object is in is used. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + ruleSelector: + description: A label selector to select which PrometheusRules to mount + for alerting and recording. + properties: + matchExpressions: + description: matchExpressions is a list of label selector requirements. + The requirements are ANDed. + items: + description: A label selector requirement is a selector that contains + values, a key, and an operator that relates the key and values. + properties: + key: + description: key is the label key that the selector applies + to. + type: string + operator: + description: operator represents a key's relationship to a + set of values. Valid operators are In, NotIn, Exists and + DoesNotExist. + type: string + values: + description: values is an array of string values. If the operator + is In or NotIn, the values array must be non-empty. If the + operator is Exists or DoesNotExist, the values array must + be empty. This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. A single + {key,value} in the matchLabels map is equivalent to an element + of matchExpressions, whose key field is "key", the operator is + "In", and the values array contains only "value". The requirements + are ANDed. + type: object + type: object + securityContext: + description: SecurityContext holds pod-level security attributes and + common container settings. This defaults to the default PodSecurityContext. + properties: + fsGroup: + description: "A special supplemental group that applies to all containers + in a pod. Some volume types allow the Kubelet to change the ownership + of that volume to be owned by the pod: \n 1. The owning GID will + be the FSGroup 2. The setgid bit is set (new files created in + the volume will be owned by FSGroup) 3. The permission bits are + OR'd with rw-rw---- \n If unset, the Kubelet will not modify the + ownership and permissions of any volume." + format: int64 + type: integer + runAsGroup: + description: The GID to run the entrypoint of the container process. + Uses runtime default if unset. May also be set in SecurityContext. If + set in both SecurityContext and PodSecurityContext, the value + specified in SecurityContext takes precedence for that container. + format: int64 + type: integer + runAsNonRoot: + description: Indicates that the container must run as a non-root + user. If true, the Kubelet will validate the image at runtime + to ensure that it does not run as UID 0 (root) and fail to start + the container if it does. If unset or false, no such validation + will be performed. May also be set in SecurityContext. If set + in both SecurityContext and PodSecurityContext, the value specified + in SecurityContext takes precedence. + type: boolean + runAsUser: + description: The UID to run the entrypoint of the container process. + Defaults to user specified in image metadata if unspecified. May + also be set in SecurityContext. If set in both SecurityContext + and PodSecurityContext, the value specified in SecurityContext + takes precedence for that container. + format: int64 + type: integer + seLinuxOptions: + description: The SELinux context to be applied to all containers. + If unspecified, the container runtime will allocate a random SELinux + context for each container. May also be set in SecurityContext. If + set in both SecurityContext and PodSecurityContext, the value + specified in SecurityContext takes precedence for that container. + properties: + level: + description: Level is SELinux level label that applies to the + container. + type: string + role: + description: Role is a SELinux role label that applies to the + container. + type: string + type: + description: Type is a SELinux type label that applies to the + container. + type: string + user: + description: User is a SELinux user label that applies to the + container. + type: string + type: object + supplementalGroups: + description: A list of groups applied to the first process run in + each container, in addition to the container's primary GID. If + unspecified, no groups will be added to any container. + items: + format: int64 + type: integer + type: array + sysctls: + description: Sysctls hold a list of namespaced sysctls used for + the pod. Pods with unsupported sysctls (by the container runtime) + might fail to launch. + items: + description: Sysctl defines a kernel parameter to be set + properties: + name: + description: Name of a property to set + type: string + value: + description: Value of a property to set + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + description: The Windows specific settings applied to all containers. + If unspecified, the options within a container's SecurityContext + will be used. If set in both SecurityContext and PodSecurityContext, + the value specified in SecurityContext takes precedence. + properties: + gmsaCredentialSpec: + description: GMSACredentialSpec is where the GMSA admission + webhook (https://github.com/kubernetes-sigs/windows-gmsa) + inlines the contents of the GMSA credential spec named by + the GMSACredentialSpecName field. This field is alpha-level + and is only honored by servers that enable the WindowsGMSA + feature flag. + type: string + gmsaCredentialSpecName: + description: GMSACredentialSpecName is the name of the GMSA + credential spec to use. This field is alpha-level and is only + honored by servers that enable the WindowsGMSA feature flag. + type: string + runAsUserName: + description: The UserName in Windows to run the entrypoint of + the container process. Defaults to the user specified in image + metadata if unspecified. May also be set in PodSecurityContext. + If set in both SecurityContext and PodSecurityContext, the + value specified in SecurityContext takes precedence. This + field is beta-level and may be disabled with the WindowsRunAsUserName + feature flag. + type: string + type: object + type: object + serviceAccountName: + description: ServiceAccountName is the name of the ServiceAccount to + use to run the Thanos Ruler Pods. + type: string + storage: + description: Storage spec to specify how storage shall be used. + properties: + emptyDir: + description: 'EmptyDirVolumeSource to be used by the Prometheus + StatefulSets. If specified, used in place of any volumeClaimTemplate. + More info: https://kubernetes.io/docs/concepts/storage/volumes/#emptydir' + properties: + medium: + description: 'What type of storage medium should back this directory. + The default is "" which means to use the node''s default medium. + Must be an empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' + type: string + sizeLimit: + description: 'Total amount of local storage required for this + EmptyDir volume. The size limit is also applicable for memory + medium. The maximum usage on memory medium EmptyDir would + be the minimum value between the SizeLimit specified here + and the sum of memory limits of all containers in a pod. The + default is nil which means that the limit is undefined. More + info: http://kubernetes.io/docs/user-guide/volumes#emptydir' + type: string + type: object + volumeClaimTemplate: + description: A PVC spec to be used by the Prometheus StatefulSets. + properties: + apiVersion: + description: 'APIVersion defines the versioned schema of this + representation of an object. Servers should convert recognized + schemas to the latest internal value, and may reject unrecognized + values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' + type: string + kind: + description: 'Kind is a string value representing the REST resource + this object represents. Servers may infer this from the endpoint + the client submits requests to. Cannot be updated. In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + metadata: + description: 'Standard object''s metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata' + type: object + spec: + description: 'Spec defines the desired characteristics of a + volume requested by a pod author. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + properties: + accessModes: + description: 'AccessModes contains the desired access modes + the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1' + items: + type: string + type: array + dataSource: + description: This field requires the VolumeSnapshotDataSource + alpha feature gate to be enabled and currently VolumeSnapshot + is the only supported data source. If the provisioner + can support VolumeSnapshot data source, it will create + a new volume and data will be restored to the volume at + the same time. If the provisioner does not support VolumeSnapshot + data source, volume will not be created and the failure + will be reported as an event. In the future, we plan to + support more data source types and the behavior of the + provisioner may change. + properties: + apiGroup: + description: APIGroup is the group for the resource + being referenced. If APIGroup is not specified, the + specified Kind must be in the core API group. For + any other third-party types, APIGroup is required. + type: string + kind: + description: Kind is the type of resource being referenced + type: string + name: + description: Name is the name of resource being referenced + type: string + required: + - kind + - name + type: object + resources: + description: 'Resources represents the minimum resources + the volume should have. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources' + properties: + limits: + additionalProperties: + type: string + description: 'Limits describes the maximum amount of + compute resources allowed. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + requests: + additionalProperties: + type: string + description: 'Requests describes the minimum amount + of compute resources required. If Requests is omitted + for a container, it defaults to Limits if that is + explicitly specified, otherwise to an implementation-defined + value. More info: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/' + type: object + type: object + selector: + description: A label query over volumes to consider for + binding. + properties: + matchExpressions: + description: matchExpressions is a list of label selector + requirements. The requirements are ANDed. + items: + description: A label selector requirement is a selector + that contains values, a key, and an operator that + relates the key and values. + properties: + key: + description: key is the label key that the selector + applies to. + type: string + operator: + description: operator represents a key's relationship + to a set of values. Valid operators are In, + NotIn, Exists and DoesNotExist. + type: string + values: + description: values is an array of string values. + If the operator is In or NotIn, the values array + must be non-empty. If the operator is Exists + or DoesNotExist, the values array must be empty. + This array is replaced during a strategic merge + patch. + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + description: matchLabels is a map of {key,value} pairs. + A single {key,value} in the matchLabels map is equivalent + to an element of matchExpressions, whose key field + is "key", the operator is "In", and the values array + contains only "value". The requirements are ANDed. + type: object + type: object + storageClassName: + description: 'Name of the StorageClass required by the claim. + More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1' + type: string + volumeMode: + description: volumeMode defines what type of volume is required + by the claim. Value of Filesystem is implied when not + included in claim spec. This is a beta feature. + type: string + volumeName: + description: VolumeName is the binding reference to the + PersistentVolume backing this claim. + type: string + type: object + status: + description: 'Status represents the current information/status + of a persistent volume claim. Read-only. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + properties: + accessModes: + description: 'AccessModes contains the actual access modes + the volume backing the PVC has. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1' + items: + type: string + type: array + capacity: + additionalProperties: + type: string + description: Represents the actual resources of the underlying + volume. + type: object + conditions: + description: Current Condition of persistent volume claim. + If underlying persistent volume is being resized then + the Condition will be set to 'ResizeStarted'. + items: + description: PersistentVolumeClaimCondition contails details + about state of pvc + properties: + lastProbeTime: + description: Last time we probed the condition. + format: date-time + type: string + lastTransitionTime: + description: Last time the condition transitioned + from one status to another. + format: date-time + type: string + message: + description: Human-readable message indicating details + about last transition. + type: string + reason: + description: Unique, this should be a short, machine + understandable string that gives the reason for + condition's last transition. If it reports "ResizeStarted" + that means the underlying persistent volume is being + resized. + type: string + status: + type: string + type: + description: PersistentVolumeClaimConditionType is + a valid value of PersistentVolumeClaimCondition.Type + type: string + required: + - status + - type + type: object + type: array + phase: + description: Phase represents the current phase of PersistentVolumeClaim. + type: string + type: object + type: object + type: object + tolerations: + description: If specified, the pod's tolerations. + items: + description: The pod this Toleration is attached to tolerates any + taint that matches the triple using the matching + operator . + properties: + effect: + description: Effect indicates the taint effect to match. Empty + means match all taint effects. When specified, allowed values + are NoSchedule, PreferNoSchedule and NoExecute. + type: string + key: + description: Key is the taint key that the toleration applies + to. Empty means match all taint keys. If the key is empty, operator + must be Exists; this combination means to match all values and + all keys. + type: string + operator: + description: Operator represents a key's relationship to the value. + Valid operators are Exists and Equal. Defaults to Equal. Exists + is equivalent to wildcard for value, so that a pod can tolerate + all taints of a particular category. + type: string + tolerationSeconds: + description: TolerationSeconds represents the period of time the + toleration (which must be of effect NoExecute, otherwise this + field is ignored) tolerates the taint. By default, it is not + set, which means tolerate the taint forever (do not evict). + Zero and negative values will be treated as 0 (evict immediately) + by the system. + format: int64 + type: integer + value: + description: Value is the taint value the toleration matches to. + If the operator is Exists, the value should be empty, otherwise + just a regular string. + type: string + type: object + type: array + tracingConfig: + description: TracingConfig configures tracing in Thanos. This is an + experimental feature, it may change in any upcoming release in a breaking + way. + properties: + key: + description: The key of the secret to select from. Must be a valid + secret key. + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the Secret or its key must be defined + type: boolean + required: + - key + type: object + volumes: + description: Volumes allows configuration of additional volumes on the + output StatefulSet definition. Volumes specified will be appended + to other volumes that are generated as a result of StorageSpec objects. + items: + description: Volume represents a named volume in a pod that may be + accessed by any container in the pod. + properties: + awsElasticBlockStore: + description: 'AWSElasticBlockStore represents an AWS Disk resource + that is attached to a kubelet''s host machine and then exposed + to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' + properties: + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + partition: + description: 'The partition in the volume that you want to + mount. If omitted, the default is to mount by volume name. + Examples: For volume /dev/sda1, you specify the partition + as "1". Similarly, the volume partition for /dev/sda is + "0" (or you can leave the property empty).' + format: int32 + type: integer + readOnly: + description: 'Specify "true" to force and set the ReadOnly + property in VolumeMounts to "true". If omitted, the default + is "false". More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' + type: boolean + volumeID: + description: 'Unique ID of the persistent disk resource in + AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore' + type: string + required: + - volumeID + type: object + azureDisk: + description: AzureDisk represents an Azure Data Disk mount on + the host and bind mount to the pod. + properties: + cachingMode: + description: 'Host Caching mode: None, Read Only, Read Write.' + type: string + diskName: + description: The Name of the data disk in the blob storage + type: string + diskURI: + description: The URI the data disk in the blob storage + type: string + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + kind: + description: 'Expected values Shared: multiple blob disks + per storage account Dedicated: single blob disk per storage + account Managed: azure managed data disk (only in managed + availability set). defaults to shared' + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + required: + - diskName + - diskURI + type: object + azureFile: + description: AzureFile represents an Azure File Service mount + on the host and bind mount to the pod. + properties: + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + secretName: + description: the name of secret that contains Azure Storage + Account Name and Key + type: string + shareName: + description: Share Name + type: string + required: + - secretName + - shareName + type: object + cephfs: + description: CephFS represents a Ceph FS mount on the host that + shares a pod's lifetime + properties: + monitors: + description: 'Required: Monitors is a collection of Ceph monitors + More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + items: + type: string + type: array + path: + description: 'Optional: Used as the mounted root, rather than + the full Ceph tree, default is /' + type: string + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts. More + info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + type: boolean + secretFile: + description: 'Optional: SecretFile is the path to key ring + for User, default is /etc/ceph/user.secret More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + type: string + secretRef: + description: 'Optional: SecretRef is reference to the authentication + secret for User, default is empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + user: + description: 'Optional: User is the rados user name, default + is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it' + type: string + required: + - monitors + type: object + cinder: + description: 'Cinder represents a cinder volume attached and mounted + on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md' + properties: + fsType: + description: 'Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Examples: "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + More info: https://examples.k8s.io/mysql-cinder-pd/README.md' + type: string + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts. More + info: https://examples.k8s.io/mysql-cinder-pd/README.md' + type: boolean + secretRef: + description: 'Optional: points to a secret object containing + parameters used to connect to OpenStack.' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + volumeID: + description: 'volume id used to identify the volume in cinder. + More info: https://examples.k8s.io/mysql-cinder-pd/README.md' + type: string + required: + - volumeID + type: object + configMap: + description: ConfigMap represents a configMap that should populate + this volume + properties: + defaultMode: + description: 'Optional: mode bits to use on created files + by default. Must be a value between 0 and 0777. Defaults + to 0644. Directories within the path are not affected by + this setting. This might be in conflict with other options + that affect the file mode, like fsGroup, and the result + can be other mode bits set.' + format: int32 + type: integer + items: + description: If unspecified, each key-value pair in the Data + field of the referenced ConfigMap will be projected into + the volume as a file whose name is the key and content is + the value. If specified, the listed keys will be projected + into the specified paths, and unlisted keys will not be + present. If a key is specified which is not present in the + ConfigMap, the volume setup will error unless it is marked + optional. Paths must be relative and may not contain the + '..' path or start with '..'. + items: + description: Maps a string key to a path within a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on this file, + must be a value between 0 and 0777. If not specified, + the volume defaultMode will be used. This might be + in conflict with other options that affect the file + mode, like fsGroup, and the result can be other mode + bits set.' + format: int32 + type: integer + path: + description: The relative path of the file to map the + key to. May not be an absolute path. May not contain + the path element '..'. May not start with the string + '..'. + type: string + required: + - key + - path + type: object + type: array + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + optional: + description: Specify whether the ConfigMap or its keys must + be defined + type: boolean + type: object + csi: + description: CSI (Container Storage Interface) represents storage + that is handled by an external CSI driver (Alpha feature). + properties: + driver: + description: Driver is the name of the CSI driver that handles + this volume. Consult with your admin for the correct name + as registered in the cluster. + type: string + fsType: + description: Filesystem type to mount. Ex. "ext4", "xfs", + "ntfs". If not provided, the empty value is passed to the + associated CSI driver which will determine the default filesystem + to apply. + type: string + nodePublishSecretRef: + description: NodePublishSecretRef is a reference to the secret + object containing sensitive information to pass to the CSI + driver to complete the CSI NodePublishVolume and NodeUnpublishVolume + calls. This field is optional, and may be empty if no secret + is required. If the secret object contains more than one + secret, all secret references are passed. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + readOnly: + description: Specifies a read-only configuration for the volume. + Defaults to false (read/write). + type: boolean + volumeAttributes: + additionalProperties: + type: string + description: VolumeAttributes stores driver-specific properties + that are passed to the CSI driver. Consult your driver's + documentation for supported values. + type: object + required: + - driver + type: object + downwardAPI: + description: DownwardAPI represents downward API about the pod + that should populate this volume + properties: + defaultMode: + description: 'Optional: mode bits to use on created files + by default. Must be a value between 0 and 0777. Defaults + to 0644. Directories within the path are not affected by + this setting. This might be in conflict with other options + that affect the file mode, like fsGroup, and the result + can be other mode bits set.' + format: int32 + type: integer + items: + description: Items is a list of downward API volume file + items: + description: DownwardAPIVolumeFile represents information + to create the file containing the pod field + properties: + fieldRef: + description: 'Required: Selects a field of the pod: + only annotations, labels, name and namespace are supported.' + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in the + specified API version. + type: string + required: + - fieldPath + type: object + mode: + description: 'Optional: mode bits to use on this file, + must be a value between 0 and 0777. If not specified, + the volume defaultMode will be used. This might be + in conflict with other options that affect the file + mode, like fsGroup, and the result can be other mode + bits set.' + format: int32 + type: integer + path: + description: 'Required: Path is the relative path name + of the file to be created. Must not be absolute or + contain the ''..'' path. Must be utf-8 encoded. The + first item of the relative path must not start with + ''..''' + type: string + resourceFieldRef: + description: 'Selects a resource of the container: only + resources limits and requests (limits.cpu, limits.memory, + requests.cpu and requests.memory) are currently supported.' + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + description: Specifies the output format of the + exposed resources, defaults to "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + emptyDir: + description: 'EmptyDir represents a temporary directory that shares + a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' + properties: + medium: + description: 'What type of storage medium should back this + directory. The default is "" which means to use the node''s + default medium. Must be an empty string (default) or Memory. + More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir' + type: string + sizeLimit: + description: 'Total amount of local storage required for this + EmptyDir volume. The size limit is also applicable for memory + medium. The maximum usage on memory medium EmptyDir would + be the minimum value between the SizeLimit specified here + and the sum of memory limits of all containers in a pod. + The default is nil which means that the limit is undefined. + More info: http://kubernetes.io/docs/user-guide/volumes#emptydir' + type: string + type: object + fc: + description: FC represents a Fibre Channel resource that is attached + to a kubelet's host machine and then exposed to the pod. + properties: + fsType: + description: 'Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + lun: + description: 'Optional: FC target lun number' + format: int32 + type: integer + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts.' + type: boolean + targetWWNs: + description: 'Optional: FC target worldwide names (WWNs)' + items: + type: string + type: array + wwids: + description: 'Optional: FC volume world wide identifiers (wwids) + Either wwids or combination of targetWWNs and lun must be + set, but not both simultaneously.' + items: + type: string + type: array + type: object + flexVolume: + description: FlexVolume represents a generic volume resource that + is provisioned/attached using an exec based plugin. + properties: + driver: + description: Driver is the name of the driver to use for this + volume. + type: string + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". The default filesystem depends on FlexVolume + script. + type: string + options: + additionalProperties: + type: string + description: 'Optional: Extra command options if any.' + type: object + readOnly: + description: 'Optional: Defaults to false (read/write). ReadOnly + here will force the ReadOnly setting in VolumeMounts.' + type: boolean + secretRef: + description: 'Optional: SecretRef is reference to the secret + object containing sensitive information to pass to the plugin + scripts. This may be empty if no secret object is specified. + If the secret object contains more than one secret, all + secrets are passed to the plugin scripts.' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + required: + - driver + type: object + flocker: + description: Flocker represents a Flocker volume attached to a + kubelet's host machine. This depends on the Flocker control + service being running + properties: + datasetName: + description: Name of the dataset stored as metadata -> name + on the dataset for Flocker should be considered as deprecated + type: string + datasetUUID: + description: UUID of the dataset. This is unique identifier + of a Flocker dataset + type: string + type: object + gcePersistentDisk: + description: 'GCEPersistentDisk represents a GCE Disk resource + that is attached to a kubelet''s host machine and then exposed + to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + properties: + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + partition: + description: 'The partition in the volume that you want to + mount. If omitted, the default is to mount by volume name. + Examples: For volume /dev/sda1, you specify the partition + as "1". Similarly, the volume partition for /dev/sda is + "0" (or you can leave the property empty). More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + format: int32 + type: integer + pdName: + description: 'Unique name of the PD resource in GCE. Used + to identify the disk in GCE. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + type: string + readOnly: + description: 'ReadOnly here will force the ReadOnly setting + in VolumeMounts. Defaults to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk' + type: boolean + required: + - pdName + type: object + gitRepo: + description: 'GitRepo represents a git repository at a particular + revision. DEPRECATED: GitRepo is deprecated. To provision a + container with a git repo, mount an EmptyDir into an InitContainer + that clones the repo using git, then mount the EmptyDir into + the Pod''s container.' + properties: + directory: + description: Target directory name. Must not contain or start + with '..'. If '.' is supplied, the volume directory will + be the git repository. Otherwise, if specified, the volume + will contain the git repository in the subdirectory with + the given name. + type: string + repository: + description: Repository URL + type: string + revision: + description: Commit hash for the specified revision. + type: string + required: + - repository + type: object + glusterfs: + description: 'Glusterfs represents a Glusterfs mount on the host + that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/glusterfs/README.md' + properties: + endpoints: + description: 'EndpointsName is the endpoint name that details + Glusterfs topology. More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod' + type: string + path: + description: 'Path is the Glusterfs volume path. More info: + https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod' + type: string + readOnly: + description: 'ReadOnly here will force the Glusterfs volume + to be mounted with read-only permissions. Defaults to false. + More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod' + type: boolean + required: + - endpoints + - path + type: object + hostPath: + description: 'HostPath represents a pre-existing file or directory + on the host machine that is directly exposed to the container. + This is generally used for system agents or other privileged + things that are allowed to see the host machine. Most containers + will NOT need this. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath + --- TODO(jonesdl) We need to restrict who can use host directory + mounts and who can/can not mount host directories as read/write.' + properties: + path: + description: 'Path of the directory on the host. If the path + is a symlink, it will follow the link to the real path. + More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath' + type: string + type: + description: 'Type for HostPath Volume Defaults to "" More + info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath' + type: string + required: + - path + type: object + iscsi: + description: 'ISCSI represents an ISCSI Disk resource that is + attached to a kubelet''s host machine and then exposed to the + pod. More info: https://examples.k8s.io/volumes/iscsi/README.md' + properties: + chapAuthDiscovery: + description: whether support iSCSI Discovery CHAP authentication + type: boolean + chapAuthSession: + description: whether support iSCSI Session CHAP authentication + type: boolean + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#iscsi + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + initiatorName: + description: Custom iSCSI Initiator Name. If initiatorName + is specified with iscsiInterface simultaneously, new iSCSI + interface : will be created + for the connection. + type: string + iqn: + description: Target iSCSI Qualified Name. + type: string + iscsiInterface: + description: iSCSI Interface Name that uses an iSCSI transport. + Defaults to 'default' (tcp). + type: string + lun: + description: iSCSI Target Lun number. + format: int32 + type: integer + portals: + description: iSCSI Target Portal List. The portal is either + an IP or ip_addr:port if the port is other than default + (typically TCP ports 860 and 3260). + items: + type: string + type: array + readOnly: + description: ReadOnly here will force the ReadOnly setting + in VolumeMounts. Defaults to false. + type: boolean + secretRef: + description: CHAP Secret for iSCSI target and initiator authentication + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + targetPortal: + description: iSCSI Target Portal. The Portal is either an + IP or ip_addr:port if the port is other than default (typically + TCP ports 860 and 3260). + type: string + required: + - iqn + - lun + - targetPortal + type: object + name: + description: 'Volume''s name. Must be a DNS_LABEL and unique within + the pod. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + nfs: + description: 'NFS represents an NFS mount on the host that shares + a pod''s lifetime More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + properties: + path: + description: 'Path that is exported by the NFS server. More + info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + type: string + readOnly: + description: 'ReadOnly here will force the NFS export to be + mounted with read-only permissions. Defaults to false. More + info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + type: boolean + server: + description: 'Server is the hostname or IP address of the + NFS server. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs' + type: string + required: + - path + - server + type: object + persistentVolumeClaim: + description: 'PersistentVolumeClaimVolumeSource represents a reference + to a PersistentVolumeClaim in the same namespace. More info: + https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + properties: + claimName: + description: 'ClaimName is the name of a PersistentVolumeClaim + in the same namespace as the pod using this volume. More + info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims' + type: string + readOnly: + description: Will force the ReadOnly setting in VolumeMounts. + Default false. + type: boolean + required: + - claimName + type: object + photonPersistentDisk: + description: PhotonPersistentDisk represents a PhotonController + persistent disk attached and mounted on kubelets host machine + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + pdID: + description: ID that identifies Photon Controller persistent + disk + type: string + required: + - pdID + type: object + portworxVolume: + description: PortworxVolume represents a portworx volume attached + and mounted on kubelets host machine + properties: + fsType: + description: FSType represents the filesystem type to mount + Must be a filesystem type supported by the host operating + system. Ex. "ext4", "xfs". Implicitly inferred to be "ext4" + if unspecified. + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + volumeID: + description: VolumeID uniquely identifies a Portworx volume + type: string + required: + - volumeID + type: object + projected: + description: Items for all in one resources secrets, configmaps, + and downward API + properties: + defaultMode: + description: Mode bits to use on created files by default. + Must be a value between 0 and 0777. Directories within the + path are not affected by this setting. This might be in + conflict with other options that affect the file mode, like + fsGroup, and the result can be other mode bits set. + format: int32 + type: integer + sources: + description: list of volume projections + items: + description: Projection that may be projected along with + other supported volume types + properties: + configMap: + description: information about the configMap data to + project + properties: + items: + description: If unspecified, each key-value pair + in the Data field of the referenced ConfigMap + will be projected into the volume as a file whose + name is the key and content is the value. If specified, + the listed keys will be projected into the specified + paths, and unlisted keys will not be present. + If a key is specified which is not present in + the ConfigMap, the volume setup will error unless + it is marked optional. Paths must be relative + and may not contain the '..' path or start with + '..'. + items: + description: Maps a string key to a path within + a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on + this file, must be a value between 0 and + 0777. If not specified, the volume defaultMode + will be used. This might be in conflict + with other options that affect the file + mode, like fsGroup, and the result can be + other mode bits set.' + format: int32 + type: integer + path: + description: The relative path of the file + to map the key to. May not be an absolute + path. May not contain the path element '..'. + May not start with the string '..'. + type: string + required: + - key + - path + type: object + type: array + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the ConfigMap or its + keys must be defined + type: boolean + type: object + downwardAPI: + description: information about the downwardAPI data + to project + properties: + items: + description: Items is a list of DownwardAPIVolume + file + items: + description: DownwardAPIVolumeFile represents + information to create the file containing the + pod field + properties: + fieldRef: + description: 'Required: Selects a field of + the pod: only annotations, labels, name + and namespace are supported.' + properties: + apiVersion: + description: Version of the schema the + FieldPath is written in terms of, defaults + to "v1". + type: string + fieldPath: + description: Path of the field to select + in the specified API version. + type: string + required: + - fieldPath + type: object + mode: + description: 'Optional: mode bits to use on + this file, must be a value between 0 and + 0777. If not specified, the volume defaultMode + will be used. This might be in conflict + with other options that affect the file + mode, like fsGroup, and the result can be + other mode bits set.' + format: int32 + type: integer + path: + description: 'Required: Path is the relative + path name of the file to be created. Must + not be absolute or contain the ''..'' path. + Must be utf-8 encoded. The first item of + the relative path must not start with ''..''' + type: string + resourceFieldRef: + description: 'Selects a resource of the container: + only resources limits and requests (limits.cpu, + limits.memory, requests.cpu and requests.memory) + are currently supported.' + properties: + containerName: + description: 'Container name: required + for volumes, optional for env vars' + type: string + divisor: + description: Specifies the output format + of the exposed resources, defaults to + "1" + type: string + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + required: + - path + type: object + type: array + type: object + secret: + description: information about the secret data to project + properties: + items: + description: If unspecified, each key-value pair + in the Data field of the referenced Secret will + be projected into the volume as a file whose name + is the key and content is the value. If specified, + the listed keys will be projected into the specified + paths, and unlisted keys will not be present. + If a key is specified which is not present in + the Secret, the volume setup will error unless + it is marked optional. Paths must be relative + and may not contain the '..' path or start with + '..'. + items: + description: Maps a string key to a path within + a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on + this file, must be a value between 0 and + 0777. If not specified, the volume defaultMode + will be used. This might be in conflict + with other options that affect the file + mode, like fsGroup, and the result can be + other mode bits set.' + format: int32 + type: integer + path: + description: The relative path of the file + to map the key to. May not be an absolute + path. May not contain the path element '..'. + May not start with the string '..'. + type: string + required: + - key + - path + type: object + type: array + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, + uid?' + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + type: object + serviceAccountToken: + description: information about the serviceAccountToken + data to project + properties: + audience: + description: Audience is the intended audience of + the token. A recipient of a token must identify + itself with an identifier specified in the audience + of the token, and otherwise should reject the + token. The audience defaults to the identifier + of the apiserver. + type: string + expirationSeconds: + description: ExpirationSeconds is the requested + duration of validity of the service account token. + As the token approaches expiration, the kubelet + volume plugin will proactively rotate the service + account token. The kubelet will start trying to + rotate the token if the token is older than 80 + percent of its time to live or if the token is + older than 24 hours.Defaults to 1 hour and must + be at least 10 minutes. + format: int64 + type: integer + path: + description: Path is the path relative to the mount + point of the file to project the token into. + type: string + required: + - path + type: object + type: object + type: array + required: + - sources + type: object + quobyte: + description: Quobyte represents a Quobyte mount on the host that + shares a pod's lifetime + properties: + group: + description: Group to map volume access to Default is no group + type: string + readOnly: + description: ReadOnly here will force the Quobyte volume to + be mounted with read-only permissions. Defaults to false. + type: boolean + registry: + description: Registry represents a single or multiple Quobyte + Registry services specified as a string as host:port pair + (multiple entries are separated with commas) which acts + as the central registry for volumes + type: string + tenant: + description: Tenant owning the given Quobyte volume in the + Backend Used with dynamically provisioned Quobyte volumes, + value is set by the plugin + type: string + user: + description: User to map volume access to Defaults to serivceaccount + user + type: string + volume: + description: Volume is a string that references an already + created Quobyte volume by name. + type: string + required: + - registry + - volume + type: object + rbd: + description: 'RBD represents a Rados Block Device mount on the + host that shares a pod''s lifetime. More info: https://examples.k8s.io/volumes/rbd/README.md' + properties: + fsType: + description: 'Filesystem type of the volume that you want + to mount. Tip: Ensure that the filesystem type is supported + by the host operating system. Examples: "ext4", "xfs", "ntfs". + Implicitly inferred to be "ext4" if unspecified. More info: + https://kubernetes.io/docs/concepts/storage/volumes#rbd + TODO: how do we prevent errors in the filesystem from compromising + the machine' + type: string + image: + description: 'The rados image name. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + keyring: + description: 'Keyring is the path to key ring for RBDUser. + Default is /etc/ceph/keyring. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + monitors: + description: 'A collection of Ceph monitors. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + items: + type: string + type: array + pool: + description: 'The rados pool name. Default is rbd. More info: + https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + readOnly: + description: 'ReadOnly here will force the ReadOnly setting + in VolumeMounts. Defaults to false. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: boolean + secretRef: + description: 'SecretRef is name of the authentication secret + for RBDUser. If provided overrides keyring. Default is nil. + More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + user: + description: 'The rados user name. Default is admin. More + info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it' + type: string + required: + - image + - monitors + type: object + scaleIO: + description: ScaleIO represents a ScaleIO persistent volume attached + and mounted on Kubernetes nodes. + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Default is "xfs". + type: string + gateway: + description: The host address of the ScaleIO API Gateway. + type: string + protectionDomain: + description: The name of the ScaleIO Protection Domain for + the configured storage. + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + secretRef: + description: SecretRef references to the secret for ScaleIO + user and other sensitive information. If this is not provided, + Login operation will fail. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + sslEnabled: + description: Flag to enable/disable SSL communication with + Gateway, default false + type: boolean + storageMode: + description: Indicates whether the storage for a volume should + be ThickProvisioned or ThinProvisioned. Default is ThinProvisioned. + type: string + storagePool: + description: The ScaleIO Storage Pool associated with the + protection domain. + type: string + system: + description: The name of the storage system as configured + in ScaleIO. + type: string + volumeName: + description: The name of a volume already created in the ScaleIO + system that is associated with this volume source. + type: string + required: + - gateway + - secretRef + - system + type: object + secret: + description: 'Secret represents a secret that should populate + this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret' + properties: + defaultMode: + description: 'Optional: mode bits to use on created files + by default. Must be a value between 0 and 0777. Defaults + to 0644. Directories within the path are not affected by + this setting. This might be in conflict with other options + that affect the file mode, like fsGroup, and the result + can be other mode bits set.' + format: int32 + type: integer + items: + description: If unspecified, each key-value pair in the Data + field of the referenced Secret will be projected into the + volume as a file whose name is the key and content is the + value. If specified, the listed keys will be projected into + the specified paths, and unlisted keys will not be present. + If a key is specified which is not present in the Secret, + the volume setup will error unless it is marked optional. + Paths must be relative and may not contain the '..' path + or start with '..'. + items: + description: Maps a string key to a path within a volume. + properties: + key: + description: The key to project. + type: string + mode: + description: 'Optional: mode bits to use on this file, + must be a value between 0 and 0777. If not specified, + the volume defaultMode will be used. This might be + in conflict with other options that affect the file + mode, like fsGroup, and the result can be other mode + bits set.' + format: int32 + type: integer + path: + description: The relative path of the file to map the + key to. May not be an absolute path. May not contain + the path element '..'. May not start with the string + '..'. + type: string + required: + - key + - path + type: object + type: array + optional: + description: Specify whether the Secret or its keys must be + defined + type: boolean + secretName: + description: 'Name of the secret in the pod''s namespace to + use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret' + type: string + type: object + storageos: + description: StorageOS represents a StorageOS volume attached + and mounted on Kubernetes nodes. + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + readOnly: + description: Defaults to false (read/write). ReadOnly here + will force the ReadOnly setting in VolumeMounts. + type: boolean + secretRef: + description: SecretRef specifies the secret to use for obtaining + the StorageOS API credentials. If not specified, default + values will be attempted. + properties: + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid?' + type: string + type: object + volumeName: + description: VolumeName is the human-readable name of the + StorageOS volume. Volume names are only unique within a + namespace. + type: string + volumeNamespace: + description: VolumeNamespace specifies the scope of the volume + within StorageOS. If no namespace is specified then the + Pod's namespace will be used. This allows the Kubernetes + name scoping to be mirrored within StorageOS for tighter + integration. Set VolumeName to any name to override the + default behaviour. Set to "default" if you are not using + namespaces within StorageOS. Namespaces that do not pre-exist + within StorageOS will be created. + type: string + type: object + vsphereVolume: + description: VsphereVolume represents a vSphere volume attached + and mounted on kubelets host machine + properties: + fsType: + description: Filesystem type to mount. Must be a filesystem + type supported by the host operating system. Ex. "ext4", + "xfs", "ntfs". Implicitly inferred to be "ext4" if unspecified. + type: string + storagePolicyID: + description: Storage Policy Based Management (SPBM) profile + ID associated with the StoragePolicyName. + type: string + storagePolicyName: + description: Storage Policy Based Management (SPBM) profile + name. + type: string + volumePath: + description: Path that identifies vSphere volume vmdk + type: string + required: + - volumePath + type: object + required: + - name + type: object + type: array + type: object + status: + description: 'Most recent observed status of the ThanosRuler cluster. Read-only. + Not included when requesting from the apiserver, only from the ThanosRuler + Operator API itself. More info: https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/api-conventions.md#spec-and-status' + properties: + availableReplicas: + description: Total number of available pods (ready for at least minReadySeconds) + targeted by this ThanosRuler deployment. + format: int32 + type: integer + paused: + description: Represents whether any actions on the underlying managed + objects are being performed. Only delete actions will be performed. + type: boolean + replicas: + description: Total number of non-terminated pods targeted by this ThanosRuler + deployment (their labels match the selector). + format: int32 + type: integer + unavailableReplicas: + description: Total number of unavailable pods targeted by this ThanosRuler + deployment. + format: int32 + type: integer + updatedReplicas: + description: Total number of non-terminated pods targeted by this ThanosRuler + deployment that have the desired version spec. + format: int32 + type: integer + required: + - availableReplicas + - paused + - replicas + - unavailableReplicas + - updatedReplicas + type: object + required: + - spec + type: object + version: v1 + versions: + - name: v1 + served: true + storage: true + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/crd-manifest/crd-thanosrulers.yaml + - content: | + # Rancher + + {{- define "system_default_registry" -}} + {{- if .Values.global.cattle.systemDefaultRegistry -}} + {{- printf "%s/" .Values.global.cattle.systemDefaultRegistry -}} + {{- end -}} + {{- end -}} + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/templates/_helpers.tpl + - content: | + apiVersion: batch/v1 + kind: Job + metadata: + name: {{ .Chart.Name }}-create + namespace: {{ .Release.Namespace }} + labels: + app: {{ .Chart.Name }} + annotations: + "helm.sh/hook": post-install, post-upgrade, post-rollback + "helm.sh/hook-delete-policy": hook-succeeded + spec: + template: + metadata: + name: {{ .Chart.Name }}-create + labels: + app: {{ .Chart.Name }} + spec: + serviceAccountName: {{ .Chart.Name }}-manager + containers: + - name: create-crds + image: {{ template "system_default_registry" . }}{{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: IfNotPresent + command: + - /bin/kubectl + - apply + - -f + - /etc/config/crd-manifest.yaml + volumeMounts: + - name: crd-manifest + readOnly: true + mountPath: /etc/config + restartPolicy: OnFailure + volumes: + - name: crd-manifest + configMap: + name: {{ .Chart.Name }}-manifest + --- + apiVersion: batch/v1 + kind: Job + metadata: + name: {{ .Chart.Name }}-delete + namespace: {{ .Release.Namespace }} + labels: + app: {{ .Chart.Name }} + annotations: + "helm.sh/hook": pre-delete + "helm.sh/hook-delete-policy": hook-succeeded + spec: + template: + metadata: + name: {{ .Chart.Name }}-delete + labels: + app: {{ .Chart.Name }} + spec: + serviceAccountName: {{ .Chart.Name }}-manager + initContainers: + - name: remove-finalizers + image: {{ template "system_default_registry" . }}{{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: IfNotPresent + command: + - /bin/kubectl + - apply + - -f + - /etc/config/crd-manifest.yaml + volumeMounts: + - name: crd-manifest + readOnly: true + mountPath: /etc/config + containers: + - name: delete-crds + image: {{ template "system_default_registry" . }}{{ .Values.image.repository }}:{{ .Values.image.tag }} + imagePullPolicy: IfNotPresent + command: + - /bin/kubectl + - delete + - -f + - /etc/config/crd-manifest.yaml + volumeMounts: + - name: crd-manifest + readOnly: true + mountPath: /etc/config + restartPolicy: OnFailure + volumes: + - name: crd-manifest + configMap: + name: {{ .Chart.Name }}-manifest + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/templates/jobs.yaml + - content: | + apiVersion: v1 + kind: ConfigMap + metadata: + name: {{ .Chart.Name }}-manifest + namespace: {{ .Release.Namespace }} + data: + crd-manifest.yaml: | + {{- $currentScope := . -}} + {{- $crds := (.Files.Glob "crd-manifest/**.yaml") -}} + {{- range $path, $_ := $crds -}} + {{- with $currentScope -}} + {{ .Files.Get $path | nindent 4 }} + --- + {{- end -}}{{- end -}} + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/templates/manifest.yaml + - content: | + apiVersion: rbac.authorization.k8s.io/v1 + kind: ClusterRole + metadata: + name: {{ .Chart.Name }}-manager + labels: + app: {{ .Chart.Name }}-manager + rules: + - apiGroups: + - apiextensions.k8s.io + resources: + - customresourcedefinitions + verbs: ['create', 'get', 'patch', 'delete'] + --- + apiVersion: rbac.authorization.k8s.io/v1 + kind: ClusterRoleBinding + metadata: + name: {{ .Chart.Name }}-manager + labels: + app: {{ .Chart.Name }}-manager + roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: {{ .Chart.Name }}-manager + subjects: + - kind: ServiceAccount + name: {{ .Chart.Name }}-manager + namespace: {{ .Release.Namespace }} + --- + apiVersion: v1 + kind: ServiceAccount + metadata: + name: {{ .Chart.Name }}-manager + namespace: {{ .Release.Namespace }} + labels: + app: {{ .Chart.Name }}-manager + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/templates/rbac.yaml + - content: | + # Default values for rancher-monitoring-crd. + # This is a YAML-formatted file. + # Declare variables to be passed into your templates. + + global: + cattle: + systemDefaultRegistry: "" + + image: + repository: rancher/kubectl + tag: v1.18.6 + name: .chart/f8c24b4e65ba5a80778e00d332890bb4fb210457ac2adeea61b5e15c2b247fce/rancher-monitoring-crd/values.yaml + - content: | + namespace: cattle-monitoring-system + helm: + releaseName: rancher-monitoring-crd + chart: rancher-monitoring-crd + repo: https://charts.rancher.io + name: fleet.yaml + targets: + - clusterGroup: default + name: default diff --git a/tests/expected/single-cluster/helm-multi-chart/dev-output.yaml b/tests/expected/single-cluster/helm-multi-chart/dev-output.yaml new file mode 100644 index 0000000..e69de29 diff --git a/tests/expected/single-cluster/helm-multi-chart/prod-output.yaml b/tests/expected/single-cluster/helm-multi-chart/prod-output.yaml new file mode 100644 index 0000000..e69de29 diff --git a/tests/expected/single-cluster/helm-multi-chart/test-output.yaml b/tests/expected/single-cluster/helm-multi-chart/test-output.yaml new file mode 100644 index 0000000..e69de29 diff --git a/tests/expected/single-cluster/helm/bundle.yaml b/tests/expected/single-cluster/helm/bundle.yaml new file mode 100644 index 0000000..58ae5f5 --- /dev/null +++ b/tests/expected/single-cluster/helm/bundle.yaml @@ -0,0 +1,222 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + helm: + releaseName: guestbook + values: + replicas: 2 + namespace: fleet-helm-example + resources: + - content: | + apiVersion: v2 + name: guestbook + description: Sample application + version: 0.0.0 + appVersion: 0.0.0 + name: Chart.yaml + - content: | + # Helm Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application as + packaged as a Helm chart. + The app will be deployed into the `fleet-helm-example` namespace. + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: helm + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - single-cluster/helm + ``` + name: README.md + - content: | + # This file and all contents in it are OPTIONAL. + + # The namespace this chart will be installed to, + # if not specified the chart will be installed to "default" + namespace: fleet-helm-example + + # Custom helm options + helm: + # The release name to use. If empty a generated release name will be used + releaseName: guestbook + + # The directory of the chart in the repo. Also any valid go-getter supported + # URL can be used there is specify where to download the chart from. + # If repo below is set this value if the chart name in the repo + chart: "" + + # An https to a valid Helm repository to download the chart from + repo: "" + + # Used if repo is set to look up the version of the chart + version: "" + + # Force recreate resource that can not be updated + force: false + + # How long for helm to wait for the release to be active. If the value + # is less that or equal to zero, we will not wait in Helm + timeoutSeconds: 0 + + # Custom values that will be passed as values.yaml to the installation + values: + replicas: 2 + name: fleet.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: {{ .Values.replicas }} + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: templates/frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: "{{ .Values.serviceType }}" + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: templates/frontend-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: templates/redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: templates/redis-master-service.yaml + - content: | + {{ if .Values.replication }} + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + {{ end }} + name: templates/redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + {{ if .Values.replication }} + role: slave + {{ else }} + role: master + {{ end }} + tier: backend + name: templates/redis-slave-service.yaml + - content: | + replication: true + replicas: 1 + serviceType: NodePort + name: values.yaml + targets: + - clusterGroup: default + name: default diff --git a/tests/expected/single-cluster/helm/dev-output.yaml b/tests/expected/single-cluster/helm/dev-output.yaml new file mode 100644 index 0000000..baca5e4 --- /dev/null +++ b/tests/expected/single-cluster/helm/dev-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 2 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/single-cluster/helm/prod-output.yaml b/tests/expected/single-cluster/helm/prod-output.yaml new file mode 100644 index 0000000..baca5e4 --- /dev/null +++ b/tests/expected/single-cluster/helm/prod-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 2 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/single-cluster/helm/test-output.yaml b/tests/expected/single-cluster/helm/test-output.yaml new file mode 100644 index 0000000..baca5e4 --- /dev/null +++ b/tests/expected/single-cluster/helm/test-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 2 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/single-cluster/kustomize/bundle.yaml b/tests/expected/single-cluster/kustomize/bundle.yaml new file mode 100644 index 0000000..b65c28e --- /dev/null +++ b/tests/expected/single-cluster/kustomize/bundle.yaml @@ -0,0 +1,216 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + kustomize: {} + namespace: fleet-kustomize-example + resources: + - content: | + # Helm Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application + using kustomize. The app will be deployed into the `fleet-kustomize-example` namespace. + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: kustomize + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - single-cluster/kustomize + ``` + name: README.md + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: 1 + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: base/frontend-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: NodePort + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: base/frontend-service.yaml + - content: | + resources: + - frontend-deployment.yaml + - frontend-service.yaml + - redis-master-deployment.yaml + - redis-master-service.yaml + - redis-slave-deployment.yaml + - redis-slave-service.yaml + name: base/kustomization.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: base/redis-master-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: base/redis-master-service.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: base/redis-slave-deployment.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + name: base/redis-slave-service.yaml + - content: | + # This file and all contents in it are OPTIONAL. + + # The default namespace to apply to resources that are namespaced + # but do not specify a namespace. In this example no resources + # are configured with a namespace so this default will apply + namespace: fleet-kustomize-example + + + kustomize: + # To use a kustomization.yaml different from the one in the root folder + dir: "" + name: fleet.yaml + - content: | + bases: + - overlays/dev + name: kustomization.yaml + - content: | + bases: + - ../../base + patches: + - redis-slave-deployment.yaml + - redis-slave-service.yaml + name: overlays/dev/kustomization.yaml + - content: | + kind: Deployment + apiVersion: apps/v1 + metadata: + name: redis-slave + spec: + replicas: 0 + name: overlays/dev/redis-slave-deployment.yaml + - content: | + kind: Service + apiVersion: v1 + metadata: + name: redis-slave + spec: + selector: + role: master + name: overlays/dev/redis-slave-service.yaml + targets: + - clusterGroup: default + name: default diff --git a/tests/expected/single-cluster/kustomize/dev-output.yaml b/tests/expected/single-cluster/kustomize/dev-output.yaml new file mode 100644 index 0000000..c83727b --- /dev/null +++ b/tests/expected/single-cluster/kustomize/dev-output.yaml @@ -0,0 +1,155 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 0 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend diff --git a/tests/expected/single-cluster/kustomize/prod-output.yaml b/tests/expected/single-cluster/kustomize/prod-output.yaml new file mode 100644 index 0000000..c83727b --- /dev/null +++ b/tests/expected/single-cluster/kustomize/prod-output.yaml @@ -0,0 +1,155 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 0 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend diff --git a/tests/expected/single-cluster/kustomize/test-output.yaml b/tests/expected/single-cluster/kustomize/test-output.yaml new file mode 100644 index 0000000..c83727b --- /dev/null +++ b/tests/expected/single-cluster/kustomize/test-output.yaml @@ -0,0 +1,155 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 0 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: master + tier: backend diff --git a/tests/expected/single-cluster/manifests/bundle.yaml b/tests/expected/single-cluster/manifests/bundle.yaml new file mode 100644 index 0000000..5ab8cca --- /dev/null +++ b/tests/expected/single-cluster/manifests/bundle.yaml @@ -0,0 +1,173 @@ +apiVersion: fleet.cattle.io/v1alpha1 +kind: Bundle +metadata: + name: test + namespace: fleet-local +spec: + namespace: fleet-manifest-example + resources: + - content: | + # Manifests Example + + This example will deploy the [Kubernetes sample guestbook](https://github.com/kubernetes/examples/tree/master/guestbook/) application. + The app will be deployed into the `fleet-manifest-example` namespace. + + ```yaml + kind: GitRepo + apiVersion: fleet.cattle.io/v1alpha1 + metadata: + name: manifests + namespace: fleet-local + spec: + repo: https://github.com/rancher/fleet-examples/ + paths: + - single-cluster/manifests + ``` + name: README.md + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: frontend + spec: + selector: + matchLabels: + app: guestbook + tier: frontend + replicas: 1 + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: gcr.io/google-samples/gb-frontend:v4 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 80 + name: deployments/frontend-deployment.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-master + spec: + selector: + matchLabels: + app: redis + role: master + tier: backend + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: redis + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: deployments/redis-master-deployment.yaml + - content: | + apiVersion: apps/v1 + kind: Deployment + metadata: + name: redis-slave + spec: + selector: + matchLabels: + app: redis + role: slave + tier: backend + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: gcr.io/google_samples/gb-redisslave:v1 + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 + name: deployments/redis-slave-deployment.yaml + - content: | + # This file and all contents in it are OPTIONAL. + + # The default namespace to apply to resources that are namespaced + # but do not specify a namespace. In this example no resources + # are configured with a namespace so this default will apply + namespace: fleet-manifest-example + name: fleet.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: frontend + labels: + app: guestbook + tier: frontend + spec: + type: NodePort + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + name: services/frontend-service.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend + spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + name: services/redis-master-service.yaml + - content: | + apiVersion: v1 + kind: Service + metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend + spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + name: services/redis-slave-service.yaml + targets: + - clusterGroup: default + name: default diff --git a/tests/expected/single-cluster/manifests/dev-output.yaml b/tests/expected/single-cluster/manifests/dev-output.yaml new file mode 100644 index 0000000..d6db36f --- /dev/null +++ b/tests/expected/single-cluster/manifests/dev-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/single-cluster/manifests/prod-output.yaml b/tests/expected/single-cluster/manifests/prod-output.yaml new file mode 100644 index 0000000..d6db36f --- /dev/null +++ b/tests/expected/single-cluster/manifests/prod-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/expected/single-cluster/manifests/test-output.yaml b/tests/expected/single-cluster/manifests/test-output.yaml new file mode 100644 index 0000000..d6db36f --- /dev/null +++ b/tests/expected/single-cluster/manifests/test-output.yaml @@ -0,0 +1,155 @@ +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: guestbook + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + tier: frontend + name: frontend +spec: + ports: + - port: 80 + selector: + app: guestbook + tier: frontend + type: NodePort + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: master + tier: backend + name: redis-master +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend + +--- +apiVersion: v1 +kind: Service +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + app: redis + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + role: slave + tier: backend + name: redis-slave +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: frontend +spec: + replicas: 1 + selector: + matchLabels: + app: guestbook + tier: frontend + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - image: gcr.io/google-samples/gb-frontend:v4 + name: php-redis + ports: + - containerPort: 80 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-master +spec: + replicas: 1 + selector: + matchLabels: + app: redis + role: master + tier: backend + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - image: redis + name: master + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi + +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + annotations: + objectset.rio.cattle.io/id: -test + labels: + objectset.rio.cattle.io/hash: c0fae66aeeea5c9703d7410307d74609c272103d + name: redis-slave +spec: + replicas: 2 + selector: + matchLabels: + app: redis + role: slave + tier: backend + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - image: gcr.io/google_samples/gb-redisslave:v1 + name: slave + ports: + - containerPort: 6379 + resources: + requests: + cpu: 100m + memory: 100Mi diff --git a/tests/test.sh b/tests/test.sh new file mode 100755 index 0000000..5d82780 --- /dev/null +++ b/tests/test.sh @@ -0,0 +1,37 @@ +#!/bin/bash +set -e + +cd $(dirname $0) + +rm -rf output + +for i in ../single-cluster/*; do + if [ ! -d $i ]; then + continue + fi + pushd $i + for j in dev test prod; do + mkdir -p ../../tests/output/garbage/${i} + fleet test > ../../tests/output/garbage/${i}/${j}-output.yaml + fleet test --print-bundle > ../../tests/output/garbage/${i}/bundle.yaml + done + popd +done + +for i in ../multi-cluster/*; do + if [ ! -d $i ]; then + continue + fi + pushd $i + for j in dev test prod; do + mkdir -p ../../tests/output/garbage/${i} + fleet test -l env=${j} > ../../tests/output/garbage/${i}/${j}-output.yaml + fleet test --print-bundle > ../../tests/output/garbage/${i}/bundle.yaml + done + popd +done + +diff -iwqr output expected + +echo All is OK +rm -rf output