apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: cse-archive
  namespace: tidb-serverless
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 150Gi
  storageClassName: ebs-sc
---
apiVersion: batch/v1
kind: CronJob
metadata:
  name: cse-archive
  namespace: tidb-serverless
spec:
  schedule: "30 0 * * *"
  successfulJobsHistoryLimit: 3
  suspend: false
  concurrencyPolicy: Forbid
  failedJobsHistoryLimit: 1
  jobTemplate:
    spec:
      backoffLimit: 32
      template:
        metadata:
          annotations:
            cluster-autoscaler.kubernetes.io/safe-to-evict: "false"
          labels:
            app.kubernetes.io/name: cse-archive
        spec:
          affinity:
            nodeAffinity:
              requiredDuringSchedulingIgnoredDuringExecution:
                nodeSelectorTerms:
                  - matchExpressions:
                      - key: serverless.tidbcloud.com/node
                        operator: In
                        values:
                          - tikv
          tolerations:
            - effect: NoSchedule
              key: serverless.tidbcloud.com/node
              operator: Equal
              value: tikv
          containers:
            - command:
                - /cse-ctl
                - archive
                - --pd
                - serverless-cluster-pd.tidb-serverless.svc:2379
                - --start-archive-duration
                - "5d"
                - --expiration-date
                - "20230630"
                - --concurrency
                - "32"
                - --cacert
                - /server-cert/ca.crt
                - --cert
                - /server-cert/tls.crt
                - --key
                - /server-cert/tls.key
                - --data-dir
                - /data0
              env:
              - name: DFS_PREFIX
                value: CP9_STARTER_SERVERLESS_PREFIX
              - name: DFS_S3_BUCKET
                value: CP9_STARTER_SERVERLESS_BUCKET
              - name: DFS_S3_REGION
                value: CP9_STARTER_SERVERLESS_REGION
              - name: CSE_MASTER_KEY_ID
                value: CP9_STARTER_CSE_MASTER_KEY_ID
              - name: CSE_MASTER_KEY_CIPHER_TEXT
                value: CP9_STARTER_CSE_KEY_CIPHERTEXT
              - name: CSE_MASTER_KEY_VENDOR
                value: CP9_STARTER_CSE_KEY_VENDOR
              - name: CA_PATH
                value: /server-cert/ca.crt
              - name: CERT_PATH
                value: /server-cert/tls.crt
              - name: KEY_PATH
                value: /server-cert/tls.key
              image: 385595570414.dkr.ecr.us-west-2.amazonaws.com/tidbcloud/serverless/tikv:c1e21b95ec5194f2a3fa0f4428caff2d317e0692
              imagePullPolicy: IfNotPresent
              name: cse-archive
              resources:
                limits:
                  cpu: "4"
                  memory: 30Gi
                requests:
                  cpu: "2"
                  memory: 28Gi
              terminationMessagePath: /dev/termination-log
              terminationMessagePolicy: File
              volumeMounts:
                - mountPath: /data0
                  name: data0
                - mountPath: /server-cert
                  name: server-cert
          dnsPolicy: ClusterFirst
          restartPolicy: OnFailure
          schedulerName: default-scheduler
          securityContext: {}
          serviceAccount: backup-restore
          serviceAccountName: backup-restore
          terminationGracePeriodSeconds: 30
          volumes:
            - name: data0
              persistentVolumeClaim:
                claimName: cse-archive
            - name: server-cert
              secret:
                secretName: cse-archive-cluster-secret
