63 Commits

Author SHA1 Message Date
8b5380b3aa chore(deps): update docker.io/library/node docker tag to v25
All checks were successful
Helm / helm-lint (push) Successful in 10s
Helm / helm-unittest (push) Successful in 16s
Helm / helm-lint (pull_request) Successful in 11s
Helm / helm-unittest (pull_request) Successful in 17s
2026-04-29 21:21:40 +00:00
12cc33c169 Merge pull request 'chore(deps): update azure/setup-helm action to v5' (#7) from renovate/azure-setup-helm-5.x into master
All checks were successful
Helm / helm-lint (push) Successful in 12s
Helm / helm-unittest (push) Successful in 26s
2026-04-29 21:18:55 +00:00
2aa0a2aa36 chore(deps): update azure/setup-helm action to v5
All checks were successful
Helm / helm-lint (push) Successful in 10s
Generate README / generate-parameters (push) Successful in 21s
Helm / helm-unittest (push) Successful in 27s
Markdown linter / markdown-link-checker (push) Successful in 29s
Helm / helm-lint (pull_request) Successful in 5s
Helm / helm-unittest (pull_request) Successful in 14s
Markdown linter / markdown-lint (push) Successful in 32s
2026-04-29 18:24:46 +00:00
06136e6cf6 Merge pull request 'chore(deps): update docker.io/curlimages/curl docker tag to v8.20.0' (#10) from renovate/container-images into master
All checks were successful
Generate README / generate-parameters (push) Successful in 16s
Helm / helm-lint (push) Successful in 5s
Helm / helm-unittest (push) Successful in 12s
Markdown linter / markdown-link-checker (push) Successful in 18s
Markdown linter / markdown-lint (push) Successful in 11s
2026-04-29 15:22:39 +00:00
5b67733bff chore(deps): update docker.io/curlimages/curl docker tag to v8.20.0
All checks were successful
Helm / helm-lint (push) Successful in 7s
Helm / helm-unittest (push) Successful in 14s
Generate README / generate-parameters (push) Successful in 33s
Markdown linter / markdown-link-checker (push) Successful in 18s
Generate README / generate-parameters (pull_request) Successful in 18s
Markdown linter / markdown-lint (push) Successful in 31s
Helm / helm-lint (pull_request) Successful in 6s
Markdown linter / markdown-link-checker (pull_request) Successful in 19s
Helm / helm-unittest (pull_request) Successful in 23s
Markdown linter / markdown-lint (pull_request) Successful in 13s
2026-04-29 15:22:27 +00:00
2ce62a6ceb Merge pull request 'chore(deps): update actions/checkout action to v6' (#6) from renovate/actions-checkout-6.x into master
All checks were successful
Helm / helm-lint (push) Successful in 9s
Helm / helm-unittest (push) Successful in 11s
2026-04-20 16:18:17 +00:00
d819968ee5 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 12s
Helm / helm-lint (pull_request) Successful in 10s
Helm / helm-unittest (pull_request) Successful in 11s
2026-04-20 16:18:06 +00:00
684ba1b51b Merge pull request 'chore(deps): update docker.io/library/node docker tag to v24.15.0' (#5) from renovate/update-docker.iolibrarynode into master
Some checks failed
Helm / helm-lint (push) Has been cancelled
Helm / helm-unittest (push) Has been cancelled
2026-04-20 16:17:20 +00:00
03e08c3adc chore(deps): update docker.io/library/node docker tag to v24.15.0
All checks were successful
Helm / helm-lint (push) Successful in 9s
Helm / helm-lint (pull_request) Successful in 9s
Helm / helm-unittest (push) Successful in 11s
Helm / helm-unittest (pull_request) Successful in 20s
2026-04-20 16:17:05 +00:00
1b69d01351 Merge pull request 'chore(deps): update dependency markdownlint-cli to ^0.48.0' (#4) from renovate/markdownlint-cli-0.x into master
Some checks failed
Helm / helm-lint (push) Has been cancelled
Helm / helm-unittest (push) Has been cancelled
2026-04-20 16:16:43 +00:00
50ac909a96 chore(deps): update dependency markdownlint-cli to ^0.48.0
All checks were successful
Helm / helm-lint (push) Successful in 9s
Helm / helm-unittest (push) Successful in 11s
Helm / helm-lint (pull_request) Successful in 11s
Helm / helm-unittest (pull_request) Successful in 10s
2026-04-20 16:16:35 +00:00
6aad4d9ad6 Merge pull request 'chore(deps): update container images' (#2) from renovate/container-images into master
Some checks failed
Helm / helm-lint (push) Has been cancelled
Helm / helm-unittest (push) Has been cancelled
Generate README / generate-parameters (push) Successful in 15s
Markdown linter / markdown-link-checker (push) Successful in 16s
Markdown linter / markdown-lint (push) Successful in 29s
2026-04-20 16:15:50 +00:00
d8b6121b97 chore(deps): update container images
All checks were successful
Helm / helm-lint (push) Successful in 10s
Generate README / generate-parameters (push) Successful in 26s
Helm / helm-unittest (push) Successful in 19s
Markdown linter / markdown-link-checker (push) Successful in 16s
Generate README / generate-parameters (pull_request) Successful in 14s
Helm / helm-lint (pull_request) Successful in 5s
Helm / helm-unittest (pull_request) Successful in 12s
Markdown linter / markdown-lint (push) Successful in 47s
Markdown linter / markdown-link-checker (pull_request) Successful in 15s
Markdown linter / markdown-lint (pull_request) Successful in 31s
2026-04-20 16:15:40 +00:00
4dff059be8 Merge pull request 'chore(deps): update dependency helm-unittest/helm-unittest to v1.0.3' (#1) from renovate/update-helm-plugin-'unittest' into master
Some checks failed
Helm / helm-lint (push) Has been cancelled
Helm / helm-unittest (push) Has been cancelled
2026-04-20 16:15:27 +00:00
c60afc60f2 chore(deps): update dependency helm-unittest/helm-unittest to v1.0.3
All checks were successful
Helm / helm-lint (push) Successful in 4s
Helm / helm-lint (pull_request) Successful in 4s
Helm / helm-unittest (push) Successful in 20s
Helm / helm-unittest (pull_request) Successful in 11s
2026-04-20 16:15:20 +00:00
cac5f03084 chore(deps): rollback docker docker.io/volkerraschek/helm to 3.19.2
All checks were successful
Helm / helm-unittest (push) Successful in 20s
Helm / helm-lint (push) Successful in 34s
2025-11-30 13:38:34 +01:00
7614055979 Merge pull request 'chore(deps): update dependency helm/helm to v4.0.1' (#48) from renovate/helm-helm-4.x into master
Reviewed-on: #48
2025-11-30 11:23:22 +00:00
302b348ea4 Merge branch 'master' into renovate/helm-helm-4.x 2025-11-30 11:22:58 +00:00
722f1139cd Merge pull request 'chore(deps): update docker.io/volkerraschek/helm docker tag to v4' (#43) from renovate/major-update-docker.iovolkerraschekhelm into master
Reviewed-on: #43
2025-11-30 11:22:39 +00:00
9ad1ceacec Merge pull request 'chore(deps): update azure/setup-helm action to v4.3.1' (#47) from renovate/actions into master 2025-11-30 11:13:15 +00:00
7d6487b164 chore(deps): update docker.io/volkerraschek/helm docker tag to v4 2025-11-30 11:12:01 +00:00
55c3c9ca04 chore(deps): update dependency helm/helm to v4.0.1 2025-11-30 11:11:50 +00:00
94cc9a28fd chore(deps): update azure/setup-helm action to v4.3.1 2025-11-30 11:11:35 +00:00
e2366f316b fix(ci): replace volkerraschek/helm with native GitHub Actions 2025-11-30 11:17:29 +01:00
3642b501d5 fix(ci): define runs-on as string 2025-11-30 10:46:34 +01:00
96e604f79e docs(README): adapt stakaters reloader example 2025-11-30 10:46:28 +01:00
c066cbfca7 Merge pull request 'chore(deps): update dependency markdown-link-check to v3.14.2' (#46) from renovate/markdown-link-check-3.x-lockfile into master 2025-11-19 17:12:16 +00:00
86b767f83c chore(deps): update dependency markdown-link-check to v3.14.2 2025-11-19 17:11:48 +00:00
0d440118c6 Merge pull request 'chore(deps): update dependency markdownlint-cli to ^0.46.0' (#45) from renovate/markdownlint-cli-0.x into master 2025-11-19 05:12:22 +00:00
f2bdcf16c5 chore(deps): update dependency markdownlint-cli to ^0.46.0 2025-11-19 05:11:40 +00:00
a015682128 Merge pull request 'chore(deps): update actions/checkout action to v5.0.1' (#44) from renovate/actions into master 2025-11-17 18:06:43 +00:00
7ef7293930 chore(deps): update actions/checkout action to v5.0.1 2025-11-17 17:16:13 +00:00
24799f602b Merge pull request 'chore(deps): update docker.io/volkerraschek/helm docker tag to v3.19.2' (#42) from renovate/update-docker.iovolkerraschekhelm into master 2025-11-12 21:22:51 +00:00
34f8a17689 chore(deps): update docker.io/volkerraschek/helm docker tag to v3.19.2 2025-11-12 21:21:34 +00:00
876cf24376 Merge pull request 'chore(deps): update docker.io/library/node docker tag to v24.11.1' (#41) from renovate/update-docker.iolibrarynode into master 2025-11-12 20:12:33 +00:00
4ef9ba336f chore(deps): update docker.io/library/node docker tag to v24.11.1 2025-11-12 20:12:08 +00:00
7bcda8878c Merge pull request 'chore(deps): update docker.io/curlimages/curl docker tag to v8.17.0' (#40) from renovate/container-images into master 2025-11-05 14:11:07 +00:00
a0d71677f6 chore(deps): update docker.io/curlimages/curl docker tag to v8.17.0 2025-11-05 14:10:02 +00:00
d957d690d9 Merge pull request 'chore(deps): update docker.io/library/node docker tag to v24.11.0' (#39) from renovate/update-docker.iolibrarynode into master 2025-10-29 02:12:00 +00:00
52696ae471 chore(deps): update docker.io/library/node docker tag to v24.11.0 2025-10-29 02:11:25 +00:00
16a7fa16a9 Merge pull request 'chore(deps): update dependency volker.raschek/reposilite-charts to v1' (#38) from renovate/volker.raschek-reposilite-charts-1.x into master 2025-10-22 16:24:49 +00:00
19dc6b4aef chore(deps): update dependency volker.raschek/reposilite-charts to v1 2025-10-22 16:23:39 +00:00
0dd267a0df docs(README): add an ArgoCD application resource as an example
Some checks failed
Release / publish-chart (push) Failing after 20s
2025-10-22 17:38:24 +02:00
d790cd3ec4 fix(secret): enforce basic auth credentials
This patch remove generation of a random string for the username and password of
the basic auth credentials.

The problem with the random generated basic auth credentials is, that this leads
to a new shasum of the secret. GitOps tools like ArgoCD detects a drift trigger
a rolling update.

To avoid this must now the basic auth credentials be defined to enable
prometheus metrics.
2025-10-22 17:14:53 +02:00
d2c329e1be docs(README): adapt jq expression to ignore reloader annotation 2025-10-21 22:32:23 +02:00
db5e38cef1 docs(README): adapt description of RespectIgnoreDifferences 2025-10-21 22:28:23 +02:00
1fe7bc604e docs(README): adjust highlighted text 2025-10-21 22:26:15 +02:00
fa43188e03 docs(README): add tip how to ignore stakater's reloader annotations 2025-10-21 22:22:26 +02:00
99ed88068a docs(README): add further jqPathExpressions if stakaters reloader is configured 2025-10-19 19:08:18 +02:00
95fd713da6 fix(renovate): update packageRule for helm-unittest/helm-unittest 2025-10-16 22:01:54 +02:00
671a635627 fix(renovate): update packageRule for helm-unittest/helm-unittest 2025-10-16 21:39:56 +02:00
13fbb0ecc0 fix(vscode): add values.schema.json for helm unittest 2025-10-16 21:11:51 +02:00
8835a8cde1 Merge pull request 'chore(deps): update dependency markdown-link-check to v3.14.1' (#34) from renovate/markdown-link-check-3.x-lockfile into master 2025-10-11 19:15:37 +00:00
7d479fe629 chore(deps): update dependency markdown-link-check to v3.14.1 2025-10-11 19:15:03 +00:00
edacc04893 docs(README): ArgoCD configuration note on checksum annotations 2025-10-11 14:04:18 +02:00
3c64ebfef4 Merge pull request 'chore(deps): update dependency markdown-link-check to v3.14.0' (#33) from renovate/markdown-link-check-3.x-lockfile into master 2025-10-10 19:17:38 +00:00
15d2c31512 chore(deps): update dependency markdown-link-check to v3.14.0 2025-10-10 19:16:57 +00:00
93ef09b878 Merge pull request 'chore(deps): update docker.io/library/node docker tag to v24.10.0' (#32) from renovate/update-docker.iolibrarynode into master 2025-10-09 16:19:16 +00:00
b5368314d6 chore(deps): update docker.io/library/node docker tag to v24.10.0 2025-10-09 16:18:25 +00:00
60643bdaf4 fix(renovate): group docker.io/volkerraschek/helm 2025-09-30 17:40:04 +02:00
e3880f5f00 fix(renovate): group node packages 2025-09-30 17:31:36 +02:00
a20f370eaf Merge pull request 'chore(deps): update dependency volker.raschek/reposilite-charts to v0.3.0' (#31) from renovate/volker.raschek-reposilite-charts-0.x into master 2025-09-29 22:15:27 +00:00
d6de6ce37a chore(deps): update dependency volker.raschek/reposilite-charts to v0.3.0 2025-09-29 22:14:24 +00:00
18 changed files with 398 additions and 651 deletions

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.9.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@v5.0.0
apk update with:
apk add git npm version: v4.0.1 # renovate: datasource=github-releases 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@v5.0.0
apk update with:
apk add git npm version: v4.0.1 # renovate: datasource=github-releases 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.9.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.9.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

@@ -8,7 +8,7 @@ on:
jobs: jobs:
publish-chart: publish-chart:
container: container:
image: docker.io/volkerraschek/helm:3.19.0 image: docker.io/volkerraschek/helm:3.19.2
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Install packages via apk - name: Install packages via apk
@@ -16,7 +16,7 @@ jobs:
apk update apk update
apk add git npm jq yq apk add git npm jq yq
- uses: actions/checkout@v5.0.0 - uses: actions/checkout@v6.0.2
with: with:
fetch-depth: 0 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/v1.0.3/schema/helm-testsuite.json": [
"/unittests/**/*.yaml"
]
},
"yaml.schemaStore.enable": true
}

View File

@@ -5,7 +5,7 @@ annotations:
- name: support - name: support
url: https://git.cryptic.systems/volker.raschek/reposilite-charts/issues url: https://git.cryptic.systems/volker.raschek/reposilite-charts/issues
apiVersion: v2 apiVersion: v2
appVersion: "3.5.26" appVersion: "3.5.28"
description: | description: |
Lightweight and easy-to-use repository management software Lightweight and easy-to-use repository management software
dedicated for the Maven based artifacts in the JVM ecosystem dedicated for the Maven based artifacts in the JVM ecosystem

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?=24.11.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

@@ -37,7 +37,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.2.0 CHART_VERSION=1.0.0
helm show values volker.raschek/reposilite --version "${CHART_VERSION}" > values.yaml helm show values volker.raschek/reposilite --version "${CHART_VERSION}" > values.yaml
``` ```
@@ -51,7 +51,7 @@ The helm chart also contains a persistent volume claim definition. It persistent
Use the `--set` argument to persist your data. Use the `--set` argument to persist your data.
```bash ```bash
CHART_VERSION=0.2.0 CHART_VERSION=1.0.0
helm install --version "${CHART_VERSION}" reposilite volker.raschek/reposilite \ helm install --version "${CHART_VERSION}" reposilite volker.raschek/reposilite \
persistentVolumeClaim.enabled=true persistentVolumeClaim.enabled=true
``` ```
@@ -72,7 +72,7 @@ connection problems.
> error. > error.
```bash ```bash
CHART_VERSION=0.2.0 CHART_VERSION=1.0.0
helm install --version "${CHART_VERSION}" reposilite volker.raschek/reposilite \ helm install --version "${CHART_VERSION}" reposilite volker.raschek/reposilite \
--set 'deployment.reposilite.env[1].name=REPOSILITE_LOCAL_SSLENABLED' \ --set 'deployment.reposilite.env[1].name=REPOSILITE_LOCAL_SSLENABLED' \
--set 'deployment.reposilite.env[1].value="true"' \ --set 'deployment.reposilite.env[1].value="true"' \
@@ -97,24 +97,19 @@ helm install --version "${CHART_VERSION}" reposilite volker.raschek/reposilite \
#### TLS certificate rotation #### TLS certificate rotation
If Reposilite uses TLS certificates that are mounted as a secret in the container file system like the example If Reposilite uses TLS certificates that are mounted as a secret in the container file system like the example
[above](#tls-encryption), Reposlite will not automatically apply them when the TLS certificates are rotated. Such a [above](#tls-encryption), Reposilite will not automatically apply them when the TLS certificates are rotated. Such a
rotation can be for example triggered, when the [cert-manager](https://cert-manager.io/) issues new TLS certificates rotation can be for example triggered, when the [cert-manager](https://cert-manager.io/) issues new TLS certificates
before expiring. before expiring.
Until Reposilite does not support rotating TLS certificate a workaround can be applied. For example stakater's Until Reposilite 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 `reposilite-tls` is mounted and the reloader controller should only
listen for changes of this secret:
```yaml ```yaml
deployment: deployment:
@@ -122,6 +117,20 @@ deployment:
secret.reloader.stakater.com/reload: "reposilite-tls" secret.reloader.stakater.com/reload: "reposilite-tls"
``` ```
If the application is rolled out using ArgoCD, a rolling update from stakater's
[reloader](https://github.com/stakater/Reloader) can lead to a drift. ArgoCD will attempt to restore the original state
with a rolling update. To avoid this, instead of a rolling update triggered by the reloader, a restart of the pod can be
initiated. Further information are available in the official
[README](https://github.com/stakater/Reloader?tab=readme-ov-file#4-%EF%B8%8F-workload-specific-rollout-strategy) of
stakater's reloader.
```diff
deployment:
annotations:
+ reloader.stakater.com/rollout-strategy: "restart"
secret.reloader.stakater.com/reload: "reposilite-tls"
```
#### Network policies #### Network policies
Network policies can only take effect, when the used CNI plugin support network policies. The chart supports no custom Network policies can only take effect, when the used CNI plugin support network policies. The chart supports no custom
@@ -187,13 +196,62 @@ be set the credentials manually.
The following example enable Prometheus metrics with custom basic auth credentials: The following example enable Prometheus metrics with custom basic auth credentials:
```bash ```bash
CHART_VERSION=0.2.0 CHART_VERSION=1.0.0
helm install --version "${CHART_VERSION}" reposilite volker.raschek/reposilite \ helm install --version "${CHART_VERSION}" reposilite volker.raschek/reposilite \
--set 'prometheus.metrics.enabled=true' \ --set 'prometheus.metrics.enabled=true' \
--set 'prometheus.metrics.basicAuthUsername=my-username' \ --set 'prometheus.metrics.basicAuthUsername=my-username' \
--set 'prometheus.metrics.basicAuthUsername=my-password' --set 'prometheus.metrics.basicAuthUsername=my-password'
``` ```
## ArgoCD
### Example Application
An application resource for the Helm chart is defined below. It serves as an example for your own deployment.
```yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
spec:
destination:
server: https://kubernetes.default.svc
namespace: reposilite
ignoreDifferences:
- group: apps
kind: Deployment
jqPathExpressions:
# When HPA is enabled, ensure that a modification of the replicas does not lead to a
# drift.
- '.spec.replicas'
# Ensure that changes of the annotations or environment variables added or modified by
# stakater's reloader does not lead to a drift.
- '.spec.template.metadata.annotations | with_entries(select(.key | startswith("reloader")))'
- '.spec.template.spec.containers[].env[] | select(.name | startswith("STAKATER_"))'
sources:
- repoURL: https://charts.cryptic.systems/volker.raschek
chart: reposilite
targetRevision: '0.*'
helm:
valueFiles:
- $values/values.yaml
releaseName: reposilite
syncPolicy:
automated:
prune: true
selfHeal: true
managedNamespaceMetadata:
annotations: {}
labels: {}
syncOptions:
- ApplyOutOfSyncOnly=true
- CreateNamespace=true
- FailOnSharedResource=false
- Replace=false
- RespectIgnoreDifferences=false
- ServerSideApply=true
- Validate=true
```
## Parameters ## Parameters
### Global ### Global
@@ -240,7 +298,7 @@ helm install --version "${CHART_VERSION}" reposilite volker.raschek/reposilite \
| `deployment.pluginContainer.args` | Arguments passed to the plugin container. | `["--location","--fail","--max-time","60"]` | | `deployment.pluginContainer.args` | Arguments passed to the plugin container. | `["--location","--fail","--max-time","60"]` |
| `deployment.pluginContainer.image.registry` | Image registry, eg. `docker.io`. | `docker.io` | | `deployment.pluginContainer.image.registry` | Image registry, eg. `docker.io`. | `docker.io` |
| `deployment.pluginContainer.image.repository` | Image repository, eg. `curlimages/curl`. | `curlimages/curl` | | `deployment.pluginContainer.image.repository` | Image repository, eg. `curlimages/curl`. | `curlimages/curl` |
| `deployment.pluginContainer.image.tag` | Custom image tag, eg. `0.1.0`. | `8.16.0` | | `deployment.pluginContainer.image.tag` | Custom image tag, eg. `0.1.0`. | `8.20.0` |
| `deployment.pluginContainer.image.pullPolicy` | Image pull policy. | `IfNotPresent` | | `deployment.pluginContainer.image.pullPolicy` | Image pull policy. | `IfNotPresent` |
| `deployment.priorityClassName` | PriorityClassName of the Reposilite deployment. | `""` | | `deployment.priorityClassName` | PriorityClassName of the Reposilite deployment. | `""` |
| `deployment.replicas` | Number of replicas for the Reposilite deployment. | `1` | | `deployment.replicas` | Number of replicas for the Reposilite deployment. | `1` |

775
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.48.0"
} }
} }

View File

@@ -9,6 +9,7 @@
], ],
"customManagers": [ "customManagers": [
{ {
"customType": "regex",
"fileMatch": [ "fileMatch": [
"^Chart\\.yaml$" "^Chart\\.yaml$"
], ],
@@ -21,7 +22,10 @@
"versioningTemplate": "semver" "versioningTemplate": "semver"
}, },
{ {
"fileMatch": ["^README\\.md$"], "customType": "regex",
"fileMatch": [
"^README\\.md$"
],
"matchStrings": [ "matchStrings": [
"CHART_VERSION=(?<currentValue>.*)" "CHART_VERSION=(?<currentValue>.*)"
], ],
@@ -29,9 +33,47 @@
"packageNameTemplate": "https://git.cryptic.systems/volker.raschek/reposilite-charts", "packageNameTemplate": "https://git.cryptic.systems/volker.raschek/reposilite-charts",
"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 docker.io/volkerraschek/helm",
"matchDepNames": [
"docker.io/volkerraschek/helm",
"volkerraschek/helm"
]
},
{
"automerge": true,
"groupName": "Update helm plugin 'unittest'",
"matchDepNames": [
"helm-unittest/helm-unittest"
],
"matchDatasources": [
"github-releases"
],
"matchUpdateTypes": [
"minor",
"patch"
]
},
{
"groupName": "Update docker.io/library/node",
"matchDepNames": [
"docker.io/library/node",
"library/node"
]
},
{ {
"addLabels": [ "addLabels": [
"renovate/automerge", "renovate/automerge",

View File

@@ -14,6 +14,6 @@ metadata:
name: {{ include "reposilite.secrets.prometheusBasicAuth.name" . }} name: {{ include "reposilite.secrets.prometheusBasicAuth.name" . }}
namespace: {{ .Release.Namespace }} namespace: {{ .Release.Namespace }}
stringData: stringData:
password: {{ default (randAlphaNum 16) .Values.prometheus.metrics.secret.new.basicAuthPassword }} password: {{ required "Password for basic auth is required!" .Values.prometheus.metrics.secret.new.basicAuthPassword }}
username: {{ default (randAlphaNum 16) .Values.prometheus.metrics.secret.new.basicAuthUsername }} username: {{ required "Username for basic auth is required!" .Values.prometheus.metrics.secret.new.basicAuthUsername }}
{{- end }} {{- end }}

View File

@@ -13,6 +13,8 @@ tests:
set: set:
prometheus.metrics.enabled: true prometheus.metrics.enabled: true
prometheus.metrics.podMonitor.enabled: true prometheus.metrics.podMonitor.enabled: true
prometheus.metrics.secret.new.basicAuthPassword: "my-password"
prometheus.metrics.secret.new.basicAuthUsername: "my-username"
asserts: asserts:
- exists: - exists:
path: spec.template.metadata.annotations.checksum/secret-reposilite-unittest-basic-auth-credentials path: spec.template.metadata.annotations.checksum/secret-reposilite-unittest-basic-auth-credentials

View File

@@ -13,6 +13,8 @@ tests:
set: set:
prometheus.metrics.enabled: true prometheus.metrics.enabled: true
prometheus.metrics.serviceMonitor.enabled: true prometheus.metrics.serviceMonitor.enabled: true
prometheus.metrics.secret.new.basicAuthPassword: "my-password"
prometheus.metrics.secret.new.basicAuthUsername: "my-username"
asserts: asserts:
- exists: - exists:
path: spec.template.metadata.annotations.checksum/secret-reposilite-unittest-basic-auth-credentials path: spec.template.metadata.annotations.checksum/secret-reposilite-unittest-basic-auth-credentials

View File

@@ -13,9 +13,29 @@ tests:
- hasDocuments: - hasDocuments:
count: 0 count: 0
- it: Throw error for missing basic auth password
set:
prometheus.metrics.enabled: true
# prometheus.metrics.secret.new.basicAuthPassword: "my-password"
prometheus.metrics.secret.new.basicAuthUsername: "my-username"
asserts:
- failedTemplate:
errorMessage: "Password for basic auth is required!"
- it: Throw error for missing basic auth username
set:
prometheus.metrics.enabled: true
prometheus.metrics.secret.new.basicAuthPassword: "my-password"
# prometheus.metrics.secret.new.basicAuthUsername: "my-username"
asserts:
- failedTemplate:
errorMessage: "Username for basic auth is required!"
- it: Rendering secret with default values. - it: Rendering secret with default values.
set: set:
prometheus.metrics.enabled: true prometheus.metrics.enabled: true
prometheus.metrics.secret.new.basicAuthPassword: "my-password"
prometheus.metrics.secret.new.basicAuthUsername: "my-username"
asserts: asserts:
- hasDocuments: - hasDocuments:
count: 1 count: 1
@@ -51,13 +71,13 @@ tests:
asserts: asserts:
- hasDocuments: - hasDocuments:
count: 1 count: 1
- exists: - isSubset:
path: metadata.annotations path: metadata.annotations
value: content:
foo: bar foo: bar
- exists: - isSubset:
path: metadata.labels path: metadata.labels
value: content:
bar: foo bar: foo
- equal: - equal:
path: metadata.name path: metadata.name

View File

@@ -53,13 +53,13 @@ tests:
asserts: asserts:
- hasDocuments: - hasDocuments:
count: 1 count: 1
- exists: - isSubset:
path: metadata.annotations path: metadata.annotations
value: content:
foo: bar foo: bar
- exists: - isSubset:
path: metadata.labels path: metadata.labels
value: content:
bar: foo bar: foo
- equal: - equal:
path: metadata.name path: metadata.name

View File

@@ -78,35 +78,35 @@ tests:
service.internalTrafficPolicy: "" service.internalTrafficPolicy: ""
asserts: asserts:
- failedTemplate: - failedTemplate:
errorMessage: No internal traffic policy defined! errorMessage: No internal traffic policy defined!
- it: Require port. - it: Require port.
set: set:
service.port: "" service.port: ""
asserts: asserts:
- failedTemplate: - failedTemplate:
errorMessage: No service port defined! errorMessage: No service port defined!
- it: Require scheme. - it: Require scheme.
set: set:
service.scheme: "" service.scheme: ""
asserts: asserts:
- failedTemplate: - failedTemplate:
errorMessage: No service scheme defined! errorMessage: The scheme of the serviceMonitor is not defined!
- it: Require sessionAffinity. - it: Require sessionAffinity.
set: set:
service.sessionAffinity: "" service.sessionAffinity: ""
asserts: asserts:
- failedTemplate: - failedTemplate:
errorMessage: No session affinity defined! errorMessage: No session affinity defined!
- it: Require service type. - it: Require service type.
set: set:
service.type: "" service.type: ""
asserts: asserts:
- failedTemplate: - failedTemplate:
errorMessage: No service type defined! errorMessage: No service type defined!
- it: Render service with custom annotations and labels. - it: Render service with custom annotations and labels.
set: set:

View File

@@ -175,7 +175,7 @@ deployment:
image: image:
registry: docker.io registry: docker.io
repository: curlimages/curl repository: curlimages/curl
tag: "8.16.0" tag: "8.20.0"
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
## @param deployment.priorityClassName PriorityClassName of the Reposilite deployment. ## @param deployment.priorityClassName PriorityClassName of the Reposilite deployment.