Compare commits
13
Commits
ad4eb00009
..
1.0.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
562001dc0b
|
||
|
|
b2b9ab19a0 | ||
|
|
efd7b694a3
|
||
|
|
aef598fabe | ||
|
|
8d7337a996
|
||
|
|
e196b1facc | ||
|
|
b09c8c900a
|
||
|
|
1d0107e4e8 | ||
|
|
9e20779904
|
||
|
|
ada215ac95 | ||
|
|
82497b5549
|
||
|
|
6a0430932d | ||
|
|
913559cb68
|
@@ -15,14 +15,14 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
generate-parameters:
|
generate-parameters:
|
||||||
container:
|
container:
|
||||||
image: docker.io/library/node:26.8.1-alpine
|
image: docker.io/library/node:26.10.0-alpine
|
||||||
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
|
||||||
- uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||||||
- name: Generate parameter section in README
|
- name: Generate parameter section in README
|
||||||
run: |
|
run: |
|
||||||
npm install
|
npm install
|
||||||
|
|||||||
@@ -14,10 +14,10 @@ jobs:
|
|||||||
helm-lint:
|
helm-lint:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||||||
- uses: azure/setup-helm@9bc31f4ebc9c6b171d7bfbaa5d006ae7abdb4310 # v5.0.1
|
- uses: azure/setup-helm@9bc31f4ebc9c6b171d7bfbaa5d006ae7abdb4310 # v5.0.1
|
||||||
with:
|
with:
|
||||||
version: v4.2.4 # renovate: datasource=github-releases depName=helm/helm
|
version: v4.3.0 # renovate: datasource=github-releases depName=helm/helm
|
||||||
- name: Lint helm files
|
- name: Lint helm files
|
||||||
run: |
|
run: |
|
||||||
helm lint --values values.yaml .
|
helm lint --values values.yaml .
|
||||||
@@ -25,10 +25,10 @@ jobs:
|
|||||||
helm-unittest:
|
helm-unittest:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||||||
- uses: azure/setup-helm@9bc31f4ebc9c6b171d7bfbaa5d006ae7abdb4310 # v5.0.1
|
- uses: azure/setup-helm@9bc31f4ebc9c6b171d7bfbaa5d006ae7abdb4310 # v5.0.1
|
||||||
with:
|
with:
|
||||||
version: v4.2.4 # renovate: datasource=github-releases depName=helm/helm
|
version: v4.3.0 # renovate: datasource=github-releases depName=helm/helm
|
||||||
- env:
|
- env:
|
||||||
HELM_UNITTEST_VERSION: v1.0.0 #renovate: datasource=github-releases depName=helm-unittest/helm-unittest
|
HELM_UNITTEST_VERSION: v1.0.0 #renovate: datasource=github-releases depName=helm-unittest/helm-unittest
|
||||||
name: Install helm-unittest
|
name: Install helm-unittest
|
||||||
|
|||||||
@@ -15,14 +15,14 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
markdown-link-checker:
|
markdown-link-checker:
|
||||||
container:
|
container:
|
||||||
image: docker.io/library/node:26.8.1-alpine
|
image: docker.io/library/node:26.10.0-alpine
|
||||||
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
|
||||||
- uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||||||
- name: Verify links in markdown files
|
- name: Verify links in markdown files
|
||||||
run: |
|
run: |
|
||||||
npm install
|
npm install
|
||||||
@@ -30,14 +30,14 @@ jobs:
|
|||||||
|
|
||||||
markdown-lint:
|
markdown-lint:
|
||||||
container:
|
container:
|
||||||
image: docker.io/library/node:26.8.1-alpine
|
image: docker.io/library/node:26.10.0-alpine
|
||||||
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
|
apk add git
|
||||||
- uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||||||
- name: Lint markdown files
|
- name: Lint markdown files
|
||||||
run: |
|
run: |
|
||||||
npm install
|
npm install
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
publish-chart:
|
publish-chart:
|
||||||
container:
|
container:
|
||||||
image: docker.io/volkerraschek/helm:4.2.3
|
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@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
|
|||||||
@@ -270,47 +270,49 @@ spec:
|
|||||||
|
|
||||||
### Deployment
|
### Deployment
|
||||||
|
|
||||||
| Name | Description | Value |
|
| Name | Description | Value |
|
||||||
| -------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
|
| ------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ------------------------------------------- |
|
||||||
| `deployment.annotations` | Additional deployment annotations. | `{}` |
|
| `deployment.annotations` | Additional deployment annotations. | `{}` |
|
||||||
| `deployment.labels` | Additional deployment labels. | `{}` |
|
| `deployment.labels` | Additional deployment labels. | `{}` |
|
||||||
| `deployment.additionalContainers` | List of additional containers. | `[]` |
|
| `deployment.additionalContainers` | List of additional containers. | `[]` |
|
||||||
| `deployment.affinity` | Affinity for the Reposilite deployment. | `{}` |
|
| `deployment.affinity` | Affinity for the Reposilite deployment. | `{}` |
|
||||||
| `deployment.initContainers` | List of additional init containers. | `[]` |
|
| `deployment.initContainers` | List of additional init containers. | `[]` |
|
||||||
| `deployment.dnsConfig` | dnsConfig of the Reposilite deployment. | `{}` |
|
| `deployment.dnsConfig` | dnsConfig of the Reposilite deployment. | `{}` |
|
||||||
| `deployment.dnsPolicy` | dnsPolicy of the Reposilite deployment. | `""` |
|
| `deployment.dnsPolicy` | dnsPolicy of the Reposilite deployment. | `""` |
|
||||||
| `deployment.hostname` | Individual hostname of the pod. | `""` |
|
| `deployment.hostname` | Individual hostname of the pod. | `""` |
|
||||||
| `deployment.subdomain` | Individual domain of the pod. | `""` |
|
| `deployment.subdomain` | Individual domain of the pod. | `""` |
|
||||||
| `deployment.hostNetwork` | Use the kernel network namespace of the host system. | `false` |
|
| `deployment.hostNetwork` | Use the kernel network namespace of the host system. | `false` |
|
||||||
| `deployment.imagePullSecrets` | Secret to use for pulling the image. | `[]` |
|
| `deployment.imagePullSecrets` | Secret to use for pulling the image. | `[]` |
|
||||||
| `deployment.reposilite.args` | Arguments passed to the Reposilite container. | `[]` |
|
| `deployment.reposilite.args` | Arguments passed to the Reposilite container. | `[]` |
|
||||||
| `deployment.reposilite.command` | Command passed to the Reposilite container. | `[]` |
|
| `deployment.reposilite.command` | Command passed to the Reposilite container. | `[]` |
|
||||||
| `deployment.reposilite.env` | List of environment variables for the Reposilite container. | |
|
| `deployment.reposilite.env` | List of environment variables for the Reposilite container. | |
|
||||||
| `deployment.reposilite.envFrom` | List of environment variables mounted from configMaps or secrets for the Reposilite container. | `[]` |
|
| `deployment.reposilite.envFrom` | List of environment variables mounted from configMaps or secrets for the Reposilite container. | `[]` |
|
||||||
| `deployment.reposilite.image.registry` | Image registry, eg. `docker.io`. | `docker.io` |
|
| `deployment.reposilite.image.registry` | Image registry, eg. `docker.io`. | `docker.io` |
|
||||||
| `deployment.reposilite.image.repository` | Image repository, eg. `library/busybox`. | `dzikoysk/reposilite` |
|
| `deployment.reposilite.image.repository` | Image repository, eg. `library/busybox`. | `dzikoysk/reposilite` |
|
||||||
| `deployment.reposilite.image.tag` | Custom image tag, eg. `0.1.0`. Defaults to `appVersion`. | `""` |
|
| `deployment.reposilite.image.tag` | Custom image tag, eg. `0.1.0`. Defaults to `appVersion`. | `""` |
|
||||||
| `deployment.reposilite.image.pullPolicy` | Image pull policy. | `IfNotPresent` |
|
| `deployment.reposilite.image.pullPolicy` | Image pull policy. | `IfNotPresent` |
|
||||||
| `deployment.reposilite.resources` | CPU and memory resources of the pod. | `{}` |
|
| `deployment.reposilite.resources` | CPU and memory resources of the pod. | `{}` |
|
||||||
| `deployment.reposilite.securityContext` | Security context of the container of the deployment. | `{}` |
|
| `deployment.reposilite.securityContext` | Security context of the container of the deployment. | `{}` |
|
||||||
| `deployment.reposilite.volumeMounts` | Additional volume mounts. | `[]` |
|
| `deployment.reposilite.volumeMounts` | Additional volume mounts. | `[]` |
|
||||||
| `deployment.nodeSelector` | NodeSelector of the Reposilite deployment. | `{}` |
|
| `deployment.nodeSelector` | NodeSelector of the Reposilite deployment. | `{}` |
|
||||||
| `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.21.0` |
|
| `deployment.pluginContainer.image.tag` | Custom image tag, eg. `0.1.0`. | `8.22.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.pluginContainer.securityContext.runAsGroup` | Group id of the plugin container. | `977` |
|
||||||
| `deployment.replicas` | Number of replicas for the Reposilite deployment. | `1` |
|
| `deployment.pluginContainer.securityContext.runAsUser` | User id of the plugin container. | `977` |
|
||||||
| `deployment.restartPolicy` | Restart policy of the Reposilite deployment. | `""` |
|
| `deployment.priorityClassName` | PriorityClassName of the Reposilite deployment. | `""` |
|
||||||
| `deployment.securityContext` | Security context of the Reposilite deployment. | `{}` |
|
| `deployment.replicas` | Number of replicas for the Reposilite deployment. | `1` |
|
||||||
| `deployment.strategy.type` | Strategy type - `Recreate` or `RollingUpdate`. | `RollingUpdate` |
|
| `deployment.restartPolicy` | Restart policy of the Reposilite deployment. | `""` |
|
||||||
| `deployment.strategy.rollingUpdate.maxSurge` | The maximum number of pods that can be scheduled above the desired number of pods during a rolling update. | `1` |
|
| `deployment.securityContext` | Security context of the Reposilite deployment. | `{}` |
|
||||||
| `deployment.strategy.rollingUpdate.maxUnavailable` | The maximum number of pods that can be unavailable during a rolling update. | `1` |
|
| `deployment.strategy.type` | Strategy type - `Recreate` or `RollingUpdate`. | `RollingUpdate` |
|
||||||
| `deployment.terminationGracePeriodSeconds` | How long to wait until forcefully kill the pod. | `60` |
|
| `deployment.strategy.rollingUpdate.maxSurge` | The maximum number of pods that can be scheduled above the desired number of pods during a rolling update. | `1` |
|
||||||
| `deployment.tolerations` | Tolerations of the Reposilite deployment. | `[]` |
|
| `deployment.strategy.rollingUpdate.maxUnavailable` | The maximum number of pods that can be unavailable during a rolling update. | `1` |
|
||||||
| `deployment.topologySpreadConstraints` | TopologySpreadConstraints of the Reposilite deployment. | `[]` |
|
| `deployment.terminationGracePeriodSeconds` | How long to wait until forcefully kill the pod. | `60` |
|
||||||
| `deployment.volumes` | Additional volumes to mount into the pods of the reposilite deployment. | `[]` |
|
| `deployment.tolerations` | Tolerations of the Reposilite deployment. | `[]` |
|
||||||
|
| `deployment.topologySpreadConstraints` | TopologySpreadConstraints of the Reposilite deployment. | `[]` |
|
||||||
|
| `deployment.volumes` | Additional volumes to mount into the pods of the reposilite deployment. | `[]` |
|
||||||
|
|
||||||
### Horizontal Pod Autoscaler (HPA)
|
### Horizontal Pod Autoscaler (HPA)
|
||||||
|
|
||||||
|
|||||||
@@ -71,7 +71,11 @@
|
|||||||
{{- if eq (include "reposilite.plugins.prometheus.enabled" $) "true" }}
|
{{- if eq (include "reposilite.plugins.prometheus.enabled" $) "true" }}
|
||||||
{{- $fileName := splitList "/" (tpl .Values.config.plugins.prometheus.url $) | last }}
|
{{- $fileName := splitList "/" (tpl .Values.config.plugins.prometheus.url $) | last }}
|
||||||
{{- $individualArgs := concat $pluginContainerArgs (list "--output" $fileName (tpl .Values.config.plugins.prometheus.url $)) }}
|
{{- $individualArgs := concat $pluginContainerArgs (list "--output" $fileName (tpl .Values.config.plugins.prometheus.url $)) }}
|
||||||
{{- $initContainers = concat $initContainers (list (dict "args" $individualArgs "name" "download-prometheus-plugin" "image" $pluginContainerImage "volumeMounts" $pluginContainerVolumeMounts)) }}
|
{{- $pluginContainer := dict "args" $individualArgs "name" "download-prometheus-plugin" "image" $pluginContainerImage "volumeMounts" $pluginContainerVolumeMounts }}
|
||||||
|
{{- with .Values.deployment.pluginContainer.securityContext }}
|
||||||
|
{{- $_ := set $pluginContainer "securityContext" . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- $initContainers = concat $initContainers (list $pluginContainer) }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{ toYaml (dict "initContainers" $initContainers) }}
|
{{ toYaml (dict "initContainers" $initContainers) }}
|
||||||
|
|||||||
@@ -30,6 +30,9 @@ tests:
|
|||||||
- https://reposilite.com/plugins/prometheus.jar
|
- https://reposilite.com/plugins/prometheus.jar
|
||||||
name: download-prometheus-plugin
|
name: download-prometheus-plugin
|
||||||
image: docker.io/curlimages/curl:0.1.0
|
image: docker.io/curlimages/curl:0.1.0
|
||||||
|
securityContext:
|
||||||
|
runAsGroup: 977
|
||||||
|
runAsUser: 977
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- mountPath: /app/data/plugins
|
- mountPath: /app/data/plugins
|
||||||
name: plugins
|
name: plugins
|
||||||
|
|||||||
+10
-1
@@ -175,9 +175,18 @@ deployment:
|
|||||||
image:
|
image:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: curlimages/curl
|
repository: curlimages/curl
|
||||||
tag: "8.21.0"
|
tag: "8.22.0"
|
||||||
pullPolicy: IfNotPresent
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
## @param deployment.pluginContainer.securityContext.runAsGroup Group id of the plugin container.
|
||||||
|
## @param deployment.pluginContainer.securityContext.runAsUser User id of the plugin container.
|
||||||
|
# Reposilite chowns /app to 977:977 when its entrypoint starts as root. Downloading the plugin as a
|
||||||
|
# different user leaves behind a file the plugin container can no longer overwrite, which breaks every
|
||||||
|
# restart that reuses the emptyDir. Align this with PUID/PGID when those are overridden.
|
||||||
|
securityContext:
|
||||||
|
runAsGroup: 977
|
||||||
|
runAsUser: 977
|
||||||
|
|
||||||
## @param deployment.priorityClassName PriorityClassName of the Reposilite deployment.
|
## @param deployment.priorityClassName PriorityClassName of the Reposilite deployment.
|
||||||
priorityClassName: ""
|
priorityClassName: ""
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user