Compare commits

..

32 Commits

Author SHA1 Message Date
0c0c0e5ea7
fix(Chart): escape changelog messages for artifacthub
All checks were successful
Helm / helm-lint (push) Successful in 14s
Helm / helm-unittest (push) Successful in 16s
Release / publish-chart (push) Successful in 25s
2025-06-06 22:03:34 +02:00
863c3a30c1
fix(Chart): escape changelog messages for artifacthub
Some checks failed
Helm / helm-unittest (push) Successful in 17s
Helm / helm-lint (push) Successful in 24s
Release / publish-chart (push) Failing after 18s
2025-06-06 22:01:12 +02:00
c9a45d8040
chore(deps): update dependency volker.raschek/prometheus-fail2ban-exporter-charts to v0.4.16
All checks were successful
Generate README / generate-parameters (pull_request) Successful in 45s
Helm / helm-lint (pull_request) Successful in 16s
Helm / helm-unittest (pull_request) Successful in 15s
Markdown linter / markdown-link-checker (pull_request) Successful in 30s
Markdown linter / markdown-lint (pull_request) Successful in 33s
Helm / helm-lint (push) Successful in 25s
Generate README / generate-parameters (push) Successful in 30s
Helm / helm-unittest (push) Successful in 24s
Markdown linter / markdown-link-checker (push) Successful in 32s
Markdown linter / markdown-lint (push) Successful in 46s
2025-06-04 19:11:43 +00:00
24d29f2b09
chore(ci): cleanup scripts
All checks were successful
Helm / helm-lint (push) Successful in 15s
Helm / helm-unittest (push) Successful in 16s
Release / publish-chart (push) Successful in 18s
2025-06-04 19:43:26 +02:00
a4180e0953
chore(ci): use git tag sort to get last two tags
All checks were successful
Helm / helm-lint (push) Successful in 12s
Helm / helm-unittest (push) Successful in 16s
Release / publish-chart (push) Successful in 25s
2025-06-04 19:23:13 +02:00
c5783bd053
chore(ci): log commits
Some checks failed
Helm / helm-unittest (push) Successful in 13s
Helm / helm-lint (push) Successful in 15s
Release / publish-chart (push) Failing after 14s
2025-06-04 19:18:32 +02:00
7cfe55a106
chore(ci): extend logging of add-annotations.sh
Some checks failed
Helm / helm-lint (push) Successful in 18s
Helm / helm-unittest (push) Successful in 17s
Release / publish-chart (push) Failing after 15s
2025-06-04 18:53:06 +02:00
a0bb4f2277
chore(ci): write error message to stderr
Some checks failed
Helm / helm-lint (push) Successful in 15s
Helm / helm-unittest (push) Successful in 26s
Release / publish-chart (push) Failing after 23s
2025-06-04 18:47:02 +02:00
022a4d2155
chore(deps): update dependency volker.raschek/prometheus-fail2ban-exporter-charts to v0.4.11
Some checks failed
Generate README / generate-parameters (pull_request) Successful in 28s
Helm / helm-lint (pull_request) Successful in 17s
Helm / helm-unittest (pull_request) Successful in 17s
Markdown linter / markdown-lint (pull_request) Successful in 28s
Markdown linter / markdown-link-checker (pull_request) Successful in 48s
Helm / helm-lint (push) Successful in 15s
Generate README / generate-parameters (push) Successful in 29s
Helm / helm-unittest (push) Successful in 26s
Markdown linter / markdown-link-checker (push) Successful in 34s
Release / publish-chart (push) Failing after 19s
Markdown linter / markdown-lint (push) Successful in 45s
2025-06-03 22:11:02 +00:00
130ee5d49e
refac(ci): add more logs into GitHub Actions
Some checks failed
Helm / helm-lint (push) Successful in 15s
Helm / helm-unittest (push) Successful in 14s
Release / publish-chart (push) Failing after 16s
2025-06-03 21:37:51 +02:00
be667bad1d
refac(ci): cleanup GitHub Actions
Some checks failed
Helm / helm-unittest (push) Successful in 13s
Helm / helm-lint (push) Successful in 15s
Release / publish-chart (push) Failing after 26s
2025-06-03 21:34:02 +02:00
01614570f7
fix(scripts): adapt script parameter list
Some checks failed
Helm / helm-lint (push) Successful in 14s
Helm / helm-unittest (push) Successful in 16s
Release / publish-chart (push) Failing after 14s
2025-06-03 21:32:28 +02:00
6de5e9aa48
chore(ci): use actions/checkout to fetch tags
Some checks failed
Helm / helm-lint (push) Successful in 15s
Helm / helm-unittest (push) Successful in 13s
Release / publish-chart (push) Failing after 15s
2025-06-03 21:26:55 +02:00
2740175246
fix(scripts): exit when change log file is empty
Some checks failed
Helm / helm-lint (push) Successful in 15s
Helm / helm-unittest (push) Successful in 17s
Release / publish-chart (push) Failing after 14s
2025-06-03 21:14:26 +02:00
7caedbe80d
fix(scripts): exit when change log file is empty
Some checks failed
Helm / helm-unittest (push) Waiting to run
Helm / helm-lint (push) Has been cancelled
2025-06-03 21:14:13 +02:00
eac8c552bb
chore(chart): remove change log
All checks were successful
Helm / helm-lint (push) Successful in 11s
Helm / helm-unittest (push) Successful in 15s
Release / publish-chart (push) Successful in 18s
2025-06-03 21:04:09 +02:00
c4b209a1a4
chore(ci): change arguments of add-annotations.sh
All checks were successful
Helm / helm-lint (push) Successful in 15s
Helm / helm-unittest (push) Successful in 14s
Release / publish-chart (push) Successful in 18s
2025-06-03 20:53:45 +02:00
9cd56ac7f6
chore(ci): enforce to checkout git tag
All checks were successful
Helm / helm-unittest (push) Successful in 12s
Helm / helm-lint (push) Successful in 15s
Release / publish-chart (push) Successful in 25s
2025-06-03 20:46:41 +02:00
6425930268
chore(ci): checkout tags without pruning
Some checks failed
Helm / helm-lint (push) Successful in 11s
Helm / helm-unittest (push) Successful in 15s
Release / publish-chart (push) Failing after 12s
2025-06-03 20:39:08 +02:00
69c4b3dd4d
chore(ci): checkout tags via git
Some checks failed
Helm / helm-lint (push) Successful in 11s
Helm / helm-unittest (push) Successful in 16s
Release / publish-chart (push) Failing after 14s
2025-06-03 20:33:39 +02:00
d56f5e65c7
chore(ci): fetch tags
All checks were successful
Helm / helm-unittest (push) Successful in 12s
Helm / helm-lint (push) Successful in 15s
Release / publish-chart (push) Successful in 26s
2025-06-03 20:19:07 +02:00
4229055965
chore(ci): print tags
All checks were successful
Helm / helm-unittest (push) Successful in 13s
Helm / helm-lint (push) Successful in 15s
Release / publish-chart (push) Successful in 23s
2025-06-03 20:10:37 +02:00
34edb19f8e
chore(metadata): adapt link to binary
All checks were successful
Helm / helm-lint (push) Successful in 18s
Helm / helm-unittest (push) Successful in 24s
2025-06-03 20:04:52 +02:00
61020ff224
chore(metadata): add further Artifacthub.io annotations
All checks were successful
Helm / helm-unittest (push) Successful in 12s
Helm / helm-lint (push) Successful in 14s
2025-06-03 19:47:58 +02:00
bfdec6719a
chore(license): publish under the MIT license
All checks were successful
Helm / helm-unittest (push) Successful in 12s
Helm / helm-lint (push) Successful in 15s
2025-06-03 19:41:09 +02:00
3c150df5eb
chore(ci): use short flags of cut
All checks were successful
Helm / helm-lint (push) Successful in 11s
Helm / helm-unittest (push) Successful in 16s
Release / publish-chart (push) Successful in 26s
2025-06-03 19:36:42 +02:00
fc1c83a377
feat: support Artifacthub annotations
Some checks failed
Helm / helm-lint (push) Successful in 14s
Helm / helm-unittest (push) Successful in 12s
Release / publish-chart (push) Failing after 16s
2025-06-03 19:35:01 +02:00
f6380cab84
chore(deps): update volkerraschek/helm docker tag to v3.18.2
All checks were successful
Helm / helm-lint (pull_request) Successful in 6s
Helm / helm-unittest (pull_request) Successful in 6s
Helm / helm-lint (push) Successful in 15s
Helm / helm-unittest (push) Successful in 20s
2025-06-02 22:11:06 +00:00
563acfdade
chore(deps): update docker.io/volkerraschek/helm docker tag to v3.18.2
All checks were successful
Helm / helm-lint (pull_request) Successful in 10s
Helm / helm-unittest (pull_request) Successful in 5s
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 14s
2025-06-02 19:10:06 +00:00
553d8e11b5
chore(deps): update dependency volker.raschek/prometheus-fail2ban-exporter-charts to v0.4.0
All checks were successful
Generate README / generate-parameters (pull_request) Successful in 9s
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 5s
Helm / helm-lint (pull_request) Successful in 6s
Markdown linter / markdown-link-checker (push) Successful in 9s
Markdown linter / markdown-lint (push) Successful in 8s
Generate README / generate-parameters (push) Successful in 55s
Helm / helm-unittest (pull_request) Successful in 5s
Markdown linter / markdown-lint (pull_request) Successful in 8s
Markdown linter / markdown-link-checker (pull_request) Successful in 54s
2025-05-29 19:11:22 +00:00
d8efe91340
chore(deps): update volkerraschek/helm docker tag to v3.18.1
All checks were successful
Helm / helm-lint (pull_request) Successful in 5s
Helm / helm-unittest (pull_request) Successful in 5s
Helm / helm-lint (push) Successful in 13s
Helm / helm-unittest (push) Successful in 24s
2025-05-29 16:10:47 +00:00
5833d4de38
chore(deps): update docker.io/volkerraschek/helm docker tag to v3.18.1
All checks were successful
Helm / helm-unittest (pull_request) Successful in 5s
Helm / helm-lint (pull_request) Successful in 40s
Helm / helm-lint (push) Successful in 6s
Helm / helm-unittest (push) Successful in 14s
2025-05-29 13:14:58 +00:00
7 changed files with 168 additions and 22 deletions

114
.gitea/scripts/add-annotations.sh Executable file
View File

@ -0,0 +1,114 @@
#!/bin/bash
set -e
CHART_FILE="Chart.yaml"
if [ ! -f "${CHART_FILE}" ]; then
echo "ERROR: ${CHART_FILE} not found!" 1>&2
exit 1
fi
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)"
if [ -z "${1}" ]; then
read -p "Enter start tag [${DEFAULT_OLD_TAG}]: " OLD_TAG
if [ -z "${OLD_TAG}" ]; then
OLD_TAG="${DEFAULT_OLD_TAG}"
fi
while [ -z "$(git tag --list "${OLD_TAG}")" ]; do
echo "ERROR: Tag '${OLD_TAG}' not found!" 1>&2
read -p "Enter start tag [${DEFAULT_OLD_TAG}]: " OLD_TAG
if [ -z "${OLD_TAG}" ]; then
OLD_TAG="${DEFAULT_OLD_TAG}"
fi
done
else
OLD_TAG=${1}
if [ -z "$(git tag --list "${OLD_TAG}")" ]; then
echo "ERROR: Tag '${OLD_TAG}' not found!" 1>&2
exit 1
fi
fi
if [ -z "${2}" ]; then
read -p "Enter end tag [${DEFAULT_NEW_TAG}]: " NEW_TAG
if [ -z "${NEW_TAG}" ]; then
NEW_TAG="${DEFAULT_NEW_TAG}"
fi
while [ -z "$(git tag --list "${NEW_TAG}")" ]; do
echo "ERROR: Tag '${NEW_TAG}' not found!" 1>&2
read -p "Enter end tag [${DEFAULT_NEW_TAG}]: " NEW_TAG
if [ -z "${NEW_TAG}" ]; then
NEW_TAG="${DEFAULT_NEW_TAG}"
fi
done
else
NEW_TAG=${2}
if [ -z "$(git tag --list "${NEW_TAG}")" ]; then
echo "ERROR: Tag '${NEW_TAG}' not found!" 1>&2
exit 1
fi
fi
CHANGE_LOG_YAML=$(mktemp)
echo "[]" > "${CHANGE_LOG_YAML}"
function map_type_to_kind() {
case "${1}" in
feat)
echo "added"
;;
fix)
echo "fixed"
;;
chore|style|test|ci|docs|refac)
echo "changed"
;;
revert)
echo "removed"
;;
sec)
echo "security"
;;
*)
echo "skip"
;;
esac
}
COMMIT_TITLES="$(git log --pretty=format:"%s" "${OLD_TAG}..${NEW_TAG}")"
echo "INFO: Generate change log entries from ${OLD_TAG} until ${NEW_TAG}"
while IFS= read -r line; do
if [[ "${line}" =~ ^([a-zA-Z]+)(\([^\)]+\))?\:\ (.+)$ ]]; then
TYPE="${BASH_REMATCH[1]}"
KIND=$(map_type_to_kind "${TYPE}")
if [ "${KIND}" == "skip" ]; then
continue
fi
DESC="${BASH_REMATCH[3]}"
echo "- ${KIND}: ${DESC}"
jq --arg kind changed --arg description "$DESC" '. += [ $ARGS.named ]' < ${CHANGE_LOG_YAML} > ${CHANGE_LOG_YAML}.new
mv ${CHANGE_LOG_YAML}.new ${CHANGE_LOG_YAML}
fi
done <<< "${COMMIT_TITLES}"
if [ -s "${CHANGE_LOG_YAML}" ]; then
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}"
else
echo "ERROR: Changelog file is empty: ${CHANGE_LOG_YAML}" 1>&2
exit 1
fi
rm "${CHANGE_LOG_YAML}"

