---
- name: Restore backed up files and remove what was not present
  ansible.builtin.shell: |
    set -eu
    if set -o | grep pipefail 2>&1 /dev/null ; then
      set -o pipefail
    fi
    if test -f {{ __sshd_test_backup.path | quote }}/{{ item | quote }}; then
      cp -a {{ __sshd_test_backup.path | quote }}/{{ item | quote }} $(dirname {{ item | quote }})
    elif test -f {{ item | quote }}; then
      rm {{ item | quote }}
    fi
  changed_when: false
  loop: "{{ __sshd_test_backup_files | d([]) }}"
  when:
    - __sshd_test_backup is defined
    - __sshd_test_backup.path is defined

- name: Remove temporary directory for backup files
  ansible.builtin.file:
    path: "{{ __sshd_test_backup.path }}"
    state: absent
  changed_when: false
  when:
    - __sshd_test_backup is defined
    - __sshd_test_backup.path is defined

- name: Include common variables
  ansible.builtin.include_role:
    name: fedora.linux_system_roles.sshd
    tasks_from: variables.yml
    public: true

- name: Restart sshd service
  ansible.builtin.service:
    name: sshd
    state: reloaded
  changed_when: false
  when:
    - __sshd_test_backup is defined
    - ansible_facts['virtualization_type'] | default(None) not in __sshd_skip_virt_env
    - ansible_connection != 'chroot'
    - ansible_facts['os_family'] != 'AIX'
