apiVersion: batch/v1
kind: CronJob
metadata:
  name: network-check
  namespace: metering
spec:
  schedule: "0 9 * * *"
  successfulJobsHistoryLimit: 3
  failedJobsHistoryLimit: 1
  concurrencyPolicy: Forbid
  jobTemplate:
    spec:
      template:
        metadata:
          labels:
            app: network-check
        spec:
          containers:
            - env:
                - name: API_GATEWAY_AUTH_KEY
                  valueFrom:
                    secretKeyRef:
                      name: api-gateway-auth
                      key: api-gateway-auth-key
                - name: AWS_DEFAULT_REGION
                  value: us-west-2
                - name: AWS_REGION
                  value: us-west-2
              image: 380838443567.dkr.ecr.us-west-2.amazonaws.com/tidbcloud/network-metering-server:97a00a155dab2390eb96a99f1682dba8896b0dfa
              name: network-check
              args: 
                - "networkcheck"
                - "-dsn"
                - "prod_cm_ro:ZWJae3wXMstthC2osgSx@tcp(prod-core-svc-metadb.cluster-czw95mtqfw67.us-west-2.rds.amazonaws.com:3306)/prod_core?charset=utf8mb4&parseTime=True"
                - "-length"
                - "7"
                - "-saveResult"
              securityContext:
                allowPrivilegeEscalation: false
                capabilities:
                  drop:
                    - "ALL"
              imagePullPolicy: Always
              volumeMounts:
                - name: networkmetering
                  mountPath: /configs/
                - mountPath: /var/run/secrets/eks.amazonaws.com/serviceaccount/
                  name: aws-token
              resources:
                limits:
                  cpu: 1000m
                  memory: 500Mi
                requests:
                  cpu: 500m
                  memory: 500Mi
          volumes:
            - name: networkmetering
              configMap:
                name: networkmetering-config
            - name: aws-token
              projected:
                defaultMode: 420
                sources:
                  - serviceAccountToken:
                      audience: sts.amazonaws.com
                      expirationSeconds: 86400
                      path: token
          restartPolicy: Never
          serviceAccountName: dedicated-metering-server-manager
          terminationGracePeriodSeconds: 10