1 Commits

Author SHA1 Message Date
42a0807255 chore(deps): update docker.io/library/node docker tag to v24.2.0
All checks were successful
Helm / helm-lint (push) Successful in 14s
Helm / helm-unittest (push) Successful in 15s
Helm / helm-unittest (pull_request) Successful in 16s
Helm / helm-lint (pull_request) Successful in 23s
2025-06-10 01:10:33 +00:00
40 changed files with 102 additions and 155 deletions

View File

@@ -15,7 +15,7 @@ on:
jobs:
generate-parameters:
container:
image: docker.io/library/node:24.10.0-alpine
image: docker.io/library/node:24.1.0-alpine
runs-on:
- ubuntu-latest
steps:
@@ -23,7 +23,7 @@ jobs:
run: |
apk update
apk add git npm
- uses: actions/checkout@v5.0.0
- uses: actions/checkout@v4.2.2
- name: Generate parameter section in README
run: |
npm install

View File

@@ -13,7 +13,7 @@ on:
jobs:
helm-lint:
container:
image: docker.io/volkerraschek/helm:3.19.0
image: docker.io/volkerraschek/helm:3.18.2
runs-on:
- ubuntu-latest
steps:
@@ -21,14 +21,14 @@ jobs:
run: |
apk update
apk add git npm
- uses: actions/checkout@v5.0.0
- uses: actions/checkout@v4.2.2
- name: Lint helm files
run: |
helm lint --values values.yaml .
helm-unittest:
container:
image: docker.io/volkerraschek/helm:3.19.0
image: docker.io/volkerraschek/helm:3.18.2
runs-on:
- ubuntu-latest
steps:
@@ -36,7 +36,7 @@ jobs:
run: |
apk update
apk add git npm
- uses: actions/checkout@v5.0.0
- uses: actions/checkout@v4.2.2
- name: Unittest
run: |
helm unittest --strict --file 'unittests/**/*.yaml' ./

View File

@@ -15,7 +15,7 @@ on:
jobs:
markdown-link-checker:
container:
image: docker.io/library/node:24.10.0-alpine
image: docker.io/library/node:24.1.0-alpine
runs-on:
- ubuntu-latest
steps:
@@ -23,7 +23,7 @@ jobs:
run: |
apk update
apk add git npm
- uses: actions/checkout@v5.0.0
- uses: actions/checkout@v4.2.2
- name: Verify links in markdown files
run: |
npm install
@@ -31,7 +31,7 @@ jobs:
markdown-lint:
container:
image: docker.io/library/node:24.10.0-alpine
image: docker.io/library/node:24.1.0-alpine
runs-on:
- ubuntu-latest
steps:
@@ -39,7 +39,7 @@ jobs:
run: |
apk update
apk add git
- uses: actions/checkout@v5.0.0
- uses: actions/checkout@v4.2.2
- name: Lint markdown files
run: |
npm install

View File

@@ -8,7 +8,7 @@ on:
jobs:
publish-chart:
container:
image: docker.io/volkerraschek/helm:3.19.0
image: docker.io/volkerraschek/helm:3.18.2
runs-on: ubuntu-latest
steps:
- name: Install packages via apk
@@ -16,7 +16,7 @@ jobs:
apk update
apk add git npm jq yq
- uses: actions/checkout@v5.0.0
- uses: actions/checkout@v4
with:
fetch-depth: 0

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