View File

@ -13,7 +13,7 @@ on:
jobs: jobs:
helm-lint: helm-lint:
container: container:
image: docker.io/volkerraschek/helm:3.18.0 image: docker.io/volkerraschek/helm:3.18.2
runs-on: runs-on:
- ubuntu-latest - ubuntu-latest
steps: steps:
@ -28,7 +28,7 @@ jobs:
helm-unittest: helm-unittest:
container: container:
image: docker.io/volkerraschek/helm:3.18.0 image: docker.io/volkerraschek/helm:3.18.2
runs-on: runs-on:
- ubuntu-latest - ubuntu-latest
steps: steps:

View File

@ -8,18 +8,26 @@ on:
jobs: jobs:
publish-chart: publish-chart:
container: container:
image: docker.io/volkerraschek/helm:3.18.0 image: docker.io/volkerraschek/helm:3.18.2
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Install tooling - name: Install tooling
run: | run: |
apk update apk update
apk add git npm apk add git npm jq yq
- uses: actions/checkout@v4 - uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Add Artifacthub.io annotations
run: |
NEW_TAG="$(git tag --sort=-version:refname | head -n 1)"
OLD_TAG="$(git tag --sort=-version:refname | head -n 2 | tail -n 1)"
.gitea/scripts/add-annotations.sh "${OLD_TAG}" "${NEW_TAG}"
- name: Package chart - name: Package chart
env: env:
HELM_REPO_NAME: upload
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_USERNAME: ${{ secrets.CHARTMUSEUM_USERNAME }}
@ -43,4 +51,4 @@ jobs:
# gitea # gitea
helm repo add --username ${REPOSITORY_OWNER} --password ${GITEA_PACKAGE_REGISTRY_TOKEN} gitea ${GITEA_SERVER_URL}/api/packages/${REPOSITORY_OWNER}/helm 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 cm-push ${REPOSITORY_NAME}-${PACKAGE_VERSION}.tgz gitea
helm repo remove gitea helm repo remove gitea

