Add check_mode support for k8s_drain module (#1086)

SUMMARY

Closes #1037

added support for check_mode
Converted warnings into informational display when user has explicitly requested to delete daemontset-managed pods, unmanaged pods or pods with local storage


ISSUE TYPE


Feature Pull Request

COMPONENT NAME

k8s_drain

Reviewed-by: Bianca Henderson <beeankha@gmail.com>
This commit is contained in:
Bikouo Aubin
2026-02-16 14:10:38 +01:00
committed by GitHub
parent 6d942f5e45
commit d239adbbbc
11 changed files with 685 additions and 438 deletions

View File

@@ -0,0 +1,28 @@
---
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: '{{ daemonset_name }}'
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchFields:
- key: metadata.name
operator: In
values:
- '{{ node_to_drain }}'
selector:
matchLabels:
drain: daemonset-pod
template:
metadata:
labels:
drain: daemonset-pod
spec:
containers:
- name: prometheus
image: prom/node-exporter
ports:
- containerPort: 80

View File

@@ -0,0 +1,40 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: '{{ deployment_name }}'
spec:
replicas: 1
selector:
matchLabels:
drain: emptyDir
template:
metadata:
labels:
drain: emptyDir
spec:
metadata:
labels:
drain: emptyDir
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchFields:
- key: metadata.name
operator: In
values:
- '{{ node_to_drain }}'
containers:
- name: busybox-container
image: busybox
command:
- /bin/sh
- -c
- while true;do date;sleep 5; done
volumeMounts:
- mountPath: /emptydir
name: emptydir
volumes:
- name: emptydir
emptyDir: {}

View File

@@ -0,0 +1,24 @@
---
apiVersion: v1
kind: Pod
metadata:
name: '{{ pod1_name }}'
labels:
drain: unmanaged-pod
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchFields:
- key: metadata.name
operator: In
values:
- '{{ node_to_drain }}'
containers:
- name: busybox-container
image: busybox
command:
- /bin/sh
- -c
- while true;do date;sleep 5; done