--- - name: set config and keys paths set_fact: ceph_config_keys: - /etc/ceph/{{ cluster }}.conf - /etc/ceph/{{ cluster }}.client.admin.keyring - /etc/ceph/monmap-{{ cluster }} - /etc/ceph/{{ cluster }}.mon.keyring - /var/lib/ceph/bootstrap-osd/{{ cluster }}.keyring - /var/lib/ceph/bootstrap-rgw/{{ cluster }}.keyring - /var/lib/ceph/bootstrap-mds/{{ cluster }}.keyring - name: add mgr keys to config and keys paths set_fact: tmp_ceph_mgr_keys: /etc/ceph/{{ cluster }}.mgr.{{ hostvars[item]['ansible_hostname'] }}.keyring with_items: "{{ groups.get(mgr_group_name, []) }}" register: tmp_ceph_mgr_keys_result when: "{{ groups.get(mgr_group_name, []) | length > 0 }}" - name: convert mgr keys to an array set_fact: ceph_mgr_keys: "{{ tmp_ceph_mgr_keys_result.results | map(attribute='ansible_facts.tmp_ceph_mgr_keys') | list }}" when: "{{ groups.get(mgr_group_name, []) | length > 0 }}" - name: merge mgr keys to config and keys paths set_fact: ceph_config_keys: "{{ ceph_config_keys + ceph_mgr_keys }}" when: "{{ groups.get(mgr_group_name, []) | length > 0 }}" - name: stat for ceph config and keys local_action: stat path={{ fetch_directory }}/{{ fsid }}/{{ item }} with_items: "{{ ceph_config_keys }}" changed_when: false become: false failed_when: false register: statconfig always_run: true - name: try to copy ceph config and keys copy: src: "{{ fetch_directory }}/{{ fsid }}/{{ item.0 }}" dest: "{{ item.0 }}" owner: root group: root mode: 0644 changed_when: false with_together: - "{{ ceph_config_keys }}" - "{{ statconfig.results }}" when: item.1.stat.exists == true - name: set selinux permissions shell: | chcon -Rt svirt_sandbox_file_t {{ item }} with_items: - "{{ ceph_conf_key_directory }}" - /var/lib/ceph changed_when: false when: sestatus.stdout != 'Disabled'