---
- name: "print ansible_facts for debugging purposes"
  hosts: "*"
  gather_facts: true
  tasks:
    - name: print facts
      ansible.builtin.debug:
        var: ansible_facts
      when:
        - debug is defined
        - debug is true


- name: "install generic base server"
  hosts: "*"
  pre_tasks:
    - name: Verify that the installed version of Ansible meets this playbook's version requirements.
      ansible.builtin.assert:
        that: "ansible_version.full is version_compare('2.2', '>=')"
        msg: >
          "You must update Ansible to at least 2.2 to use this playbook."
  # Collect facts from remote system? Possible values: true, false
  gather_facts: true
  # Gather only certain subsects of facts. Ansible supports network, hardware, virtual, facter, ohai as subset.
  gather_subset:
    - network
    - virtual
    - hardware
  # any_error_fatal will mark all the hosts as failed if fails and immediately abort the playbook execution. Possible values: true, false
  any_errors_fatal: false
  # max_fail_percentage allows you to abort the play if certain threshold of failures have been reached.
  max_fail_percentage: 30
  serial: 30
  # hide sensitive information in verbose/debugging output from others. Possible values: true, false
  no_log: false
  # execution strategy, possible values: debug, linear, serial, free (https://docs.ansible.com/ansible/latest/user_guide/playbooks_strategies.html)
  strategy: linear

  roles:
    - { role: "ansible_lza_install_common", become: true }