Compare commits

..

15 Commits

Author SHA1 Message Date
99f270e55f chore(deps): update docker.io/library/node docker tag to v25
All checks were successful
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (pull_request) Successful in 7s
Helm / helm-lint (push) Successful in 17s
Helm / helm-unittest (pull_request) Successful in 6s
2025-10-16 22:58:22 +00:00
84b76cd381 Merge pull request 'chore(deps): update dependency helm-unittest/helm-unittest to v1.0.3' (#103) from renovate/update-helm-plugin-'unittest' into master
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 6s
2025-10-16 21:45:12 +00:00
679f2f916c chore(deps): update dependency helm-unittest/helm-unittest to v1.0.3
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (pull_request) Successful in 8s
Helm / helm-unittest (push) Successful in 17s
2025-10-16 21:44:25 +00:00
2b74827332 fix(renovate): update packageRule for helm-unittest/helm-unittest
All checks were successful
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (push) Successful in 14s
2025-10-16 22:08:05 +02:00
0674569892 fix(renovate): update packageRule for helm-unittest/helm-unittest
All checks were successful
Generate README / generate-parameters (push) Successful in 10s
Helm / helm-lint (push) Successful in 13s
Helm / helm-unittest (push) Successful in 7s
Markdown linter / markdown-lint (push) Successful in 10s
Markdown linter / markdown-link-checker (push) Successful in 33s
2025-10-16 21:46:53 +02:00
b744ee15a6 Merge pull request 'chore(deps): update dependency markdown-link-check to v3.14.1' (#102) from renovate/markdown-link-check-3.x-lockfile into master
All checks were successful
Helm / helm-lint (push) Successful in 7s
Helm / helm-unittest (push) Successful in 15s
2025-10-11 19:12:40 +00:00
1adef6e93b chore(deps): update dependency markdown-link-check to v3.14.1
All checks were successful
Helm / helm-unittest (push) Successful in 10s
Helm / helm-lint (push) Successful in 16s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (pull_request) Successful in 16s
2025-10-11 19:11:58 +00:00
0dbb71c60b docs(README): ArgoCD configuration note on checksum annotations
All checks were successful
Helm / helm-lint (push) Successful in 17s
Generate README / generate-parameters (push) Successful in 19s
Markdown linter / markdown-link-checker (push) Successful in 12s
Helm / helm-unittest (push) Successful in 15s
Markdown linter / markdown-lint (push) Successful in 12s
2025-10-11 14:07:37 +02:00
27f16e7b25 Merge pull request 'chore(deps): update dependency markdown-link-check to v3.14.0' (#101) from renovate/markdown-link-check-3.x-lockfile into master
All checks were successful
Helm / helm-lint (push) Successful in 15s
Helm / helm-unittest (push) Successful in 16s
2025-10-10 19:14:00 +00:00
f5e0192f11 chore(deps): update dependency markdown-link-check to v3.14.0
All checks were successful
Helm / helm-lint (push) Successful in 17s
Helm / helm-unittest (push) Successful in 7s
Helm / helm-unittest (pull_request) Successful in 7s
Helm / helm-lint (pull_request) Successful in 14s
2025-10-10 19:13:14 +00:00
654920be33 Merge pull request 'chore(deps): update docker.io/library/node docker tag to v24.10.0' (#100) from renovate/update-docker.iolibrarynode into master
All checks were successful
Helm / helm-unittest (push) Successful in 6s
Helm / helm-lint (push) Successful in 13s
2025-10-09 16:15:51 +00:00
e860cfafac chore(deps): update docker.io/library/node docker tag to v24.10.0
All checks were successful
Helm / helm-unittest (push) Successful in 8s
Helm / helm-lint (push) Successful in 16s
Helm / helm-lint (pull_request) Successful in 8s
Helm / helm-unittest (pull_request) Successful in 7s
2025-10-09 16:15:07 +00:00
4522979444 Merge pull request 'chore(deps): update dependency volker.raschek/prometheus-postgres-exporter to v0.5.5' (#99) from renovate/volker.raschek-prometheus-postgres-exporter-0.x into master
All checks were successful
Generate README / generate-parameters (push) Successful in 9s
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 7s
Markdown linter / markdown-lint (push) Successful in 10s
Markdown linter / markdown-link-checker (push) Successful in 31s
2025-09-30 16:12:58 +00:00
598b9aba58 chore(deps): update dependency volker.raschek/prometheus-postgres-exporter to v0.5.5
All checks were successful
Generate README / generate-parameters (push) Successful in 10s
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (push) Successful in 14s
Markdown linter / markdown-link-checker (push) Successful in 17s
Markdown linter / markdown-lint (push) Successful in 26s
Generate README / generate-parameters (pull_request) Successful in 10s
Helm / helm-unittest (pull_request) Successful in 6s
Helm / helm-lint (pull_request) Successful in 16s
Markdown linter / markdown-link-checker (pull_request) Successful in 12s
Markdown linter / markdown-lint (pull_request) Successful in 28s
2025-09-30 16:11:46 +00:00
b4b0a4729e fix(renovate): group docker.io/volkerraschek/helm
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 17s
2025-09-30 17:38:05 +02:00
7 changed files with 103 additions and 22 deletions

View File

@@ -15,7 +15,7 @@ on:
jobs:
generate-parameters:
container:
image: docker.io/library/node:24.9.0-alpine
image: docker.io/library/node:25.0.0-alpine
runs-on:
- ubuntu-latest
steps:

View File

@@ -15,7 +15,7 @@ on:
jobs:
markdown-link-checker:
container:
image: docker.io/library/node:24.9.0-alpine
image: docker.io/library/node:25.0.0-alpine
runs-on:
- ubuntu-latest
steps:
@@ -31,7 +31,7 @@ jobs:
markdown-lint:
container:
image: docker.io/library/node:24.9.0-alpine
image: docker.io/library/node:25.0.0-alpine
runs-on:
- ubuntu-latest
steps:

8
.vscode/settings.json vendored Normal file
View File

@@ -0,0 +1,8 @@
{
"yaml.schemas": {
"https://raw.githubusercontent.com/helm-unittest/helm-unittest/v1.0.3/schema/helm-testsuite.json": [
"/unittests/**/*.yaml"
]
},
"yaml.schemaStore.enable": true
}

View File

@@ -4,13 +4,13 @@ CONTAINER_RUNTIME?=$(shell which podman)
# HELM_IMAGE
HELM_IMAGE_REGISTRY_HOST?=docker.io
HELM_IMAGE_REPOSITORY?=volkerraschek/helm
HELM_IMAGE_VERSION?=3.19.0 # renovate: datasource=docker registryUrl=https://docker.io depName=volkerraschek/helm
HELM_IMAGE_VERSION?=3.19.0 # renovate: datasource=docker registryUrl=https://docker.io depName=docker.io/volkerraschek/helm
HELM_IMAGE_FULLY_QUALIFIED=${HELM_IMAGE_REGISTRY_HOST}/${HELM_IMAGE_REPOSITORY}:${HELM_IMAGE_VERSION}
# NODE_IMAGE
NODE_IMAGE_REGISTRY_HOST?=docker.io
NODE_IMAGE_REPOSITORY?=library/node
NODE_IMAGE_VERSION?=24.9.0-alpine # renovate: datasource=docker registryUrl=https://docker.io depName=docker.io/library/node packageName=library/node
NODE_IMAGE_VERSION?=25.0.0-alpine # renovate: datasource=docker registryUrl=https://docker.io depName=docker.io/library/node packageName=library/node
NODE_IMAGE_FULLY_QUALIFIED=${NODE_IMAGE_REGISTRY_HOST}/${NODE_IMAGE_REPOSITORY}:${NODE_IMAGE_VERSION}
# MISSING DOT

View File

@@ -16,7 +16,10 @@ Chapter [configuration and installation](#helm-configuration-and-installation) d
and use it to deploy the exporter. It also contains further configuration examples.
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 chart is tested for deployment scenarios with **ArgoCD**, but please keep in mind, that this chart supports the
*[Automatically Roll Deployment](https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments)*
concept of Helm, which can trigger unexpected rolling releases. Further configuration instructions are described in a
separate [chapter](#argocd).
## Helm: configuration and installation
@@ -33,7 +36,7 @@ helm chart is tested for deployment scenarios with **ArgoCD**.
```bash
helm repo add prometheus-exporters https://charts.cryptic.systems/prometheus-exporters
helm repo update
CHART_VERSION=0.5.4
CHART_VERSION=0.5.5
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \
@@ -48,7 +51,7 @@ version of the chart must be in sync with the `values.yaml`. Newer *minor* versi
versions can break something!
```bash
CHART_VERSION=0.5.4
CHART_VERSION=0.5.5
helm show values --version "${CHART_VERSION}" prometheus-exporters/prometheus-postgres-exporter > values.yaml
```
@@ -86,7 +89,7 @@ Further information about this topic can be found in one of Kanishk's blog
> Please take care the a CPU limit < `1000m` can also lead to CPU throttling. Please read the linked documentation carefully.
```bash
CHART_VERSION=0.5.4
CHART_VERSION=0.5.5
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \
@@ -100,7 +103,7 @@ helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheu
#### TLS authentication and encryption
The first example shows how to deploy the metric exporter with TLS encryption. The verification of the custom TLS
The example shows how to deploy the metric exporter with TLS encryption. The verification of the custom TLS
certification will be skipped by Prometheus.
> [!WARNING]
@@ -108,7 +111,7 @@ certification will be skipped by Prometheus.
> `tls.key` and `tls.crt` of the secret can be mounted into the container filesystem for TLS authentication / encryption.
```bash
CHART_VERSION=0.5.4
CHART_VERSION=0.5.5
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \
@@ -132,7 +135,7 @@ certificate for the metrics exporter - TLS certificate verification can be enabl
replaced:
```diff
CHART_VERSION=0.5.4
CHART_VERSION=0.5.5
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \
@@ -191,7 +194,7 @@ the Grafana container file system so that it is subsequently available to the us
makes this possible.
```bash
CHART_VERSION=0.5.4
CHART_VERSION=0.5.5
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \
@@ -293,6 +296,35 @@ networkPolicies:
protocol: TCP
```
## ArgoCD
### Daily execution of rolling updates
The behavior whereby ArgoCD triggers a rolling update even though nothing appears to have changed often occurs in
connection with the helm concept `checksum/secret`, `checksum/configmap` or more generally, [Automatically Roll
Deployments](https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments).
The problem with combining this concept with ArgoCD is that ArgoCD re-renders the Helm chart every time. Even if the
content of the config map or secret has not changed, there may be minimal differences (e.g., whitespace, chart version,
Helm render order, different timestamps).
This changes the SHA256 hash, Argo sees a drift and trigger a rolling update of the deployment. Among other things, this
can lead to unnecessary notifications from ArgoCD.
To avoid this, the annotation with the shasum must be ignored. Below is a diff that adds the `Application` to ignore all
annotations with the prefix `checksum`.
```diff
apiVersion: argoproj.io/v1alpha1
kind: Application
spec:
+ ignoreDifferences:
+ - group: apps/v1
+ kind: Deployment
+ jqPathExpressions:
+ - '.spec.template.metadata.annotations | with_entries(select(.key | startswith("checksum")))'
```
## Parameters
### Global

26
package-lock.json generated
View File

@@ -1042,9 +1042,9 @@
}
},
"node_modules/link-check": {
"version": "5.4.0",
"resolved": "https://registry.npmjs.org/link-check/-/link-check-5.4.0.tgz",
"integrity": "sha512-0Pf4xBVUnwJdbDgpBlhHNmWDtbVjHTpIFs+JaBuIsC9PKRxjv4KMGCO2Gc8lkVnqMf9B/yaNY+9zmMlO5MyToQ==",
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/link-check/-/link-check-5.5.0.tgz",
"integrity": "sha512-CpMk2zMfyEMdDvFG92wO5pU/2I/wbw72/9pvUFhU9cDKkwhmVlPuvxQJzd/jXA2iVOgNgPLnS5zyOLW7OzNpdA==",
"dev": true,
"license": "ISC",
"dependencies": {
@@ -1101,16 +1101,16 @@
}
},
"node_modules/markdown-link-check": {
"version": "3.13.7",
"resolved": "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.13.7.tgz",
"integrity": "sha512-Btn3HU8s2Uyh1ZfzmyZEkp64zp2+RAjwfQt1u4swq2Xa6w37OW0T2inQZrkSNVxDSa2jSN2YYhw/JkAp5jF1PQ==",
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.14.1.tgz",
"integrity": "sha512-h1tihNL3kmOS3N7H4FyF4xKDxiHnNBNSgs/LWlDiRHlC8O0vfRX0LhDDvesRSs4HM7nS0F658glLxonaXBmuWw==",
"dev": true,
"license": "ISC",
"dependencies": {
"async": "^3.2.6",
"chalk": "^5.3.0",
"commander": "^13.1.0",
"link-check": "^5.4.0",
"commander": "^14.0.0",
"link-check": "^5.5.0",
"markdown-link-extractor": "^4.0.2",
"needle": "^3.3.1",
"progress": "^2.0.3",
@@ -1121,6 +1121,16 @@
"markdown-link-check": "markdown-link-check"
}
},
"node_modules/markdown-link-check/node_modules/commander": {
"version": "14.0.1",
"resolved": "https://registry.npmjs.org/commander/-/commander-14.0.1.tgz",
"integrity": "sha512-2JkV3gUZUVrbNA+1sjBOYLsMZ5cEEl8GTFP2a4AVz5hvasAMCQ1D2l2le/cX+pV4N6ZU17zjUahLpIXRrnWL8A==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=20"
}
},
"node_modules/markdown-link-extractor": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-4.0.2.tgz",

View File

@@ -31,11 +31,42 @@
"packageNameTemplate": "https://git.cryptic.systems/volker.raschek/prometheus-postgres-exporter",
"datasourceTemplate": "git-tags",
"versioningTemplate": "semver"
},
{
"customType": "regex",
"datasourceTemplate": "github-releases",
"fileMatch": [
".vscode/settings\\.json$"
],
"matchStrings": [
"https:\\/\\/raw\\.githubusercontent\\.com\\/(?<depName>[^\\s]+?)\\/(?<currentValue>v[0-9.]+?)\\/schema\\/helm-testsuite\\.json"
]
}
],
"packageRules": [
{
"groupName": "Update Node.JS",
"groupName": "Update docker.io/volkerraschek/helm",
"matchDepNames": [
"docker.io/volkerraschek/helm",
"volkerraschek/helm"
]
},
{
"automerge": true,
"groupName": "Update helm plugin 'unittest'",
"matchDepNames": [
"helm-unittest/helm-unittest"
],
"matchDatasources": [
"github-releases"
],
"matchUpdateTypes": [
"minor",
"patch"
]
},
{
"groupName": "Update docker.io/library/node",
"matchDepNames": [
"docker.io/library/node",
"library/node"