Get the pid of a running playbook for use within the playbook

前端 未结 5 1752
终归单人心
终归单人心 2021-01-17 14:35

When we run a playbook, with verbose output enabled, in the ansible logs we can see something like this:

2016-02-03 12:51:58,235 p=4105 u=root | PLAY RECAP

5条回答
  •  臣服心动
    2021-01-17 14:55

    This might be what you are looking for, but is only applicable to Linux:

    - name: Get the pid of this playbook
      shell: pstree -spal $PPID | grep ansible-playbook | awk '{print $1;exit}' | awk -F, '{print $2}'
      register: ansible_pid
    
    - name: Set the ansible playbook pid variable
      set_fact:
        ansible_playbook_pid: "{{ ansible_pid.stdout|int }}"
    

提交回复
热议问题