Revert "fix(jobspec): Delete ipsec nfv density tests"
[csit.git] / fdio.infra.ansible / roles / cleanup / tasks / kill_process.yaml
1 ---
2 # file: tasks/kill_process.yaml
3
4 - name: Kill Process - {{ process }}
5   block:
6     - name: Get PID Of {{ process }}
7       ansible.builtin.shell: "ps -ef | grep -v grep | grep -w {{ process }} | awk '{print $2}'"
8       when:
9         - process is defined and process != ""
10       register: running_processes
11       tags:
12         - kill-process
13
14     - name: Safe Kill {{ process }}
15       ansible.builtin.shell: "kill {{ item }}"
16       with_items: "{{ running_processes.stdout_lines }}"
17       ignore_errors: true
18       tags:
19         - kill-process
20
21     - wait_for:
22         path: "/proc/{{ item }}/status"
23         state: "absent"
24       with_items: "{{ running_processes.stdout_lines }}"
25       ignore_errors: true
26       register: killed_processes
27       tags:
28         - kill-process
29
30     - name: Kill Process - Force Kill {{ process }}
31       ansible.builtin.shell: "kill -9 {{ item }}"
32       with_items: "{{ killed_processes.results | select('failed') | map(attribute='item') | list }}"
33       tags:
34         - kill-process
35
36   rescue:
37     - fail:
38         msg: "Kill process {{ process }} failed!"