Skip to content

Instantly share code, notes, and snippets.

@DannyMor
Last active October 7, 2021 11:36
Show Gist options
  • Save DannyMor/b868d07d955b7b3b028e53a0ec33e21d to your computer and use it in GitHub Desktop.
Save DannyMor/b868d07d955b7b3b028e53a0ec33e21d to your computer and use it in GitHub Desktop.
Pod Killer Job
apiVersion: v1
kind: ServiceAccount
metadata:
name: ${JOB_NAME}-sa
namespace: ${NAMESPACE}
---
apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
namespace: ${NAMESPACE}
name: ${JOB_NAME}-role
rules:
- apiGroups: [""]
resources: ["pods"]
verbs: ["list", "delete"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: ${JOB_NAME}-rolebinding
namespace: ${NAMESPACE}
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: Role
name: ${JOB_NAME}-role
subjects:
- kind: ServiceAccount
name: ${JOB_NAME}-sa
namespace: ${NAMESPACE}
---
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: ${JOB_NAME}
namespace: ${NAMESPACE}
spec:
schedule: "0 * * * *"
jobTemplate:
spec:
template:
spec:
serviceAccountName: ${JOB_NAME}-sa
containers:
- name: kubectl-container
image: bitnami/kubectl:latest
command: ["sh", "-c", "kubectl delete -l some_label_name=some_lable_value --namespace=${NAMESPACE}"]
restartPolicy: Never
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment