github.com/cockroachdb/cockroach@v20.2.0-alpha.1+incompatible/pkg/cmd/roachprod/k8s/roachprod-gc.yaml (about) 1 # A cronjob to run the gc subcommand. 2 # 3 # The various CLI login data can be configured with: 4 # 5 # kubectl create secret generic roachprod-gc-cronjob-creds \ 6 # --from-file gcloud.json=/path/to.json 7 # --from-literal aws_access_key_id=XYZZY 8 # --from-literal aws_secret_access_key=XYZZY 9 # --from-literal azure_user_id=XYZZY 10 # --from-literal azure_password=XYZZY 11 # --from-literal azure_tenant_id=XYZZY 12 # --from-literal slack_token=XYZZY 13 apiVersion: batch/v1beta1 14 kind: CronJob 15 metadata: 16 name: roachprod-gc-cronjob 17 spec: 18 # Disallow concurrent jobs. We impose a maximum runtime below. 19 concurrencyPolicy: Forbid 20 # Run hourly. 21 schedule: "0 * * * *" 22 # Must start within 1 minute of expected time, or we'll skip 23 # to the next tick. 24 startingDeadlineSeconds: 60 25 jobTemplate: 26 spec: 27 template: 28 metadata: 29 labels: 30 app: roachprod-gc-cronjob 31 spec: 32 containers: 33 - name: roachprod-gc-cronjob 34 image: gcr.io/cockroach-dev-inf/cockroachlabs/roachprod:master 35 args: 36 - gc 37 - --slack-token 38 - $(SLACK_TOKEN) 39 env: 40 - name: SLACK_TOKEN 41 valueFrom: 42 secretKeyRef: 43 name: roachprod-gc-cronjob-creds 44 key: slack_token 45 imagePullPolicy: Always 46 resources: 47 requests: 48 cpu: 1 49 memory: 2Gi 50 limits: 51 cpu: 1 52 memory: 2Gi 53 volumeMounts: 54 - mountPath: /secrets 55 name: secrets 56 readOnly: true 57 restartPolicy: Never 58 volumes: 59 - name: secrets 60 secret: 61 secretName: roachprod-gc-cronjob-creds 62 backoffLimit: 1