Compare commits
280 Commits
f9a28037dc
...
tmp/secret
| Author | SHA1 | Date | |
|---|---|---|---|
| 6e5435df6d | |||
| 152f505392 | |||
| ea88f7bedc | |||
| f99d2e89a1 | |||
| 6b02b1d331 | |||
| 7116db2e89 | |||
| 77e0319ec8 | |||
| b41ef0a840 | |||
| f1137e7a58 | |||
| f2280ff40a | |||
| e104eae55e | |||
| 9918eb6363 | |||
|
bc6372cfa4
|
|||
| 74e321b733 | |||
|
f5471d4db8
|
|||
| 4bbd945378 | |||
|
9ff9d64727
|
|||
| b4bcf34d84 | |||
| 0e1fcde5db | |||
| 9e33ce41bf | |||
|
9b97ae30ba
|
|||
| 771ef141d9 | |||
|
96a823a2b4
|
|||
| 59b3a2c669 | |||
| 22c18b86ce | |||
| c6c749a6fe | |||
| db1139bb1f | |||
| 9bfa8b229c | |||
| 83557ce445 | |||
| 640b5b66fc | |||
| 55dc6c0dbe | |||
| 178cfe4f8f | |||
| 7d961227d5 | |||
| af0173b331 | |||
| c030c64c9d | |||
| af84f2d215 | |||
| 6282b01ec1 | |||
| 7075f33794 | |||
|
101c6b6ed8
|
|||
| 293ae401b7 | |||
|
0fc3191aaf
|
|||
| 43df70c792 | |||
| dbdde03825 | |||
| a2aa2f465d | |||
| a8a63a82d7 | |||
| 3fef47cdf0 | |||
| e10689c5e5 | |||
| 78a15b266c | |||
| 4f297c932f | |||
|
f808bd9676
|
|||
| 3e6cd3df24 | |||
|
70f1dac7c6
|
|||
| 00d5109152 | |||
|
9a68f8cf6a
|
|||
| 753b67533d | |||
| a7771493a9 | |||
| eb4cf892f4 | |||
|
fa47afea3a
|
|||
| b5429bebea | |||
|
345a234be9
|
|||
| 70917add01 | |||
| d40151ca3e | |||
| 10917de337 | |||
|
7dcf32875a
|
|||
| 775f408383 | |||
| 01090eda72 | |||
| b1db8003fa | |||
| aaf26450c1 | |||
| 6f0f7027be | |||
| baa65fa99c | |||
| 5c0b667aad | |||
| e85cc055bb | |||
| ad27b57adb | |||
| 7237534b19 | |||
| ffc42fc585 | |||
| 774b272db9 | |||
| e35a110ef9 | |||
| 0848f39c44 | |||
| a6c52589b8 | |||
| e43cc404b0 | |||
| d682091fde | |||
| f587bd1e88 | |||
| 9c210bdd05 | |||
| 5d9036d2fe | |||
| a0bef9dc57 | |||
| 7866dfd9db | |||
| 9107424678 | |||
| d7f85c780b | |||
| f0872ba801 | |||
| c0a53e8e13 | |||
| 3fa8ca84f3 | |||
|
62227a6b95
|
|||
| 769610ae79 | |||
| 5b94cf4819 | |||
| d791230974 | |||
|
7de652ad78
|
|||
| abfd4361c7 | |||
|
bc5b905465
|
|||
| bdfb5fe0e8 | |||
|
c63b1295e1
|
|||
| a340ef9eac | |||
|
4ea4299328
|
|||
| 0e1d166fc7 | |||
| 0afd797774 | |||
| 7f2067ee4a | |||
| 75c694ebc3 | |||
| e96c50fecb | |||
| e12882b4da | |||
| 415b0c61f8 | |||
| 5baf930815 | |||
| 9288b91537 | |||
| decf0ec015 | |||
|
bc9e9097f6
|
|||
| 76170a10f7 | |||
| 2195e3561e | |||
| d1e7c249a2 | |||
|
f69bb558b4
|
|||
| d21611ef41 | |||
|
e6a8a2a266
|
|||
| d9615de558 | |||
| 7fe46b42aa | |||
| 7e8fef36ec | |||
| 392b85063c | |||
| 28e42346bc | |||
| 399d4dcd1f | |||
| 705bbef630 | |||
| 6d8962f4f3 | |||
|
f3dab16ef6
|
|||
| be8533eb51 | |||
|
a0dc068b4c
|
|||
| 2f96f0fbd5 | |||
|
0e1084a47c
|
|||
| 37eb4013c5 | |||
| e924d44575 | |||
| 18f5c877fc | |||
| 20c3975ac0 | |||
| 596f78ee46 | |||
| d139bb6c64 | |||
| 07de43b11d | |||
| a7e75b2490 | |||
| 608b297a2f | |||
| f7046cdde9 | |||
| 64d0b4dcaa | |||
| fb944ff6a0 | |||
| 40083248df | |||
|
490ff01333
|
|||
| 65e8752345 | |||
|
ca59e30823
|
|||
| 9716aab3c6 | |||
|
6e58b89efb
|
|||
| 25db09f40e | |||
| fbcc18babb | |||
| 51e4d0dfe8 | |||
| 5ceb85fff0 | |||
| 5dd6d5087f | |||
| eb2e076b60 | |||
| e5d49c29a6 | |||
| c703ad6f1b | |||
| 5692754466 | |||
| 7199c265e7 | |||
| 35fa1ecb7e | |||
|
8504fe8f8b
|
|||
| d0353a599d | |||
|
f38f9db7f1
|
|||
| 2303acc664 | |||
|
c743c2160b
|
|||
| 7c6a82a43f | |||
| e5edaae980 | |||
| 49c2b47cc2 | |||
| a98a2dad86 | |||
| 1ce2139576 | |||
| b5ed3aff84 | |||
| 10a7012ba9 | |||
| 04cf657591 | |||
| 218fc2ac38 | |||
| ce341b6be5 | |||
|
aea6e450cb
|
|||
| 215b24c0d5 | |||
| 191a826d98 | |||
| 11e8235b96 | |||
| 17cb53b2e1 | |||
| c8517dd1c2 | |||
|
b28a348679
|
|||
| f098acad91 | |||
| 6264a0e7c5 | |||
| b12353528b | |||
|
d2dedc7ca0
|
|||
| d34ab39e67 | |||
| 30226e85f0 | |||
| 93beec5ab8 | |||
|
21d635c552
|
|||
| 27bf3eb3e9 | |||
| 7cc70ed09e | |||
| 2372d63f70 | |||
|
22c5e740ec
|
|||
| 758ac9e605 | |||
|
a66edcdc94
|
|||
| 2c1bccf42a | |||
| 8b0b4ba629 | |||
| 3b9d92b4a5 | |||
| ae0d560586 | |||
| eee145aef6 | |||
| 4890bdb98d | |||
| a4cb4721b3 | |||
| bad622098e | |||
| 0c75021fed | |||
| 54c0ec0822 | |||
| 9bd7556071 | |||
| 5bfd7ce82d | |||
|
33a029540a
|
|||
| 762a024a1c | |||
|
0fb24739a7
|
|||
| 6cd97f53e3 | |||
|
d6a29ff9a0
|
|||
| 06435ad3d0 | |||
|
d1097707a4
|
|||
| f493ad6f4a | |||
|
b67252a8ca
|
|||
| a342e5fcea | |||
| 61ba8a93fd | |||
|
607b88ac1d
|
|||
| 914ec4abae | |||
|
62126cde2d
|
|||
| f81ed6e9fa | |||
| 9576ea20aa | |||
| 2f06e6c876 | |||
| 1bf0cfece2 | |||
| df0c84a1ca | |||
| 27384b9ad4 | |||
| 4b2f4b4ae2 | |||
| 6f1228f5c1 | |||
| 0c54b6c325 | |||
|
6c62d1f918
|
|||
| f0c384d93e | |||
| ed1a6acce8 | |||
| 53e433b02b | |||
| 861ce17094 | |||
| 13b9059311 | |||
|
9d80f9937d
|
|||
| 5e8d29e095 | |||
|
7d465f34c4
|
|||
| 7f12a36f1d | |||
|
24ca561fcb
|
|||
| 0fecf566bf | |||
|
da0d38a9d4
|
|||
| d90f579575 | |||
|
bfda196e0a
|
|||
| be8bb32d30 | |||
| 621103fd12 | |||
| 041cdb7988 | |||
|
e7fed1fcd9
|
|||
| eed1cea7f4 | |||
|
72bff327d2
|
|||
| 14c9f86104 | |||
|
e06b6877ec
|
|||
| a8727295ae | |||
|
b19f95a5e6
|
|||
| 3d4458eb18 | |||
|
8f56302500
|
|||
| bbeb0ab904 | |||
|
a6a4f2a32f
|
|||
| fd5d26abe1 | |||
| 4b22dc5c48 | |||
|
f15eb333d9
|
|||
| e29e879899 | |||
| 44f6980f10 | |||
| 7a5f02e9b7 | |||
| 4c2da5c464 | |||
| 4f7a0da7b6 | |||
|
397f23c627
|
|||
| e90df4e017 | |||
|
22f60730ca
|
|||
| 1ad8f17b4e | |||
|
03a2a1b241
|
|||
| f9fc74a93e | |||
|
60c80fd790
|
|||
| 0657cc8ae8 | |||
|
7a2fc5ade0
|
|||
| 0340235954 | |||
|
0bc8d92b7a
|
@@ -482,6 +482,7 @@ jobs:
|
|||||||
# echo ">> Render templates for ${APP_NAME} ..."
|
# echo ">> Render templates for ${APP_NAME} ..."
|
||||||
# CHART_PATH="clusters/${CLUSTER}/helm/${APP_NAME}"
|
# CHART_PATH="clusters/${CLUSTER}/helm/${APP_NAME}"
|
||||||
# OUTPUT_FOLDER="clusters/${CLUSTER}/manifests/${APP_NAME}/"
|
# OUTPUT_FOLDER="clusters/${CLUSTER}/manifests/${APP_NAME}/"
|
||||||
|
# mkdir -p "${OUTPUT_FOLDER}"
|
||||||
|
|
||||||
# helm dependency build "${CHART_PATH}" --skip-refresh
|
# helm dependency build "${CHART_PATH}" --skip-refresh
|
||||||
|
|
||||||
@@ -499,7 +500,7 @@ jobs:
|
|||||||
# echo ">> Standard Rendering ..."
|
# echo ">> Standard Rendering ..."
|
||||||
# esac
|
# esac
|
||||||
|
|
||||||
# TEMPLATE=$(helm template "${APP_NAME}" "${CHART_PATH}" --include-crds --namespace "${NAMESPACE}" --include-crds --api-versions "gateway.networking.k8s.io/v1/HTTPRoute,monitoring.coreos.com/v1,monitoring.coreos.com/v1/ServiceMonitor")
|
# TEMPLATE=$(helm template "${APP_NAME}" "${CHART_PATH}" --include-crds --namespace "${NAMESPACE}" --api-versions "gateway.networking.k8s.io/v1/HTTPRoute,monitoring.coreos.com/v1,monitoring.coreos.com/v1/ServiceMonitor")
|
||||||
|
|
||||||
# # Format and split rendered template
|
# # Format and split rendered template
|
||||||
# echo "${TEMPLATE}" | yq '... comments=""' | yq 'select(. != null)' | yq -s '"'"${OUTPUT_FOLDER}"'" + .kind + "-" + .metadata.name + ".yaml"'
|
# echo "${TEMPLATE}" | yq '... comments=""' | yq 'select(. != null)' | yq -s '"'"${OUTPUT_FOLDER}"'" + .kind + "-" + .metadata.name + ".yaml"'
|
||||||
@@ -526,29 +527,38 @@ jobs:
|
|||||||
# run: |
|
# run: |
|
||||||
# FAILED_CHARTS=""
|
# FAILED_CHARTS=""
|
||||||
# DIFF_FOUND="false"
|
# DIFF_FOUND="false"
|
||||||
|
# EXIT_CODE=0
|
||||||
|
|
||||||
# for APP_NAME in ${CHANGED_CHARTS}; do
|
# for APP_NAME in ${CHANGED_CHARTS}; do
|
||||||
# echo ">> Running argocd app diff for ${APP_NAME} ..."
|
# echo ">> Running argocd app diff for ${APP_NAME} ..."
|
||||||
# argocd app diff "${APP_NAME}" \
|
# if ! argocd app diff "${APP_NAME}" \
|
||||||
# --server "${ARGOCD_SERVER}" \
|
# --server "${ARGOCD_SERVER}" \
|
||||||
# --revision ${{ gitea.sha }} \
|
# --auth-token "${ARGOCD_AUTH_TOKEN}" \
|
||||||
# --diff-exit-code 0 \
|
# --revision ${{ github.sha }} \
|
||||||
# --local "clusters/${CLUSTER}/manifests/${APP_NAME}" \
|
# --local "clusters/${CLUSTER}/manifests/${APP_NAME}" \
|
||||||
# --local-repo-root "." \
|
# --local-repo-root "." \
|
||||||
# --grpc-web > "diff_output_${APP_NAME}.txt"
|
# --grpc-web > "diff_output_${APP_NAME}.txt" 2>&1; then
|
||||||
|
|
||||||
|
# # ArgoCD diff returns non-zero on diff or error.
|
||||||
|
# # Let's capture if it actually generated a diff output to post.
|
||||||
|
# DIFF_FOUND="true"
|
||||||
|
|
||||||
|
# # Check if the output contains validation/connection errors
|
||||||
|
# if grep -iE 'error|failed|connection refused|timeout' "diff_output_${APP_NAME}.txt"; then
|
||||||
|
# echo ">> ArgoCD encountered an error validating ${APP_NAME}!"
|
||||||
|
# EXIT_CODE=1
|
||||||
|
# FAILED_CHARTS="${FAILED_CHARTS} ${APP_NAME}"
|
||||||
|
# fi
|
||||||
|
# fi
|
||||||
|
|
||||||
# if [ -s "diff_output_${APP_NAME}.txt" ]; then
|
# if [ -s "diff_output_${APP_NAME}.txt" ]; then
|
||||||
# echo ">> Argo diff:"
|
# echo ">> Argo diff or errors:"
|
||||||
# echo ""
|
# echo ""
|
||||||
# cat diff_output_${APP_NAME}.txt
|
# cat diff_output_${APP_NAME}.txt
|
||||||
# echo ""
|
# echo ""
|
||||||
|
|
||||||
# DIFF_FOUND="true"
|
|
||||||
|
|
||||||
# else
|
# else
|
||||||
# echo ">> No Argo diff found for ${APP_NAME}"
|
# echo ">> No Argo diff found for ${APP_NAME}"
|
||||||
# rm "diff_output_${APP_NAME}.txt"
|
# rm "diff_output_${APP_NAME}.txt"
|
||||||
|
|
||||||
# fi
|
# fi
|
||||||
# done
|
# done
|
||||||
|
|
||||||
@@ -556,13 +566,13 @@ jobs:
|
|||||||
# echo "diff-detected=${DIFF_FOUND}" >> "$GITHUB_OUTPUT"
|
# echo "diff-detected=${DIFF_FOUND}" >> "$GITHUB_OUTPUT"
|
||||||
# echo "failed-charts=${FAILED_CHARTS}" >> "$GITHUB_OUTPUT"
|
# echo "failed-charts=${FAILED_CHARTS}" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
# exit $OVERALL_EXIT_CODE
|
# exit $EXIT_CODE
|
||||||
|
|
||||||
# - name: Post Diff
|
# - name: Post Diff
|
||||||
# if: |
|
# if: |
|
||||||
# always() &&
|
# always() &&
|
||||||
# steps.diff.outputs.diff-detected == 'true' &&
|
# steps.diff.outputs.diff-detected == 'true' &&
|
||||||
# gitea.event.pull_request.number != null
|
# github.event.pull_request.number != null
|
||||||
# env:
|
# env:
|
||||||
# GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
|
# GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
|
||||||
# run: |
|
# run: |
|
||||||
@@ -588,7 +598,7 @@ jobs:
|
|||||||
# done
|
# done
|
||||||
|
|
||||||
# curl -X 'POST' \
|
# curl -X 'POST' \
|
||||||
# "${{ gitea.server_url }}/api/v1/repos/${{ gitea.repository }}/issues/${{ gitea.event.pull_request.number }}/comments" \
|
# "${{ github.server_url }}/api/v1/repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/comments" \
|
||||||
# -H "Authorization: token ${GITEA_TOKEN}" \
|
# -H "Authorization: token ${GITEA_TOKEN}" \
|
||||||
# -H "Content-Type: application/json" \
|
# -H "Content-Type: application/json" \
|
||||||
# -d "$(jq -n --arg body "$COMMENT_BODY" '{body: $body}')"
|
# -d "$(jq -n --arg body "$COMMENT_BODY" '{body: $body}')"
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ on:
|
|||||||
jobs:
|
jobs:
|
||||||
renovate:
|
renovate:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container: ghcr.io/renovatebot/renovate:43.113.0@sha256:9dd3f426078a6ce9461c87264e4bcd1853698dc5ebb594fe5fab1f0afd25ef9b
|
container: ghcr.io/renovatebot/renovate:43.138.2@sha256:79765b2442117d5c87e17456aa79ae54b4e0e2a4d9212a10508e233706375556
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
||||||
|
|||||||
@@ -2,8 +2,5 @@ dependencies:
|
|||||||
- name: app-template
|
- name: app-template
|
||||||
repository: https://bjw-s-labs.github.io/helm-charts/
|
repository: https://bjw-s-labs.github.io/helm-charts/
|
||||||
version: 4.6.2
|
version: 4.6.2
|
||||||
- name: volsync-target
|
digest: sha256:1c04c187e6cf768117f7f91f3a3b082937ad5854c1cf6a681ad7c02687cd543d
|
||||||
repository: oci://harbor.alexlebens.net/helm-charts
|
generated: "2026-04-18T20:15:22.778699-05:00"
|
||||||
version: 0.8.0
|
|
||||||
digest: sha256:ff81b3d8fc831e4b8048f646fffcf597aa7410e52ecf27690eab8104047dbe6f
|
|
||||||
generated: "2026-03-06T01:04:41.514235218Z"
|
|
||||||
|
|||||||
@@ -18,10 +18,10 @@ dependencies:
|
|||||||
alias: actual
|
alias: actual
|
||||||
repository: https://bjw-s-labs.github.io/helm-charts/
|
repository: https://bjw-s-labs.github.io/helm-charts/
|
||||||
version: 4.6.2
|
version: 4.6.2
|
||||||
- name: volsync-target
|
# - name: volsync-target
|
||||||
alias: volsync-target-data
|
# alias: volsync-target-data
|
||||||
version: 0.8.0
|
# version: 0.8.0
|
||||||
repository: oci://harbor.alexlebens.net/helm-charts
|
# repository: oci://harbor.alexlebens.net/helm-charts
|
||||||
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/actual-budget.png
|
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/actual-budget.png
|
||||||
# renovate: datasource=github-releases depName=actualbudget/actual
|
# renovate: datasource=github-releases depName=actualbudget/actual
|
||||||
appVersion: 26.4.0
|
appVersion: 26.4.0
|
||||||
|
|||||||
14
clusters/cl01tl/helm/actual/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/actual/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: argo-cd
|
- name: argo-cd
|
||||||
repository: https://argoproj.github.io/argo-helm
|
repository: https://argoproj.github.io/argo-helm
|
||||||
version: 9.5.0
|
version: 9.5.2
|
||||||
digest: sha256:69daada0822f796cd49eeda2d9e39dd5c0c42bb61b6898af68123c8c49f25fa1
|
digest: sha256:5d9e6405ee944bf94df6af247164ebb9b8899144853b9a7eafabe8606affe84e
|
||||||
generated: "2026-04-08T22:05:49.003208408Z"
|
generated: "2026-04-19T19:53:40.43789-05:00"
|
||||||
|
|||||||
@@ -13,8 +13,8 @@ maintainers:
|
|||||||
- name: alexlebens
|
- name: alexlebens
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: argo-cd
|
- name: argo-cd
|
||||||
version: 9.5.0
|
version: 9.5.2
|
||||||
repository: https://argoproj.github.io/argo-helm
|
repository: https://argoproj.github.io/argo-helm
|
||||||
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/argo-cd.png
|
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/argo-cd.png
|
||||||
# renovate: datasource=github-releases depName=argoproj/argo-cd
|
# renovate: datasource=github-releases depName=argoproj/argo-cd
|
||||||
appVersion: v3.3.6
|
appVersion: v3.3.7
|
||||||
|
|||||||
14
clusters/cl01tl/helm/argocd/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/argocd/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,70 +1,40 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: argocd-oidc-secret
|
name: argocd-oidc-authentik
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: argocd-oidc-secret
|
app.kubernetes.io/name: argocd-oidc-authentik
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: secret
|
- secretKey: secret
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /authentik/oidc/argocd
|
key: /cl01tl/authentik/oidc/argocd
|
||||||
property: secret
|
property: secret
|
||||||
- secretKey: client
|
- secretKey: client
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /authentik/oidc/argocd
|
key: /cl01tl/authentik/oidc/argocd
|
||||||
property: client
|
property: client
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: argocd-notifications-secret
|
name: argocd-notifications-ntfy
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: argocd-notifications-secret
|
app.kubernetes.io/name: argocd-notifications-ntfy
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: ntfy-token
|
- secretKey: ntfy-token
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /ntfy/user/cl01tl
|
key: /cl01tl/ntfy/users/cl01tl
|
||||||
property: token
|
property: token
|
||||||
|
|
||||||
---
|
|
||||||
apiVersion: external-secrets.io/v1
|
|
||||||
kind: ExternalSecret
|
|
||||||
metadata:
|
|
||||||
name: argocd-gitea-repo-infrastructure-secret
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
labels:
|
|
||||||
app.kubernetes.io/name: argocd-gitea-repo-infrastructure-secret
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
|
||||||
secretStoreRef:
|
|
||||||
kind: ClusterSecretStore
|
|
||||||
name: vault
|
|
||||||
data:
|
|
||||||
- secretKey: type
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/argocd/credentials/repo/infrastructure
|
|
||||||
property: type
|
|
||||||
- secretKey: url
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/argocd/credentials/repo/infrastructure
|
|
||||||
property: url
|
|
||||||
- secretKey: sshPrivateKey
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/argocd/credentials/repo/infrastructure
|
|
||||||
property: sshPrivateKey
|
|
||||||
|
|||||||
@@ -13,8 +13,8 @@ argo-cd:
|
|||||||
connectors:
|
connectors:
|
||||||
- config:
|
- config:
|
||||||
issuer: https://authentik.alexlebens.net/application/o/argocd/
|
issuer: https://authentik.alexlebens.net/application/o/argocd/
|
||||||
clientID: $argocd-oidc-secret:client
|
clientID: $argocd-oidc-authentik:client
|
||||||
clientSecret: $argocd-oidc-secret:secret
|
clientSecret: $argocd-oidc-authentik:secret
|
||||||
insecureEnableGroups: true
|
insecureEnableGroups: true
|
||||||
scopes:
|
scopes:
|
||||||
- openid
|
- openid
|
||||||
@@ -205,7 +205,7 @@ argo-cd:
|
|||||||
argocdUrl: https://argocd.alexlebens.net
|
argocdUrl: https://argocd.alexlebens.net
|
||||||
secret:
|
secret:
|
||||||
create: false
|
create: false
|
||||||
name: argocd-notifications-secret
|
name: argocd-notifications-ntfy
|
||||||
metrics:
|
metrics:
|
||||||
enabled: true
|
enabled: true
|
||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
|
|||||||
@@ -32,4 +32,4 @@ dependencies:
|
|||||||
repository: oci://harbor.alexlebens.net/helm-charts
|
repository: oci://harbor.alexlebens.net/helm-charts
|
||||||
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/audiobookshelf.png
|
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/audiobookshelf.png
|
||||||
# renovate: datasource=github-releases depName=advplyr/audiobookshelf
|
# renovate: datasource=github-releases depName=advplyr/audiobookshelf
|
||||||
appVersion: 2.33.1
|
appVersion: 2.33.2
|
||||||
|
|||||||
27
clusters/cl01tl/helm/audiobookshelf/templates/_helpers.tpl
Normal file
27
clusters/cl01tl/helm/audiobookshelf/templates/_helpers.tpl
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
NFS names
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.booksNfsName" -}}
|
||||||
|
audiobookshelf-books-nfs-storage
|
||||||
|
{{- end -}}
|
||||||
|
{{- define "custom.audiobooksNfsName" -}}
|
||||||
|
audiobookshelf-audiobooks-nfs-storage
|
||||||
|
{{- end -}}
|
||||||
|
{{- define "custom.podcastsNfsName" -}}
|
||||||
|
audiobookshelf-podcasts-nfs-storage
|
||||||
|
{{- end -}}
|
||||||
@@ -1,18 +1,23 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: audiobookshelf-apprise-config
|
name: audiobookshelf-config-apprise
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: audiobookshelf-apprise-config
|
app.kubernetes.io/name: audiobookshelf-config-apprise
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
|
target:
|
||||||
|
template:
|
||||||
|
mergePolicy: Merge
|
||||||
|
engineVersion: v2
|
||||||
data:
|
data:
|
||||||
- secretKey: ntfy-url
|
ntfy-url: "{{ `{{ .endpoint }}` }}/audiobookshelf"
|
||||||
|
data:
|
||||||
|
- secretKey: endpoint
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/audiobookshelf/apprise
|
key: /cl01tl/ntfy/users/cl01tl
|
||||||
property: ntfy-url
|
property: internal-endpoint-credential
|
||||||
|
|||||||
@@ -1,14 +1,13 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: audiobookshelf-books-nfs-storage
|
name: {{ include "custom.booksNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: audiobookshelf-books-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.booksNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{ include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
volumeName: audiobookshelf-books-nfs-storage
|
volumeName: {{ include "custom.booksNfsName" . }}
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
accessModes:
|
accessModes:
|
||||||
- ReadWriteMany
|
- ReadWriteMany
|
||||||
@@ -20,14 +19,13 @@ spec:
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: audiobookshelf-audiobooks-nfs-storage
|
name: {{ include "custom.audiobooksNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: audiobookshelf-audiobooks-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.audiobooksNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
volumeName: audiobookshelf-audiobooks-nfs-storage
|
volumeName: {{ include "custom.audiobooksNfsName" . }}
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
accessModes:
|
accessModes:
|
||||||
- ReadWriteMany
|
- ReadWriteMany
|
||||||
@@ -39,14 +37,13 @@ spec:
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: audiobookshelf-podcasts-nfs-storage
|
name: {{ include "custom.podcastsNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: audiobookshelf-podcasts-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.podcastsNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
volumeName: audiobookshelf-podcasts-nfs-storage
|
volumeName: {{ include "custom.podcastsNfsName" . }}
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
accessModes:
|
accessModes:
|
||||||
- ReadWriteMany
|
- ReadWriteMany
|
||||||
|
|||||||
@@ -1,12 +1,11 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolume
|
kind: PersistentVolume
|
||||||
metadata:
|
metadata:
|
||||||
name: audiobookshelf-books-nfs-storage
|
name: {{ include "custom.booksNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: audiobookshelf-books-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.booksNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
persistentVolumeReclaimPolicy: Retain
|
persistentVolumeReclaimPolicy: Retain
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
@@ -26,12 +25,11 @@ spec:
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolume
|
kind: PersistentVolume
|
||||||
metadata:
|
metadata:
|
||||||
name: audiobookshelf-audiobooks-nfs-storage
|
name: {{ include "custom.audiobooksNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: audiobookshelf-audiobooks-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.audiobooksNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
persistentVolumeReclaimPolicy: Retain
|
persistentVolumeReclaimPolicy: Retain
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
@@ -51,12 +49,11 @@ spec:
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolume
|
kind: PersistentVolume
|
||||||
metadata:
|
metadata:
|
||||||
name: audiobookshelf-podcasts-nfs-storage
|
name: {{ include "custom.podcastsNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: audiobookshelf-podcasts-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.podcastsNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
persistentVolumeReclaimPolicy: Retain
|
persistentVolumeReclaimPolicy: Retain
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ audiobookshelf:
|
|||||||
main:
|
main:
|
||||||
image:
|
image:
|
||||||
repository: ghcr.io/advplyr/audiobookshelf
|
repository: ghcr.io/advplyr/audiobookshelf
|
||||||
tag: 2.33.1@sha256:a4a5841bba093d81e5f4ad1eaedb4da3fda6dbb2528c552349da50ad1f7ae708
|
tag: 2.33.2@sha256:a44ed89b3e845faa1f7d353f2cc89b2fcd8011737dd14075fa963cf9468da3a5
|
||||||
env:
|
env:
|
||||||
- name: TZ
|
- name: TZ
|
||||||
value: America/Chicago
|
value: America/Chicago
|
||||||
@@ -40,7 +40,7 @@ audiobookshelf:
|
|||||||
- name: APPRISE_STATELESS_URLS
|
- name: APPRISE_STATELESS_URLS
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: audiobookshelf-apprise-config
|
name: audiobookshelf-config-apprise
|
||||||
key: ntfy-url
|
key: ntfy-url
|
||||||
service:
|
service:
|
||||||
main:
|
main:
|
||||||
|
|||||||
14
clusters/cl01tl/helm/authentik/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/authentik/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,16 +1,15 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: authentik-key-secret
|
name: authentik-key
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: authentik-key-secret
|
app.kubernetes.io/name: authentik-key
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: key
|
- secretKey: key
|
||||||
remoteRef:
|
remoteRef:
|
||||||
|
|||||||
@@ -1,12 +1,11 @@
|
|||||||
apiVersion: networking.k8s.io/v1
|
apiVersion: networking.k8s.io/v1
|
||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
name: authentik-tailscale
|
name: {{ .Release.Name }}-tailscale
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: authentik-tailscale
|
app.kubernetes.io/name: {{ .Release.Name }}-tailscale
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
tailscale.com/proxy-class: no-metrics
|
tailscale.com/proxy-class: no-metrics
|
||||||
annotations:
|
annotations:
|
||||||
tailscale.com/experimental-forward-cluster-traffic-via-ingress: "true"
|
tailscale.com/experimental-forward-cluster-traffic-via-ingress: "true"
|
||||||
@@ -26,4 +25,4 @@ spec:
|
|||||||
service:
|
service:
|
||||||
name: authentik-server
|
name: authentik-server
|
||||||
port:
|
port:
|
||||||
number: 80
|
name: http
|
||||||
|
|||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: allow-outpost-cross-namespace-access
|
app.kubernetes.io/name: allow-outpost-cross-namespace-access
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
from:
|
from:
|
||||||
- group: gateway.networking.k8s.io
|
- group: gateway.networking.k8s.io
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ authentik:
|
|||||||
- name: AUTHENTIK_SECRET_KEY
|
- name: AUTHENTIK_SECRET_KEY
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: authentik-key-secret
|
name: authentik-key
|
||||||
key: key
|
key: key
|
||||||
- name: AUTHENTIK_POSTGRESQL__HOST
|
- name: AUTHENTIK_POSTGRESQL__HOST
|
||||||
valueFrom:
|
valueFrom:
|
||||||
|
|||||||
24
clusters/cl01tl/helm/backrest/templates/_helpers.tpl
Normal file
24
clusters/cl01tl/helm/backrest/templates/_helpers.tpl
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
NFS names
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.storageNfsName" -}}
|
||||||
|
backrest-nfs-storage
|
||||||
|
{{- end -}}
|
||||||
|
{{- define "custom.shareNfsName" -}}
|
||||||
|
backrest-nfs-share
|
||||||
|
{{- end -}}
|
||||||
@@ -1,14 +1,13 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: backrest-nfs-storage
|
name: {{ include "custom.storageNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: backrest-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.storageNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
volumeName: backrest-nfs-storage
|
volumeName: {{ include "custom.storageNfsName" . }}
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
accessModes:
|
accessModes:
|
||||||
- ReadWriteMany
|
- ReadWriteMany
|
||||||
@@ -20,14 +19,13 @@ spec:
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: backrest-nfs-share
|
name: {{ include "custom.shareNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: backrest-nfs-share
|
app.kubernetes.io/name: {{ include "custom.shareNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
volumeName: backrest-nfs-share
|
volumeName: {{ include "custom.shareNfsName" . }}
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
accessModes:
|
accessModes:
|
||||||
- ReadWriteMany
|
- ReadWriteMany
|
||||||
|
|||||||
@@ -1,12 +1,11 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolume
|
kind: PersistentVolume
|
||||||
metadata:
|
metadata:
|
||||||
name: backrest-nfs-storage
|
name: {{ include "custom.storageNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: backrest-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.storageNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
persistentVolumeReclaimPolicy: Retain
|
persistentVolumeReclaimPolicy: Retain
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
@@ -26,12 +25,11 @@ spec:
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolume
|
kind: PersistentVolume
|
||||||
metadata:
|
metadata:
|
||||||
name: backrest-nfs-share
|
name: {{ include "custom.shareNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: backrest-nfs-share
|
app.kubernetes.io/name: {{ include "custom.shareNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
persistentVolumeReclaimPolicy: Retain
|
persistentVolumeReclaimPolicy: Retain
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
|
|||||||
21
clusters/cl01tl/helm/bazarr/templates/_helpers.tpl
Normal file
21
clusters/cl01tl/helm/bazarr/templates/_helpers.tpl
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
NFS names
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.storageNfsName" -}}
|
||||||
|
bazarr-nfs-storage
|
||||||
|
{{- end -}}
|
||||||
@@ -1,16 +1,15 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: bazarr-key-secret
|
name: bazarr-key
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: bazarr-key-secret
|
app.kubernetes.io/name: bazarr-key
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: key
|
- secretKey: key
|
||||||
remoteRef:
|
remoteRef:
|
||||||
|
|||||||
@@ -1,14 +1,13 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: bazarr-nfs-storage
|
name: {{ include "custom.storageNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: bazarr-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.storageNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
volumeName: bazarr-nfs-storage
|
volumeName: {{ include "custom.storageNfsName" . }}
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
accessModes:
|
accessModes:
|
||||||
- ReadWriteMany
|
- ReadWriteMany
|
||||||
|
|||||||
@@ -1,12 +1,11 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolume
|
kind: PersistentVolume
|
||||||
metadata:
|
metadata:
|
||||||
name: bazarr-nfs-storage
|
name: {{ include "custom.storageNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: bazarr-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.storageNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
persistentVolumeReclaimPolicy: Retain
|
persistentVolumeReclaimPolicy: Retain
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ bazarr:
|
|||||||
- name: APIKEY
|
- name: APIKEY
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: bazarr-key-secret
|
name: bazarr-key
|
||||||
key: key
|
key: key
|
||||||
- name: ENABLE_ADDITIONAL_METRICS
|
- name: ENABLE_ADDITIONAL_METRICS
|
||||||
value: false
|
value: false
|
||||||
|
|||||||
14
clusters/cl01tl/helm/blocky/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/blocky/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -106,6 +106,7 @@ blocky:
|
|||||||
audiobookshelf IN CNAME traefik-cl01tl
|
audiobookshelf IN CNAME traefik-cl01tl
|
||||||
authentik IN CNAME traefik-cl01tl
|
authentik IN CNAME traefik-cl01tl
|
||||||
backrest IN CNAME traefik-cl01tl
|
backrest IN CNAME traefik-cl01tl
|
||||||
|
bao IN CNAME traefik-cl01tl
|
||||||
bazarr IN CNAME traefik-cl01tl
|
bazarr IN CNAME traefik-cl01tl
|
||||||
ceph IN CNAME traefik-cl01tl
|
ceph IN CNAME traefik-cl01tl
|
||||||
dawarich IN CNAME traefik-cl01tl
|
dawarich IN CNAME traefik-cl01tl
|
||||||
|
|||||||
24
clusters/cl01tl/helm/cert-manager/templates/_helpers.tpl
Normal file
24
clusters/cl01tl/helm/cert-manager/templates/_helpers.tpl
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
NFS names
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.cloudflareSecretName" -}}
|
||||||
|
cert-manager-cloudflare-api-token
|
||||||
|
{{- end -}}
|
||||||
|
{{- define "custom.cloudflareSecretKey" -}}
|
||||||
|
api-token
|
||||||
|
{{- end -}}
|
||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: letsencrypt-issuer
|
app.kubernetes.io/name: letsencrypt-issuer
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
acme:
|
acme:
|
||||||
email: alexanderlebens@gmail.com
|
email: alexanderlebens@gmail.com
|
||||||
@@ -22,5 +21,5 @@ spec:
|
|||||||
cloudflare:
|
cloudflare:
|
||||||
email: alexanderlebens@gmail.com
|
email: alexanderlebens@gmail.com
|
||||||
apiTokenSecretRef:
|
apiTokenSecretRef:
|
||||||
name: cloudflare-api-token
|
name: {{ include "custom.cloudflareSecretName" . }}
|
||||||
key: api-token
|
key: {{ include "custom.cloudflareSecretKey" . }}
|
||||||
|
|||||||
@@ -1,18 +1,17 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: cloudflare-api-token
|
name: {{ include "custom.cloudflareSecretName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: cloudflare-api-token
|
app.kubernetes.io/name: {{ include "custom.cloudflareSecretName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: api-token
|
- secretKey: {{ include "custom.cloudflareSecretKey" . }}
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cloudflare/alexlebens.net/clusterissuer
|
key: /cloudflare/alexlebens.net/cl01tl-issuer-certificate
|
||||||
property: token
|
property: token
|
||||||
|
|||||||
14
clusters/cl01tl/helm/cilium/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/cilium/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
# apiVersion: cilium.io/v2
|
|
||||||
# kind: CiliumBGPAdvertisement
|
|
||||||
# metadata:
|
|
||||||
# name: cilium-bgp-advertisements
|
|
||||||
# namespace: {{ .Release.Namespace }}
|
|
||||||
# labels:
|
|
||||||
# app.kubernetes.io/name: cilium-bgp-advertisements
|
|
||||||
# app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
# app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
# spec:
|
|
||||||
# advertisements:
|
|
||||||
# - advertisementType: "Service"
|
|
||||||
# service:
|
|
||||||
# addresses:
|
|
||||||
# - ExternalIP
|
|
||||||
# - LoadBalancerIP
|
|
||||||
# selector:
|
|
||||||
# matchExpressions:
|
|
||||||
# - {key: somekey, operator: NotIn, values: ['never-used-value']}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
# apiVersion: cilium.io/v2
|
|
||||||
# kind: CiliumBGPClusterConfig
|
|
||||||
# metadata:
|
|
||||||
# name: cilium-bgp
|
|
||||||
# namespace: {{ .Release.Namespace }}
|
|
||||||
# labels:
|
|
||||||
# app.kubernetes.io/name: cilium-bgp
|
|
||||||
# app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
# app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
# spec:
|
|
||||||
# nodeSelector:
|
|
||||||
# matchLabels:
|
|
||||||
# node-role.kubernetes.io/bgp: "65020"
|
|
||||||
# bgpInstances:
|
|
||||||
# - name: "65020"
|
|
||||||
# localASN: 65020
|
|
||||||
# peers:
|
|
||||||
# - name: "udm-65000"
|
|
||||||
# peerASN: 65000
|
|
||||||
# peerAddress: 192.168.1.1
|
|
||||||
# peerConfigRef:
|
|
||||||
# name: "cilium-peer"
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
# apiVersion: cilium.io/v2
|
|
||||||
# kind: CiliumBGPPeerConfig
|
|
||||||
# metadata:
|
|
||||||
# name: cilium-peer
|
|
||||||
# namespace: {{ .Release.Namespace }}
|
|
||||||
# labels:
|
|
||||||
# app.kubernetes.io/name: cilium-peer
|
|
||||||
# app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
# app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
# spec:
|
|
||||||
# timers:
|
|
||||||
# holdTimeSeconds: 9
|
|
||||||
# keepAliveTimeSeconds: 3
|
|
||||||
# ebgpMultihop: 4
|
|
||||||
# gracefulRestart:
|
|
||||||
# enabled: true
|
|
||||||
# restartTimeSeconds: 15
|
|
||||||
# families:
|
|
||||||
# - afi: ipv4
|
|
||||||
# safi: unicast
|
|
||||||
# advertisements:
|
|
||||||
# matchLabels:
|
|
||||||
# app.kubernetes.io/name: cilium-bgp-advertisements
|
|
||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: default-ip-pool
|
app.kubernetes.io/name: default-ip-pool
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
blocks:
|
blocks:
|
||||||
- start: "10.232.1.21"
|
- start: "10.232.1.21"
|
||||||
@@ -20,8 +19,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: bgp-ip-pool
|
app.kubernetes.io/name: bgp-ip-pool
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
blocks:
|
blocks:
|
||||||
- start: "10.232.2.100"
|
- start: "10.232.2.100"
|
||||||
|
|||||||
@@ -1,45 +0,0 @@
|
|||||||
# apiVersion: gateway.networking.k8s.io/v1
|
|
||||||
# kind: Gateway
|
|
||||||
# metadata:
|
|
||||||
# name: cilium-tls-gateway
|
|
||||||
# namespace: {{ .Release.Namespace }}
|
|
||||||
# labels:
|
|
||||||
# app.kubernetes.io/name: cilium-tls-gateway
|
|
||||||
# app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
# app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
# annotations:
|
|
||||||
# cert-manager.io/cluster-issuer: letsencrypt-issuer
|
|
||||||
# spec:
|
|
||||||
# addresses:
|
|
||||||
# - type: IPAddress
|
|
||||||
# value: 10.232.1.23
|
|
||||||
# gatewayClassName: cilium
|
|
||||||
# listeners:
|
|
||||||
# - allowedRoutes:
|
|
||||||
# namespaces:
|
|
||||||
# from: All
|
|
||||||
# hostname: '*.alexlebens.net'
|
|
||||||
# name: https
|
|
||||||
# port: 443
|
|
||||||
# protocol: HTTPS
|
|
||||||
# tls:
|
|
||||||
# certificateRefs:
|
|
||||||
# - group: ''
|
|
||||||
# kind: Secret
|
|
||||||
# name: https-gateway-cert
|
|
||||||
# namespace: kube-system
|
|
||||||
# mode: Terminate
|
|
||||||
# - allowedRoutes:
|
|
||||||
# namespaces:
|
|
||||||
# from: All
|
|
||||||
# hostname: 'alexlebens.net'
|
|
||||||
# name: https-domain
|
|
||||||
# port: 443
|
|
||||||
# protocol: HTTPS
|
|
||||||
# tls:
|
|
||||||
# certificateRefs:
|
|
||||||
# - group: ''
|
|
||||||
# kind: Secret
|
|
||||||
# name: https-gateway-cert
|
|
||||||
# namespace: kube-system
|
|
||||||
# mode: Terminate
|
|
||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: hubble
|
app.kubernetes.io/name: hubble
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
parentRefs:
|
parentRefs:
|
||||||
- group: gateway.networking.k8s.io
|
- group: gateway.networking.k8s.io
|
||||||
@@ -21,8 +20,6 @@ spec:
|
|||||||
type: PathPrefix
|
type: PathPrefix
|
||||||
value: /
|
value: /
|
||||||
backendRefs:
|
backendRefs:
|
||||||
- group: ''
|
- kind: Service
|
||||||
kind: Service
|
|
||||||
name: hubble-ui
|
name: hubble-ui
|
||||||
port: 80
|
port: 80
|
||||||
weight: 100
|
|
||||||
|
|||||||
@@ -4,6 +4,6 @@ dependencies:
|
|||||||
version: 0.28.0
|
version: 0.28.0
|
||||||
- name: plugin-barman-cloud
|
- name: plugin-barman-cloud
|
||||||
repository: https://cloudnative-pg.io/charts/
|
repository: https://cloudnative-pg.io/charts/
|
||||||
version: 0.5.0
|
version: 0.6.0
|
||||||
digest: sha256:3e9b26d00fdb61af60f003bcb327e05d02799eb6088e30aaabd01c49c6021aac
|
digest: sha256:48241acb753e635a01b306b90cfbce13ed3c0105a33ec7d36f159e3a7fe607f3
|
||||||
generated: "2026-04-01T20:05:40.198140255Z"
|
generated: "2026-04-14T09:03:10.332065288Z"
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ dependencies:
|
|||||||
version: 0.28.0
|
version: 0.28.0
|
||||||
repository: https://cloudnative-pg.io/charts/
|
repository: https://cloudnative-pg.io/charts/
|
||||||
- name: plugin-barman-cloud
|
- name: plugin-barman-cloud
|
||||||
version: 0.5.0
|
version: 0.6.0
|
||||||
repository: https://cloudnative-pg.io/charts/
|
repository: https://cloudnative-pg.io/charts/
|
||||||
icon: https://raw.githubusercontent.com/cloudnative-pg/cloudnative-pg.github.io/refs/heads/main/assets/images/hero_image.png
|
icon: https://raw.githubusercontent.com/cloudnative-pg/cloudnative-pg.github.io/refs/heads/main/assets/images/hero_image.png
|
||||||
# renovate: datasource=github-releases depName=cloudnative-pg/cloudnative-pg
|
# renovate: datasource=github-releases depName=cloudnative-pg/cloudnative-pg
|
||||||
|
|||||||
14
clusters/cl01tl/helm/cloudnative-pg/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/cloudnative-pg/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
14
clusters/cl01tl/helm/coredns/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/coredns/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
14
clusters/cl01tl/helm/dawarich/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/dawarich/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,16 +1,15 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: dawarich-key-secret
|
name: dawarich-key
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: dawarich-key-secret
|
app.kubernetes.io/name: dawarich-key
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: key
|
- secretKey: key
|
||||||
remoteRef:
|
remoteRef:
|
||||||
@@ -21,22 +20,21 @@ spec:
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: dawarich-oidc-secret
|
name: dawarich-oidc-authentik
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: dawarich-oidc-secret
|
app.kubernetes.io/name: dawarich-oidc-authentik
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: client
|
- secretKey: client
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /authentik/oidc/dawarich
|
key: /cl01tl/authentik/oidc/dawarich
|
||||||
property: client
|
property: client
|
||||||
- secretKey: secret
|
- secretKey: secret
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /authentik/oidc/dawarich
|
key: /cl01tl/authentik/oidc/dawarich
|
||||||
property: secret
|
property: secret
|
||||||
|
|||||||
@@ -61,12 +61,12 @@ dawarich:
|
|||||||
- name: OIDC_CLIENT_ID
|
- name: OIDC_CLIENT_ID
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: dawarich-oidc-secret
|
name: dawarich-oidc-authentik
|
||||||
key: client
|
key: client
|
||||||
- name: OIDC_CLIENT_SECRET
|
- name: OIDC_CLIENT_SECRET
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: dawarich-oidc-secret
|
name: dawarich-oidc-authentik
|
||||||
key: secret
|
key: secret
|
||||||
- name: OIDC_PROVIDER_NAME
|
- name: OIDC_PROVIDER_NAME
|
||||||
value: Authentik
|
value: Authentik
|
||||||
@@ -81,7 +81,7 @@ dawarich:
|
|||||||
- name: SECRET_KEY_BASE
|
- name: SECRET_KEY_BASE
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: dawarich-key-secret
|
name: dawarich-key
|
||||||
key: key
|
key: key
|
||||||
- name: RAILS_LOG_TO_STDOUT
|
- name: RAILS_LOG_TO_STDOUT
|
||||||
value: true
|
value: true
|
||||||
|
|||||||
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,16 +1,15 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: synology-iscsi-config-secret
|
name: synology-iscsi-config
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: synology-iscsi-config-secret
|
app.kubernetes.io/name: synology-iscsi-config
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: driver-config-file.yaml
|
- secretKey: driver-config-file.yaml
|
||||||
remoteRef:
|
remoteRef:
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Namespace
|
kind: Namespace
|
||||||
metadata:
|
metadata:
|
||||||
name: democratic-csi-synology-iscsi
|
name: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: democratic-csi-synology-iscsi
|
app.kubernetes.io/name: {{ .Release.Namespace }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
pod-security.kubernetes.io/audit: privileged
|
pod-security.kubernetes.io/audit: privileged
|
||||||
pod-security.kubernetes.io/enforce: privileged
|
pod-security.kubernetes.io/enforce: privileged
|
||||||
pod-security.kubernetes.io/warn: privileged
|
pod-security.kubernetes.io/warn: privileged
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ democratic-csi:
|
|||||||
image:
|
image:
|
||||||
registry: ghcr.io/democratic-csi/democratic-csi
|
registry: ghcr.io/democratic-csi/democratic-csi
|
||||||
tag: v1.9.5@@sha256:fc3b7d7ed3a616714139525075312758e23a5d425ffb539ad12c9bd20fb6001f
|
tag: v1.9.5@@sha256:fc3b7d7ed3a616714139525075312758e23a5d425ffb539ad12c9bd20fb6001f
|
||||||
existingConfigSecret: synology-iscsi-config-secret
|
existingConfigSecret: synology-iscsi-config
|
||||||
config:
|
config:
|
||||||
driver: synology-iscsi
|
driver: synology-iscsi
|
||||||
resources:
|
resources:
|
||||||
|
|||||||
14
clusters/cl01tl/helm/descheduler/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/descheduler/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -5,7 +5,7 @@ description: Directus
|
|||||||
keywords:
|
keywords:
|
||||||
- directus
|
- directus
|
||||||
- content-management-system
|
- content-management-system
|
||||||
home: https://docs.alexlebens.dev/applications/descheduler/
|
home: https://docs.alexlebens.dev/applications/directus/
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/directus/directus
|
- https://github.com/directus/directus
|
||||||
- https://github.com/directus/directus/pkgs/container/directus
|
- https://github.com/directus/directus/pkgs/container/directus
|
||||||
@@ -29,4 +29,4 @@ dependencies:
|
|||||||
repository: oci://harbor.alexlebens.net/helm-charts
|
repository: oci://harbor.alexlebens.net/helm-charts
|
||||||
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/directus.png
|
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/directus.png
|
||||||
# renovate: datasource=github-releases depName=directus/directus
|
# renovate: datasource=github-releases depName=directus/directus
|
||||||
appVersion: 11.17.2
|
appVersion: 11.17.3
|
||||||
|
|||||||
14
clusters/cl01tl/helm/directus/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/directus/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -5,13 +5,20 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: directus-config
|
app.kubernetes.io/name: directus-config
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
|
- secretKey: key
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/directus/key
|
||||||
|
property: key
|
||||||
|
- secretKey: secret
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/directus/key
|
||||||
|
property: secret
|
||||||
- secretKey: admin-email
|
- secretKey: admin-email
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/directus/config
|
key: /cl01tl/directus/config
|
||||||
@@ -20,38 +27,6 @@ spec:
|
|||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/directus/config
|
key: /cl01tl/directus/config
|
||||||
property: admin-password
|
property: admin-password
|
||||||
- secretKey: secret
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/directus/config
|
|
||||||
property: secret
|
|
||||||
- secretKey: key
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/directus/config
|
|
||||||
property: key
|
|
||||||
|
|
||||||
---
|
|
||||||
apiVersion: external-secrets.io/v1
|
|
||||||
kind: ExternalSecret
|
|
||||||
metadata:
|
|
||||||
name: directus-oidc-secret
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
labels:
|
|
||||||
app.kubernetes.io/name: directus-oidc-secret
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
|
||||||
secretStoreRef:
|
|
||||||
kind: ClusterSecretStore
|
|
||||||
name: vault
|
|
||||||
data:
|
|
||||||
- secretKey: OIDC_CLIENT_ID
|
|
||||||
remoteRef:
|
|
||||||
key: /authentik/oidc/directus
|
|
||||||
property: client
|
|
||||||
- secretKey: OIDC_CLIENT_SECRET
|
|
||||||
remoteRef:
|
|
||||||
key: /authentik/oidc/directus
|
|
||||||
property: secret
|
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
@@ -61,18 +36,67 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: directus-metric-token
|
app.kubernetes.io/name: directus-metric-token
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: metric-token
|
- secretKey: metric-token
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/directus/metrics
|
key: /cl01tl/directus/metrics
|
||||||
property: metric-token
|
property: metric-token
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: external-secrets.io/v1
|
||||||
|
kind: ExternalSecret
|
||||||
|
metadata:
|
||||||
|
name: directus-valkey-config
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: directus-valkey-config
|
||||||
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
secretStoreRef:
|
||||||
|
kind: ClusterSecretStore
|
||||||
|
name: openbao
|
||||||
|
data:
|
||||||
|
- secretKey: user
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/directus/valkey
|
||||||
|
property: user
|
||||||
|
- secretKey: password
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/directus/valkey
|
||||||
|
property: password
|
||||||
|
- secretKey: default
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/directus/valkey
|
||||||
|
property: password
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: external-secrets.io/v1
|
||||||
|
kind: ExternalSecret
|
||||||
|
metadata:
|
||||||
|
name: directus-oidc-authentik
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: directus-oidc-authentik
|
||||||
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
secretStoreRef:
|
||||||
|
kind: ClusterSecretStore
|
||||||
|
name: openbao
|
||||||
|
data:
|
||||||
|
- secretKey: OIDC_CLIENT_ID
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/authentik/oidc/directus
|
||||||
|
property: client
|
||||||
|
- secretKey: OIDC_CLIENT_SECRET
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/authentik/oidc/directus
|
||||||
|
property: secret
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
@@ -81,12 +105,11 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: directus-bucket-garage
|
app.kubernetes.io/name: directus-bucket-garage
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: ACCESS_KEY_ID
|
- secretKey: ACCESS_KEY_ID
|
||||||
remoteRef:
|
remoteRef:
|
||||||
@@ -100,31 +123,3 @@ spec:
|
|||||||
remoteRef:
|
remoteRef:
|
||||||
key: /garage/home-infra/directus-assets
|
key: /garage/home-infra/directus-assets
|
||||||
property: ACCESS_REGION
|
property: ACCESS_REGION
|
||||||
|
|
||||||
---
|
|
||||||
apiVersion: external-secrets.io/v1
|
|
||||||
kind: ExternalSecret
|
|
||||||
metadata:
|
|
||||||
name: directus-valkey-config
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
labels:
|
|
||||||
app.kubernetes.io/name: directus-valkey-config
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
|
||||||
secretStoreRef:
|
|
||||||
kind: ClusterSecretStore
|
|
||||||
name: vault
|
|
||||||
data:
|
|
||||||
- secretKey: default
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/directus/valkey
|
|
||||||
property: password
|
|
||||||
- secretKey: user
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/directus/valkey
|
|
||||||
property: user
|
|
||||||
- secretKey: password
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/directus/valkey
|
|
||||||
property: password
|
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ directus:
|
|||||||
main:
|
main:
|
||||||
image:
|
image:
|
||||||
repository: ghcr.io/directus/directus
|
repository: ghcr.io/directus/directus
|
||||||
tag: 11.17.2@sha256:5e5978377f1cc9820ffc5b92597da1573a1350ea57f8aba42efd999139993874
|
tag: 11.17.3@sha256:ae6ab737fd04077d295bbefa545cc4aefccc206e3d0120c83812f9b482a8c9a5
|
||||||
env:
|
env:
|
||||||
- name: PUBLIC_URL
|
- name: PUBLIC_URL
|
||||||
value: https://directus.alexlebens.net
|
value: https://directus.alexlebens.net
|
||||||
@@ -113,12 +113,12 @@ directus:
|
|||||||
- name: AUTH_AUTHENTIK_CLIENT_ID
|
- name: AUTH_AUTHENTIK_CLIENT_ID
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: directus-oidc-secret
|
name: directus-oidc-authentik
|
||||||
key: OIDC_CLIENT_ID
|
key: OIDC_CLIENT_ID
|
||||||
- name: AUTH_AUTHENTIK_CLIENT_SECRET
|
- name: AUTH_AUTHENTIK_CLIENT_SECRET
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: directus-oidc-secret
|
name: directus-oidc-authentik
|
||||||
key: OIDC_CLIENT_SECRET
|
key: OIDC_CLIENT_SECRET
|
||||||
- name: AUTH_AUTHENTIK_SCOPE
|
- name: AUTH_AUTHENTIK_SCOPE
|
||||||
value: openid profile email
|
value: openid profile email
|
||||||
|
|||||||
14
clusters/cl01tl/helm/elastic-operator/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/elastic-operator/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
14
clusters/cl01tl/helm/element-web/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/element-web/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
14
clusters/cl01tl/helm/eraser/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/eraser/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -5,7 +5,7 @@ description: Excalidraw
|
|||||||
keywords:
|
keywords:
|
||||||
- excalidraw
|
- excalidraw
|
||||||
- drawing
|
- drawing
|
||||||
home: https://docs.alexlebens.dev/applications/eraser/
|
home: https://docs.alexlebens.dev/applications/excalidraw/
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/excalidraw/excalidraw
|
- https://github.com/excalidraw/excalidraw
|
||||||
- https://hub.docker.com/r/excalidraw/excalidraw
|
- https://hub.docker.com/r/excalidraw/excalidraw
|
||||||
|
|||||||
14
clusters/cl01tl/helm/excalidraw/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/excalidraw/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -8,7 +8,7 @@ excalidraw:
|
|||||||
main:
|
main:
|
||||||
image:
|
image:
|
||||||
repository: excalidraw/excalidraw
|
repository: excalidraw/excalidraw
|
||||||
tag: latest@sha256:3c2513e830bb6e195147c05b34ecf8393d0ba2b1cc86e93b407a5777d6135c6c
|
tag: latest@sha256:20ffa04668e19616bb0c1b3632849e5cd96e0bc7a1336b73d9d072667f2c2854
|
||||||
env:
|
env:
|
||||||
- name: NODE_ENV
|
- name: NODE_ENV
|
||||||
value: production
|
value: production
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ description: External DNS
|
|||||||
keywords:
|
keywords:
|
||||||
- external-dns
|
- external-dns
|
||||||
- dns
|
- dns
|
||||||
home: https://docs.alexlebens.dev/applications/eraser/
|
home: https://docs.alexlebens.dev/applications/external-dns/
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/kubernetes-sigs/external-dns
|
- https://github.com/kubernetes-sigs/external-dns
|
||||||
- https://explore.ggcr.dev/?repo=registry.k8s.io%2Fexternal-dns%2Fexternal-dns
|
- https://explore.ggcr.dev/?repo=registry.k8s.io%2Fexternal-dns%2Fexternal-dns
|
||||||
|
|||||||
14
clusters/cl01tl/helm/external-dns/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/external-dns/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: external-device-names
|
app.kubernetes.io/name: external-device-names
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
endpoints:
|
endpoints:
|
||||||
# Unifi UDM
|
# Unifi UDM
|
||||||
@@ -48,8 +47,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: iot-device-names
|
app.kubernetes.io/name: iot-device-names
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
endpoints:
|
endpoints:
|
||||||
# Airgradient
|
# Airgradient
|
||||||
@@ -82,6 +80,18 @@ spec:
|
|||||||
recordType: A
|
recordType: A
|
||||||
targets:
|
targets:
|
||||||
- 10.230.0.100
|
- 10.230.0.100
|
||||||
|
# HD Homerun
|
||||||
|
- dnsName: dv01hr.alexlebens.net
|
||||||
|
recordTTL: 180
|
||||||
|
recordType: A
|
||||||
|
targets:
|
||||||
|
- 10.232.1.72
|
||||||
|
# Pi KVM
|
||||||
|
- dnsName: dv02kv.alexlebens.net
|
||||||
|
recordTTL: 180
|
||||||
|
recordType: A
|
||||||
|
targets:
|
||||||
|
- 10.232.1.71
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: externaldns.k8s.io/v1alpha1
|
apiVersion: externaldns.k8s.io/v1alpha1
|
||||||
@@ -91,8 +101,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: server-host-names
|
app.kubernetes.io/name: server-host-names
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
endpoints:
|
endpoints:
|
||||||
# Unifi Gateway
|
# Unifi Gateway
|
||||||
@@ -125,6 +134,18 @@ spec:
|
|||||||
recordType: A
|
recordType: A
|
||||||
targets:
|
targets:
|
||||||
- 10.232.1.52
|
- 10.232.1.52
|
||||||
|
# Desktop
|
||||||
|
- dnsName: pd05wd.alexlebens.net
|
||||||
|
recordTTL: 180
|
||||||
|
recordType: A
|
||||||
|
targets:
|
||||||
|
- 10.230.0.115
|
||||||
|
# Laptop
|
||||||
|
- dnsName: pl02mc.alexlebens.net
|
||||||
|
recordTTL: 180
|
||||||
|
recordType: A
|
||||||
|
targets:
|
||||||
|
- 10.230.0.105
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: externaldns.k8s.io/v1alpha1
|
apiVersion: externaldns.k8s.io/v1alpha1
|
||||||
@@ -134,8 +155,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: cluster-service-names
|
app.kubernetes.io/name: cluster-service-names
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
endpoints:
|
endpoints:
|
||||||
# Treafik Proxy
|
# Treafik Proxy
|
||||||
|
|||||||
@@ -5,12 +5,11 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: external-dns-unifi-secret
|
app.kubernetes.io/name: external-dns-unifi-secret
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: api-key
|
- secretKey: api-key
|
||||||
remoteRef:
|
remoteRef:
|
||||||
|
|||||||
@@ -18,4 +18,4 @@ dependencies:
|
|||||||
repository: https://charts.external-secrets.io
|
repository: https://charts.external-secrets.io
|
||||||
icon: https://raw.githubusercontent.com/external-secrets/external-secrets/refs/heads/main/assets/eso-logo-large.png
|
icon: https://raw.githubusercontent.com/external-secrets/external-secrets/refs/heads/main/assets/eso-logo-large.png
|
||||||
# renovate: datasource=github-releases depName=external-secrets/external-secrets
|
# renovate: datasource=github-releases depName=external-secrets/external-secrets
|
||||||
appVersion: vv2.3.0
|
appVersion: v2.3.0
|
||||||
|
|||||||
14
clusters/cl01tl/helm/external-secrets/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/external-secrets/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: external-secrets
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: external-secrets
|
||||||
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: system:auth-delegator
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ .Release.Name }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: vault
|
app.kubernetes.io/name: vault
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
provider:
|
provider:
|
||||||
vault:
|
vault:
|
||||||
@@ -17,3 +16,28 @@ spec:
|
|||||||
namespace: vault
|
namespace: vault
|
||||||
name: vault-token
|
name: vault-token
|
||||||
key: token
|
key: token
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: external-secrets.io/v1
|
||||||
|
kind: ClusterSecretStore
|
||||||
|
metadata:
|
||||||
|
name: openbao
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: openbao
|
||||||
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
provider:
|
||||||
|
vault:
|
||||||
|
server: http://openbao-internal.openbao:8200
|
||||||
|
path: secret
|
||||||
|
version: v2
|
||||||
|
auth:
|
||||||
|
kubernetes:
|
||||||
|
mountPath: kubernetes
|
||||||
|
role: external-secrets
|
||||||
|
serviceAccountRef:
|
||||||
|
name: {{ .Release.Name }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
audiences:
|
||||||
|
- openbao
|
||||||
|
|||||||
21
clusters/cl01tl/helm/foldergram/templates/_helpers.tpl
Normal file
21
clusters/cl01tl/helm/foldergram/templates/_helpers.tpl
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
NFS names
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.storageNfsName" -}}
|
||||||
|
foldergram-pictures-collections-nfs-storage
|
||||||
|
{{- end -}}
|
||||||
@@ -1,14 +1,13 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: foldergram-pictures-collections-nfs-storage
|
name: {{ include "custom.storageNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: foldergram-pictures-collections-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.storageNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
volumeName: foldergram-pictures-collections-nfs-storage
|
volumeName: {{ include "custom.storageNfsName" . }}
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
accessModes:
|
accessModes:
|
||||||
- ReadWriteMany
|
- ReadWriteMany
|
||||||
|
|||||||
@@ -1,12 +1,11 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolume
|
kind: PersistentVolume
|
||||||
metadata:
|
metadata:
|
||||||
name: foldergram-pictures-collections-nfs-storage
|
name: {{ include "custom.storageNfsName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: foldergram-pictures-collections-nfs-storage
|
app.kubernetes.io/name: {{ include "custom.storageNfsName" . }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
persistentVolumeReclaimPolicy: Retain
|
persistentVolumeReclaimPolicy: Retain
|
||||||
storageClassName: nfs-client
|
storageClassName: nfs-client
|
||||||
|
|||||||
@@ -70,7 +70,7 @@ foldergram:
|
|||||||
forceRename: foldergram-data
|
forceRename: foldergram-data
|
||||||
storageClass: synology-iscsi-delete
|
storageClass: synology-iscsi-delete
|
||||||
accessMode: ReadWriteOnce
|
accessMode: ReadWriteOnce
|
||||||
size: 100Gi
|
size: 250Gi
|
||||||
advancedMounts:
|
advancedMounts:
|
||||||
main:
|
main:
|
||||||
main:
|
main:
|
||||||
|
|||||||
14
clusters/cl01tl/helm/freshrss/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/freshrss/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,54 +1,52 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: freshrss-install-secret
|
name: freshrss-install-config
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: freshrss-install-secret
|
app.kubernetes.io/name: freshrss-install-config
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: ADMIN_EMAIL
|
- secretKey: ADMIN_EMAIL
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/freshrss/config
|
key: /cl01tl/freshrss/config
|
||||||
property: ADMIN_EMAIL
|
property: admin-email
|
||||||
- secretKey: ADMIN_PASSWORD
|
- secretKey: ADMIN_PASSWORD
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/freshrss/config
|
key: /cl01tl/freshrss/config
|
||||||
property: ADMIN_PASSWORD
|
property: admin-password
|
||||||
- secretKey: ADMIN_API_PASSWORD
|
- secretKey: ADMIN_API_PASSWORD
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/freshrss/config
|
key: /cl01tl/freshrss/config
|
||||||
property: ADMIN_API_PASSWORD
|
property: admin-api-password
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: freshrss-oidc-secret
|
name: freshrss-oidc-authentik
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: freshrss-oidc-secret
|
app.kubernetes.io/name: freshrss-oidc-authentik
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: OIDC_CLIENT_ID
|
- secretKey: OIDC_CLIENT_ID
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /authentik/oidc/freshrss
|
key: /cl01tl/authentik/oidc/freshrss
|
||||||
property: client
|
property: client
|
||||||
- secretKey: OIDC_CLIENT_SECRET
|
- secretKey: OIDC_CLIENT_SECRET
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /authentik/oidc/freshrss
|
key: /cl01tl/authentik/oidc/freshrss
|
||||||
property: secret
|
property: secret
|
||||||
- secretKey: OIDC_CLIENT_CRYPTO_KEY
|
- secretKey: OIDC_CLIENT_CRYPTO_KEY
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /authentik/oidc/freshrss
|
key: /cl01tl/freshrss/key
|
||||||
property: crypto-key
|
property: oidc-client-crypto-key
|
||||||
|
|||||||
@@ -73,9 +73,9 @@ freshrss:
|
|||||||
value: preferred_username
|
value: preferred_username
|
||||||
envFrom:
|
envFrom:
|
||||||
- secretRef:
|
- secretRef:
|
||||||
name: freshrss-oidc-secret
|
name: freshrss-oidc-authentik
|
||||||
- secretRef:
|
- secretRef:
|
||||||
name: freshrss-install-secret
|
name: freshrss-install-config
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 1m
|
cpu: 1m
|
||||||
|
|||||||
@@ -21,4 +21,4 @@ dependencies:
|
|||||||
version: 4.6.2
|
version: 4.6.2
|
||||||
icon: https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/garage.png
|
icon: https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/garage.png
|
||||||
# renovate: datasource=docker depName=dxflrs/garage
|
# renovate: datasource=docker depName=dxflrs/garage
|
||||||
appVersion: v2.2.0
|
appVersion: v2.3.0
|
||||||
|
|||||||
14
clusters/cl01tl/helm/garage/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/garage/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,26 +1,25 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: garage-token-secret
|
name: garage-token
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: garage-token-secret
|
app.kubernetes.io/name: garage-token
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: GARAGE_RPC_SECRET
|
- secretKey: GARAGE_RPC_SECRET
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/garage/token
|
key: /cl01tl/garage/config
|
||||||
property: rpc
|
property: rpc-secret
|
||||||
- secretKey: GARAGE_ADMIN_TOKEN
|
- secretKey: GARAGE_ADMIN_TOKEN
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/garage/token
|
key: /cl01tl/garage/config
|
||||||
property: admin
|
property: admin-token
|
||||||
- secretKey: GARAGE_METRICS_TOKEN
|
- secretKey: GARAGE_METRICS_TOKEN
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/garage/token
|
key: /cl01tl/garage/config
|
||||||
property: metric
|
property: metrics-token
|
||||||
|
|||||||
@@ -6,8 +6,7 @@ metadata:
|
|||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: garage-main
|
app.kubernetes.io/name: garage-main
|
||||||
app.kubernetes.io/service: garage-main
|
app.kubernetes.io/service: garage-main
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
ports:
|
ports:
|
||||||
- name: admin
|
- name: admin
|
||||||
@@ -27,6 +26,6 @@ spec:
|
|||||||
protocol: TCP
|
protocol: TCP
|
||||||
targetPort: 3902
|
targetPort: 3902
|
||||||
selector:
|
selector:
|
||||||
app.kubernetes.io/instance: garage
|
|
||||||
app.kubernetes.io/name: garage
|
app.kubernetes.io/name: garage
|
||||||
|
app.kubernetes.io/instance: garage
|
||||||
garage-type: server
|
garage-type: server
|
||||||
|
|||||||
@@ -21,10 +21,10 @@ garage:
|
|||||||
main:
|
main:
|
||||||
image:
|
image:
|
||||||
repository: dxflrs/garage
|
repository: dxflrs/garage
|
||||||
tag: v2.2.0@sha256:45a61ce3f7c9c24fc23d9ed2b09b27ed560ab87b34605d175d5c588f539c24e4
|
tag: v2.3.0@sha256:866bd13ed2038ba7e7190e840482bc27234c4afaf77be8cfa439ae088c1e4690
|
||||||
envFrom:
|
envFrom:
|
||||||
- secretRef:
|
- secretRef:
|
||||||
name: garage-token-secret
|
name: garage-token
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 10m
|
cpu: 10m
|
||||||
@@ -50,10 +50,10 @@ garage:
|
|||||||
main:
|
main:
|
||||||
image:
|
image:
|
||||||
repository: dxflrs/garage
|
repository: dxflrs/garage
|
||||||
tag: v2.2.0@sha256:45a61ce3f7c9c24fc23d9ed2b09b27ed560ab87b34605d175d5c588f539c24e4
|
tag: v2.3.0@sha256:866bd13ed2038ba7e7190e840482bc27234c4afaf77be8cfa439ae088c1e4690
|
||||||
envFrom:
|
envFrom:
|
||||||
- secretRef:
|
- secretRef:
|
||||||
name: garage-token-secret
|
name: garage-token
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 10m
|
cpu: 10m
|
||||||
@@ -79,10 +79,10 @@ garage:
|
|||||||
main:
|
main:
|
||||||
image:
|
image:
|
||||||
repository: dxflrs/garage
|
repository: dxflrs/garage
|
||||||
tag: v2.2.0@sha256:45a61ce3f7c9c24fc23d9ed2b09b27ed560ab87b34605d175d5c588f539c24e4
|
tag: v2.3.0@sha256:866bd13ed2038ba7e7190e840482bc27234c4afaf77be8cfa439ae088c1e4690
|
||||||
envFrom:
|
envFrom:
|
||||||
- secretRef:
|
- secretRef:
|
||||||
name: garage-token-secret
|
name: garage-token
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 10m
|
cpu: 10m
|
||||||
@@ -104,7 +104,7 @@ garage:
|
|||||||
- name: API_ADMIN_KEY
|
- name: API_ADMIN_KEY
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: garage-token-secret
|
name: garage-token
|
||||||
key: GARAGE_ADMIN_TOKEN
|
key: GARAGE_ADMIN_TOKEN
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
@@ -273,7 +273,7 @@ garage:
|
|||||||
scrapeTimeout: 2m
|
scrapeTimeout: 2m
|
||||||
path: /metrics
|
path: /metrics
|
||||||
bearerTokenSecret:
|
bearerTokenSecret:
|
||||||
name: garage-token-secret
|
name: garage-token
|
||||||
key: GARAGE_METRICS_TOKEN
|
key: GARAGE_METRICS_TOKEN
|
||||||
route:
|
route:
|
||||||
webui:
|
webui:
|
||||||
|
|||||||
14
clusters/cl01tl/helm/gatus/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/gatus/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,42 +1,40 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: gatus-config-secret
|
name: gatus-config
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gatus-config-secret
|
app.kubernetes.io/name: gatus-config-secret
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: NTFY_TOKEN
|
- secretKey: NTFY_TOKEN
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /ntfy/user/cl01tl
|
key: /cl01tl/ntfy/users/cl01tl
|
||||||
property: token
|
property: token
|
||||||
|
|
||||||
---
|
---
|
||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: gatus-oidc-secret
|
name: gatus-oidc-authentik
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gatus-oidc-secret
|
app.kubernetes.io/name: gatus-oidc-authentik
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: OIDC_CLIENT_ID
|
- secretKey: OIDC_CLIENT_ID
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /authentik/oidc/gatus
|
key: /cl01tl/authentik/oidc/gatus
|
||||||
property: client
|
property: client
|
||||||
- secretKey: OIDC_CLIENT_SECRET
|
- secretKey: OIDC_CLIENT_SECRET
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /authentik/oidc/gatus
|
key: /cl01tl/authentik/oidc/gatus
|
||||||
property: secret
|
property: secret
|
||||||
|
|||||||
@@ -20,17 +20,17 @@ gatus:
|
|||||||
NTFY_TOKEN:
|
NTFY_TOKEN:
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: gatus-config-secret
|
name: gatus-config
|
||||||
key: NTFY_TOKEN
|
key: NTFY_TOKEN
|
||||||
OIDC_CLIENT_ID:
|
OIDC_CLIENT_ID:
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: gatus-oidc-secret
|
name: gatus-oidc-authentik
|
||||||
key: OIDC_CLIENT_ID
|
key: OIDC_CLIENT_ID
|
||||||
OIDC_CLIENT_SECRET:
|
OIDC_CLIENT_SECRET:
|
||||||
valueFrom:
|
valueFrom:
|
||||||
secretKeyRef:
|
secretKeyRef:
|
||||||
name: gatus-oidc-secret
|
name: gatus-oidc-authentik
|
||||||
key: OIDC_CLIENT_SECRET
|
key: OIDC_CLIENT_SECRET
|
||||||
POSTGRES_USER:
|
POSTGRES_USER:
|
||||||
valueFrom:
|
valueFrom:
|
||||||
@@ -266,6 +266,9 @@ gatus:
|
|||||||
- name: vault
|
- name: vault
|
||||||
url: https://vault.alexlebens.net
|
url: https://vault.alexlebens.net
|
||||||
<<: *defaults
|
<<: *defaults
|
||||||
|
- name: openbao
|
||||||
|
url: https://bao.alexlebens.net
|
||||||
|
<<: *defaults
|
||||||
- name: backrest
|
- name: backrest
|
||||||
url: https://backrest.alexlebens.net
|
url: https://backrest.alexlebens.net
|
||||||
<<: *defaults
|
<<: *defaults
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: generic-device-plugin
|
- name: generic-device-plugin
|
||||||
repository: https://gitea.alexlebens.dev/api/packages/alexlebens/helm
|
repository: https://gitea.alexlebens.dev/api/packages/alexlebens/helm
|
||||||
version: 0.20.30
|
version: 0.20.31
|
||||||
digest: sha256:9bc92f3ced6f5bad9f656ce355f5a633c200183f1ab6fa26c897bea9f76054ee
|
digest: sha256:2e073f735a5ff699844eb67715ab20d403261b3e9c035ebdc4292cee9666b4f4
|
||||||
generated: "2026-04-14T00:59:53.650540444Z"
|
generated: "2026-04-15T01:16:30.361061773Z"
|
||||||
|
|||||||
@@ -14,6 +14,6 @@ maintainers:
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: generic-device-plugin
|
- name: generic-device-plugin
|
||||||
repository: https://gitea.alexlebens.dev/api/packages/alexlebens/helm
|
repository: https://gitea.alexlebens.dev/api/packages/alexlebens/helm
|
||||||
version: 0.20.30
|
version: 0.20.31
|
||||||
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/kubernetes.png
|
icon: https://cdn.jsdelivr.net/gh/selfhst/icons/png/kubernetes.png
|
||||||
appVersion: 1.0.0
|
appVersion: 1.0.0
|
||||||
|
|||||||
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -1,11 +1,10 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Namespace
|
kind: Namespace
|
||||||
metadata:
|
metadata:
|
||||||
name: generic-device-plugin
|
name: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: generic-device-plugin
|
app.kubernetes.io/name: {{ .Release.Namespace }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
pod-security.kubernetes.io/audit: privileged
|
pod-security.kubernetes.io/audit: privileged
|
||||||
pod-security.kubernetes.io/enforce: privileged
|
pod-security.kubernetes.io/enforce: privileged
|
||||||
pod-security.kubernetes.io/warn: privileged
|
pod-security.kubernetes.io/warn: privileged
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: gitea
|
- name: gitea
|
||||||
repository: https://dl.gitea.com/charts/
|
repository: https://dl.gitea.com/charts/
|
||||||
version: 12.5.0
|
version: 12.5.3
|
||||||
- name: actions
|
- name: actions
|
||||||
repository: https://dl.gitea.com/charts/
|
repository: https://dl.gitea.com/charts/
|
||||||
version: 0.0.5
|
version: 0.1.0
|
||||||
- name: meilisearch
|
- name: meilisearch
|
||||||
repository: https://meilisearch.github.io/meilisearch-kubernetes
|
repository: https://meilisearch.github.io/meilisearch-kubernetes
|
||||||
version: 0.30.0
|
version: 0.32.0
|
||||||
- name: cloudflared
|
- name: cloudflared
|
||||||
repository: oci://harbor.alexlebens.net/helm-charts
|
repository: oci://harbor.alexlebens.net/helm-charts
|
||||||
version: 2.5.0
|
version: 2.5.0
|
||||||
@@ -23,5 +23,5 @@ dependencies:
|
|||||||
- name: volsync-target
|
- name: volsync-target
|
||||||
repository: oci://harbor.alexlebens.net/helm-charts
|
repository: oci://harbor.alexlebens.net/helm-charts
|
||||||
version: 0.8.0
|
version: 0.8.0
|
||||||
digest: sha256:c2d6fcbbaffacda0598d81d7d3745e83040d59525ecaccd35d57dce773cf5309
|
digest: sha256:2144d55ea34ba25bd81c1e479ee5cd27097fafb5676b96e63aa0e32ad2868925
|
||||||
generated: "2026-04-13T20:33:29.673072156Z"
|
generated: "2026-04-16T20:09:26.031592859Z"
|
||||||
|
|||||||
@@ -26,14 +26,14 @@ maintainers:
|
|||||||
- name: alexlebens
|
- name: alexlebens
|
||||||
dependencies:
|
dependencies:
|
||||||
- name: gitea
|
- name: gitea
|
||||||
version: 12.5.0
|
version: 12.5.3
|
||||||
repository: https://dl.gitea.com/charts/
|
repository: https://dl.gitea.com/charts/
|
||||||
- name: actions
|
- name: actions
|
||||||
alias: gitea-actions
|
alias: gitea-actions
|
||||||
repository: https://dl.gitea.com/charts/
|
repository: https://dl.gitea.com/charts/
|
||||||
version: 0.0.5
|
version: 0.1.0
|
||||||
- name: meilisearch
|
- name: meilisearch
|
||||||
version: 0.30.0
|
version: 0.32.0
|
||||||
repository: https://meilisearch.github.io/meilisearch-kubernetes
|
repository: https://meilisearch.github.io/meilisearch-kubernetes
|
||||||
- name: cloudflared
|
- name: cloudflared
|
||||||
repository: oci://harbor.alexlebens.net/helm-charts
|
repository: oci://harbor.alexlebens.net/helm-charts
|
||||||
@@ -56,4 +56,4 @@ dependencies:
|
|||||||
repository: oci://harbor.alexlebens.net/helm-charts
|
repository: oci://harbor.alexlebens.net/helm-charts
|
||||||
icon: https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/gitea.png
|
icon: https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/gitea.png
|
||||||
# renovate: datasource=github-releases depName=go-gitea/gitea
|
# renovate: datasource=github-releases depName=go-gitea/gitea
|
||||||
appVersion: 1.25.5
|
appVersion: 1.26.0
|
||||||
|
|||||||
14
clusters/cl01tl/helm/gitea/templates/_helpers.tpl
Normal file
14
clusters/cl01tl/helm/gitea/templates/_helpers.tpl
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.labels" -}}
|
||||||
|
{{ include "custom.selectorLabels" $ }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "custom.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
app.kubernetes.io/part-of: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gitea-custom-templates
|
app.kubernetes.io/name: gitea-custom-templates
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
data:
|
data:
|
||||||
header.tmpl: |
|
header.tmpl: |
|
||||||
<script defer src="https://rybbit.alexlebens.dev/api/script.js" data-site-id="b515c34a6dcc"></script>
|
<script defer src="https://rybbit.alexlebens.dev/api/script.js" data-site-id="b515c34a6dcc"></script>
|
||||||
|
|||||||
@@ -1,64 +1,15 @@
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
|
||||||
name: gitea-admin-secret
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
labels:
|
|
||||||
app.kubernetes.io/name: gitea-admin-secret
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
|
||||||
secretStoreRef:
|
|
||||||
kind: ClusterSecretStore
|
|
||||||
name: vault
|
|
||||||
data:
|
|
||||||
- secretKey: username
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/gitea/auth/admin
|
|
||||||
property: username
|
|
||||||
- secretKey: password
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/gitea/auth/admin
|
|
||||||
property: password
|
|
||||||
|
|
||||||
---
|
|
||||||
apiVersion: external-secrets.io/v1
|
|
||||||
kind: ExternalSecret
|
|
||||||
metadata:
|
|
||||||
name: gitea-oidc-secret
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
labels:
|
|
||||||
app.kubernetes.io/name: gitea-oidc-secret
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
|
||||||
secretStoreRef:
|
|
||||||
kind: ClusterSecretStore
|
|
||||||
name: vault
|
|
||||||
data:
|
|
||||||
- secretKey: secret
|
|
||||||
remoteRef:
|
|
||||||
key: /authentik/oidc/gitea
|
|
||||||
property: secret
|
|
||||||
- secretKey: key
|
|
||||||
remoteRef:
|
|
||||||
key: /authentik/oidc/gitea
|
|
||||||
property: client
|
|
||||||
|
|
||||||
---
|
|
||||||
apiVersion: external-secrets.io/v1
|
|
||||||
kind: ExternalSecret
|
|
||||||
metadata:
|
metadata:
|
||||||
name: gitea-runner-secret
|
name: gitea-runner-secret
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gitea-runner-secret
|
app.kubernetes.io/name: gitea-runner-secret
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
data:
|
||||||
- secretKey: token
|
- secretKey: token
|
||||||
remoteRef:
|
remoteRef:
|
||||||
@@ -69,80 +20,15 @@ spec:
|
|||||||
apiVersion: external-secrets.io/v1
|
apiVersion: external-secrets.io/v1
|
||||||
kind: ExternalSecret
|
kind: ExternalSecret
|
||||||
metadata:
|
metadata:
|
||||||
name: gitea-renovate-secret
|
name: gitea-meilisearch-key
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gitea-renovate-secret
|
app.kubernetes.io/name: gitea-meilisearch-key
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
secretStoreRef:
|
secretStoreRef:
|
||||||
kind: ClusterSecretStore
|
kind: ClusterSecretStore
|
||||||
name: vault
|
name: openbao
|
||||||
data:
|
|
||||||
- secretKey: RENOVATE_ENDPOINT
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/gitea/renovate
|
|
||||||
property: RENOVATE_ENDPOINT
|
|
||||||
- secretKey: RENOVATE_GIT_AUTHOR
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/gitea/renovate
|
|
||||||
property: RENOVATE_GIT_AUTHOR
|
|
||||||
- secretKey: RENOVATE_TOKEN
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/gitea/renovate
|
|
||||||
property: RENOVATE_TOKEN
|
|
||||||
- secretKey: RENOVATE_GIT_PRIVATE_KEY
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/gitea/renovate
|
|
||||||
property: id_rsa
|
|
||||||
- secretKey: RENOVATE_GITHUB_COM_TOKEN
|
|
||||||
remoteRef:
|
|
||||||
key: /github/gitea-cl01tl
|
|
||||||
property: token
|
|
||||||
|
|
||||||
---
|
|
||||||
apiVersion: external-secrets.io/v1
|
|
||||||
kind: ExternalSecret
|
|
||||||
metadata:
|
|
||||||
name: gitea-renovate-ssh-secret
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
labels:
|
|
||||||
app.kubernetes.io/name: gitea-renovate-ssh-secret
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
|
||||||
secretStoreRef:
|
|
||||||
kind: ClusterSecretStore
|
|
||||||
name: vault
|
|
||||||
data:
|
|
||||||
- secretKey: config
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/gitea/renovate
|
|
||||||
property: ssh_config
|
|
||||||
- secretKey: id_rsa
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/gitea/renovate
|
|
||||||
property: id_rsa
|
|
||||||
- secretKey: id_rsa.pub
|
|
||||||
remoteRef:
|
|
||||||
key: /cl01tl/gitea/renovate
|
|
||||||
property: id_rsa.pub
|
|
||||||
|
|
||||||
---
|
|
||||||
apiVersion: external-secrets.io/v1
|
|
||||||
kind: ExternalSecret
|
|
||||||
metadata:
|
|
||||||
name: gitea-meilisearch-master-key-secret
|
|
||||||
namespace: {{ .Release.Namespace }}
|
|
||||||
labels:
|
|
||||||
app.kubernetes.io/name: gitea-meilisearch-master-key-secret
|
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
|
||||||
secretStoreRef:
|
|
||||||
kind: ClusterSecretStore
|
|
||||||
name: vault
|
|
||||||
target:
|
target:
|
||||||
template:
|
template:
|
||||||
mergePolicy: Merge
|
mergePolicy: Merge
|
||||||
@@ -153,4 +39,27 @@ spec:
|
|||||||
- secretKey: MEILI_MASTER_KEY
|
- secretKey: MEILI_MASTER_KEY
|
||||||
remoteRef:
|
remoteRef:
|
||||||
key: /cl01tl/gitea/meilisearch
|
key: /cl01tl/gitea/meilisearch
|
||||||
property: MEILI_MASTER_KEY
|
property: master-key
|
||||||
|
|
||||||
|
---
|
||||||
|
apiVersion: external-secrets.io/v1
|
||||||
|
kind: ExternalSecret
|
||||||
|
metadata:
|
||||||
|
name: gitea-oidc-authentik
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: gitea-oidc-authentik
|
||||||
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
secretStoreRef:
|
||||||
|
kind: ClusterSecretStore
|
||||||
|
name: openbao
|
||||||
|
data:
|
||||||
|
- secretKey: secret
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/authentik/oidc/gitea
|
||||||
|
property: secret
|
||||||
|
- secretKey: key
|
||||||
|
remoteRef:
|
||||||
|
key: /cl01tl/authentik/oidc/gitea
|
||||||
|
property: client
|
||||||
|
|||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gitea
|
app.kubernetes.io/name: gitea
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
parentRefs:
|
parentRefs:
|
||||||
- group: gateway.networking.k8s.io
|
- group: gateway.networking.k8s.io
|
||||||
@@ -21,8 +20,6 @@ spec:
|
|||||||
type: PathPrefix
|
type: PathPrefix
|
||||||
value: /
|
value: /
|
||||||
backendRefs:
|
backendRefs:
|
||||||
- group: ''
|
- kind: Service
|
||||||
kind: Service
|
|
||||||
name: gitea-http
|
name: gitea-http
|
||||||
port: 3000
|
port: 3000
|
||||||
weight: 100
|
|
||||||
|
|||||||
@@ -1,12 +1,11 @@
|
|||||||
apiVersion: networking.k8s.io/v1
|
apiVersion: networking.k8s.io/v1
|
||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
name: gitea-tailscale
|
name: {{ .Release.Name }}-tailscale
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gitea-tailscale
|
app.kubernetes.io/name: {{ .Release.Name }}-tailscale
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
tailscale.com/proxy-class: no-metrics
|
tailscale.com/proxy-class: no-metrics
|
||||||
annotations:
|
annotations:
|
||||||
tailscale.com/experimental-forward-cluster-traffic-via-ingress: "true"
|
tailscale.com/experimental-forward-cluster-traffic-via-ingress: "true"
|
||||||
@@ -21,7 +20,7 @@ spec:
|
|||||||
http:
|
http:
|
||||||
paths:
|
paths:
|
||||||
- path: /
|
- path: /
|
||||||
pathType: ImplementationSpecific
|
pathType: Prefix
|
||||||
backend:
|
backend:
|
||||||
service:
|
service:
|
||||||
name: gitea-http
|
name: gitea-http
|
||||||
|
|||||||
@@ -1,11 +1,10 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Namespace
|
kind: Namespace
|
||||||
metadata:
|
metadata:
|
||||||
name: gitea
|
name: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gitea
|
app.kubernetes.io/name: {{ .Release.Namespace }}
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
pod-security.kubernetes.io/audit: privileged
|
pod-security.kubernetes.io/audit: privileged
|
||||||
pod-security.kubernetes.io/enforce: privileged
|
pod-security.kubernetes.io/enforce: privileged
|
||||||
pod-security.kubernetes.io/warn: privileged
|
pod-security.kubernetes.io/warn: privileged
|
||||||
|
|||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gitea-themes-storage
|
app.kubernetes.io/name: gitea-themes-storage
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
volumeMode: Filesystem
|
volumeMode: Filesystem
|
||||||
storageClassName: ceph-filesystem
|
storageClassName: ceph-filesystem
|
||||||
|
|||||||
@@ -5,8 +5,7 @@ metadata:
|
|||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
labels:
|
labels:
|
||||||
app.kubernetes.io/name: gitea
|
app.kubernetes.io/name: gitea
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
{{- include "custom.labels" . | nindent 4 }}
|
||||||
app.kubernetes.io/part-of: {{ .Release.Name }}
|
|
||||||
spec:
|
spec:
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user