47 lines
1.3 KiB
YAML
47 lines
1.3 KiB
YAML
---
|
|
- name: Check SSH connectivity and create group of reachable hosts
|
|
hosts: rear_server
|
|
gather_facts: false
|
|
become: true
|
|
|
|
tasks:
|
|
- name: Check SSH connectivity
|
|
ansible.builtin.ping:
|
|
register: result
|
|
failed_when: false
|
|
|
|
- name: Clear unreachable host errors
|
|
ansible.builtin.meta: clear_host_errors
|
|
|
|
- name: Add reachable hosts to group
|
|
ansible.builtin.group_by:
|
|
key: reachable_hosts
|
|
when:
|
|
- result['ping'] is defined
|
|
- "'pong' in result['ping']"
|
|
|
|
|
|
- name: Update NFS exports on reachable servers
|
|
hosts: reachable_hosts
|
|
become: true
|
|
gather_facts: true
|
|
|
|
tasks:
|
|
- name: Grab the template name
|
|
ansible.builtin.set_stats:
|
|
data:
|
|
nfs_exports_template_name: "{{ tower_job_template_name | default('NA') }}"
|
|
aggregate: true
|
|
|
|
- name: Create IP list and add to NFS exports
|
|
when: not rear_backup_skip | default(false) | bool
|
|
block:
|
|
- name: Create list with IP addresses and hostnames
|
|
ansible.builtin.set_fact:
|
|
client_ips: "{{ ip_addresses | list | flatten }}"
|
|
namehost: "{{ server_hostname }}"
|
|
|
|
- name: Include NFS export role
|
|
ansible.builtin.include_role:
|
|
name: ../roles/nfs_export
|