titan-iac/services/finance/finance-secrets-ensure-job.yaml

64 lines
1.8 KiB
YAML
Raw Normal View History

2026-01-17 00:54:49 -03:00
# services/finance/finance-secrets-ensure-job.yaml
apiVersion: batch/v1
kind: Job
metadata:
name: finance-secrets-ensure-5
2026-01-17 00:54:49 -03:00
namespace: finance
spec:
backoffLimit: 1
ttlSecondsAfterFinished: 3600
template:
spec:
serviceAccountName: finance-secrets-ensure
restartPolicy: Never
affinity:
nodeAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
preference:
matchExpressions:
- key: hardware
operator: In
values: ["rpi5"]
- weight: 70
preference:
matchExpressions:
- key: hardware
operator: In
values: ["rpi4"]
nodeSelector:
kubernetes.io/arch: arm64
node-role.kubernetes.io/worker: "true"
containers:
- name: ensure
2026-01-17 02:22:59 -03:00
image: python:3.11-alpine
2026-01-17 01:07:46 -03:00
command: ["/bin/sh", "-c"]
args:
- |
set -e
2026-01-17 02:22:59 -03:00
exec python /scripts/finance_secrets_ensure.py
2026-01-17 00:54:49 -03:00
env:
- name: VAULT_ROLE
value: finance-secrets
volumeMounts:
- name: finance-secrets-ensure-script
mountPath: /scripts
readOnly: true
- name: firefly-db
mountPath: /secrets/firefly-db
readOnly: true
- name: actualbudget-db
mountPath: /secrets/actualbudget-db
readOnly: true
volumes:
- name: finance-secrets-ensure-script
configMap:
name: finance-secrets-ensure-script
defaultMode: 0555
- name: firefly-db
secret:
secretName: firefly-db
- name: actualbudget-db
secret:
secretName: actualbudget-db