# _workstation/env ~~ roles/_workstation/env/tasks/main.yml # useful env. variables for workstation --- - name: retrieve BECOME method stat: path=/usr/bin/doas register: _workstation_env_become - name: retrieve existing users shell: cat /etc/passwd | cut -d ":" -f 1 register: result - name: retrieve current user shell: whoami register: result_ - set_fact: _ws_user: "{{ result_.stdout_lines[0] }}" - name: check if target user exists fail: msg: _ws_user is not a valid user when: _ws_user not in result.stdout_lines - name: retrieve host facts set_fact: #ansible_become_method: "{{ 'doas' if _workstation_env_become.stat.exists else 'sudo' }}" ansible_become_method: "su" ansible_become_user: "{{ _ws_user }}"