+++ /dev/null
----
-# file: roles/cleanup/tasks/kill_process.yaml
-
-- name: Kill Process - {{ process }}
- block:
- - name: Get PID Of {{ process }}
- shell: "ps -ef | grep -v grep | grep -w {{ process }} | awk '{print $2}'"
- when:
- - process is defined and process != ""
- register: running_processes
- tags:
- - kill-process
-
- - name: Safe Kill {{ process }}
- shell: "kill {{ item }}"
- with_items: "{{ running_processes.stdout_lines }}"
- tags:
- - kill-process
-
- - wait_for:
- path: "/proc/{{ item }}/status"
- state: "absent"
- with_items: "{{ running_processes.stdout_lines }}"
- ignore_errors: yes
- register: killed_processes
- tags:
- - kill-process
-
- - name: Kill Process - Force Kill {{ process }}
- shell: "kill -9 {{ item }}"
- with_items: "{{ killed_processes.results | select('failed') | map(attribute='item') | list }}"
- tags:
- - kill-process
-
- rescue:
- - fail:
- msg: "Kill process {{ process }} failed!"