View File

@ -1,18 +1,21 @@
annotations:
artifacthub.io/links: |
- name: Prometheus Fail2Ban exporter (binary)
url: https://git.cryptic.systems/volker.raschek/prometheus-fail2ban-exporter
- name: support
url: https://git.cryptic.systems/volker.raschek/prometheus-fail2ban-exporter-charts/issues
apiVersion: v2 apiVersion: v2
name: prometheus-fail2ban-exporter
description: Prometheus metric exporter for Fail2Ban
type: application
version: "0.1.0"
appVersion: "0.1.1" appVersion: "0.1.1"
description: Prometheus metric exporter for Fail2Ban
# icon: https://annotations.example.com/icon.png # icon: https://annotations.example.com/icon.png
keywords: keywords:
- prometheus - prometheus
- prometheus-exporter - prometheus-exporter
- prometheus-fail2ban-exporter - prometheus-fail2ban-exporter
- fail2ban-exporter - fail2ban-exporter
name: prometheus-fail2ban-exporter
sources: sources:
- https://git.cryptic.systems/volker.raschek/prometheus-fail2ban-exporter-charts - https://git.cryptic.systems/volker.raschek/prometheus-fail2ban-exporter-charts
- https://git.cryptic.systems/volker.raschek/prometheus-fail2ban-exporter - https://git.cryptic.systems/volker.raschek/prometheus-fail2ban-exporter
type: application
version: "0.4.1"

21
LICENSE Normal file
View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2025 Markus Pesch
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -4,7 +4,7 @@ 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.18.0 # renovate: datasource=docker registryUrl=https://docker.io depName=volkerraschek/helm HELM_IMAGE_VERSION?=3.18.2 # renovate: datasource=docker registryUrl=https://docker.io depName=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

View File

@ -42,7 +42,7 @@ version of the chart must be in sync with the `values.yaml`. Newer *minor* versi
versions can break something! versions can break something!
```bash ```bash
CHART_VERSION=0.3.1 CHART_VERSION=0.4.16
helm show values prometheus-exporters/prometheus-fail2ban-exporter --version "${CHART_VERSION}" > values.yaml helm show values prometheus-exporters/prometheus-fail2ban-exporter --version "${CHART_VERSION}" > values.yaml
``` ```