Playbook - install_os

Installs services necessary for the EDPM operation. Uses external timesync role from system roles collection to both install and configure chrony.

Time service configuration

Variables of the timesync system role can be overriden in a standard ansible way, while respecting resolution order. Default values are set in the install_os playbook, while allowing for override.

All variables of the timesync role can used while using this playbook.

---

- name: Deploy EDPM Operating System Install
  hosts: "{{ edpm_override_hosts | default('all', true) }}"
  strategy: linear
  gather_facts: "{{ gather_facts | default(false) }}"
  any_errors_fatal: "{{ edpm_any_errors_fatal | default(true) }}"
  max_fail_percentage: "{{ edpm_max_fail_percentage | default(0) }}"
  tasks:
    - name: Install edpm_podman
      ansible.builtin.import_role:
        name: osp.edpm.edpm_podman
        tasks_from: install.yml
      tags:
        - edpm_podman
    - name: Install edpm_sshd
      ansible.builtin.import_role:
        name: osp.edpm.edpm_sshd
        tasks_from: install.yml
      tags:
        - edpm_sshd
    # Depending on the environment we may have system roles under different name space
    # However, code executed is the same. The difference is only
    # in the mode of distribution.
    - name: Install and configure time service using timesync system role
      ansible.builtin.include_role:
        name: "{{ lookup('ansible.builtin.env', 'EDPM_SYSTEMROLES', default='fedora.linux_system_roles') + '.timesync' }}"
        apply:
          become: true
      tags:
        - dataplane_chrony
    - name: Install edpm_logrotate_crond
      ansible.builtin.import_role:
        name: osp.edpm.edpm_logrotate_crond
        tasks_from: install.yml
      tags:
        - edpm_logrotate_crond