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