apiVersion: batch/v1 kind: CronJob metadata: name: daily-exporter-cronjob namespace: default spec: #Cron Time is set according to server time, ensure server time zone and set accordingly. successfulJobsHistoryLimit: 2 failedJobsHistoryLimit: 1 schedule: "0 22 * * *" jobTemplate: spec: template: spec: serviceAccount: cronjob-exporter-service-account containers: - name: kubectl image: guitarrapc/docker-awscli-kubectl command: ["/bin/bash"] env: - name: AWS_ACCESS_KEY_ID valueFrom: secretKeyRef: name: aws-secret # References the secret we created key: access-key - name: AWS_SECRET_ACCESS_KEY valueFrom: secretKeyRef: name: aws-secret key: secret - name: AWS_DEFAULT_REGION value: us-west-2 args: - -c - >- kubectl version && kubectl get all -A > exporter.txt && EKS_DEPLOYMENT_MODEL=$(kubectl get cluster -o json | jq -r '.items[].spec.controlPlaneConfiguration.machineGroupRef.kind') && kubectl get ns -l aws.conformance.vendor > namespaces.txt && cat namespaces.txt && echo "Successful retrieval of all Kubernetes resources" && aws --version && aws s3 cp exporter.txt s3://eks-anywhere-conformance-logs/daily-cron-job/Exporter_Run_$(date +"%Y_%m_%d_%I_%M_%p").txt && aws s3 cp namespaces.txt s3://eks-anywhere-conformance-logs/daily-partner-list/Namespaces_${EKS_DEPLOYMENT_MODEL}_$(date +"%Y_%m_%d_%I_%M_%p").txt imagePullPolicy: IfNotPresent restartPolicy: OnFailure backoffLimit: 3