Files
k3s-cluster/myorg-assistant/cronjobs/git-sync.yaml
platform-engineer e637550bb7 fix(myorg-assistant): inject WEB_SECRET_KEY into all cronjobs
CronJob containers import src.config.Settings() at startup, which requires
WEB_SECRET_KEY. Only the Deployment set it; the 5 CronJobs (git-sync,
morning-briefing, evening-summary, waiting-followup, deadline-checker) crashed
at import with a pydantic ValidationError, causing restart loops (e.g.
myorg-git-sync ~5 restarts/15m). Pull WEB_SECRET_KEY from the existing
myorg-assistant-secret so the cronjobs start cleanly.
2026-07-13 13:53:58 +00:00

84 lines
2.5 KiB
YAML

apiVersion: batch/v1
kind: CronJob
metadata:
name: myorg-git-sync
namespace: myorg-assistant
labels:
app: myorg-assistant
job: git-sync
spec:
# Run every 15 minutes
schedule: "*/15 * * * *"
timeZone: "Europe/Madrid"
successfulJobsHistoryLimit: 1
failedJobsHistoryLimit: 2
concurrencyPolicy: Forbid
jobTemplate:
spec:
template:
metadata:
labels:
app: myorg-assistant
job: git-sync
spec:
restartPolicy: OnFailure
imagePullSecrets:
- name: gitea-registry
containers:
- name: git-sync
image: git.rogi.casa/roger/myorg-assistant/myorg-assistant:fcf79bf
imagePullPolicy: Always
command:
- python
- -c
- "from src.scheduler.jobs import run_job; import sys; run_job(sys.argv[1])"
- git-sync
env:
- name: MYORG_REPO_PATH
valueFrom:
configMapKeyRef:
name: myorg-assistant-config
key: MYORG_REPO_PATH
- name: GIT_BRANCH
valueFrom:
configMapKeyRef:
name: myorg-assistant-config
key: GIT_BRANCH
- name: GIT_REPO_URL
valueFrom:
secretKeyRef:
name: myorg-assistant-secret
key: GIT_REPO_URL
- name: GIT_USERNAME
valueFrom:
secretKeyRef:
name: myorg-assistant-secret
key: GIT_USERNAME
- name: GIT_TOKEN
valueFrom:
secretKeyRef:
name: myorg-assistant-secret
key: GIT_TOKEN
- name: DISCORD_BOT_TOKEN
valueFrom:
secretKeyRef:
name: myorg-assistant-secret
key: DISCORD_BOT_TOKEN
- name: LITELLM_API_KEY
valueFrom:
secretKeyRef:
name: myorg-assistant-secret
key: LITELLM_API_KEY
- name: WEB_SECRET_KEY
valueFrom:
secretKeyRef:
name: myorg-assistant-secret
key: WEB_SECRET_KEY
volumeMounts:
- name: myorg-data
mountPath: /data/myorg
volumes:
- name: myorg-data
persistentVolumeClaim:
claimName: myorg-assistant-pvc