--- # Installs everything on hosts # - name: Bootstrap nodes for distributed OSA installation hosts: "{{ host | default('infra1,compute1,compute2,storage1') }}" become: true vars: handlers: - import_tasks: handlers/main.yml pre_tasks: - name: Check if ansible cannot be run here stat: path: /etc/no-ansible register: no_ansible - name: Verify if we can run ansible 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: Loading Variables from OS Common import_tasks: tasks/common_vars.yml tasks: - name: Initialize nodes tags: - init args: apply: tags: - init include_tasks: tasks/init-nodes.yml - name: Reboot import_tasks: tasks/reboot.yml when: reboot | default(true) | bool - name: Setup infra hosts include_tasks: tasks/infra-host.yml tags: - infrastructure args: apply: tags: - infrastructure when: tag.find("infra") != -1 or aio_install | default(false) | bool - name: Setup storage hosts include_tasks: tasks/storage-host.yml tags: - storage args: apply: tags: - storage when: tag.find("storage") != -1 post_tasks: - name: Touching run file that ansible has ran here file: path: /var/log/ansible.run state: touch mode: '0644' owner: root group: root