--- - vars: exec_namespace: k8s-exec pod: sleep-pod exec_pod_definition: apiVersion: v1 kind: Pod metadata: name: "{{ pod }}" namespace: "{{ exec_namespace }}" spec: containers: - name: sleeper image: busybox command: ["sleep", "infinity"] block: - name: "Ensure that {{ exec_namespace }} namespace exists" k8s: kind: Namespace name: "{{ exec_namespace }}" - name: "Create a pod" k8s: definition: "{{ exec_pod_definition }}" wait: yes wait_sleep: 1 wait_timeout: 30 - name: "Execute a command" k8s_exec: pod: "{{ pod }}" namespace: "{{ exec_namespace }}" command: cat /etc/resolv.conf register: output - name: "Show k8s_exec output" debug: var: output - name: "Assert k8s_exec output is correct" assert: that: - "'nameserver' in output.stdout" always: - name: "Cleanup namespace" k8s: kind: Namespace name: "{{ exec_namespace }}" state: absent