Skip to content
Snippets Groups Projects
verify.yml 2.25 KiB
Newer Older
fejao's avatar
fejao committed
---

- name: VERIFY | Test role for debugging variables
  hosts: all
  pre_tasks:
    - name: MOLECULE | VERIFY | PRE-TASKS | VARIABLES | From -> ../../defaults
      ansible.builtin.include_vars:
        dir: ../../defaults
        depth: 1
        extensions:
          - 'yml'

    - name: MOLECULE | VERIFY | PRE-TASKS | VARIABLES | From -> ../../../../inventories/group_vars
      ansible.builtin.include_vars:
        dir: ../../../../inventories/group_vars
        extensions:
          - 'yml'

    - name: MOLECULE | VERIFY | PRE-TASKS | VARIABLES | From -> ../../../../inventories/host_vars
      ansible.builtin.include_vars:
        dir: ../../../../inventories/host_vars
        extensions:
          - 'yml'

  tasks:
    ###
    ### POPULATE
    ###
    - name: MOLECULE | VERIFY | POPULATE | Gather the package facts
      ansible.builtin.package_facts:
        manager: auto

    ##
    ## TESTS - PACKAGES
    ##
    - name: MOLECULE | VERIFY | TEST | Check that the packages from 'oh_my_bash_dependencies_list' are installed.
      ansible.builtin.debug:
        msg: "Package: '{{ package_name }}' is installed"
      loop: "{{ oh_my_bash_dependencies_list }}"
      loop_control:
        loop_var: package_name
      failed_when: package_name not in ansible_facts.packages

    ###
    ### TESTS - CHECK INSTALL
    ###
    - name: MOLECULE | VERIFY | TEST | Oh-My-Bash installed.
      ansible.builtin.stat:
        path: "{{ oh_my_bash_installed_path }}"
      register: check_installed
      failed_when:
        - not check_installed.stat.exists

    - name: MOLECULE | VERIFY | TEST | Oh-My-Bash is enabled.
      ansible.builtin.lineinfile:
        path: "{{ ansible_env.HOME }}/.bashrc"
        line: "export OSH='/root/.oh-my-bash'"
        state: present
      check_mode: true
      register: check_enabled
      failed_when: check_enabled.changed | bool

    - name: MOLECULE | VERIFY | TEST | Theme is setted.
      ansible.builtin.lineinfile:
        path: "{{ ansible_env.HOME }}/.bashrc"
        line: 'OSH_THEME="{{ oh_my_bash_theme_name }}"'
        state: present
      check_mode: true
      register: check_theme_set
      failed_when: check_theme_set.changed | bool
      when:
        - oh_my_bash_theme_name is defined
        - not check_enabled.changed | bool