diun.yaml 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. ---
  2. apiVersion: v1
  3. kind: ServiceAccount
  4. metadata:
  5. namespace: diun
  6. name: diun
  7. ---
  8. apiVersion: rbac.authorization.k8s.io/v1
  9. kind: ClusterRole
  10. metadata:
  11. name: diun
  12. rules:
  13. - apiGroups:
  14. - ""
  15. resources:
  16. - pods
  17. verbs:
  18. - get
  19. - watch
  20. - list
  21. ---
  22. apiVersion: rbac.authorization.k8s.io/v1
  23. kind: ClusterRoleBinding
  24. metadata:
  25. name: diun
  26. roleRef:
  27. apiGroup: rbac.authorization.k8s.io
  28. kind: ClusterRole
  29. name: diun
  30. subjects:
  31. - kind: ServiceAccount
  32. name: diun
  33. namespace: diun
  34. ---
  35. apiVersion: apps/v1
  36. kind: Deployment
  37. metadata:
  38. namespace: diun
  39. name: diun
  40. spec:
  41. strategy:
  42. type: Recreate
  43. replicas: 1
  44. selector:
  45. matchLabels:
  46. app: diun
  47. template:
  48. metadata:
  49. labels:
  50. app: diun
  51. spec:
  52. serviceAccountName: diun
  53. containers:
  54. - name: diun
  55. image: crazymax/diun:latest
  56. imagePullPolicy: Always
  57. args: ["serve"]
  58. env:
  59. - name: TZ
  60. value: "America/New_York"
  61. - name: LOG_LEVEL
  62. value: "info"
  63. - name: LOG_JSON
  64. value: "false"
  65. - name: DIUN_WATCH_WORKERS
  66. value: "20"
  67. - name: DIUN_WATCH_SCHEDULE
  68. value: "0 */6 * * *"
  69. - name: DIUN_WATCH_JITTER
  70. value: "30s"
  71. - name: DIUN_PROVIDERS_KUBERNETES
  72. value: "true"
  73. - name: DIUN_PROVIDERS_KUBERNETES_WATCHBYDEFAULT
  74. value: "true"
  75. - name: DIUN_NOTIF_NTFY_ENDPOINT
  76. value: "https://ntfy.jibby.org"
  77. - name: DIUN_NOTIF_NTFY_TOKEN
  78. valueFrom:
  79. secretKeyRef:
  80. name: diun-ntfy-token
  81. key: ntfy-token
  82. optional: false
  83. - name: DIUN_NOTIF_NTFY_TOPIC
  84. value: "diun"
  85. volumeMounts:
  86. - mountPath: "/data"
  87. name: "data"
  88. restartPolicy: Always
  89. volumes:
  90. - name: data
  91. persistentVolumeClaim:
  92. claimName: diun-pvc
  93. ---
  94. apiVersion: external-secrets.io/v1
  95. kind: ExternalSecret
  96. metadata:
  97. name: diun-ntfy-token
  98. namespace: diun
  99. spec:
  100. target:
  101. name: diun-ntfy-token
  102. deletionPolicy: Delete
  103. template:
  104. type: Opaque
  105. data:
  106. ntfy-token: |-
  107. {{ .token }}
  108. data:
  109. - secretKey: token
  110. sourceRef:
  111. storeRef:
  112. name: bitwarden-notes
  113. kind: ClusterSecretStore
  114. remoteRef:
  115. key: 460f814b-e777-4440-b10a-b3f7013b8337