Compare commits

...

68 Commits

Author SHA1 Message Date
a6d9441db2 chore(deps): update dependency helm/helm to v4.1.0
All checks were successful
Generate README / generate-parameters (push) Successful in 11s
Helm / helm-lint (push) Successful in 10s
Helm / helm-unittest (push) Successful in 9s
Helm / helm-lint (pull_request) Successful in 9s
Helm / helm-unittest (pull_request) Successful in 9s
Markdown linter / markdown-lint (push) Successful in 12s
Markdown linter / markdown-link-checker (push) Successful in 32s
2026-02-07 23:11:11 +00:00
cb73c168f7 Merge pull request 'chore(deps): update prometheuscommunity/postgres-exporter docker tag to v0.19.0' (#126) from renovate/container-images into master
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 7s
2026-02-07 22:41:59 +00:00
da43196b18 Merge pull request 'chore(deps): update dependency volker.raschek/prometheus-postgres-exporter to v0.5.6' (#125) from renovate/volker.raschek-prometheus-postgres-exporter-0.x into master
Some checks failed
Helm / helm-lint (push) Has been cancelled
Helm / helm-unittest (push) Has been cancelled
Markdown linter / markdown-link-checker (push) Successful in 12s
Generate README / generate-parameters (push) Successful in 28s
Markdown linter / markdown-lint (push) Successful in 9s
2026-02-07 22:38:49 +00:00
a8dab251b5 chore(deps): update prometheuscommunity/postgres-exporter docker tag to v0.19.0
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 10s
Helm / helm-lint (pull_request) Successful in 10s
Helm / helm-unittest (pull_request) Successful in 8s
2026-02-07 22:36:22 +00:00
4936091445 chore(deps): update dependency volker.raschek/prometheus-postgres-exporter to v0.5.6
All checks were successful
Generate README / generate-parameters (push) Successful in 12s
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 9s
Generate README / generate-parameters (pull_request) Successful in 12s
Markdown linter / markdown-link-checker (push) Successful in 15s
Markdown linter / markdown-lint (push) Successful in 13s
Helm / helm-lint (pull_request) Successful in 5s
Helm / helm-unittest (pull_request) Successful in 8s
Markdown linter / markdown-link-checker (pull_request) Successful in 13s
Markdown linter / markdown-lint (pull_request) Successful in 9s
2026-02-07 22:36:09 +00:00
c6fe40e32d fix(renovate): remove packageRule for volkerraschek/helm
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 17s
2026-02-07 22:26:50 +01:00
2a396c1993 docs(README): add OCI registry
All checks were successful
Helm / helm-lint (push) Successful in 9s
Generate README / generate-parameters (push) Successful in 12s
Markdown linter / markdown-link-checker (push) Successful in 12s
Helm / helm-unittest (push) Successful in 18s
Markdown linter / markdown-lint (push) Successful in 10s
Release / publish-chart (push) Successful in 1m0s
2026-02-07 22:09:04 +01:00
af9a2e7f2d fix(ci): rename step
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 17s
2026-02-07 21:52:57 +01:00
d65c48b880 fix(ci): upload metadata for artifacthub
All checks were successful
Helm / helm-lint (push) Successful in 4s
Helm / helm-unittest (push) Successful in 8s
Generate README / generate-parameters (push) Successful in 27s
Markdown linter / markdown-link-checker (push) Successful in 13s
Markdown linter / markdown-lint (push) Successful in 29s
2026-02-07 21:49:25 +01:00
bec440645b feat: support OCI 2026-02-07 21:42:20 +01:00
873b7d9a5e fix(scripts): support pre-releases 2026-02-07 19:26:20 +01:00
96c6b03827 Merge pull request 'chore(deps): update docker.io/library/node docker tag to v25.6.0' (#124) from renovate/update-docker.iolibrarynode into master
All checks were successful
Helm / helm-lint (push) Successful in 10s
Helm / helm-unittest (push) Successful in 18s
2026-02-03 17:15:36 +00:00
89f7ae973c chore(deps): update docker.io/library/node docker tag to v25.6.0
All checks were successful
Helm / helm-lint (push) Successful in 4s
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (pull_request) Successful in 8s
Helm / helm-unittest (pull_request) Successful in 8s
2026-02-03 17:15:05 +00:00
166ecce210 Merge pull request 'chore(deps): update docker.io/library/node docker tag to v25.5.0' (#123) from renovate/update-docker.iolibrarynode into master
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 8s
2026-02-01 11:44:50 +00:00
814d2ef609 chore(deps): update docker.io/library/node docker tag to v25.5.0
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (pull_request) Successful in 5s
Helm / helm-unittest (pull_request) Successful in 10s
2026-02-01 11:11:37 +00:00
b752824ebb Merge pull request 'chore(deps): update actions/checkout action to v6.0.2' (#122) from renovate/actions into master
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 8s
2026-01-22 17:51:19 +00:00
d3a1b0f2b2 chore(deps): update actions/checkout action to v6.0.2
All checks were successful
Helm / helm-lint (pull_request) Successful in 5s
Helm / helm-unittest (pull_request) Successful in 7s
Helm / helm-lint (push) Successful in 4s
Helm / helm-unittest (push) Successful in 7s
2026-01-22 17:13:39 +00:00
944d7ae72b Merge pull request 'chore(deps): update docker.io/library/node docker tag to v25.4.0' (#121) from renovate/update-docker.iolibrarynode into master
All checks were successful
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (push) Successful in 9s
2026-01-20 17:12:13 +00:00
04213233a6 chore(deps): update docker.io/library/node docker tag to v25.4.0
All checks were successful
Helm / helm-lint (push) Successful in 9s
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (pull_request) Successful in 10s
Helm / helm-unittest (pull_request) Successful in 7s
2026-01-20 17:11:39 +00:00
6e4bf9c2f1 Merge pull request 'chore(deps): update docker.io/library/node docker tag to v25.3.0' (#120) from renovate/update-docker.iolibrarynode into master
All checks were successful
Helm / helm-unittest (push) Successful in 8s
Helm / helm-lint (push) Successful in 10s
2026-01-14 20:11:48 +00:00
0db2f82524 chore(deps): update docker.io/library/node docker tag to v25.3.0
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-lint (pull_request) Successful in 5s
Helm / helm-unittest (push) Successful in 17s
Helm / helm-unittest (pull_request) Successful in 7s
2026-01-14 20:11:17 +00:00
f30ffa3054 Merge pull request 'chore(deps): update dependency markdownlint-cli to ^0.47.0' (#119) from renovate/markdownlint-cli-0.x into master
All checks were successful
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (push) Successful in 11s
2025-12-11 08:11:38 +00:00
1871edd53f chore(deps): update dependency markdownlint-cli to ^0.47.0
All checks were successful
Helm / helm-lint (push) Successful in 4s
Helm / helm-lint (pull_request) Successful in 4s
Helm / helm-unittest (pull_request) Successful in 7s
Helm / helm-unittest (push) Successful in 17s
2025-12-11 08:11:10 +00:00
654b6c400d Merge pull request 'chore(deps): update actions/checkout action to v6' (#117) from renovate/actions-checkout-6.x into master
All checks were successful
Helm / helm-lint (push) Successful in 4s
Helm / helm-unittest (push) Successful in 7s
2025-12-02 21:46:21 +00:00
a4bab39b93 chore(deps): update actions/checkout action to v6
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (pull_request) Successful in 3s
Helm / helm-unittest (pull_request) Successful in 7s
2025-12-02 21:13:23 +00:00
4fc6c58575 chore(deps): rollback docker docker.io/volkerraschek/helm to 3.19.2
All checks were successful
Helm / helm-unittest (push) Successful in 8s
Helm / helm-lint (push) Successful in 9s
2025-11-30 13:39:15 +01:00
23931df4e2 Merge pull request 'chore(deps): update docker.io/volkerraschek/helm docker tag to v4' (#109) from renovate/major-update-docker.iovolkerraschekhelm into master
All checks were successful
Helm / helm-lint (push) Successful in 4s
Helm / helm-unittest (push) Successful in 7s
Reviewed-on: #109
2025-11-30 11:24:55 +00:00
0f427bc5b2 Merge pull request 'chore(deps): update dependency helm/helm to v4.0.1' (#115) from renovate/helm-helm-4.x into master
Some checks failed
Helm / helm-lint (push) Has started running
Helm / helm-unittest (push) Has been cancelled
Reviewed-on: #115
2025-11-30 11:24:48 +00:00
42c3ef84a4 Merge branch 'master' into renovate/major-update-docker.iovolkerraschekhelm
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-lint (pull_request) Successful in 4s
Helm / helm-unittest (pull_request) Successful in 8s
Helm / helm-unittest (push) Successful in 18s
2025-11-30 11:24:27 +00:00
8fa979a093 Merge branch 'master' into renovate/helm-helm-4.x
All checks were successful
Helm / helm-lint (push) Successful in 4s
Helm / helm-lint (pull_request) Successful in 4s
Helm / helm-unittest (pull_request) Successful in 7s
Helm / helm-unittest (push) Successful in 17s
2025-11-30 11:24:13 +00:00
970581cc3d Merge pull request 'chore(deps): update azure/setup-helm action to v4.3.1' (#114) from renovate/actions into master
All checks were successful
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (push) Successful in 10s
2025-11-30 11:11:16 +00:00
f34adfad97 chore(deps): update docker.io/volkerraschek/helm docker tag to v4
All checks were successful
Generate README / generate-parameters (push) Successful in 10s
Helm / helm-lint (push) Successful in 10s
Helm / helm-unittest (push) Successful in 8s
Markdown linter / markdown-lint (push) Successful in 9s
Generate README / generate-parameters (pull_request) Successful in 9s
Markdown linter / markdown-link-checker (push) Successful in 30s
Helm / helm-lint (pull_request) Successful in 4s
Markdown linter / markdown-link-checker (pull_request) Successful in 10s
Helm / helm-unittest (pull_request) Successful in 18s
Markdown linter / markdown-lint (pull_request) Successful in 9s
2025-11-30 11:10:34 +00:00
90cbc57fee chore(deps): update dependency helm/helm to v4.0.1
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 17s
Helm / helm-unittest (pull_request) Successful in 7s
Helm / helm-lint (pull_request) Successful in 10s
2025-11-30 11:10:28 +00:00
d809667060 chore(deps): update azure/setup-helm action to v4.3.1
All checks were successful
Helm / helm-lint (pull_request) Successful in 4s
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 7s
Helm / helm-unittest (pull_request) Successful in 18s
2025-11-30 11:10:22 +00:00
b1aa192fac docs(README): adapt stakaters reloader example
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 8s
Markdown linter / markdown-link-checker (push) Successful in 11s
Generate README / generate-parameters (push) Successful in 28s
Markdown linter / markdown-lint (push) Successful in 9s
2025-11-30 12:09:13 +01:00
23543bb913 fix(ci): replace volkerraschek/helm with native GitHub Actions
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 17s
2025-11-30 11:28:54 +01:00
ea979d746f Merge pull request 'chore(deps): update dependency markdown-link-check to v3.14.2' (#113) from renovate/markdown-link-check-3.x-lockfile into master
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 16s
2025-11-19 17:11:20 +00:00
718e34749c chore(deps): update dependency markdown-link-check to v3.14.2
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (push) Successful in 16s
Helm / helm-unittest (pull_request) Successful in 8s
2025-11-19 17:10:52 +00:00
6851b0b9a5 Merge pull request 'chore(deps): update dependency markdownlint-cli to ^0.46.0' (#112) from renovate/markdownlint-cli-0.x into master
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 15s
2025-11-19 05:12:00 +00:00
e9caa4df02 chore(deps): update dependency markdownlint-cli to ^0.46.0
All checks were successful
Helm / helm-lint (push) Successful in 14s
Helm / helm-lint (pull_request) Successful in 5s
Helm / helm-unittest (push) Successful in 17s
Helm / helm-unittest (pull_request) Successful in 7s
2025-11-19 05:10:45 +00:00
4997fe998e Merge pull request 'chore(deps): update docker.io/library/node docker tag to v25.2.1' (#111) from renovate/update-docker.iolibrarynode into master
All checks were successful
Helm / helm-lint (push) Successful in 14s
Helm / helm-unittest (push) Successful in 17s
2025-11-17 18:06:14 +00:00
d70de74355 Merge pull request 'chore(deps): update actions/checkout action to v5.0.1' (#110) from renovate/actions into master
Some checks failed
Helm / helm-lint (push) Has been cancelled
Helm / helm-unittest (push) Has been cancelled
2025-11-17 18:05:45 +00:00
fbced2f1e8 chore(deps): update docker.io/library/node docker tag to v25.2.1
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 6s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (pull_request) Successful in 6s
2025-11-17 17:14:45 +00:00
2594218173 chore(deps): update actions/checkout action to v5.0.1
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 8s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (pull_request) Successful in 6s
2025-11-17 17:14:40 +00:00
fe8a32e605 Merge pull request 'chore(deps): update docker.io/volkerraschek/helm docker tag to v3.19.2' (#108) from renovate/update-docker.iovolkerraschekhelm into master
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 6s
2025-11-12 21:21:30 +00:00
11680e0cad chore(deps): update docker.io/volkerraschek/helm docker tag to v3.19.2
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 6s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (pull_request) Successful in 7s
2025-11-12 21:20:23 +00:00
7165a32989 Merge pull request 'chore(deps): update docker.io/library/node docker tag to v25.2.0' (#107) from renovate/update-docker.iolibrarynode into master
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 17s
2025-11-12 20:11:39 +00:00
e860a54d92 chore(deps): update docker.io/library/node docker tag to v25.2.0
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 7s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (pull_request) Successful in 17s
2025-11-12 20:10:50 +00:00
f72e7328db Merge pull request 'chore(deps): update docker.io/library/node docker tag to v25.1.0' (#106) from renovate/update-docker.iolibrarynode into master
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 16s
2025-10-29 17:11:17 +00:00
035195c35d chore(deps): update docker.io/library/node docker tag to v25.1.0
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (push) Successful in 15s
Helm / helm-unittest (pull_request) Successful in 7s
2025-10-29 17:10:49 +00:00
847097c8ff Merge pull request 'chore(deps): update docker.io/library/node docker tag to v25' (#104) from renovate/major-update-docker.iolibrarynode into master
All checks were successful
Helm / helm-unittest (push) Successful in 6s
Helm / helm-lint (push) Successful in 13s
Reviewed-on: #104
2025-10-29 07:24:39 +00:00
25ea6e68eb chore(deps): update docker.io/library/node docker tag to v25
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (push) Successful in 16s
Helm / helm-unittest (pull_request) Successful in 6s
2025-10-29 05:09:57 +00:00
0f5ae6717f Merge pull request 'chore(deps): update docker.io/library/node docker tag to v24.11.0' (#105) from renovate/update-docker.iolibrarynode into master
All checks were successful
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 6s
2025-10-29 02:10:47 +00:00
0d37fd8cfd chore(deps): update docker.io/library/node docker tag to v24.11.0
All checks were successful
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 6s
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (pull_request) Successful in 6s
2025-10-29 02:10:01 +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
15 changed files with 483 additions and 694 deletions

View File

@@ -1,61 +1,65 @@
#!/bin/bash #!/bin/bash
set -e set -e -o pipefail
CHART_FILE="Chart.yaml" chart_file="Chart.yaml"
if [ ! -f "${CHART_FILE}" ]; then if [ ! -f "${chart_file}" ]; then
echo "ERROR: ${CHART_FILE} not found!" 1>&2 echo "ERROR: ${chart_file} not found!" 1>&2
exit 1 exit 1
fi fi
DEFAULT_NEW_TAG="$(git tag --sort=-version:refname | head -n 1)" default_new_tag="$(git tag --sort=-version:refname | head -n 1)"
DEFAULT_OLD_TAG="$(git tag --sort=-version:refname | head -n 2 | tail -n 1)" default_old_tag="$(git tag --sort=-version:refname | head -n 2 | tail -n 1)"
if [ -z "${1}" ]; then if [ -z "${1}" ]; then
read -p "Enter start tag [${DEFAULT_OLD_TAG}]: " OLD_TAG echo "Enter start tag [${default_old_tag}]:"
if [ -z "${OLD_TAG}" ]; then read -r old_tag
OLD_TAG="${DEFAULT_OLD_TAG}" if [ -z "${old_tag}" ]; then
old_tag="${default_old_tag}"
fi fi
while [ -z "$(git tag --list "${OLD_TAG}")" ]; do while [ -z "$(git tag --list "${old_tag}")" ]; do
echo "ERROR: Tag '${OLD_TAG}' not found!" 1>&2 echo "ERROR: Tag '${old_tag}' not found!" 1>&2
read -p "Enter start tag [${DEFAULT_OLD_TAG}]: " OLD_TAG echo "Enter start tag [${default_old_tag}]:"
if [ -z "${OLD_TAG}" ]; then read -r old_tag
OLD_TAG="${DEFAULT_OLD_TAG}" if [ -z "${old_tag}" ]; then
old_tag="${default_old_tag}"
fi fi
done done
else else
OLD_TAG=${1} old_tag=${1}
if [ -z "$(git tag --list "${OLD_TAG}")" ]; then if [ -z "$(git tag --list "${old_tag}")" ]; then
echo "ERROR: Tag '${OLD_TAG}' not found!" 1>&2 echo "ERROR: Tag '${old_tag}' not found!" 1>&2
exit 1 exit 1
fi fi
fi fi
if [ -z "${2}" ]; then if [ -z "${2}" ]; then
read -p "Enter end tag [${DEFAULT_NEW_TAG}]: " NEW_TAG echo "Enter end tag [${default_new_tag}]:"
if [ -z "${NEW_TAG}" ]; then read -r new_tag
NEW_TAG="${DEFAULT_NEW_TAG}" if [ -z "${new_tag}" ]; then
new_tag="${default_new_tag}"
fi fi
while [ -z "$(git tag --list "${NEW_TAG}")" ]; do while [ -z "$(git tag --list "${new_tag}")" ]; do
echo "ERROR: Tag '${NEW_TAG}' not found!" 1>&2 echo "ERROR: Tag '${new_tag}' not found!" 1>&2
read -p "Enter end tag [${DEFAULT_NEW_TAG}]: " NEW_TAG echo "Enter end tag [${default_new_tag}]:"
if [ -z "${NEW_TAG}" ]; then read -r new_tag
NEW_TAG="${DEFAULT_NEW_TAG}" if [ -z "${new_tag}" ]; then
new_tag="${default_new_tag}"
fi fi
done done
else else
NEW_TAG=${2} new_tag=${2}
if [ -z "$(git tag --list "${NEW_TAG}")" ]; then if [ -z "$(git tag --list "${new_tag}")" ]; then
echo "ERROR: Tag '${NEW_TAG}' not found!" 1>&2 echo "ERROR: Tag '${new_tag}' not found!" 1>&2
exit 1 exit 1
fi fi
fi fi
CHANGE_LOG_YAML=$(mktemp) change_log_yaml=$(mktemp)
echo "[]" > "${CHANGE_LOG_YAML}" echo "[]" > "${change_log_yaml}"
function map_type_to_kind() { function map_type_to_kind() {
case "${1}" in case "${1}" in
@@ -80,35 +84,42 @@ function map_type_to_kind() {
esac esac
} }
COMMIT_TITLES="$(git log --pretty=format:"%s" "${OLD_TAG}..${NEW_TAG}")" commit_titles="$(git log --pretty=format:"%s" "${old_tag}..${new_tag}")"
echo "INFO: Generate change log entries from ${OLD_TAG} until ${NEW_TAG}" echo "INFO: Generate change log entries from ${old_tag} until ${new_tag}"
while IFS= read -r line; do while IFS= read -r line; do
if [[ "${line}" =~ ^([a-zA-Z]+)(\([^\)]+\))?\:\ (.+)$ ]]; then if [[ "${line}" =~ ^([a-zA-Z]+)(\([^\)]+\))?\:\ (.+)$ ]]; then
TYPE="${BASH_REMATCH[1]}" type="${BASH_REMATCH[1]}"
KIND=$(map_type_to_kind "${TYPE}") kind=$(map_type_to_kind "${type}")
if [ "${KIND}" == "skip" ]; then if [ "${kind}" == "skip" ]; then
continue continue
fi fi
DESC="${BASH_REMATCH[3]}" desc="${BASH_REMATCH[3]}"
echo "- ${KIND}: ${DESC}" echo "- ${kind}: ${desc}"
jq --arg kind "${KIND}" --arg description "${DESC}" '. += [ $ARGS.named ]' < "${CHANGE_LOG_YAML}" > "${CHANGE_LOG_YAML}.new" jq --arg kind "${kind}" --arg description "${desc}" '. += [ $ARGS.named ]' < "${change_log_yaml}" > "${change_log_yaml}.new"
mv "${CHANGE_LOG_YAML}.new" "${CHANGE_LOG_YAML}" mv "${change_log_yaml}.new" "${change_log_yaml}"
fi fi
done <<< "${COMMIT_TITLES}" done <<< "${commit_titles}"
if [ -s "${CHANGE_LOG_YAML}" ]; then if [ -s "${change_log_yaml}" ]; then
yq --inplace --input-format json --output-format yml "${CHANGE_LOG_YAML}" yq --inplace --input-format json --output-format yml "${change_log_yaml}"
yq --no-colors --inplace ".annotations.\"artifacthub.io/changes\" |= loadstr(\"${CHANGE_LOG_YAML}\") | sort_keys(.)" "${CHART_FILE}" yq --no-colors --inplace ".annotations.\"artifacthub.io/changes\" |= loadstr(\"${change_log_yaml}\") | sort_keys(.)" "${chart_file}"
else else
echo "ERROR: Changelog file is empty: ${CHANGE_LOG_YAML}" 1>&2 echo "ERROR: Changelog file is empty: ${change_log_yaml}" 1>&2
exit 1 exit 1
fi fi
rm "${CHANGE_LOG_YAML}" rm "${change_log_yaml}"
regexp=".*-alpha-[0-9]+(\.[0-9]+){,2}$"
if [[ "${new_tag}" =~ $regexp ]]; then
yq --inplace '.annotations."artifacthub.io/prerelease" = "true"' "${chart_file}"
else
yq --inplace '.annotations."artifacthub.io/prerelease" = "false"' "${chart_file}"
fi

View File

@@ -0,0 +1,41 @@
name: Upload ArtifactHub Metadata
on:
schedule:
- cron: '0 3 1 * *'
workflow_dispatch:
jobs:
upload-metadata:
name: "Upload artifacthub-repo.yml to OCI registry"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6.0.2
- uses: docker/login-action@v3.7.0
with:
registry: ${{ github.server_url }}
username: ${{ github.repository_owner }}
password: ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }}
- uses: oras-project/setup-oras@v1.2.4
with:
version: 1.3.0 # renovate: datasource=github-tags depName=oras-project/oras extractVersion='^v?(?<version>.*)$'
- name: Extract meta information
run: |
echo "GITEA_SERVER_HOSTNAME=$(echo "${GITHUB_SERVER_URL}" | cut -d '/' -f 3)" >> $GITHUB_ENV
echo "PACKAGE_VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
echo "REPOSITORY_NAME=$(echo ${GITHUB_REPOSITORY} | cut -d '/' -f 2 | sed --regexp-extended 's/-charts?//g')" >> $GITHUB_ENV
echo "REPOSITORY_OWNER=$(echo ${GITHUB_REPOSITORY} | cut -d '/' -f 1)" >> $GITHUB_ENV
- name: Push artifacthub-repo.yml
run: |
oras push ${GITEA_SERVER_HOSTNAME}/${REPOSITORY_OWNER}/${REPOSITORY_NAME}:artifacthub.io \
--config /dev/null:application/vnd.cncf.artifacthub.config.v1+yaml \
artifacthub-repo.yml:application/vnd.cncf.artifacthub.repository-metadata.layer.v1.yaml
- name: Push public cosign key
env:
COSIGN_PUBLIC_KEY: ${{ vars.COSIGN_PUBLIC_KEY }}
run: |
echo "${COSIGN_PUBLIC_KEY}" > cosign.pub
oras push ${GITEA_SERVER_HOSTNAME}/${REPOSITORY_OWNER}/${REPOSITORY_NAME}:cosign.pub \
--artifact-type application/vnd.dev.cosign.public-key.v1 \
--annotation org.opencontainers.image.title=cosign.pub \
cosign.pub:application/vnd.dev.cosign.public-key.v1

View File

@@ -15,15 +15,14 @@ on:
jobs: jobs:
generate-parameters: generate-parameters:
container: container:
image: docker.io/library/node:24.9.0-alpine image: docker.io/library/node:25.6.0-alpine
runs-on: runs-on: ubuntu-latest
- ubuntu-latest
steps: steps:
- name: Install tooling - name: Install tooling
run: | run: |
apk update apk update
apk add git npm apk add git npm
- uses: actions/checkout@v5.0.0 - uses: actions/checkout@v6.0.2
- name: Generate parameter section in README - name: Generate parameter section in README
run: | run: |
npm install npm install

View File

@@ -12,31 +12,26 @@ on:
jobs: jobs:
helm-lint: helm-lint:
container: runs-on: ubuntu-latest
image: docker.io/volkerraschek/helm:3.19.0
runs-on:
- ubuntu-latest
steps: steps:
- name: Install tooling - uses: actions/checkout@v6.0.2
run: | - uses: azure/setup-helm@v4.3.1
apk update with:
apk add git npm version: "v4.1.0" # renovate: datasource=github-tags depName=helm/helm
- uses: actions/checkout@v5.0.0
- name: Lint helm files - name: Lint helm files
run: | run: |
helm lint --values values.yaml . helm lint --values values.yaml .
helm-unittest: helm-unittest:
container: runs-on: ubuntu-latest
image: docker.io/volkerraschek/helm:3.19.0
runs-on:
- ubuntu-latest
steps: steps:
- name: Install tooling - uses: actions/checkout@v6.0.2
run: | - uses: azure/setup-helm@v4.3.1
apk update with:
apk add git npm version: "v4.1.0" # renovate: datasource=github-tags depName=helm/helm
- uses: actions/checkout@v5.0.0 - env:
- name: Unittest HELM_UNITTEST_VERSION: v1.0.0 #renovate: datasource=github-releases depName=helm-unittest/helm-unittest
run: | name: Install helm-unittest
helm unittest --strict --file 'unittests/**/*.yaml' ./ run: helm plugin install --verify=false --version "${HELM_UNITTEST_VERSION}" https://github.com/helm-unittest/helm-unittest
- name: Execute helm unittests
run: helm unittest --strict --file 'unittests/**/*.yaml' .

View File

@@ -15,15 +15,14 @@ on:
jobs: jobs:
markdown-link-checker: markdown-link-checker:
container: container:
image: docker.io/library/node:24.9.0-alpine image: docker.io/library/node:25.6.0-alpine
runs-on: runs-on: ubuntu-latest
- ubuntu-latest
steps: steps:
- name: Install tooling - name: Install tooling
run: | run: |
apk update apk update
apk add git npm apk add git npm
- uses: actions/checkout@v5.0.0 - uses: actions/checkout@v6.0.2
- name: Verify links in markdown files - name: Verify links in markdown files
run: | run: |
npm install npm install
@@ -31,15 +30,14 @@ jobs:
markdown-lint: markdown-lint:
container: container:
image: docker.io/library/node:24.9.0-alpine image: docker.io/library/node:25.6.0-alpine
runs-on: runs-on: ubuntu-latest
- ubuntu-latest
steps: steps:
- name: Install tooling - name: Install tooling
run: | run: |
apk update apk update
apk add git apk add git
- uses: actions/checkout@v5.0.0 - uses: actions/checkout@v6.0.2
- name: Lint markdown files - name: Lint markdown files
run: | run: |
npm install npm install

View File

@@ -7,16 +7,28 @@ on:
jobs: jobs:
publish-chart: publish-chart:
container:
image: docker.io/volkerraschek/helm:3.19.0
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Install packages via apk - uses: sigstore/cosign-installer@v4.0.0
run: | with:
apk update cosign-release: "v2.6.2" # renovate: datasource=github-tags depName=sigstore/cosign
apk add git npm jq yq
- uses: actions/checkout@v5.0.0 - uses: azure/setup-helm@v4.3.1
with:
version: "v4.1.0" # renovate: datasource=github-tags depName=helm/helm
- name: Install helm plugins
env:
HELM_SIGSTORE_VERSION: "0.3.0" # renovate: datasource=github-tags depName=sigstore/helm-sigstore extractVersion='^v(?<version>\d+\.\d+\.\d+)$'
HELM_SCHEMA_VALUES_VERSION: "2.3.1" # renovate: datasource=github-tags depName=losisin/helm-values-schema-json extractVersion='^v(?<version>\d+\.\d+\.\d+)$'
HELM_UNITTEST_VERSION: "1.0.3" # renovate: datasource=github-tags depName=helm-unittest/helm-unittest extractVersion='^v(?<version>\d+\.\d+\.\d+)$'
run: |
helm plugin install --verify=false https://github.com/sigstore/helm-sigstore.git --version "${HELM_SIGSTORE_VERSION}" 1> /dev/null
helm plugin install --verify=false https://github.com/losisin/helm-values-schema-json.git --version "${HELM_SCHEMA_VALUES_VERSION}" 1> /dev/null
helm plugin install --verify=false https://github.com/helm-unittest/helm-unittest.git --version "${HELM_UNITTEST_VERSION}" 1> /dev/null
helm plugin list
- uses: actions/checkout@v6.0.2
with: with:
fetch-depth: 0 fetch-depth: 0
@@ -28,6 +40,7 @@ jobs:
- name: Extract meta information - name: Extract meta information
run: | run: |
echo "GITEA_SERVER_HOSTNAME=$(echo "${GITHUB_SERVER_URL}" | cut -d '/' -f 3)" >> $GITHUB_ENV
echo "PACKAGE_VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV echo "PACKAGE_VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
echo "REPOSITORY_NAME=$(echo ${GITHUB_REPOSITORY} | cut -d '/' -f 2 | sed --regexp-extended 's/-charts?//g')" >> $GITHUB_ENV echo "REPOSITORY_NAME=$(echo ${GITHUB_REPOSITORY} | cut -d '/' -f 2 | sed --regexp-extended 's/-charts?//g')" >> $GITHUB_ENV
echo "REPOSITORY_OWNER=$(echo ${GITHUB_REPOSITORY} | cut -d '/' -f 1)" >> $GITHUB_ENV echo "REPOSITORY_OWNER=$(echo ${GITHUB_REPOSITORY} | cut -d '/' -f 1)" >> $GITHUB_ENV
@@ -40,22 +53,43 @@ jobs:
helm dependency build helm dependency build
helm package --version "${PACKAGE_VERSION}" ./ helm package --version "${PACKAGE_VERSION}" ./
- name: Upload Chart to ChartMuseum - uses: docker/login-action@v3.7.0
with:
registry: ${{ github.server_url }}
username: ${{ github.repository_owner }}
password: ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }}
- name: Upload Chart to Gitea (OCI)
env: env:
COSIGN_PASSWORD: ${{ secrets.COSIGN_PASSWORD }}
COSIGN_PRIVATE_KEY: ${{ secrets.COSIGN_PRIVATE_KEY }}
run: |
helm push ${REPOSITORY_NAME}-${PACKAGE_VERSION}.tgz oci://${GITEA_SERVER_HOSTNAME}/${REPOSITORY_OWNER}
cosign sign --yes --upload=true --key=env://COSIGN_PRIVATE_KEY ${GITEA_SERVER_HOSTNAME}/${REPOSITORY_OWNER}/${REPOSITORY_NAME}:${PACKAGE_VERSION}
- name: Upload Chart to Gitea (Helm)
env:
GITEA_REGISTRY_TOKEN: ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }}
run: |
curl \
--fail \
--show-error \
--request POST \
--user "${REPOSITORY_OWNER}:${GITEA_REGISTRY_TOKEN}" \
--upload-file "${REPOSITORY_NAME}-${PACKAGE_VERSION}.tgz" \
https://git.cryptic.systems/api/packages/${REPOSITORY_OWNER}/helm/api/charts
- name: Upload Chart to Chartmuseum (Helm)
env:
CHARTMUSEUM_HOSTNAME: ${{ vars.CHARTMUSEUM_HOSTNAME }}
CHARTMUSEUM_USERNAME: ${{ secrets.CHARTMUSEUM_USERNAME }}
CHARTMUSEUM_PASSWORD: ${{ secrets.CHARTMUSEUM_PASSWORD }} CHARTMUSEUM_PASSWORD: ${{ secrets.CHARTMUSEUM_PASSWORD }}
CHARTMUSEUM_REPOSITORY: ${{ vars.CHARTMUSEUM_REPOSITORY }} CHARTMUSEUM_REPOSITORY: ${{ vars.CHARTMUSEUM_REPOSITORY }}
CHARTMUSEUM_USERNAME: ${{ secrets.CHARTMUSEUM_USERNAME }}
CHARTMUSEUM_HOSTNAME: ${{ vars.CHARTMUSEUM_HOSTNAME }}
run: | run: |
helm repo add --username ${CHARTMUSEUM_USERNAME} --password ${CHARTMUSEUM_PASSWORD} chartmuseum https://${CHARTMUSEUM_HOSTNAME}/${CHARTMUSEUM_REPOSITORY} curl \
helm cm-push ${REPOSITORY_NAME}-${PACKAGE_VERSION}.tgz chartmuseum --fail \
helm repo remove chartmuseum --show-error \
--request POST \
- name: Upload Chart to Gitea --user "${CHARTMUSEUM_USERNAME}:${CHARTMUSEUM_PASSWORD}" \
env: --upload-file "${REPOSITORY_NAME}-${PACKAGE_VERSION}.tgz" \
GITEA_PACKAGE_REGISTRY_TOKEN: ${{ secrets.GIT_CRYPTIC_SYSTEMS_PACKAGE_REGISTRY_TOKEN }} https://${CHARTMUSEUM_HOSTNAME}/api/${CHARTMUSEUM_REPOSITORY}/charts
GITEA_SERVER_URL: ${{ github.server_url }}
run: |
helm repo add --username ${REPOSITORY_OWNER} --password ${GITEA_PACKAGE_REGISTRY_TOKEN} gitea ${GITEA_SERVER_URL}/api/packages/${REPOSITORY_OWNER}/helm
helm cm-push ${REPOSITORY_NAME}-${PACKAGE_VERSION}.tgz gitea
helm repo remove gitea

1
.gitignore vendored
View File

@@ -1,4 +1,5 @@
charts charts
cosign*
node_modules node_modules
target target
values2.yml values2.yml

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

@@ -1,24 +1,25 @@
annotations: annotations:
artifacthub.io/license: MIT
artifacthub.io/links: | artifacthub.io/links: |
- name: Prometheus PostgreSQL exporter (binary) - name: Prometheus PostgreSQL exporter (binary)
url: https://github.com/prometheus-community/postgres_exporter url: https://github.com/prometheus-community/postgres_exporter
- name: support - name: support
url: https://git.cryptic.systems/volker.raschek/prometheus-postgres-exporter/issues url: https://git.cryptic.systems/volker.raschek/prometheus-postgres-exporter/issues
artifacthub.io/operator: "false"
artifacthub.io/prerelease: "false"
apiVersion: v2 apiVersion: v2
name: prometheus-postgres-exporter appVersion: "0.19.0"
description: Prometheus metric exporter for PostgreSQL description: Prometheus metric exporter for PostgreSQL
type: application home: https://git.cryptic.systems/volker.raschek/prometheus-postgres-exporter
version: "0.1.0"
appVersion: "0.18.1"
# icon: https://annotations.example.com/icon.png # icon: https://annotations.example.com/icon.png
keywords: keywords:
- prometheus - prometheus
- prometheus-exporter - prometheus-exporter
- postgres-postgres-exporter - postgres-postgres-exporter
- postgres-exporter - postgres-exporter
name: prometheus-postgres-exporter
sources: sources:
- https://github.com/prometheus-community/postgres_exporter - https://github.com/prometheus-community/postgres_exporter
- https://git.cryptic.systems/volker.raschek/prometheus-postgres-exporter - https://git.cryptic.systems/volker.raschek/prometheus-postgres-exporter
type: application
version: "0.1.0"

View File

@@ -4,13 +4,13 @@ CONTAINER_RUNTIME?=$(shell which podman)
# HELM_IMAGE # HELM_IMAGE
HELM_IMAGE_REGISTRY_HOST?=docker.io HELM_IMAGE_REGISTRY_HOST?=docker.io
HELM_IMAGE_REPOSITORY?=volkerraschek/helm 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} HELM_IMAGE_FULLY_QUALIFIED=${HELM_IMAGE_REGISTRY_HOST}/${HELM_IMAGE_REPOSITORY}:${HELM_IMAGE_VERSION}
# NODE_IMAGE # NODE_IMAGE
NODE_IMAGE_REGISTRY_HOST?=docker.io NODE_IMAGE_REGISTRY_HOST?=docker.io
NODE_IMAGE_REPOSITORY?=library/node 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.2.1-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} NODE_IMAGE_FULLY_QUALIFIED=${NODE_IMAGE_REGISTRY_HOST}/${NODE_IMAGE_REPOSITORY}:${NODE_IMAGE_VERSION}
# MISSING DOT # MISSING DOT

View File

@@ -16,11 +16,15 @@ Chapter [configuration and installation](#helm-configuration-and-installation) d
and use it to deploy the exporter. It also contains further configuration examples. 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 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 ## Helm: configuration and installation
1. A helm chart repository must be configured, to pull the helm charts from. 1. A helm chart repository must be configured, to pull the helm charts from. The helm charts can either be pulled from
the classic helm chart repository or OCI registry.
2. All available [parameters](#parameters) are documented in detail below. The parameters can be defined via the helm 2. All available [parameters](#parameters) are documented in detail below. The parameters can be defined via the helm
`--set` flag or directly as part of a `values.yaml` file. The following example defines the `prometheus-exporter` `--set` flag or directly as part of a `values.yaml` file. The following example defines the `prometheus-exporter`
repository and use the `--set` flag for a basic deployment. repository and use the `--set` flag for a basic deployment.
@@ -31,9 +35,9 @@ helm chart is tested for deployment scenarios with **ArgoCD**.
> time is not possible. > time is not possible.
```bash ```bash
helm repo add prometheus-exporters https://charts.cryptic.systems/prometheus-exporters helm repo add prometheus-postgres-exporters https://git.cryptic.systems/prometheus-exporters
helm repo update helm repo update
CHART_VERSION=0.5.4 CHART_VERSION=0.5.6
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \ helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \ --set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \ --set 'config.database.secret.databasePassword=postgres' \
@@ -42,13 +46,25 @@ helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheu
--set 'prometheus.metrics.serviceMonitor.enabled=true' --set 'prometheus.metrics.serviceMonitor.enabled=true'
``` ```
Alternatively, the deployment of the helm charts can also be done via an OCI registry:
```bash
CHART_VERSION=0.5.6
helm install "oci://git.cryptic.systems/volker.raschek/prometheus-postgres-exporter:${CHART_VERSION}" \
--set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \
--set 'config.database.secret.databaseConnectionUrl="postgres.example.local:5432/postgres?ssl=disable"' \
--set 'prometheus.metrics.enabled=true' \
--set 'prometheus.metrics.serviceMonitor.enabled=true'
```
Instead of passing all parameters via the *set* flag, it is also possible to define them as part of the `values.yaml`. Instead of passing all parameters via the *set* flag, it is also possible to define them as part of the `values.yaml`.
The following command downloads the `values.yaml` for a specific version of this chart. Please keep in mind, that the The following command downloads the `values.yaml` for a specific version of this chart. Please keep in mind, that the
version of the chart must be in sync with the `values.yaml`. Newer *minor* versions can have new features. New *major* version of the chart must be in sync with the `values.yaml`. Newer *minor* versions can have new features. New *major*
versions can break something! versions can break something!
```bash ```bash
CHART_VERSION=0.5.4 CHART_VERSION=0.5.6
helm show values --version "${CHART_VERSION}" prometheus-exporters/prometheus-postgres-exporter > values.yaml helm show values --version "${CHART_VERSION}" prometheus-exporters/prometheus-postgres-exporter > values.yaml
``` ```
@@ -86,7 +102,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. > Please take care the a CPU limit < `1000m` can also lead to CPU throttling. Please read the linked documentation carefully.
```bash ```bash
CHART_VERSION=0.5.4 CHART_VERSION=0.5.6
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \ helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \ --set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \ --set 'config.database.secret.databasePassword=postgres' \
@@ -100,7 +116,7 @@ helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheu
#### TLS authentication and encryption #### 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. certification will be skipped by Prometheus.
> [!WARNING] > [!WARNING]
@@ -108,7 +124,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. > `tls.key` and `tls.crt` of the secret can be mounted into the container filesystem for TLS authentication / encryption.
```bash ```bash
CHART_VERSION=0.5.4 CHART_VERSION=0.5.6
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \ helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \ --set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \ --set 'config.database.secret.databasePassword=postgres' \
@@ -132,7 +148,7 @@ certificate for the metrics exporter - TLS certificate verification can be enabl
replaced: replaced:
```diff ```diff
CHART_VERSION=0.5.4 CHART_VERSION=0.5.6
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \ helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \ --set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \ --set 'config.database.secret.databasePassword=postgres' \
@@ -163,18 +179,13 @@ TLS certificates before expiring.
Until the exporter does not support rotating TLS certificate a workaround can be applied. For example stakater's Until the exporter does not support rotating TLS certificate a workaround can be applied. For example stakater's
[reloader](https://github.com/stakater/Reloader) controller can be used to trigger a rolling update. The following [reloader](https://github.com/stakater/Reloader) controller can be used to trigger a rolling update. The following
annotation must be added to instruct the reloader controller to trigger a rolling update, when the mounted configMaps annotation must be added to instruct the reloader controller to trigger a rolling update, when the mounted secret has
and secrets have been changed. been changed.
```yaml > [!IMPORTANT]
deployment: > The Helm chart already adds annotations to trigger a rolling release. Helm describes this approach under
annotations: > [Automatically Roll Deployments](https://helm.sh/docs/howto/charts_tips_and_tricks/#automatically-roll-deployments).
reloader.stakater.com/auto: "true" > For this reason, **only external** configMaps or secrets need to be monitored by reloader.
```
Instead of triggering a rolling update for configMap and secret resources, this action can also be defined for
individual items. For example, when the secret named `prometheus-postgresql-exporter-http` is mounted and the reloader
controller should only listen for changes of this secret:
```yaml ```yaml
deployment: deployment:
@@ -191,7 +202,7 @@ the Grafana container file system so that it is subsequently available to the us
makes this possible. makes this possible.
```bash ```bash
CHART_VERSION=0.5.4 CHART_VERSION=0.5.6
helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \ helm install --version "${CHART_VERSION}" prometheus-postgres-exporter prometheus-exporters/prometheus-postgres-exporter \
--set 'config.database.secret.databaseUsername=postgres' \ --set 'config.database.secret.databaseUsername=postgres' \
--set 'config.database.secret.databasePassword=postgres' \ --set 'config.database.secret.databasePassword=postgres' \
@@ -293,6 +304,35 @@ networkPolicies:
protocol: TCP 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 ## Parameters
### Global ### Global

1
artifacthub-repo.yml Normal file
View File

@@ -0,0 +1 @@
repositoryID: d4d5f778-e029-4401-81a3-29a0f689ee08

746
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -16,6 +16,6 @@
"devDependencies": { "devDependencies": {
"@bitnami/readme-generator-for-helm": "^2.5.0", "@bitnami/readme-generator-for-helm": "^2.5.0",
"markdown-link-check": "^3.13.6", "markdown-link-check": "^3.13.6",
"markdownlint-cli": "^0.45.0" "markdownlint-cli": "^0.47.0"
} }
} }

View File

@@ -31,11 +31,35 @@
"packageNameTemplate": "https://git.cryptic.systems/volker.raschek/prometheus-postgres-exporter", "packageNameTemplate": "https://git.cryptic.systems/volker.raschek/prometheus-postgres-exporter",
"datasourceTemplate": "git-tags", "datasourceTemplate": "git-tags",
"versioningTemplate": "semver" "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": [ "packageRules": [
{ {
"groupName": "Update Node.JS", "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": [ "matchDepNames": [
"docker.io/library/node", "docker.io/library/node",
"library/node" "library/node"