--- - name: "Check and generate key if needed" block: - name: ssh dir file: path: "{{ ssh_dir }}" state: directory mode: 0700 - name: check ssh pub key exists stat: path: '{{ private_key }}.pub' register: p - name: generate ssh keys command: ssh-keygen -f {{ private_key }} -t rsa -N '' when: not p.stat.exists vars: private_key: "{{ ssh_dir }}/{{ offline_ssh_key_file_name }}" delegate_to: localhost run_once: true - name: Setup authorized_keys file authorized_key: user: root state: present key: "{{ lookup('file', public_key) }}" vars: public_key: "{{ ssh_dir }}/{{ offline_ssh_key_file_name }}.pub"