--- # Creates an IPA replica # Define "host" as a hostgroup name or a single host - name: Configure IPA server hosts: ipareplicas become: true vars_files: - vars/ipa/common.yml - vars/ipa/ipareplica.yml collections: - freeipa.ansible_freeipa # This is to try to avoid the handler issue in pre/post tasks handlers: - import_tasks: handlers/main.yml pre_tasks: - name: Check if ansible cannot be run here ansible.builtin.stat: path: /etc/no-ansible register: no_ansible - name: Verify if we can run ansible ansible.builtin.assert: that: - "not no_ansible.stat.exists" success_msg: "We are able to run on this node" fail_msg: "/etc/no-ansible exists - skipping run on this node" - name: Perform domain pre-work ansible.builtin.import_tasks: tasks/domain-prework.yml roles: - role: freeipa.ansible_freeipa.ipareplica state: present post_tasks: - name: Touching run file that ansible has ran here ansible.builtin.file: path: /var/log/ansible.run state: touch mode: '0644' owner: root group: root - name: Configure recursion for private nets ansible.builtin.import_tasks: tasks/dns-ext.yml ...