Skip to content

Commit

Permalink
feat(webtlo): deploy webtlo
Browse files Browse the repository at this point in the history
  • Loading branch information
Maksim Shakavin committed Sep 30, 2024
1 parent a4be1dc commit 83628ec
Show file tree
Hide file tree
Showing 5 changed files with 141 additions and 3 deletions.
1 change: 1 addition & 0 deletions kubernetes/apps/default/kustomization.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ resources:
- ./namespace.yaml
- ./alert.yaml
- ./qbittorrent/ks.yaml
- ./webtlo/ks.yaml
- ./radarr/ks.yaml
- ./sonarr/ks.yaml
- ./prowlarr/ks.yaml
Expand Down
99 changes: 99 additions & 0 deletions kubernetes/apps/default/webtlo/app/helmrelease.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: &app webtlo
spec:
interval: 30m
chart:
spec:
chart: app-template
version: 3.4.0
sourceRef:
kind: HelmRepository
name: bjw-s
namespace: flux-system
install:
remediation:
retries: 3
upgrade:
cleanupOnFail: true
remediation:
strategy: rollback
retries: 3
dependsOn:
- name: longhorn
namespace: storage
- name: volsync
namespace: storage
- name: qbittorrent
namespace: default
values:
controllers:
webtlo:
annotations:
reloader.stakater.com/auto: "true"
containers:
app:
image:
repository: berkut174/webtlo
tag: 3.2.0
env:
TZ: "${TIMEZONE}"
WEBTLO_CRON: "true"
CRON_UPDATE: "15 * * * *"
CRON_CONTROL: "25 * * * *"
CRON_KEEPERS: "0 6 * * *"
CRON_REPORTS: "0 5 * * *"
probes:
liveness: &probes
enabled: true
custom: true
spec:
httpGet:
path: /
port: &port 80
initialDelaySeconds: 60
periodSeconds: 10
timeoutSeconds: 1
failureThreshold: 3
readiness: *probes
securityContext:
allowPrivilegeEscalation: true
runAsNonRoot: false
readOnlyRootFilesystem: false
defaultPodOptions:
securityContext:
runAsUser: 0
runAsGroup: 0
fsGroup: 1000
fsGroupChangePolicy: OnRootMismatch
supplementalGroups: [ 10000 ]
seccompProfile: { type: RuntimeDefault }
service:
app:
controller: webtlo
ports:
http:
port: *port
ingress:
app:
annotations:
gethomepage.dev/enabled: "true"
gethomepage.dev/icon: mdi-harddisk
gethomepage.dev/name: Webtlo
gethomepage.dev/group: Media
gethomepage.dev/description: Guardian torrent management
external-dns.alpha.kubernetes.io/target: "internal.${SECRET_DOMAIN}"
className: internal
hosts:
- host: "webtlo.${SECRET_DOMAIN}"
paths:
- path: /
service:
identifier: app
port: http
persistence:
data:
existingClaim: *app
8 changes: 8 additions & 0 deletions kubernetes/apps/default/webtlo/app/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./helmrelease.yaml
- ../../../../templates/volsync
- ../../../../templates/gatus/internal
30 changes: 30 additions & 0 deletions kubernetes/apps/default/webtlo/ks.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
# yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/kustomization-kustomize-v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app webtlo
namespace: flux-system
spec:
targetNamespace: default
commonMetadata:
labels:
app.kubernetes.io/name: *app
path: ./kubernetes/apps/default/webtlo/app
prune: true
dependsOn:
- name: external-secrets-stores
sourceRef:
kind: GitRepository
name: home-kubernetes
wait: false
interval: 30m
retryInterval: 1m
timeout: 5m
# add if you have volsync and\or gatus
postBuild:
substitute:
APP: *app
VOLSYNC_CAPACITY: 1Gi
VOLSYNC_UID: "1000"
VOLSYNC_GID: "1000"
6 changes: 3 additions & 3 deletions kubernetes/templates/volsync/minio.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ spec:
storageClassName: "${VOLSYNC_STORAGECLASS:-longhorn-snapshot}"
accessModes: ["${VOLSYNC_ACCESSMODES:-ReadWriteOnce}"]
moverSecurityContext:
runAsUser: "${VOLSYNC_UID:-568}"
runAsGroup: "${VOLSYNC_GID:-568}"
fsGroup: "${VOLSYNC_GID:-568}"
runAsUser: "${VOLSYNC_UID:-1000}"
runAsGroup: "${VOLSYNC_GID:-1000}"
fsGroup: "${VOLSYNC_GID:-1000}"
retain:
hourly: 24
daily: 7
Expand Down

0 comments on commit 83628ec

Please sign in to comment.