You've already forked prometheus-postgres-exporter
Compare commits
53 Commits
Author | SHA1 | Date | |
---|---|---|---|
2e9eae9888
|
|||
0dcea5cfc4
|
|||
e38c4fbdfe
|
|||
0a4d677938
|
|||
171d9a695e
|
|||
853c65a8ef | |||
c93c4dd4eb
|
|||
4105bb9e0f
|
|||
7ea826a2a1
|
|||
aa8c279fe0
|
|||
dfd4c1f991
|
|||
d6c2e4f992
|
|||
ae7652a335
|
|||
16cfa36fda
|
|||
94fbc5e38f
|
|||
dcc7bae921
|
|||
503c622df5
|
|||
bf9bd4853f
|
|||
80a8e8096d
|
|||
79b61b0035
|
|||
d33b17b973 | |||
a0d241c90c
|
|||
1d061fe95f
|
|||
bb4a5d48b4
|
|||
1f6550d169
|
|||
a01c7d8c45
|
|||
2dd99e8b13
|
|||
4945cd1c2e
|
|||
ed10c5362a
|
|||
70abc21fb4
|
|||
8618b52ef6
|
|||
967d36cafb
|
|||
8f36f688d0
|
|||
8d1f6622b8
|
|||
bd04d4a349
|
|||
3105f2a408
|
|||
3a96e4ac5d
|
|||
abd73d82f2
|
|||
19b5ac5969
|
|||
7b98e68b03
|
|||
6c30756f8d
|
|||
688718008f
|
|||
be0e152de8
|
|||
4edf2660de
|
|||
c1a2a098c8
|
|||
085a68c60c
|
|||
98fe8fe2a4
|
|||
7d02c5f7b3
|
|||
cbdf696a4e
|
|||
42af0f9739
|
|||
5c0f2fb310
|
|||
c211bd7a61
|
|||
6d2a3675b1
|
18
.drone.yml
18
.drone.yml
@ -12,7 +12,7 @@ platform:
|
||||
|
||||
steps:
|
||||
- name: clone repository
|
||||
image: git.cryptic.systems/volker.raschek/git:1.3.1
|
||||
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||
|
||||
- name: helm lint
|
||||
commands:
|
||||
@ -26,7 +26,7 @@ steps:
|
||||
- name: markdown lint
|
||||
commands:
|
||||
- markdownlint *.md
|
||||
image: git.cryptic.systems/volker.raschek/markdownlint:0.41.0
|
||||
image: git.cryptic.systems/volker.raschek/markdownlint:0.42.0
|
||||
resources:
|
||||
limits:
|
||||
cpu: 150
|
||||
@ -73,7 +73,7 @@ platform:
|
||||
|
||||
steps:
|
||||
- name: clone repository
|
||||
image: git.cryptic.systems/volker.raschek/git:1.3.1
|
||||
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||
|
||||
- name: helm unittest
|
||||
commands:
|
||||
@ -125,14 +125,14 @@ platform:
|
||||
|
||||
steps:
|
||||
- name: clone repository
|
||||
image: git.cryptic.systems/volker.raschek/git:1.3.1
|
||||
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||
|
||||
- name: generate README
|
||||
commands:
|
||||
- npm install
|
||||
- npm run readme:parameters
|
||||
- npm run readme:lint
|
||||
image: docker.io/library/node:22.9.0-alpine
|
||||
image: docker.io/library/node:23.3.0-alpine
|
||||
resources:
|
||||
limits:
|
||||
cpu: 150
|
||||
@ -141,7 +141,7 @@ steps:
|
||||
- name: detect diff
|
||||
commands:
|
||||
- git diff --exit-code --name-only README.md
|
||||
image: git.cryptic.systems/volker.raschek/git:1.3.1
|
||||
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||
|
||||
- name: email-notification
|
||||
environment:
|
||||
@ -183,13 +183,13 @@ platform:
|
||||
|
||||
steps:
|
||||
- name: clone repository
|
||||
image: git.cryptic.systems/volker.raschek/git:1.3.1
|
||||
image: git.cryptic.systems/volker.raschek/git:1.4.0
|
||||
|
||||
- name: release-helm-chart
|
||||
commands:
|
||||
- helm repo add prometheus-exporter https://charts.cryptic.systems/prometheus-exporter
|
||||
- helm repo add prometheus-exporters https://charts.cryptic.systems/prometheus-exporters
|
||||
- helm package --version ${DRONE_TAG} .
|
||||
- helm cm-push ${DRONE_REPO_NAME}-${DRONE_TAG}.tgz prometheus-exporter
|
||||
- helm cm-push ${DRONE_REPO_NAME}-${DRONE_TAG}.tgz prometheus-exporters
|
||||
environment:
|
||||
HELM_REPO_PASSWORD:
|
||||
from_secret: helm_repo_password
|
||||
|
21
.helmignore
21
.helmignore
@ -26,7 +26,7 @@
|
||||
.vscode/
|
||||
|
||||
# drone
|
||||
.drone.ya?ml
|
||||
.drone.yml
|
||||
|
||||
# editorconfig
|
||||
.editorconfig
|
||||
@ -37,13 +37,24 @@ values2.yaml
|
||||
|
||||
# helm packages
|
||||
*.tgz
|
||||
.helmignore
|
||||
unittests
|
||||
|
||||
# markdownlint
|
||||
.markdownlint.yml
|
||||
.markdownlint.yaml
|
||||
.markdownlintignore
|
||||
|
||||
# maven
|
||||
target
|
||||
# npm
|
||||
.prettierignore
|
||||
.npmrc
|
||||
package*
|
||||
|
||||
# serviceDescriptor (uctl-cluster)
|
||||
serviceDescriptor.yaml
|
||||
# yamllint
|
||||
.yamllint.yaml
|
||||
|
||||
# Others
|
||||
CONTRIBUTING.md
|
||||
CODEOWNERS
|
||||
Makefile
|
||||
renovate.json
|
||||
|
@ -1 +1,82 @@
|
||||
# Contribution Guidelines
|
||||
# Contributing
|
||||
|
||||
I am very happy if you would like to provide a pull request 👍
|
||||
|
||||
The content of this file describes which requirements contributors should fulfill before submitting a pull request (PR).
|
||||
|
||||
1. [Valid Git commits](#valid-git-commits)
|
||||
|
||||
## Valid Git commits
|
||||
|
||||
### Commit message
|
||||
|
||||
The repository is subject to a strict commit message template. This states that there are several types of commits. For
|
||||
example, `fix`, `chore`, `refac`, `test` or `doc`. All types are described in more detail below.
|
||||
|
||||
| type | description |
|
||||
| ------------------- | ----------------------------------------------------------------- |
|
||||
| `feat` | New feature. |
|
||||
| `fix` | Fixes a bug. |
|
||||
| `refac` | Refactoring production code. |
|
||||
| `style` | Fixes formatting issues. No production code change. |
|
||||
| `docs` | Adapt documentation. No production code change. |
|
||||
| `test` | Adds new or modifies existing tests. No production code change. |
|
||||
| `chore` | Updating grunt tasks. Is everything which the user does not see. |
|
||||
|
||||
Based on these types, commit messaged can then be created. Here are a few examples:
|
||||
|
||||
```text
|
||||
style(README): Wrong indentation
|
||||
feat(deployment): support restartPolicy
|
||||
fix(my-app): Add missing volume
|
||||
docs(CONTRIBUTING): Describe how to commit correctly
|
||||
```
|
||||
|
||||
This type of commit message makes it easier for me as maintainer to keep an overview and does not cause the commits of a
|
||||
pull request PR to be combined into one commit (squashing).
|
||||
|
||||
### Smart commits
|
||||
|
||||
Smart commits are excellent when it comes to tracking bugs or issues. In this repository, however, the rebasing of
|
||||
commits is prohibited, which means that only merge commits are possible. This means that a smart commit message only
|
||||
needs to be added to the merge commit.
|
||||
|
||||
This has the advantage that the maintainer can use the smart commit to find the merge commit and undo the entire history
|
||||
of a merge without having to select individual commits. The following history illustrates the correct use of smart commits.
|
||||
|
||||
```text
|
||||
* 823edbc7 Volker Raschek (G) | [Close #2] feat(deployment): support additional containers
|
||||
|\
|
||||
| * 321aebc3 Volker Raschek (G) | doc(README): generate README with new deployment attributes
|
||||
| * 8d101dd3 Volker Raschek (G) | test(deployment): Extend unittest of additional containers
|
||||
| * 6f2abd93 Volker Raschek (G) | fix(deployment): Extend deployment of additional containers
|
||||
|/
|
||||
* aa5ebda bob (N) | [Close #1] feat(deployment): support initContainers
|
||||
```
|
||||
|
||||
### Commit signing
|
||||
|
||||
Another problem with Git is the chain of trust. Git allows the configuration of any name and e-mail address. An attacker
|
||||
can impersonate any person and submit pull requests under a false identity. For as Linux Torvalds, the maintainer of the
|
||||
Linux kernel.
|
||||
|
||||
```bash
|
||||
git config --global user.name 'Linux Torvalds'
|
||||
git config --global user.email 'torvalds@linux-foundation.org'
|
||||
```
|
||||
|
||||
To avoid this, some Git repositories expect signed commits. In particular, repositories that are subject to direct
|
||||
delivery to customers. For this reason, the repository is subject to a branch protection rule that only allows signed
|
||||
commits. *Until* there is *no verified* and *no signed* commit, the pull request is blocked.
|
||||
|
||||
The following articles describes how Git can be configured to sign commits. Please keep in mind, that the e-mail
|
||||
address, which is used as UID of the GPG keyring must also be defined in the profile settings of your GitHub account.
|
||||
Otherwise will be marked the Git commit as *Unverified*.
|
||||
|
||||
1. [Signing Commits](https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits)
|
||||
2. [Tell Git about your signing key](https://docs.github.com/en/authentication/managing-commit-signature-verification/telling-git-about-your-signing-key)
|
||||
|
||||
Inspect your Git commit via `git log`. There should be mentioned, that your commit is signed.
|
||||
|
||||
Furthermore, the GPG key is unique. **Don't loose your private GPG key**. Backup your private key on a safe device. For
|
||||
example an external USB drive.
|
||||
|
@ -4,14 +4,15 @@ description: Prometheus metric exporter for PostgreSQL
|
||||
type: application
|
||||
kubeVersion: ">=1.20.0"
|
||||
version: "0.1.0"
|
||||
appVersion: "0.15.0"
|
||||
appVersion: "0.16.0"
|
||||
|
||||
# icon: https://annotations.example.com/icon.png
|
||||
|
||||
keywords:
|
||||
- prometheus
|
||||
- prometheus exporter
|
||||
- postgres
|
||||
- prometheus-exporter
|
||||
- postgres-postgres-exporter
|
||||
- postgres-exporter
|
||||
|
||||
sources:
|
||||
- https://github.com/prometheus-community/postgres_exporter
|
||||
|
19
Makefile
19
Makefile
@ -19,12 +19,6 @@ NODE_IMAGE_REPOSITORY=library/node
|
||||
NODE_IMAGE_VERSION?=22.9.0-alpine # renovate: datasource=docker registryUrl=https://docker.io depName=library/node
|
||||
NODE_IMAGE_FULLY_QUALIFIED=${NODE_IMAGE_REGISTRY_HOST}/${NODE_IMAGE_REPOSITORY}:${NODE_IMAGE_VERSION}
|
||||
|
||||
# CHART_SERVER
|
||||
CHART_SERVER_HOST?=charts.u.orbis-healthcare.com
|
||||
CHART_SERVER_NAMESPACE?=orbis-u
|
||||
CHART_SERVER_REPOSITORY?=qu-seed
|
||||
CHART_VERSION?=0.1.0
|
||||
|
||||
# MISSING DOT
|
||||
# ==============================================================================
|
||||
missing-dot:
|
||||
@ -67,19 +61,6 @@ container-run/helm-update-dependencies:
|
||||
${HELM_IMAGE_FULLY_QUALIFIED} \
|
||||
dependency update
|
||||
|
||||
# CONTAINER RUN - DEPLOY2CHART-REPO
|
||||
# ==============================================================================
|
||||
container-run/deploy2chart-repo:
|
||||
${CONTAINER_RUNTIME} run \
|
||||
--env HELM_REPO_PASSWORD=${CHART_SERVER_PASSWORD} \
|
||||
--env HELM_REPO_USERNAME=${CHART_SERVER_USERNAME} \
|
||||
--entrypoint /bin/bash \
|
||||
--rm \
|
||||
--volume $(shell pwd):$(shell pwd) \
|
||||
--workdir $(shell pwd) \
|
||||
${HELM_IMAGE_FULLY_QUALIFIED} \
|
||||
-c "helm repo add ${CHART_SERVER_NAMESPACE} http://${CHART_SERVER_HOST}/${CHART_SERVER_NAMESPACE} && helm package --version ${CHART_VERSION} . && helm cm-push ./${CHART_SERVER_REPOSITORY}-${CHART_VERSION}.tgz ${CHART_SERVER_NAMESPACE}"
|
||||
|
||||
# CONTAINER RUN - MARKDOWN-LINT
|
||||
# ==============================================================================
|
||||
PHONY+=container-run/helm-lint
|
||||
|
77
README.md
77
README.md
@ -1,20 +1,21 @@
|
||||
# Prometheus PostgreSQL exporter
|
||||
|
||||
[](https://drone.cryptic.systems/volker.raschek/prometheus-postgres-exporter)
|
||||
[](https://artifacthub.io/packages/search?repo=prometheus-exporters)
|
||||
|
||||
> [!NOTE]
|
||||
> This is not the official *community* helm chart of the Prometheus metric exporter for PostgreSQL databases. You can
|
||||
> find the official community chart [here](https://github.com/prometheus-community/helm-charts).
|
||||
|
||||
This helm chart enables the deployment of a Prometheus metrics exporter for PostgreSQL databases and allows the
|
||||
individual configuration of additional containers/initContainers, mounting of volumes, defining additional environment
|
||||
variables, apply a user-defined web-config.yaml and much more.
|
||||
variables, apply a user-defined `webConfig.yaml` and much more.
|
||||
|
||||
Chapter [configuration and installation](#helm-configuration-and-installation) describes the basics how to configure helm
|
||||
and use it to deploy the exporter. It also contains further configuration examples.
|
||||
|
||||
Furthermore, this helm chart unit tests to detect regressions and stabilize the deployment. Additionally, this helm
|
||||
chart is tested for deployment scenarios with ArgoCD.
|
||||
|
||||
> ![NOTE]
|
||||
> This is not the official *community* helm chart of the Prometheus metric exporter for PostgreSQL databases. You can
|
||||
> find the official community chart [here](https://github.com/prometheus-community/helm-charts).
|
||||
Furthermore, this helm chart contains unit tests to detect regressions and stabilize the deployment. Additionally, this
|
||||
helm chart is tested for deployment scenarios with **ArgoCD**.
|
||||
|
||||
## Helm: configuration and installation
|
||||
|
||||
@ -29,9 +30,9 @@ chart is tested for deployment scenarios with ArgoCD.
|
||||
> time is not possible.
|
||||
|
||||
```bash
|
||||
helm repo add prometheus-exporter https://charts.cryptic.systems/prometheus-exporter
|
||||
helm repo add prometheus-exporters https://charts.cryptic.systems/prometheus-exporters
|
||||
helm repo update
|
||||
helm install prometheus-exporter/prometheus-postgres-exporter prometheus-postgres-exporter \
|
||||
helm install prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
|
||||
--set 'config.database.secret.databaseUsername=postgres' \
|
||||
--set 'config.database.secret.databasePassword=postgres' \
|
||||
--set 'config.database.secret.databaseConnectionUrl="postgres.example.local:5432/postgres?ssl=disable"' \
|
||||
@ -45,7 +46,7 @@ version of the chart must be in sync with the `values.yaml`. Newer *minor* versi
|
||||
versions can break something!
|
||||
|
||||
```bash
|
||||
helm show values prometheus-exporter/prometheus-postgres-exporter --version 0.1.0 > values.yaml
|
||||
helm show values prometheus-exporters/prometheus-postgres-exporter --version 0.1.0 > values.yaml
|
||||
```
|
||||
|
||||
A complete list of available helm chart versions can be displayed via the following command:
|
||||
@ -66,12 +67,12 @@ The following examples serve as individual configurations and as inspiration for
|
||||
The first example shows how to deploy the metric exporter with TLS encryption. The verification of the custom TLS
|
||||
certification will be skipped by Prometheus.
|
||||
|
||||
> [!WARN]
|
||||
> A TLS secret with the name `prometheus-postgresql-exporter-http` containing a `ca.crt`, `tls.key` and `tls.crt` is
|
||||
> already present.
|
||||
> [!WARNING]
|
||||
> The secret `prometheus-postgresql-exporter-http` containing the TLS certificate is already present. The keys `ca.crt`,
|
||||
> `tls.key` and `tls.crt` of the secret can be mounted into the container filesystem for TLS authentication / encryption.
|
||||
|
||||
```bash
|
||||
helm install prometheus-exporter/prometheus-postgres-exporter prometheus-postgres-exporter \
|
||||
helm install prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
|
||||
--set 'config.database.secret.databaseUsername=postgres' \
|
||||
--set 'config.database.secret.databasePassword=postgres' \
|
||||
--set 'config.database.secret.databaseConnectionUrl="postgres.example.local:5432/postgres?ssl=disable"' \
|
||||
@ -94,7 +95,7 @@ certificate for the metrics exporter - TLS certificate verification can be enabl
|
||||
replaced:
|
||||
|
||||
```diff
|
||||
helm install prometheus-exporter/prometheus-postgres-exporter prometheus-postgres-exporter \
|
||||
helm install prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
|
||||
--set 'config.database.secret.databaseUsername=postgres' \
|
||||
--set 'config.database.secret.databasePassword=postgres' \
|
||||
--set 'config.database.secret.databaseConnectionUrl="postgres.example.local:5432/postgres?ssl=disable"' \
|
||||
@ -126,25 +127,25 @@ replaced:
|
||||
|
||||
### Configuration
|
||||
|
||||
| Name | Description | Value |
|
||||
| ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
|
||||
| `config.database.existingSecret.enabled` | Mount an existing secret containing the application specific `DATA_SOURCE_` prefixed environment variables. | `false` |
|
||||
| `config.database.existingSecret.secretName` | Name of the existing secret containing the application specific `DATA_SOURCE_` prefixed environment variables. | `""` |
|
||||
| `config.database.secret.annotations` | Additional annotations of the secret containing the database credentials. | `{}` |
|
||||
| `config.database.secret.labels` | Additional labels of the secret containing the database credentials. | `{}` |
|
||||
| `config.database.secret.databaseUsername` | Database username. Will be defined as env `DATA_SOURCE_USER` as part of a secret. | `""` |
|
||||
| `config.database.secret.databasePassword` | Database password. Will be defined as env `DATA_SOURCE_PASS` as part of a secret. | `""` |
|
||||
| `config.database.secret.databaseConnectionUrl` | Complex database connection URL. Will be defined as env `DATA_SOURCE_URI` as part of a secret. | `""` |
|
||||
| `config.exporterConfig.existingSecret.enabled` | Mount an existing secret containing the key `exporter_config.yaml`. | `false` |
|
||||
| `config.exporterConfig.existingSecret.secretName` | Name of the existing secret containing the key `exporter_config.yaml`. | `""` |
|
||||
| `config.exporterConfig.secret.annotations` | Additional annotations of the secret containing the `exporterConfig.yaml`. | `{}` |
|
||||
| `config.exporterConfig.secret.labels` | Additional labels of the secret containing the `exporterConfig.yaml`. | `{}` |
|
||||
| `config.exporterConfig.secret.exporterConfig` | Content of the `exporterConfig.yaml`. Further information can be found [here](https://prometheus.io/docs/prometheus/latest/configuration/https/). | `{}` |
|
||||
| `config.webConfig.existingSecret.enabled` | Mount an existing secret containing the key `webConfig.yaml`. | `false` |
|
||||
| `config.webConfig.existingSecret.secretName` | Name of the existing secret containing the key `webConfig.yaml`. | `""` |
|
||||
| `config.webConfig.secret.annotations` | Additional annotations of the secret containing the `webConfig.yaml`. | `{}` |
|
||||
| `config.webConfig.secret.labels` | Additional labels of the secret containing the `webConfig.yaml`. | `{}` |
|
||||
| `config.webConfig.secret.webConfig` | Content of the `webConfig.yaml`. Further information can be found [here](https://prometheus.io/docs/prometheus/latest/configuration/https/). | `{}` |
|
||||
| Name | Description | Value |
|
||||
| ------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
|
||||
| `config.database.existingSecret.enabled` | Mount an existing secret containing the application specific `DATA_SOURCE_` prefixed environment variables. | `false` |
|
||||
| `config.database.existingSecret.secretName` | Name of the existing secret containing the application specific `DATA_SOURCE_` prefixed environment variables. | `""` |
|
||||
| `config.database.secret.annotations` | Additional annotations of the secret containing the database credentials. | `{}` |
|
||||
| `config.database.secret.labels` | Additional labels of the secret containing the database credentials. | `{}` |
|
||||
| `config.database.secret.databaseUsername` | Database username. Will be defined as env `DATA_SOURCE_USER` as part of a secret. | `""` |
|
||||
| `config.database.secret.databasePassword` | Database password. Will be defined as env `DATA_SOURCE_PASS` as part of a secret. | `""` |
|
||||
| `config.database.secret.databaseConnectionUrl` | Complex database connection URL. Will be defined as env `DATA_SOURCE_URI` as part of a secret. | `""` |
|
||||
| `config.exporterConfig.existingSecret.enabled` | Mount an existing secret containing the key `exporterConfig.yaml`. | `false` |
|
||||
| `config.exporterConfig.existingSecret.secretName` | Name of the existing secret containing the key `exporterConfig.yaml`. | `""` |
|
||||
| `config.exporterConfig.secret.annotations` | Additional annotations of the secret containing the `exporterConfig.yaml`. | `{}` |
|
||||
| `config.exporterConfig.secret.labels` | Additional labels of the secret containing the `exporterConfig.yaml`. | `{}` |
|
||||
| `config.exporterConfig.secret.exporterConfig` | Content of the `exporterConfig.yaml`. Further information can be found [here](https://github.com/prometheus-community/postgres_exporter?tab=readme-ov-file#multi-target-support-beta). | `{}` |
|
||||
| `config.webConfig.existingSecret.enabled` | Mount an existing secret containing the key `webConfig.yaml`. | `false` |
|
||||
| `config.webConfig.existingSecret.secretName` | Name of the existing secret containing the key `webConfig.yaml`. | `""` |
|
||||
| `config.webConfig.secret.annotations` | Additional annotations of the secret containing the `webConfig.yaml`. | `{}` |
|
||||
| `config.webConfig.secret.labels` | Additional labels of the secret containing the `webConfig.yaml`. | `{}` |
|
||||
| `config.webConfig.secret.webConfig` | Content of the `webConfig.yaml`. Further information can be found [here](https://prometheus.io/docs/prometheus/latest/configuration/https/). | `{}` |
|
||||
|
||||
### Deployment
|
||||
|
||||
@ -170,10 +171,11 @@ replaced:
|
||||
| `deployment.postgresExporter.image.pullPolicy` | Image pull policy. | `IfNotPresent` |
|
||||
| `deployment.postgresExporter.resources` | CPU and memory resources of the pod. | `{}` |
|
||||
| `deployment.postgresExporter.securityContext` | Security context of the container of the deployment. | `{}` |
|
||||
| `deployment.postgresExporter.volumeMounts` | Additional volume mounts. | `{}` |
|
||||
| `deployment.postgresExporter.volumeMounts` | Additional volume mounts. | `[]` |
|
||||
| `deployment.nodeSelector` | NodeSelector of the postgres-exporter deployment. | `{}` |
|
||||
| `deployment.priorityClassName` | PriorityClassName of the postgres-exporter deployment. | `""` |
|
||||
| `deployment.replicaCount` | Number of replicas for the postgres-exporter deployment. | `1` |
|
||||
| `deployment.restartPolicy` | Restart policy of the postgres-exporter deployment. | `""` |
|
||||
| `deployment.securityContext` | Security context of the postgres-exporter deployment. | `{}` |
|
||||
| `deployment.strategy.type` | Strategy type - `Recreate` or `Rollingupdate`. | `Recreate` |
|
||||
| `deployment.strategy.rollingUpdate.maxSurge` | The maximum number of pods that can be scheduled above the desired number of pods during a rolling update. | `1` |
|
||||
@ -220,7 +222,7 @@ replaced:
|
||||
| `prometheus.metrics.enabled` | Enable of scraping metrics by Prometheus. | `true` |
|
||||
| `prometheus.metrics.podMonitor.enabled` | Enable creation of a podMonitor. Excludes the existence of a serviceMonitor resource. | `false` |
|
||||
| `prometheus.metrics.podMonitor.annotations` | Additional podMonitor annotations. | `{}` |
|
||||
| `prometheus.metrics.podMonitor.enableHttp2` | Enable HTTP2. | `false` |
|
||||
| `prometheus.metrics.podMonitor.enableHttp2` | Enable HTTP2. | `true` |
|
||||
| `prometheus.metrics.podMonitor.followRedirects` | FollowRedirects configures whether scrape requests follow HTTP 3xx redirects. | `false` |
|
||||
| `prometheus.metrics.podMonitor.honorLabels` | Honor labels. | `false` |
|
||||
| `prometheus.metrics.podMonitor.labels` | Additional podMonitor labels. | `{}` |
|
||||
@ -233,12 +235,11 @@ replaced:
|
||||
| `prometheus.metrics.serviceMonitor.enabled` | Enable creation of a serviceMonitor. Excludes the existence of a podMonitor resource. | `false` |
|
||||
| `prometheus.metrics.serviceMonitor.annotations` | Additional serviceMonitor annotations. | `{}` |
|
||||
| `prometheus.metrics.serviceMonitor.labels` | Additional serviceMonitor labels. | `{}` |
|
||||
| `prometheus.metrics.serviceMonitor.enableHttp2` | Enable HTTP2. | `false` |
|
||||
| `prometheus.metrics.serviceMonitor.enableHttp2` | Enable HTTP2. | `true` |
|
||||
| `prometheus.metrics.serviceMonitor.followRedirects` | FollowRedirects configures whether scrape requests follow HTTP 3xx redirects. | `false` |
|
||||
| `prometheus.metrics.serviceMonitor.honorLabels` | Honor labels. | `false` |
|
||||
| `prometheus.metrics.serviceMonitor.interval` | Interval at which metrics should be scraped. If not specified Prometheus' global scrape interval is used. | `60s` |
|
||||
| `prometheus.metrics.serviceMonitor.path` | HTTP path for scraping Prometheus metrics. | `/metrics` |
|
||||
| `prometheus.metrics.serviceMonitor.port` | HTTP port for scraping Prometheus metrics. | `9187` |
|
||||
| `prometheus.metrics.serviceMonitor.relabelings` | RelabelConfigs to apply to samples before scraping. Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields. | `[]` |
|
||||
| `prometheus.metrics.serviceMonitor.scrapeTimeout` | Timeout after which the scrape is ended. If not specified, global Prometheus scrape timeout is used. | `30s` |
|
||||
| `prometheus.metrics.serviceMonitor.scheme` | HTTP scheme to use for scraping. For example `http` or `https`. | `http` |
|
||||
|
149
package-lock.json
generated
149
package-lock.json
generated
@ -8,7 +8,7 @@
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"@bitnami/readme-generator-for-helm": "^2.5.0",
|
||||
"markdownlint-cli": "^0.41.0"
|
||||
"markdownlint-cli": "^0.43.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16.0.0",
|
||||
@ -48,16 +48,6 @@
|
||||
"node": ">=12"
|
||||
}
|
||||
},
|
||||
"node_modules/@pkgjs/parseargs": {
|
||||
"version": "0.11.0",
|
||||
"resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
|
||||
"integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/ansi-regex": {
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
|
||||
@ -228,18 +218,6 @@
|
||||
"integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/get-stdin": {
|
||||
"version": "9.0.0",
|
||||
"resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz",
|
||||
"integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==",
|
||||
"dev": true,
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/glob": {
|
||||
"version": "7.2.3",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
|
||||
@ -261,10 +239,11 @@
|
||||
}
|
||||
},
|
||||
"node_modules/ignore": {
|
||||
"version": "5.3.1",
|
||||
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz",
|
||||
"integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==",
|
||||
"version": "6.0.2",
|
||||
"resolved": "https://registry.npmjs.org/ignore/-/ignore-6.0.2.tgz",
|
||||
"integrity": "sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 4"
|
||||
}
|
||||
@ -310,22 +289,19 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/jackspeak": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.1.2.tgz",
|
||||
"integrity": "sha512-kWmLKn2tRtfYMF/BakihVVRzBKOxz4gJMiL2Rj91WnAB5TPZumSH99R/Yf1qE1u4uRimvCSJfm6hnxohXeEXjQ==",
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.2.tgz",
|
||||
"integrity": "sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==",
|
||||
"dev": true,
|
||||
"license": "BlueOak-1.0.0",
|
||||
"dependencies": {
|
||||
"@isaacs/cliui": "^8.0.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
"node": "20 || >=22"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"@pkgjs/parseargs": "^0.11.0"
|
||||
}
|
||||
},
|
||||
"node_modules/js-yaml": {
|
||||
@ -341,10 +317,11 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jsonc-parser": {
|
||||
"version": "3.2.1",
|
||||
"resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.1.tgz",
|
||||
"integrity": "sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==",
|
||||
"dev": true
|
||||
"version": "3.3.1",
|
||||
"resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz",
|
||||
"integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/jsonpointer": {
|
||||
"version": "5.0.1",
|
||||
@ -371,12 +348,13 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/lru-cache": {
|
||||
"version": "10.2.2",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.2.tgz",
|
||||
"integrity": "sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==",
|
||||
"version": "11.0.2",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.2.tgz",
|
||||
"integrity": "sha512-123qHRfJBmo2jXDbo/a5YOQrJoHF/GNQTLzQ5+IdK5pWpceK17yRc6ozlWd25FxvGKQbIUs91fDFkXmDHTKcyA==",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"engines": {
|
||||
"node": "14 || >=16.14"
|
||||
"node": "20 || >=22"
|
||||
}
|
||||
},
|
||||
"node_modules/markdown-it": {
|
||||
@ -410,13 +388,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/markdownlint": {
|
||||
"version": "0.34.0",
|
||||
"resolved": "https://registry.npmjs.org/markdownlint/-/markdownlint-0.34.0.tgz",
|
||||
"integrity": "sha512-qwGyuyKwjkEMOJ10XN6OTKNOVYvOIi35RNvDLNxTof5s8UmyGHlCdpngRHoRGNvQVGuxO3BJ7uNSgdeX166WXw==",
|
||||
"version": "0.36.1",
|
||||
"resolved": "https://registry.npmjs.org/markdownlint/-/markdownlint-0.36.1.tgz",
|
||||
"integrity": "sha512-s73fU2CQN7WCgjhaQUQ8wYESQNzGRNOKDd+3xgVqu8kuTEhmwepd/mxOv1LR2oV046ONrTLBFsM7IoKWNvmy5g==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"markdown-it": "14.1.0",
|
||||
"markdownlint-micromark": "0.1.9"
|
||||
"markdownlint-micromark": "0.1.12"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18"
|
||||
@ -426,23 +405,22 @@
|
||||
}
|
||||
},
|
||||
"node_modules/markdownlint-cli": {
|
||||
"version": "0.41.0",
|
||||
"resolved": "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.41.0.tgz",
|
||||
"integrity": "sha512-kp29tKrMKdn+xonfefjp3a/MsNzAd9c5ke0ydMEI9PR98bOjzglYN4nfMSaIs69msUf1DNkgevAIAPtK2SeX0Q==",
|
||||
"version": "0.43.0",
|
||||
"resolved": "https://registry.npmjs.org/markdownlint-cli/-/markdownlint-cli-0.43.0.tgz",
|
||||
"integrity": "sha512-6vwurKK4B21eyYzwgX6ph13cZS7hE6LZfcS8QyD722CyxVD2RtAvbZK2p7k+FZbbKORulEuwl+hJaEq1l6/hoQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"commander": "~12.1.0",
|
||||
"get-stdin": "~9.0.0",
|
||||
"glob": "~10.4.1",
|
||||
"ignore": "~5.3.1",
|
||||
"glob": "~11.0.0",
|
||||
"ignore": "~6.0.2",
|
||||
"js-yaml": "^4.1.0",
|
||||
"jsonc-parser": "~3.2.1",
|
||||
"jsonc-parser": "~3.3.1",
|
||||
"jsonpointer": "5.0.1",
|
||||
"markdownlint": "~0.34.0",
|
||||
"minimatch": "~9.0.4",
|
||||
"markdownlint": "~0.36.1",
|
||||
"minimatch": "~10.0.1",
|
||||
"run-con": "~1.3.2",
|
||||
"smol-toml": "~1.2.0"
|
||||
"smol-toml": "~1.3.1"
|
||||
},
|
||||
"bin": {
|
||||
"markdownlint": "markdownlint.js"
|
||||
@ -472,49 +450,51 @@
|
||||
}
|
||||
},
|
||||
"node_modules/markdownlint-cli/node_modules/glob": {
|
||||
"version": "10.4.1",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz",
|
||||
"integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==",
|
||||
"version": "11.0.0",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz",
|
||||
"integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"foreground-child": "^3.1.0",
|
||||
"jackspeak": "^3.1.2",
|
||||
"minimatch": "^9.0.4",
|
||||
"jackspeak": "^4.0.1",
|
||||
"minimatch": "^10.0.0",
|
||||
"minipass": "^7.1.2",
|
||||
"path-scurry": "^1.11.1"
|
||||
"package-json-from-dist": "^1.0.0",
|
||||
"path-scurry": "^2.0.0"
|
||||
},
|
||||
"bin": {
|
||||
"glob": "dist/esm/bin.mjs"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16 || 14 >=14.18"
|
||||
"node": "20 || >=22"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/markdownlint-cli/node_modules/minimatch": {
|
||||
"version": "9.0.4",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
|
||||
"integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
|
||||
"version": "10.0.1",
|
||||
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz",
|
||||
"integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"brace-expansion": "^2.0.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16 || 14 >=14.17"
|
||||
"node": "20 || >=22"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
}
|
||||
},
|
||||
"node_modules/markdownlint-micromark": {
|
||||
"version": "0.1.9",
|
||||
"resolved": "https://registry.npmjs.org/markdownlint-micromark/-/markdownlint-micromark-0.1.9.tgz",
|
||||
"integrity": "sha512-5hVs/DzAFa8XqYosbEAEg6ok6MF2smDj89ztn9pKkCtdKHVdPQuGMH7frFfYL9mLkvfFe4pTyAMffLbjf3/EyA==",
|
||||
"version": "0.1.12",
|
||||
"resolved": "https://registry.npmjs.org/markdownlint-micromark/-/markdownlint-micromark-0.1.12.tgz",
|
||||
"integrity": "sha512-RlB6EwMGgc0sxcIhOQ2+aq7Zw1V2fBnzbXKGgYK/mVWdT7cz34fteKSwfYeo4rL6+L/q2tyC9QtD/PgZbkdyJQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=18"
|
||||
},
|
||||
@ -568,6 +548,13 @@
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"node_modules/package-json-from-dist": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz",
|
||||
"integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==",
|
||||
"dev": true,
|
||||
"license": "BlueOak-1.0.0"
|
||||
},
|
||||
"node_modules/path-is-absolute": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
|
||||
@ -587,17 +574,17 @@
|
||||
}
|
||||
},
|
||||
"node_modules/path-scurry": {
|
||||
"version": "1.11.1",
|
||||
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
|
||||
"integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz",
|
||||
"integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==",
|
||||
"dev": true,
|
||||
"license": "BlueOak-1.0.0",
|
||||
"dependencies": {
|
||||
"lru-cache": "^10.2.0",
|
||||
"minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
|
||||
"lru-cache": "^11.0.0",
|
||||
"minipass": "^7.1.2"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16 || 14 >=14.18"
|
||||
"node": "20 || >=22"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/isaacs"
|
||||
@ -670,14 +657,16 @@
|
||||
}
|
||||
},
|
||||
"node_modules/smol-toml": {
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.2.0.tgz",
|
||||
"integrity": "sha512-KObxdQANC/xje3OoatMbSwQf2XAvJ0RbK+4nmQRszFNZptbNRnMWqbLF/zb4sMi9xJ6HNyhWXeuZ9zC/I/XY7w==",
|
||||
"version": "1.3.1",
|
||||
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.3.1.tgz",
|
||||
"integrity": "sha512-tEYNll18pPKHroYSmLLrksq233j021G0giwW7P3D24jC54pQ5W5BXMsQ/Mvw1OJCmEYDgY+lrzT+3nNUtoNfXQ==",
|
||||
"dev": true,
|
||||
"license": "BSD-3-Clause",
|
||||
"engines": {
|
||||
"node": ">= 18",
|
||||
"pnpm": ">= 9"
|
||||
"node": ">= 18"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/cyyynthia"
|
||||
}
|
||||
},
|
||||
"node_modules/string-width": {
|
||||
|
@ -14,6 +14,6 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@bitnami/readme-generator-for-helm": "^2.5.0",
|
||||
"markdownlint-cli": "^0.41.0"
|
||||
"markdownlint-cli": "^0.43.0"
|
||||
}
|
||||
}
|
||||
|
@ -24,10 +24,10 @@
|
||||
"matchUpdateTypes": [ "minor", "patch"]
|
||||
},
|
||||
{
|
||||
"addLabels": [ "renovate/prometheus-postgres-exporter", "renovate/automerge" ],
|
||||
"addLabels": [ "renovate/markdownlint", "renovate/automerge" ],
|
||||
"automerge": true,
|
||||
"matchPackageNames": [ "prometheus-postgres-exporter" ],
|
||||
"matchManagers": [ "regex" ],
|
||||
"matchPackageNames": [ "markdownlint-cli", "@bitnami/readme-generator-for-helm" ],
|
||||
"matchManagers": [ "npm" ],
|
||||
"matchUpdateTypes": [ "minor", "patch"]
|
||||
}
|
||||
],
|
||||
|
@ -52,19 +52,28 @@
|
||||
{{/* volumeMounts */}}
|
||||
|
||||
{{- define "prometheus-postgres-exporter.deployment.volumeMounts" -}}
|
||||
{{- $volumeMounts := dict "volumeMounts" (.Values.deployment.postgresExporter.volumeMounts | default (list) ) }}
|
||||
{{- $volumeMounts = merge $volumeMounts (dict "volumeMounts" (list (dict "name" "exporter-config" "mountPath" "/etc/prometheus-postgres-exporter/config.d" ))) }}
|
||||
{{ toYaml $volumeMounts }}
|
||||
{{- $volumeMounts := .Values.deployment.postgresExporter.volumeMounts | default list }}
|
||||
{{- $volumeMounts = concat $volumeMounts (list (dict "name" "config-d" "mountPath" "/etc/prometheus-postgres-exporter/config.d" )) }}
|
||||
{{ toYaml (dict "volumeMounts" $volumeMounts) }}
|
||||
{{- end -}}
|
||||
|
||||
{{/* volumes */}}
|
||||
|
||||
{{- define "prometheus-postgres-exporter.deployment.volumes" -}}
|
||||
{{- $volumes := dict "volumes" (.Values.deployment.volumes | default (list) ) }}
|
||||
{{- $secretName := .Values.config.exporterConfig.existingSecret.secretName -}}
|
||||
{{- $volumes := .Values.deployment.volumes | default list }}
|
||||
|
||||
{{- $exporterSecretName := .Values.config.exporterConfig.existingSecret.secretName -}}
|
||||
{{- if not .Values.config.exporterConfig.existingSecret.enabled }}
|
||||
{{- $secretName = printf "%s-exporter-config" (include "prometheus-postgres-exporter.fullname" . ) }}
|
||||
{{- $exporterSecretName = printf "%s-exporter-config" (include "prometheus-postgres-exporter.fullname" . ) }}
|
||||
{{- end }}
|
||||
{{- $volumes = merge $volumes (dict "volumes" (list (dict "name" "exporter-config" "secret" (dict "secretName" $secretName)))) }}
|
||||
{{ toYaml $volumes }}
|
||||
|
||||
{{- $webConfigSecretName := .Values.config.webConfig.existingSecret.secretName -}}
|
||||
{{- if not .Values.config.webConfig.existingSecret.enabled }}
|
||||
{{- $webConfigSecretName = printf "%s-web-config" (include "prometheus-postgres-exporter.fullname" . ) }}
|
||||
{{- end }}
|
||||
|
||||
{{- $volumes = concat $volumes (list (dict "name" "config-d" "projected" (dict "defaultMode" 444 "sources" (list (dict "secret" (dict "name" $exporterSecretName)) (dict "secret" (dict "name" $webConfigSecretName)))))) }}
|
||||
|
||||
{{ toYaml (dict "volumes" $volumes) }}
|
||||
|
||||
{{- end -}}
|
@ -13,5 +13,5 @@
|
||||
{{- end }}
|
||||
|
||||
{{- define "prometheus-postgres-exporter.pod.selectorLabels" -}}
|
||||
{{ include "prometheus-postgres-exporter.pod.labels" . }}
|
||||
{{ include "prometheus-postgres-exporter.selectorLabels" . }}
|
||||
{{- end }}
|
@ -24,6 +24,7 @@ spec:
|
||||
- name: postgres-exporter
|
||||
args:
|
||||
- "--config.file=/etc/prometheus-postgres-exporter/config.d/exporterConfig.yaml"
|
||||
- "--web.config.file=/etc/prometheus-postgres-exporter/config.d/webConfig.yaml"
|
||||
- "--web.listen-address=:9187"
|
||||
{{- range .Values.deployment.postgresExporter.args }}
|
||||
- {{ . | quote }}
|
||||
@ -59,7 +60,7 @@ spec:
|
||||
- name: http
|
||||
containerPort: 9187
|
||||
protocol: TCP
|
||||
{{- with .Values.deployment.containerResources }}
|
||||
{{- with .Values.deployment.postgresExporter.resources }}
|
||||
resources:
|
||||
{{- toYaml . | nindent 10 }}
|
||||
{{- end }}
|
||||
@ -80,7 +81,7 @@ spec:
|
||||
dnsPolicy: {{ .Values.deployment.dnsPolicy }}
|
||||
{{- end }}
|
||||
{{- if .Values.deployment.hostname }}
|
||||
hostname: {{ .Values.batch.dbUpdate.hostname }}
|
||||
hostname: {{ .Values.deployment.hostname }}
|
||||
{{- end }}
|
||||
hostNetwork: {{ .Values.deployment.hostNetwork }}
|
||||
{{- with .Values.deployment.imagePullSecrets }}
|
||||
@ -94,7 +95,9 @@ spec:
|
||||
{{- if .Values.deployment.priorityClassName }}
|
||||
priorityClassName: {{ .Values.deployment.priorityClassName }}
|
||||
{{- end }}
|
||||
{{- if .Values.deployment.restartPolicy }}
|
||||
restartPolicy: {{ .Values.deployment.restartPolicy }}
|
||||
{{- end }}
|
||||
{{- with .Values.deployment.securityContext }}
|
||||
securityContext:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
|
@ -16,7 +16,7 @@ metadata:
|
||||
spec:
|
||||
{{- with .Values.prometheus.rules }}
|
||||
groups:
|
||||
- name: {{ template "prometheus-postgres-exporter.name" $ }}
|
||||
- name: {{ template "prometheus-postgres-exporter.fullname" $ }}
|
||||
rules:
|
||||
{{ toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
|
@ -1,4 +1,4 @@
|
||||
{{- if and (not (.Values.config.webConfig.existingSecret.enabled)) .Values.config.webConfig.secret.webConfig }}
|
||||
{{- if not .Values.config.webConfig.existingSecret.enabled }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
@ -11,7 +11,7 @@ metadata:
|
||||
labels:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ include "prometheus-postgres-exporter.fullname" . }}-webconfig
|
||||
name: {{ include "prometheus-postgres-exporter.fullname" . }}-web-config
|
||||
namespace: {{ .Release.Namespace }}
|
||||
stringData:
|
||||
webConfig.yaml: |
|
||||
|
@ -13,14 +13,13 @@ metadata:
|
||||
{{- end }}
|
||||
name: {{ include "prometheus-postgres-exporter.fullname" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
spec:
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.new.automountServiceAccountToken }}
|
||||
{{- with .Values.serviceAccount.new.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.serviceAccount.new.secrets }}
|
||||
secrets:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.serviceAccount.new.automountServiceAccountToken }}
|
||||
{{- with .Values.serviceAccount.new.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- with .Values.serviceAccount.new.secrets }}
|
||||
secrets:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
@ -25,8 +25,8 @@ spec:
|
||||
{{- toYaml . | nindent 6 }}
|
||||
{{- end }}
|
||||
scrapeTimeout: {{ required "The scrape timeout of the serviceMonitor is not defined!" .Values.prometheus.metrics.serviceMonitor.scrapeTimeout }}
|
||||
scheme: {{ required "The scheme of the serviceMonitor is not defined!" .Values.prometheus.metrics.serviceMonitor.scheme}}
|
||||
targetPort: {{ required "The port of the serviceMonitor is not defined!" .Values.prometheus.metrics.serviceMonitor.port }}
|
||||
scheme: {{ required "The scheme of the serviceMonitor is not defined!" .Values.prometheus.metrics.serviceMonitor.scheme }}
|
||||
targetPort: {{ required "The port of the service is not defined!" .Values.services.http.port }}
|
||||
{{- with .Values.prometheus.metrics.serviceMonitor.tlsConfig }}
|
||||
tlsConfig:
|
||||
{{- toYaml . | nindent 6 }}
|
||||
|
@ -32,8 +32,98 @@ tests:
|
||||
content:
|
||||
secretRef:
|
||||
name: prometheus-postgres-exporter-unittest-database-env
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].args
|
||||
value:
|
||||
- --config.file=/etc/prometheus-postgres-exporter/config.d/exporterConfig.yaml
|
||||
- --web.config.file=/etc/prometheus-postgres-exporter/config.d/webConfig.yaml
|
||||
- --web.listen-address=:9187
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- mountPath: /etc/prometheus-postgres-exporter/config.d
|
||||
name: config-d
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: config-d
|
||||
projected:
|
||||
defaultMode: 444
|
||||
sources:
|
||||
- secret:
|
||||
name: prometheus-postgres-exporter-unittest-exporter-config
|
||||
- secret:
|
||||
name: prometheus-postgres-exporter-unittest-web-config
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].image
|
||||
value: quay.io/prometheuscommunity/postgres-exporter:v0.1.0
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].imagePullPolicy
|
||||
value: IfNotPresent
|
||||
- notExists:
|
||||
path: spec.template.spec.containers[0].resources
|
||||
- notExists:
|
||||
path: spec.template.spec.containers[0].securityContext
|
||||
- notExists:
|
||||
path: spec.template.spec.dnsConfig
|
||||
- notExists:
|
||||
path: spec.template.spec.dnsPolicy
|
||||
- notExists:
|
||||
path: spec.template.spec.hostname
|
||||
- equal:
|
||||
path: spec.template.spec.hostNetwork
|
||||
value: false
|
||||
- notExists:
|
||||
path: spec.template.spec.imagePullSecrets
|
||||
- notExists:
|
||||
path: spec.template.spec.nodeSelector
|
||||
- notExists:
|
||||
path: spec.template.spec.priorityClassName
|
||||
- notExists:
|
||||
path: spec.template.spec.restartPolicy
|
||||
- notExists:
|
||||
path: spec.template.spec.subdomain
|
||||
- equal:
|
||||
path: spec.template.spec.terminationGracePeriodSeconds
|
||||
value: 60
|
||||
- notExists:
|
||||
path: spec.template.spec.tolerations
|
||||
- notExists:
|
||||
path: spec.template.spec.topologySpreadConstraints
|
||||
|
||||
- it: Test custom database secret
|
||||
- it: Test additional arguments
|
||||
set:
|
||||
deployment.postgresExporter.args:
|
||||
- "--foo=bar"
|
||||
- "--bar=foo"
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].args
|
||||
value:
|
||||
- --config.file=/etc/prometheus-postgres-exporter/config.d/exporterConfig.yaml
|
||||
- --web.config.file=/etc/prometheus-postgres-exporter/config.d/webConfig.yaml
|
||||
- --web.listen-address=:9187
|
||||
- --foo=bar
|
||||
- --bar=foo
|
||||
|
||||
- it: Test custom imageRegistry and imageRepository
|
||||
set:
|
||||
deployment.postgresExporter.image.registry: registry.example.local
|
||||
deployment.postgresExporter.image.repository: path/special/prometheus-postgres-exporter
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].image
|
||||
value: registry.example.local/path/special/prometheus-postgres-exporter:v0.1.0
|
||||
|
||||
- it: Test custom imagePullPolicy
|
||||
set:
|
||||
deployment.postgresExporter.image.pullPolicy: Always
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].imagePullPolicy
|
||||
value: Always
|
||||
|
||||
- it: Test config.database.existingSecret
|
||||
set:
|
||||
config.database.existingSecret.enabled: true
|
||||
config.database.existingSecret.secretName: custom-database-secret
|
||||
@ -43,3 +133,243 @@ tests:
|
||||
content:
|
||||
secretRef:
|
||||
name: custom-database-secret
|
||||
|
||||
- it: Test config.exporterConfig.existingSecret
|
||||
set:
|
||||
config.exporterConfig.existingSecret.enabled: true
|
||||
config.exporterConfig.existingSecret.secretName: exporter-config-secret
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- mountPath: /etc/prometheus-postgres-exporter/config.d
|
||||
name: config-d
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: config-d
|
||||
projected:
|
||||
defaultMode: 444
|
||||
sources:
|
||||
- secret:
|
||||
name: exporter-config-secret
|
||||
- secret:
|
||||
name: prometheus-postgres-exporter-unittest-web-config
|
||||
|
||||
- it: Test config.webConfig.existingSecret
|
||||
set:
|
||||
config.webConfig.existingSecret.enabled: true
|
||||
config.webConfig.existingSecret.secretName: web-config-secret
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- mountPath: /etc/prometheus-postgres-exporter/config.d
|
||||
name: config-d
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: config-d
|
||||
projected:
|
||||
defaultMode: 444
|
||||
sources:
|
||||
- secret:
|
||||
name: prometheus-postgres-exporter-unittest-exporter-config
|
||||
- secret:
|
||||
name: web-config-secret
|
||||
|
||||
- it: Test custom resource limits and requests
|
||||
set:
|
||||
deployment.postgresExporter.resources:
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 250MB
|
||||
requests:
|
||||
cpu: 25m
|
||||
memory: 100MB
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].resources
|
||||
value:
|
||||
limits:
|
||||
cpu: 100m
|
||||
memory: 250MB
|
||||
requests:
|
||||
cpu: 25m
|
||||
memory: 100MB
|
||||
|
||||
- it: Test custom securityContext
|
||||
set:
|
||||
deployment.postgresExporter.securityContext:
|
||||
capabilities:
|
||||
add:
|
||||
- NET_RAW
|
||||
drop:
|
||||
- ALL
|
||||
privileged: false
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
runAsUser: 1000
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].securityContext
|
||||
value:
|
||||
capabilities:
|
||||
add:
|
||||
- NET_RAW
|
||||
drop:
|
||||
- ALL
|
||||
privileged: false
|
||||
readOnlyRootFilesystem: true
|
||||
runAsNonRoot: true
|
||||
runAsUser: 1000
|
||||
|
||||
- it: Test dnsConfig
|
||||
set:
|
||||
deployment.dnsConfig:
|
||||
nameservers:
|
||||
- "8.8.8.8"
|
||||
- "8.8.4.4"
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.dnsConfig
|
||||
value:
|
||||
nameservers:
|
||||
- "8.8.8.8"
|
||||
- "8.8.4.4"
|
||||
|
||||
- it: Test dnsPolicy
|
||||
set:
|
||||
deployment.dnsPolicy: ClusterFirst
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.dnsPolicy
|
||||
value: ClusterFirst
|
||||
|
||||
- it: Test hostNetwork, hostname, subdomain
|
||||
set:
|
||||
deployment.hostNetwork: true
|
||||
deployment.hostname: pg-exporter
|
||||
deployment.subdomain: exporters.internal
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.hostNetwork
|
||||
value: true
|
||||
- equal:
|
||||
path: spec.template.spec.hostname
|
||||
value: pg-exporter
|
||||
- equal:
|
||||
path: spec.template.spec.subdomain
|
||||
value: exporters.internal
|
||||
|
||||
- it: Test imagePullSecrets
|
||||
set:
|
||||
deployment.imagePullSecrets:
|
||||
- name: my-pull-secret
|
||||
- name: my-special-secret
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.imagePullSecrets
|
||||
value:
|
||||
- name: my-pull-secret
|
||||
- name: my-special-secret
|
||||
|
||||
- it: Test nodeSelector
|
||||
set:
|
||||
deployment.nodeSelector:
|
||||
foo: bar
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.nodeSelector
|
||||
value:
|
||||
foo: bar
|
||||
|
||||
- it: Test priorityClassName
|
||||
set:
|
||||
deployment.priorityClassName: my-priority
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.priorityClassName
|
||||
value: my-priority
|
||||
|
||||
- it: Test restartPolicy
|
||||
set:
|
||||
deployment.restartPolicy: Always
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.restartPolicy
|
||||
value: Always
|
||||
|
||||
- it: Test terminationGracePeriodSeconds
|
||||
set:
|
||||
deployment.terminationGracePeriodSeconds: 120
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.terminationGracePeriodSeconds
|
||||
value: 120
|
||||
|
||||
- it: Test tolerations
|
||||
set:
|
||||
deployment.tolerations:
|
||||
- key: database/type
|
||||
operator: Equal
|
||||
value: postgres
|
||||
effect: NoSchedule
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.tolerations
|
||||
value:
|
||||
- key: database/type
|
||||
operator: Equal
|
||||
value: postgres
|
||||
effect: NoSchedule
|
||||
|
||||
- it: Test topologySpreadConstraints
|
||||
set:
|
||||
deployment.topologySpreadConstraints:
|
||||
- topologyKey: kubernetes.io/hostname
|
||||
whenUnsatisfiable: DoNotSchedule
|
||||
labelSelector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/instance: prometheus-postgres-exporter
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.topologySpreadConstraints
|
||||
value:
|
||||
- topologyKey: kubernetes.io/hostname
|
||||
whenUnsatisfiable: DoNotSchedule
|
||||
labelSelector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/instance: prometheus-postgres-exporter
|
||||
|
||||
- it: Test additional volumeMounts and volumes
|
||||
set:
|
||||
deployment.postgresExporter.volumeMounts:
|
||||
- name: data
|
||||
mountPath: /usr/lib/prometheus-postgres-exporter/data
|
||||
deployment.volumes:
|
||||
- name: data
|
||||
hostPath:
|
||||
path: /usr/lib/prometheus-postgres-exporter/data
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- name: data
|
||||
mountPath: /usr/lib/prometheus-postgres-exporter/data
|
||||
- name: config-d
|
||||
mountPath: /etc/prometheus-postgres-exporter/config.d
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: data
|
||||
hostPath:
|
||||
path: /usr/lib/prometheus-postgres-exporter/data
|
||||
- name: config-d
|
||||
projected:
|
||||
defaultMode: 444
|
||||
sources:
|
||||
- secret:
|
||||
name: prometheus-postgres-exporter-unittest-exporter-config
|
||||
- secret:
|
||||
name: prometheus-postgres-exporter-unittest-web-config
|
@ -58,7 +58,7 @@ tests:
|
||||
helm.sh/chart: prometheus-postgres-exporter-0.1.0
|
||||
- equal:
|
||||
path: spec.podMetricsEndpoints[0].enableHttp2
|
||||
value: false
|
||||
value: true
|
||||
- equal:
|
||||
path: spec.podMetricsEndpoints[0].followRedirects
|
||||
value: false
|
||||
@ -90,10 +90,7 @@ tests:
|
||||
path: spec.selector.matchLabels
|
||||
value:
|
||||
app.kubernetes.io/instance: prometheus-postgres-exporter-unittest
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: prometheus-postgres-exporter
|
||||
app.kubernetes.io/version: 0.1.0
|
||||
helm.sh/chart: prometheus-postgres-exporter-0.1.0
|
||||
|
||||
- it: Render podMonitor with custom annotations and labels.
|
||||
set:
|
||||
@ -122,7 +119,7 @@ tests:
|
||||
set:
|
||||
prometheus.metrics.enabled: true
|
||||
prometheus.metrics.podMonitor.enabled: true
|
||||
prometheus.metrics.podMonitor.enableHttp2: true
|
||||
prometheus.metrics.podMonitor.enableHttp2: false
|
||||
prometheus.metrics.podMonitor.followRedirects: true
|
||||
prometheus.metrics.podMonitor.honorLabels: true
|
||||
prometheus.metrics.podMonitor.interval: "180s"
|
||||
@ -140,7 +137,7 @@ tests:
|
||||
count: 1
|
||||
- equal:
|
||||
path: spec.podMetricsEndpoints[0].enableHttp2
|
||||
value: true
|
||||
value: false
|
||||
- equal:
|
||||
path: spec.podMetricsEndpoints[0].followRedirects
|
||||
value: true
|
||||
|
@ -8,34 +8,14 @@ release:
|
||||
templates:
|
||||
- templates/prometheus-postgres-exporter/secretWebConfig.yaml
|
||||
tests:
|
||||
- it: Skip rendering by using existing secret.
|
||||
set:
|
||||
config.webConfig.existingSecret.enabled: true
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 0
|
||||
|
||||
- it: Skip rendering when no webConfig.yaml is defined.
|
||||
set:
|
||||
config.webConfig.existingSecret.enabled: false
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 0
|
||||
|
||||
- it: Rendering database secret.
|
||||
set:
|
||||
config.webConfig.secret.webConfig:
|
||||
tls_server_config:
|
||||
cert_file: /path/to/cert.pem
|
||||
client_ca_file: /path/to/ca.pem
|
||||
key_file: /path/to/key.pem
|
||||
- it: Rendering default secret.
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 1
|
||||
- containsDocument:
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
name: prometheus-postgres-exporter-unittest-webconfig
|
||||
name: prometheus-postgres-exporter-unittest-web-config
|
||||
namespace: testing
|
||||
- notExists:
|
||||
path: metadata.annotations
|
||||
@ -47,6 +27,19 @@ tests:
|
||||
app.kubernetes.io/name: prometheus-postgres-exporter
|
||||
app.kubernetes.io/version: 0.1.0
|
||||
helm.sh/chart: prometheus-postgres-exporter-0.1.0
|
||||
- equal:
|
||||
path: stringData["webConfig.yaml"]
|
||||
value: |
|
||||
{}
|
||||
|
||||
- it: Rendering custom webconfig.
|
||||
set:
|
||||
config.webConfig.secret.webConfig:
|
||||
tls_server_config:
|
||||
cert_file: /path/to/cert.pem
|
||||
client_ca_file: /path/to/ca.pem
|
||||
key_file: /path/to/key.pem
|
||||
asserts:
|
||||
- equal:
|
||||
path: stringData["webConfig.yaml"]
|
||||
value: |
|
||||
|
@ -29,12 +29,12 @@ tests:
|
||||
- notExists:
|
||||
path: metadata.labels
|
||||
- equal:
|
||||
path: spec.automountServiceAccountToken
|
||||
path: automountServiceAccountToken
|
||||
value: true
|
||||
- notExists:
|
||||
path: spec.imagePullSecrets
|
||||
path: imagePullSecrets
|
||||
- notExists:
|
||||
path: spec.secrets
|
||||
path: secrets
|
||||
|
||||
|
||||
- it: Rendering serviceAccount with custom values.
|
||||
@ -65,14 +65,14 @@ tests:
|
||||
path: metadata.name
|
||||
value: prometheus-postgres-exporter-unittest
|
||||
- equal:
|
||||
path: spec.automountServiceAccountToken
|
||||
path: automountServiceAccountToken
|
||||
value: false
|
||||
- equal:
|
||||
path: spec.imagePullSecrets
|
||||
path: imagePullSecrets
|
||||
value:
|
||||
- name: "my-pull-secret"
|
||||
- equal:
|
||||
path: spec.secrets
|
||||
path: secrets
|
||||
value:
|
||||
- name: "my-secret"
|
||||
namespace: "my-namespace"
|
||||
|
@ -59,7 +59,7 @@ tests:
|
||||
helm.sh/chart: prometheus-postgres-exporter-0.1.0
|
||||
- equal:
|
||||
path: spec.endpoints[0].enableHttp2
|
||||
value: false
|
||||
value: true
|
||||
- equal:
|
||||
path: spec.endpoints[0].followRedirects
|
||||
value: false
|
||||
@ -121,7 +121,7 @@ tests:
|
||||
set:
|
||||
prometheus.metrics.enabled: true
|
||||
prometheus.metrics.serviceMonitor.enabled: true
|
||||
prometheus.metrics.serviceMonitor.enableHttp2: true
|
||||
prometheus.metrics.serviceMonitor.enableHttp2: false
|
||||
prometheus.metrics.serviceMonitor.followRedirects: true
|
||||
prometheus.metrics.serviceMonitor.honorLabels: true
|
||||
prometheus.metrics.serviceMonitor.interval: "180s"
|
||||
@ -134,13 +134,12 @@ tests:
|
||||
action: "drop"
|
||||
prometheus.metrics.serviceMonitor.scrapeTimeout: "5s"
|
||||
prometheus.metrics.serviceMonitor.scheme: "http"
|
||||
prometheus.metrics.serviceMonitor.port: 10443
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 1
|
||||
- equal:
|
||||
path: spec.endpoints[0].enableHttp2
|
||||
value: true
|
||||
value: false
|
||||
- equal:
|
||||
path: spec.endpoints[0].followRedirects
|
||||
value: true
|
||||
@ -166,7 +165,4 @@ tests:
|
||||
value: 5s
|
||||
- equal:
|
||||
path: spec.endpoints[0].scheme
|
||||
value: http
|
||||
- equal:
|
||||
path: spec.endpoints[0].targetPort
|
||||
value: 10443
|
||||
value: http
|
@ -63,10 +63,7 @@ tests:
|
||||
path: spec.selector
|
||||
value:
|
||||
app.kubernetes.io/instance: prometheus-postgres-exporter-unittest
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: prometheus-postgres-exporter
|
||||
app.kubernetes.io/version: 0.1.0
|
||||
helm.sh/chart: prometheus-postgres-exporter-0.1.0
|
||||
- equal:
|
||||
path: spec.sessionAffinity
|
||||
value: None
|
||||
|
1790
values.schema.json
Normal file
1790
values.schema.json
Normal file
File diff suppressed because it is too large
Load Diff
21
values.yaml
21
values.yaml
@ -30,15 +30,15 @@ config:
|
||||
databaseConnectionUrl: ""
|
||||
|
||||
exporterConfig:
|
||||
## @param config.exporterConfig.existingSecret.enabled Mount an existing secret containing the key `exporter_config.yaml`.
|
||||
## @param config.exporterConfig.existingSecret.secretName Name of the existing secret containing the key `exporter_config.yaml`.
|
||||
## @param config.exporterConfig.existingSecret.enabled Mount an existing secret containing the key `exporterConfig.yaml`.
|
||||
## @param config.exporterConfig.existingSecret.secretName Name of the existing secret containing the key `exporterConfig.yaml`.
|
||||
existingSecret:
|
||||
enabled: false
|
||||
secretName: ""
|
||||
|
||||
## @param config.exporterConfig.secret.annotations Additional annotations of the secret containing the `exporterConfig.yaml`.
|
||||
## @param config.exporterConfig.secret.labels Additional labels of the secret containing the `exporterConfig.yaml`.
|
||||
## @param config.exporterConfig.secret.exporterConfig Content of the `exporterConfig.yaml`. Further information can be found [here](https://prometheus.io/docs/prometheus/latest/configuration/https/).
|
||||
## @param config.exporterConfig.secret.exporterConfig Content of the `exporterConfig.yaml`. Further information can be found [here](https://github.com/prometheus-community/postgres_exporter?tab=readme-ov-file#multi-target-support-beta).
|
||||
## @skip config.exporterConfig.secret.exporterConfig Skip individual postgres exporter configuration.
|
||||
secret:
|
||||
annotations: {}
|
||||
@ -190,7 +190,7 @@ deployment:
|
||||
# runAsUser: 1000
|
||||
|
||||
## @param deployment.postgresExporter.volumeMounts Additional volume mounts.
|
||||
volumeMounts: {}
|
||||
volumeMounts: []
|
||||
# - name: my-configmap-volume
|
||||
# mountPath: /configmap
|
||||
# readOnly: true
|
||||
@ -204,6 +204,9 @@ deployment:
|
||||
## @param deployment.replicaCount Number of replicas for the postgres-exporter deployment.
|
||||
replicaCount: 1
|
||||
|
||||
## @param deployment.restartPolicy Restart policy of the postgres-exporter deployment.
|
||||
restartPolicy: ""
|
||||
|
||||
## @param deployment.securityContext Security context of the postgres-exporter deployment.
|
||||
securityContext: {}
|
||||
# fsGroup: 2000
|
||||
@ -222,6 +225,10 @@ deployment:
|
||||
|
||||
## @param deployment.tolerations Tolerations of the postgres-exporter deployment.
|
||||
tolerations: []
|
||||
# - key: database/type
|
||||
# operator: Equal
|
||||
# value: postgres
|
||||
# effect: NoSchedule
|
||||
|
||||
## @param deployment.topologySpreadConstraints TopologySpreadConstraints of the postgres-exporter deployment.
|
||||
topologySpreadConstraints: []
|
||||
@ -306,7 +313,7 @@ prometheus:
|
||||
podMonitor:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
enableHttp2: false
|
||||
enableHttp2: true
|
||||
followRedirects: false
|
||||
honorLabels: false
|
||||
labels: {}
|
||||
@ -325,7 +332,6 @@ prometheus:
|
||||
## @param prometheus.metrics.serviceMonitor.honorLabels Honor labels.
|
||||
## @param prometheus.metrics.serviceMonitor.interval Interval at which metrics should be scraped. If not specified Prometheus' global scrape interval is used.
|
||||
## @param prometheus.metrics.serviceMonitor.path HTTP path for scraping prometheus metrics.
|
||||
## @param prometheus.metrics.serviceMonitor.port HTTP port for scraping prometheus metrics.
|
||||
## @param prometheus.metrics.serviceMonitor.relabelings RelabelConfigs to apply to samples before scraping. Prometheus Operator automatically adds relabelings for a few standard Kubernetes fields.
|
||||
## @param prometheus.metrics.serviceMonitor.scrapeTimeout Timeout after which the scrape is ended. If not specified, global Prometheus scrape timeout is used.
|
||||
## @param prometheus.metrics.serviceMonitor.scheme HTTP scheme to use for scraping. For example `http` or `https`.
|
||||
@ -335,12 +341,11 @@ prometheus:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
labels: {}
|
||||
enableHttp2: false
|
||||
enableHttp2: true
|
||||
followRedirects: false
|
||||
honorLabels: false
|
||||
interval: "60s"
|
||||
path: "/metrics"
|
||||
port: 9187
|
||||
relabelings: []
|
||||
scrapeTimeout: "30s"
|
||||
scheme: "http"
|
||||
|
Reference in New Issue
Block a user