@@ -0,0 +1,8 @@
{
"yaml.schemas": {
"https://raw.githubusercontent.com/helm-unittest/helm-unittest/v0.5.2/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=docker.io/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}
# NODE_IMAGE
NODE_IMAGE_REGISTRY_HOST?=docker.io
NODE_IMAGE_REPOSITORY?=library/node
NODE_IMAGE_VERSION?=24.10.0-alpine # renovate: datasource=docker registryUrl=https://docker.io depName=docker.io/library/node packageName=library/node
NODE_IMAGE_VERSION?=24.2.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

@@ -14,10 +14,7 @@ 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**, 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 chart is tested for deployment scenarios with **ArgoCD**.
## Helm: configuration and installation
@@ -34,8 +31,7 @@ separate [chapter](#argocd).
```bash
helm repo add prometheus-exporters https://charts.cryptic.systems/prometheus-exporters
helm repo update
CHART_VERSION=0.4.21
helm install --version "${CHART_VERSION}" prometheus-fail2ban-exporter prometheus-exporters/prometheus-fail2ban-exporter \
helm install prometheus-fail2ban-exporter prometheus-exporters/prometheus-fail2ban-exporter \
--set 'prometheus.metrics.enabled=true' \
--set 'prometheus.metrics.serviceMonitor.enabled=true'
```
@@ -47,7 +43,7 @@ versions can break something!
```bash
CHART_VERSION=0.4.21
helm show values --version "${CHART_VERSION}" prometheus-exporters/prometheus-fail2ban-exporter > values.yaml
helm show values prometheus-exporters/prometheus-fail2ban-exporter --version "${CHART_VERSION}" > values.yaml
```
A complete list of available helm chart versions can be displayed via the following command:
@@ -84,8 +80,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.4.21
helm install --version "${CHART_VERSION}" prometheus-fail2ban-exporter prometheus-exporters/prometheus-fail2ban-exporter \
helm install prometheus-fail2ban-exporter prometheus-exporters/prometheus-fail2ban-exporter \
--set 'prometheus.metrics.enabled=true' \
--set 'prometheus.metrics.serviceMonitor.enabled=true' \
--set 'daemonSet.fail2banExporter.env.name=GOMAXPROCS' \
@@ -149,8 +144,7 @@ the Grafana container file system so that it is subsequently available to the us
makes this possible.
```bash
CHART_VERSION=0.4.21
helm install --version "${CHART_VERSION}" prometheus-fail2ban-exporter prometheus-exporters/prometheus-fail2ban-exporter \
helm install prometheus-fail2ban-exporter prometheus-exporters/prometheus-fail2ban-exporter \
--set 'grafana.enabled=true'
```
@@ -204,35 +198,6 @@ 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

32
package-lock.json generated
View File

@@ -17,9 +17,9 @@
}
},
"node_modules/@bitnami/readme-generator-for-helm": {
"version": "2.7.2",
"resolved": "https://registry.npmjs.org/@bitnami/readme-generator-for-helm/-/readme-generator-for-helm-2.7.2.tgz",
"integrity": "sha512-7eXyJzxQTQj2ajpHlIhadciCCYWOqN8ieaweU25bStHOZowQ2c2CQyjO/bX4gxIf73LoRKxHhEYgLTllJY9SIw==",
"version": "2.7.0",
"resolved": "https://registry.npmjs.org/@bitnami/readme-generator-for-helm/-/readme-generator-for-helm-2.7.0.tgz",
"integrity": "sha512-fVxExmcuJ9NZb9ZE9OW3+lG8pUlXJAJdaO8UukV3A7WzYu4qOTr03MXPH9Gt5e/6mo3x4WYI/cXBksKfS0qn3w==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -1042,9 +1042,9 @@
}
},
"node_modules/link-check": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/link-check/-/link-check-5.5.0.tgz",
"integrity": "sha512-CpMk2zMfyEMdDvFG92wO5pU/2I/wbw72/9pvUFhU9cDKkwhmVlPuvxQJzd/jXA2iVOgNgPLnS5zyOLW7OzNpdA==",
"version": "5.4.0",
"resolved": "https://registry.npmjs.org/link-check/-/link-check-5.4.0.tgz",
"integrity": "sha512-0Pf4xBVUnwJdbDgpBlhHNmWDtbVjHTpIFs+JaBuIsC9PKRxjv4KMGCO2Gc8lkVnqMf9B/yaNY+9zmMlO5MyToQ==",
"dev": true,
"license": "ISC",
"dependencies": {
@@ -1101,16 +1101,16 @@
}
},
"node_modules/markdown-link-check": {
"version": "3.14.0",
"resolved": "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.14.0.tgz",
"integrity": "sha512-JmzUyLS1XUlLO3NyT7lSXgkrjB3Q7hUhQxQOs64AU/bQzTTPINhBHstAAwV5QQbvb5aKLeQ0IecLn6eozae4Sw==",
"version": "3.13.7",
"resolved": "https://registry.npmjs.org/markdown-link-check/-/markdown-link-check-3.13.7.tgz",
"integrity": "sha512-Btn3HU8s2Uyh1ZfzmyZEkp64zp2+RAjwfQt1u4swq2Xa6w37OW0T2inQZrkSNVxDSa2jSN2YYhw/JkAp5jF1PQ==",
"dev": true,
"license": "ISC",
"dependencies": {
"async": "^3.2.6",
"chalk": "^5.3.0",
"commander": "^14.0.0",
"link-check": "^5.5.0",
"commander": "^13.1.0",
"link-check": "^5.4.0",
"markdown-link-extractor": "^4.0.2",
"needle": "^3.3.1",
"progress": "^2.0.3",
@@ -1121,16 +1121,6 @@
"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

@@ -9,7 +9,6 @@
],
"customManagers": [
{
"customType": "regex",
"fileMatch": [
"^Chart\\.yaml$"
],
@@ -22,10 +21,9 @@
"versioningTemplate": "semver"
},
{
"customType": "regex",
"fileMatch": ["^README\\.md$"],
"matchStrings": [
"CHART_VERSION=(?<currentValue>.*)"
"VERSION=(?<currentValue>.*)"
],
"depNameTemplate": "volker.raschek/prometheus-fail2ban-exporter-charts",
"packageNameTemplate": "https://git.cryptic.systems/volker.raschek/prometheus-fail2ban-exporter-charts",
@@ -34,20 +32,6 @@
}
],
"packageRules": [
{
"groupName": "Update docker.io/volkerraschek/helm",
"matchDepNames": [
"docker.io/volkerraschek/helm",
"volkerraschek/helm"
]
},
{
"groupName": "Update docker.io/library/node",
"matchDepNames": [
"docker.io/library/node",
"library/node"
]
},
{
"addLabels": [
"renovate/automerge",

View File

@@ -16,7 +16,7 @@
{{- $secret := default (dict "data" (dict)) (lookup "v1" "Secret" .Release.Namespace .Values.config.webConfig.existingSecret.secretName ) }}
checksum/secret-web-config: {{ print $secret.spec | sha256sum }}
{{- else }}
checksum/secret-web-config: {{ include (print $.Template.BasePath "/secretWebConfig.yaml") . | sha256sum }}
checksum/secret-web-config: {{ include (print $.Template.BasePath "/prometheus-fail2ban-exporter/secretWebConfig.yaml") . | sha256sum }}
{{- end }}
{{- end }}

View File

@@ -6,7 +6,7 @@ release:
name: prometheus-fail2ban-exporter-unittest
namespace: testing
templates:
- templates/configMapGrafanaDashboardFail2BanExporter.yaml
- templates/prometheus-fail2ban-exporter/configMapGrafanaDashboardFail2BanExporter.yaml
tests:
- it: Rendering fail2banExporter
asserts:

View File

@@ -6,23 +6,23 @@ release:
name: prometheus-fail2ban-exporter-unittest
namespace: testing
templates:
- templates/daemonSet.yaml
- templates/secretWebConfig.yaml
- templates/prometheus-fail2ban-exporter/daemonSet.yaml
- templates/prometheus-fail2ban-exporter/secretWebConfig.yaml
tests:
- it: Rendering default
asserts:
- hasDocuments:
count: 1
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- containsDocument:
apiVersion: apps/v1
kind: DaemonSet
name: prometheus-fail2ban-exporter-unittest
namespace: testing
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: metadata.annotations
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: metadata.labels
value:
@@ -31,10 +31,10 @@ tests:
app.kubernetes.io/name: prometheus-fail2ban-exporter
app.kubernetes.io/version: 0.1.0
helm.sh/chart: prometheus-fail2ban-exporter-0.1.0
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- exists:
path: spec.template.metadata.annotations.checksum/secret-web-config
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.metadata.labels
value:
@@ -43,19 +43,19 @@ tests:
app.kubernetes.io/name: prometheus-fail2ban-exporter
app.kubernetes.io/version: 0.1.0
helm.sh/chart: prometheus-fail2ban-exporter-0.1.0
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.affinity
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.containers[0].envFrom
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.containers[0].args
value:
# - --web.config.file=/etc/prometheus-fail2ban-exporter/config.d/webConfig.yaml
- --web.listen-address=:9191
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.containers[0].volumeMounts
value:
@@ -63,7 +63,7 @@ tests:
name: socket
- mountPath: /etc/prometheus-fail2ban-exporter/config.d
name: config-d
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.volumes
value:
@@ -74,59 +74,59 @@ tests:
- name: config-d
secret:
secretName: prometheus-fail2ban-exporter-unittest-web-config
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.containers[0].image
value: git.cryptic.systems/volker.raschek/prometheus-fail2ban-exporter:0.1.0
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.containers[0].imagePullPolicy
value: IfNotPresent
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.containers[0].resources
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.containers[0].securityContext
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.dnsConfig
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.dnsPolicy
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.hostname
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.hostNetwork
value: false
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.imagePullSecrets
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.nodeSelector
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.priorityClassName
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.restartPolicy
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.subdomain
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.terminationGracePeriodSeconds
value: 60
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.tolerations
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- notExists:
path: spec.template.spec.topologySpreadConstraints
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.updateStrategy
value:
@@ -134,7 +134,7 @@ tests:
maxSurge: 1
maxUnavailable: 0
type: "RollingUpdate"
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test custom affinity
set:
@@ -161,7 +161,7 @@ tests:
values:
- antarctica-east1
- antarctica-west1
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test additional arguments
set:
@@ -176,7 +176,7 @@ tests:
- --web.listen-address=:9191
- --foo=bar
- --bar=foo
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test custom imageRegistry and imageRepository
set:
@@ -186,7 +186,7 @@ tests:
- equal:
path: spec.template.spec.containers[0].image
value: registry.example.local/path/special/prometheus-fail2ban-exporter:0.1.0
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test custom imagePullPolicy
set:
@@ -195,7 +195,7 @@ tests:
- equal:
path: spec.template.spec.containers[0].imagePullPolicy
value: Always
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test config.webConfig.existingSecret
set:
@@ -209,7 +209,7 @@ tests:
name: socket
- mountPath: /etc/prometheus-fail2ban-exporter/config.d
name: config-d
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.volumes
value:
@@ -220,7 +220,7 @@ tests:
- name: config-d
secret:
secretName: web-config-secret
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test custom resource limits and requests
set:
@@ -240,7 +240,7 @@ tests:
resourceFieldRef:
divisor: "1"
resource: limits.cpu
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.containers[0].resources
value:
@@ -250,7 +250,7 @@ tests:
requests:
cpu: 25m
memory: 100MB
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test custom securityContext
set:
@@ -277,7 +277,7 @@ tests:
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 1000
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test dnsConfig
set:
@@ -292,7 +292,7 @@ tests:
nameservers:
- "8.8.8.8"
- "8.8.4.4"
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test dnsPolicy
set:
@@ -301,7 +301,7 @@ tests:
- equal:
path: spec.template.spec.dnsPolicy
value: ClusterFirst
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test hostNetwork, hostname, subdomain
set:
@@ -312,15 +312,15 @@ tests:
- equal:
path: spec.template.spec.hostNetwork
value: true
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.hostname
value: pg-exporter
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.subdomain
value: exporters.internal
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test imagePullSecrets
set:
@@ -333,7 +333,7 @@ tests:
value:
- name: my-pull-secret
- name: my-special-secret
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test nodeSelector
set:
@@ -344,7 +344,7 @@ tests:
path: spec.template.spec.nodeSelector
value:
foo: bar
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test priorityClassName
set:
@@ -353,7 +353,7 @@ tests:
- equal:
path: spec.template.spec.priorityClassName
value: my-priority
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test restartPolicy
set:
@@ -362,7 +362,7 @@ tests:
- equal:
path: spec.template.spec.restartPolicy
value: Always
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test terminationGracePeriodSeconds
set:
@@ -371,7 +371,7 @@ tests:
- equal:
path: spec.template.spec.terminationGracePeriodSeconds
value: 120
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test tolerations
set:
@@ -388,7 +388,7 @@ tests:
operator: Equal
value: fail2ban
effect: NoSchedule
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test topologySpreadConstraints
set:
@@ -407,7 +407,7 @@ tests:
labelSelector:
matchLabels:
app.kubernetes.io/instance: prometheus-fail2ban-exporter
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- it: Test additional volumeMounts and volumes
set:
@@ -426,7 +426,7 @@ tests:
mountPath: /usr/lib/prometheus-fail2ban-exporter/data
- name: config-d
mountPath: /etc/prometheus-fail2ban-exporter/config.d
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml
- equal:
path: spec.template.spec.volumes
value:
@@ -436,4 +436,4 @@ tests:
- name: config-d
secret:
secretName: prometheus-fail2ban-exporter-unittest-web-config
template: templates/daemonSet.yaml
template: templates/prometheus-fail2ban-exporter/daemonSet.yaml

View File

@@ -6,7 +6,7 @@ release:
name: prometheus-fail2ban-exporter-unittest
namespace: testing
templates:
- templates/ingress.yaml
- templates/prometheus-fail2ban-exporter/ingress.yaml
tests:
- it: Skip ingress by default.
asserts:

View File

@@ -6,7 +6,7 @@ release:
name: prometheus-fail2ban-exporter-unittest
namespace: testing
templates:
- templates/networkPolicies.yaml
- templates/prometheus-fail2ban-exporter/networkPolicies.yaml
tests:
- it: Skip networkPolicies in general disabled.
set:

View File

@@ -6,7 +6,7 @@ release:
name: prometheus-fail2ban-exporter-unittest
namespace: testing
templates:
- templates/podMonitor.yaml
- templates/prometheus-fail2ban-exporter/podMonitor.yaml
tests:
- it: Skip podMonitor when metrics are disabled.
set:

View File

@@ -6,7 +6,7 @@ release:
name: prometheus-fail2ban-exporter-unittest
namespace: testing
templates:
- templates/secretWebConfig.yaml
- templates/prometheus-fail2ban-exporter/secretWebConfig.yaml
tests:
- it: Rendering default secret.
asserts:

View File

@@ -6,7 +6,7 @@ release:
name: prometheus-fail2ban-exporter-unittest
namespace: testing
templates:
- templates/serviceAccount.yaml
- templates/prometheus-fail2ban-exporter/serviceAccount.yaml
tests:
- it: Skip rendering.
set:

View File

@@ -6,7 +6,7 @@ release:
name: prometheus-fail2ban-exporter-unittest
namespace: testing
templates:
- templates/serviceMonitorHTTP.yaml
- templates/prometheus-fail2ban-exporter/serviceMonitorHTTP.yaml
tests:
- it: Skip serviceMonitor when service is disabled.
set:

View File

@@ -6,7 +6,7 @@ release:
name: prometheus-fail2ban-exporter-unittest
namespace: testing
templates:
- templates/serviceHTTP.yaml
- templates/prometheus-fail2ban-exporter/serviceHTTP.yaml
tests:
- it: Skip service when disabled.
set: