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 containers: - name: git-sync image: myorg-assistant:latest imagePullPolicy: IfNotPresent command: - python - run_job.py - 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 volumeMounts: - name: myorg-data mountPath: /data/myorg volumes: - name: myorg-data persistentVolumeClaim: claimName: myorg-assistant-pvc