apiVersion: batch/v1
kind: CronJob
metadata:
name: xata-clone
namespace: xata-clone # change if needed
spec:
schedule: "0 0 * * *" # change if needed
jobTemplate:
spec:
template:
spec:
containers:
- name: xata-clone
image: ghcr.io/xataio/xata:latest-pg18
env:
- name: XATA_CLI_SOURCE_POSTGRES_URL
valueFrom:
secretKeyRef:
name: xata-secrets
key: source-postgres-url
- name: XATA_API_KEY
valueFrom:
secretKeyRef:
name: xata-secrets
key: XATA_API_KEY
- name: XATA_ORGANIZATIONID
valueFrom:
secretKeyRef:
name: xata-secrets
key: XATA_ORGANIZATIONID
- name: XATA_PROJECTID
valueFrom:
secretKeyRef:
name: xata-secrets
key: XATA_PROJECTID
- name: XATA_DATABASENAME
valueFrom:
secretKeyRef:
name: xata-secrets
key: XATA_DATABASENAME
- name: XATA_BRANCHID
valueFrom:
secretKeyRef:
name: xata-secrets
key: XATA_BRANCHID
command:
- /bin/bash
- -c
- |
set -e
xata init \
--organization $XATA_ORGANIZATIONID \
--project $XATA_PROJECTID \
--database $XATA_DATABASENAME \
--branch $XATA_BRANCHID
xata status --json
echo "Starting clone..."
xata clone start --source-url "$XATA_CLI_SOURCE_POSTGRES_URL" --validation-mode=relaxed
restartPolicy: OnFailure