- name: Create SSH private key tempfile
  tempfile:
    state: file
  register: ssh_private_key_tmp

- name: Create SSH private key from secret
  copy:
    content: "{{ fileserver.ssh_private_key }}"
    dest: "{{ ssh_private_key_tmp.path }}"
    mode: 0600

- name: Add fileserver ssh key
  command: "ssh-add {{ ssh_private_key_tmp.path }}"

- name: Remove SSH private key from disk
  command: "shred {{ ssh_private_key_tmp.path }}"

- name: Add fileserver to inventory
  add_host:
    name: "{{ fileserver.fqdn }}"
    ansible_user: "{{ fileserver.ssh_username | default(ansible_user) }}"
    zuul_fileserver_project_path: "{{ fileserver.path }}{{ '/' + fileserver_leading_path if fileserver_leading_path is defined else '' }}/{{ zuul.project.short_name }}"

- name: Add fileserver server to known hosts
  known_hosts:
    name: "{{ fileserver.fqdn }}"
    key: "{{ fileserver.ssh_known_hosts }}"