webdav
This commit is contained in:
@@ -0,0 +1,18 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: webdav-config
|
||||||
|
namespace: mcp
|
||||||
|
data:
|
||||||
|
config.yml: |
|
||||||
|
address: 0.0.0.0
|
||||||
|
port: 6065
|
||||||
|
|
||||||
|
directory: /data
|
||||||
|
|
||||||
|
permissions: R
|
||||||
|
|
||||||
|
users:
|
||||||
|
- username: "{env}WEBDAV_USERNAME"
|
||||||
|
password: "{env}WEBDAV_PASSWORD"
|
||||||
|
permissions: CRUD
|
||||||
@@ -0,0 +1,83 @@
|
|||||||
|
apiVersion: helm.toolkit.fluxcd.io/v2
|
||||||
|
kind: HelmRelease
|
||||||
|
metadata:
|
||||||
|
name: webdav
|
||||||
|
namespace: mcp
|
||||||
|
spec:
|
||||||
|
interval: 30m
|
||||||
|
chartRef:
|
||||||
|
kind: OCIRepository
|
||||||
|
name: webdav
|
||||||
|
values:
|
||||||
|
controllers:
|
||||||
|
app:
|
||||||
|
containers:
|
||||||
|
app:
|
||||||
|
image:
|
||||||
|
repository: ghcr.io/hacdias/webdav
|
||||||
|
tag: latest
|
||||||
|
args:
|
||||||
|
- "-c"
|
||||||
|
- "/config.yml"
|
||||||
|
env:
|
||||||
|
TZ: Europe/Moscow
|
||||||
|
WEBDAV_USERNAME:
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: webdav-secrets
|
||||||
|
key: WEBDAV_USERNAME
|
||||||
|
WEBDAV_PASSWORD:
|
||||||
|
valueFrom:
|
||||||
|
secretKeyRef:
|
||||||
|
name: webdav-secrets
|
||||||
|
key: WEBDAV_PASSWORD
|
||||||
|
probes:
|
||||||
|
liveness:
|
||||||
|
enabled: true
|
||||||
|
readiness:
|
||||||
|
enabled: true
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
cpu: 50m
|
||||||
|
memory: 64Mi
|
||||||
|
limits:
|
||||||
|
memory: 256Mi
|
||||||
|
|
||||||
|
service:
|
||||||
|
app:
|
||||||
|
controller: app
|
||||||
|
ports:
|
||||||
|
http:
|
||||||
|
port: 6065
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
app:
|
||||||
|
className: traefik
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-prod
|
||||||
|
hosts:
|
||||||
|
- host: dav.aggtaa.com
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
service:
|
||||||
|
identifier: app
|
||||||
|
port: http
|
||||||
|
tls:
|
||||||
|
- secretName: webdav-tls
|
||||||
|
hosts:
|
||||||
|
- dav.aggtaa.com
|
||||||
|
|
||||||
|
persistence:
|
||||||
|
config-yml:
|
||||||
|
type: configMap
|
||||||
|
name: webdav-config
|
||||||
|
subPath: config.yml
|
||||||
|
globalMounts:
|
||||||
|
- path: /config.yml
|
||||||
|
readOnly: true
|
||||||
|
data:
|
||||||
|
type: persistentVolumeClaim
|
||||||
|
existingClaim: markdown-vault-mcp-vault
|
||||||
|
globalMounts:
|
||||||
|
- path: /data
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
apiVersion: source.toolkit.fluxcd.io/v1
|
||||||
|
kind: OCIRepository
|
||||||
|
metadata:
|
||||||
|
name: webdav
|
||||||
|
namespace: mcp
|
||||||
|
spec:
|
||||||
|
interval: 1h
|
||||||
|
url: oci://ghcr.io/bjw-s-labs/helm/app-template
|
||||||
|
ref:
|
||||||
|
tag: "5.0.1"
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||||
|
kind: Kustomization
|
||||||
|
resources:
|
||||||
|
- helmrepository.yaml
|
||||||
|
- configmap.yaml
|
||||||
|
- secret.enc.yaml
|
||||||
|
- helmrelease.yaml
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: webdav-secrets
|
||||||
|
namespace: mcp
|
||||||
|
stringData:
|
||||||
|
WEBDAV_USERNAME: ENC[AES256_GCM,data:BeN5VS8=,iv:XpUr5PG9RWTRGXs7/EzDyLGwUm05Mr0YWpW7PwzNfm8=,tag:3py47tIcTeFxuuAidk2wBg==,type:str]
|
||||||
|
WEBDAV_PASSWORD: ENC[AES256_GCM,data:Rh1ryftcmxgJAHvC/N1o5QeagCvyb3XIpDS7jOTCpJm3Wb5rUcLNmtcW22f0xljw,iv:GmgQJEuzUzSEql+fx5KURKv8CnhXF/z5UlmEn4ta+K0=,tag:AZD1CEbVRm6DiBt66pB9Vg==,type:str]
|
||||||
|
sops:
|
||||||
|
age:
|
||||||
|
- recipient: age14x4jjs2fwdgw28g2pkr6jyj2yzmwc544xwmaaglrxwz5e99seutqtr8jv5
|
||||||
|
enc: |
|
||||||
|
-----BEGIN AGE ENCRYPTED FILE-----
|
||||||
|
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBMSHg0S0dSTC8yNUpPUk9L
|
||||||
|
blNobStHNCt1VzRWWnJRMVFSSHRuNEdRZjJVCjhwKzdpYTRVWEF4NlE2RVRKTllX
|
||||||
|
YjFRL1RZeUxuQWdrWVZQVkZLSE5rYlUKLS0tIEN3WHV5MTJiOXFsbXpVSkJiZk1m
|
||||||
|
MDRObmNYb0dDT3NQNEZMKytrRENrTm8KbtGEFVOOhofeDtcP3+ST3qtxysuVWzTb
|
||||||
|
s/z73tRmakfXnPT9qgBTq+6YcZS+kpgAp7L5krQX9SrsPISAYczdtg==
|
||||||
|
-----END AGE ENCRYPTED FILE-----
|
||||||
|
lastmodified: "2026-07-27T10:52:59Z"
|
||||||
|
mac: ENC[AES256_GCM,data:NjW32RRIxywpArSP6HcyicTaTb9hFDPzfMra2mgBGcrQP4Ev9Nj9IPAY0bKv7VeB2478W4F1qWJ9ImikOgjr5/16VJ3hzuEY0KVtOyP211Gf25TGqX3q05CKPezktsfPWNr6extzgNdnjIv7UicH3rQD0VMZ27Th8KqjJY6HpD4=,iv:7D8G5SMyZD9Q6MDaSZvu1Ujvotiq9i/wMmpi9n+PQnA=,tag:Wa0BoM5owdUjmOxo9k0YnA==,type:str]
|
||||||
|
encrypted_regex: ^(data|stringData)$
|
||||||
|
version: 3.11.0
|
||||||
@@ -9,3 +9,4 @@ resources:
|
|||||||
- homeassistant.yaml
|
- homeassistant.yaml
|
||||||
- openwebui.yaml
|
- openwebui.yaml
|
||||||
- markdown-vault-mcp.yaml
|
- markdown-vault-mcp.yaml
|
||||||
|
- webdav.yaml
|
||||||
|
|||||||
@@ -0,0 +1,21 @@
|
|||||||
|
apiVersion: kustomize.toolkit.fluxcd.io/v1
|
||||||
|
kind: Kustomization
|
||||||
|
metadata:
|
||||||
|
name: webdav
|
||||||
|
namespace: flux-system
|
||||||
|
spec:
|
||||||
|
interval: 10m
|
||||||
|
sourceRef:
|
||||||
|
kind: GitRepository
|
||||||
|
name: flux-system
|
||||||
|
path: ./clusters/base/apps/webdav
|
||||||
|
prune: true
|
||||||
|
wait: true
|
||||||
|
dependsOn:
|
||||||
|
- name: namespaces
|
||||||
|
- name: markdown-vault-mcp
|
||||||
|
retryInterval: 5s
|
||||||
|
decryption:
|
||||||
|
provider: sops
|
||||||
|
secretRef:
|
||||||
|
name: sops-age
|
||||||
Reference in New Issue
Block a user