Skip to content
Snippets Groups Projects
Commit ed0cd7ce authored by fejao's avatar fejao
Browse files

Added tags to the tasks

parent 4f4b0b05
No related branches found
No related tags found
No related merge requests found
Pipeline #38395 passed
Pipeline: c3infodesk-deployment

#38397

    ...@@ -15,7 +15,7 @@ variables: ...@@ -15,7 +15,7 @@ variables:
    ### ###
    stages: stages:
    - yamllint - yamllint
    - upstream-trigger - downstream-trigger
    ### ###
    ### SCRIPTS ### SCRIPTS
    ...@@ -44,7 +44,7 @@ yamllint-test: ...@@ -44,7 +44,7 @@ yamllint-test:
    - yamllint . - yamllint .
    trigger-pipeline: trigger-pipeline:
    stage: upstream-trigger stage: downstream-trigger
    variables: variables:
    RUN_UPSTREAM_FOR_ROLE_DEPENDENCIES: true RUN_UPSTREAM_FOR_ROLE_DEPENDENCIES: true
    trigger: trigger:
    ......
    ...@@ -7,7 +7,6 @@ galaxy_info: ...@@ -7,7 +7,6 @@ galaxy_info:
    company: cccv.de company: cccv.de
    license: "MIT / BSD" license: "MIT / BSD"
    min_ansible_version: '2.10' min_ansible_version: '2.10'
    # galaxy_tags: []
    galaxy_tags: galaxy_tags:
    - dependency - dependency
    - dependencies - dependencies
    ......
    ...@@ -2,43 +2,13 @@ ...@@ -2,43 +2,13 @@
    - name: MOLECULE | Converge - name: MOLECULE | Converge
    hosts: all hosts: all
    vars:
    # molecule_debug_outputs: true
    molecule_debug_outputs: false
    pre_tasks: pre_tasks:
    - name: MOLECULE | COVERGE | PRE-TASKS | VARIABLES | From -> ../../defaults - name: MOLECULE | CONVERGE | PRE-TASKS | Import pre-tasks...
    ansible.builtin.include_vars: tags: import_pre_tasks
    dir: ../../defaults ansible.builtin.import_tasks: pre_tasks.yml
    depth: 1
    extensions:
    - 'yml'
    - name: MOLECULE | COVERGE | PRE-TASKS | VARIABLES | From -> ../../vars
    ansible.builtin.include_vars:
    dir: ../../vars
    depth: 1
    extensions:
    - 'yml'
    - name: MOLECULE | CONVERGE | PRE-TASKS | SET FACT | Read the parsed 'HOST_VAR_FILE_NAME' env var or set the default to 'host_var_file_name' variable.
    ansible.builtin.set_fact:
    host_var_file_name: "../../../../inventories/host_vars/{{ lookup('ansible.builtin.env', 'HOST_VAR_FILE_NAME') | default('example_printer.yml', True) }}"
    - name: MOLECULE | CONVERGE | PRE-TASKS | DEBUG | Value from 'host_var_file_name' fact.
    ansible.builtin.debug:
    msg: "molecule_debug_outputs: {{ host_var_file_name }}"
    when: molecule_debug_outputs | bool
    - name: MOLECULE | CONVERGE | PRE-TASKS | VARIABLES | From -> 'host_vars_from_proj_path' variable.
    ansible.builtin.include_vars:
    file: "{{ host_var_file_name }}"
    - name: MOLECULE | CONVERGE | PRE-TASKS | DEBUG | Value from 'c3infodesk_deployment_repository_url' variable.
    ansible.builtin.debug:
    msg: "molecule_debug_outputs: {{ c3infodesk_deployment_repository_url }}"
    when: molecule_debug_outputs | bool
    tasks: tasks:
    - name: MOLECULE | CONVERGE | TASKS | Call the 'dependencies' role. - name: MOLECULE | CONVERGE | TASKS | Call the 'dependencies' role.
    tags: execute_role
    ansible.builtin.include_role: ansible.builtin.include_role:
    name: c3infodesk-deployment-role-dependencies name: c3infodesk-deployment-role-dependencies
    ---
    # This is the pre-tasks shared between converge and verify.
    - name: MOLECULE | PRE-TASKS | VARIABLES
    tags: variables
    vars:
    # molecule_debug_outputs: true
    molecule_debug_outputs: false
    block:
    - name: MOLECULE | PRE-TASKS | VARIABLES | From -> ../../defaults
    ansible.builtin.include_vars:
    dir: ../../defaults
    depth: 1
    extensions:
    - 'yml'
    - name: MOLECULE | PRE-TASKS | VARIABLES | From -> ../../vars
    ansible.builtin.include_vars:
    dir: ../../vars
    depth: 1
    extensions:
    - 'yml'
    ### This should be parsed also by calling the 'molecule test' command --> HOST_VAR_FILE_NAME="example_buttons.yml" molecule test
    - name: MOLECULE | PRE-TASKS | SET FACT | Read the parsed 'HOST_VAR_FILE_NAME' env var or set the default to 'host_var_file_name' variable.
    ansible.builtin.set_fact:
    host_var_file_name: "../../../../inventories/host_vars/{{ lookup('ansible.builtin.env', 'HOST_VAR_FILE_NAME') | default('example_printer.yml', True) }}"
    - name: MOLECULE | PRE-TASKS | DEBUG | Value from 'host_var_file_name' fact.
    ansible.builtin.debug:
    msg: "molecule_debug_outputs: {{ host_var_file_name }}"
    when: molecule_debug_outputs | bool
    - name: MOLECULE | PRE-TASKS | VARIABLES | From -> 'host_vars_from_proj_path' variable.
    ansible.builtin.include_vars:
    file: "{{ host_var_file_name }}"
    - name: MOLECULE | PRE-TASKS | DEBUG | Value from 'c3infodesk_deployment_repository_url' variable.
    ansible.builtin.debug:
    msg: "molecule_debug_outputs: {{ c3infodesk_deployment_repository_url }}"
    when: molecule_debug_outputs | bool
    --- ---
    - name: VERIFY | Test role for debugging variables - name: VERIFY | Test role for debugging variables.
    hosts: all hosts: all
    vars:
    verify_package_name_docker: 'docker'
    verify_package_name_docker_ce: 'docker-ce'
    verify_package_name_docker_compose: 'docker-compose'
    verify_package_name_docker_compose_plugin: 'docker-compose-plugin'
    pre_tasks: pre_tasks:
    - name: MOLECULE | VERIFY | PRE-TASKS | VARIABLES | From -> ../../defaults - name: MOLECULE | VERIFY | PRE-TASKS | Import tasks...
    ansible.builtin.include_vars: tags: import_pre_tasks
    dir: ../../defaults ansible.builtin.import_tasks: pre_tasks.yml
    depth: 1
    extensions:
    - 'yml'
    - name: MOLECULE | VERIFY | PRE-TASKS | VARIABLES | From -> ../../vars
    ansible.builtin.include_vars:
    dir: ../../vars
    depth: 1
    extensions:
    - 'yml'
    ### This should be parsed also by calling the 'molecule test' command --> HOST_VAR_FILE_NAME="example_buttons.yml" molecule test
    - name: MOLECULE | VERIFY | PRE-TASKS | SET FACT | Read the parsed 'HOST_VAR_FILE_NAME' env var or set the default to 'host_var_file_name' variable.
    ansible.builtin.set_fact:
    host_var_file_name: "../../../../inventories/host_vars/{{ lookup('ansible.builtin.env', 'HOST_VAR_FILE_NAME') | default('example_printer.yml', True) }}"
    - name: MOLECULE | VERIFY | PRE-TASKS | VARIABLES | From -> 'host_vars_from_proj_path' variable.
    ansible.builtin.include_vars:
    file: "{{ host_var_file_name }}"
    tasks: tasks:
    ### - name: MOLECULE | VERIFY | POPULATE
    ### POPULATE tags: import_verify_populate
    ### ansible.builtin.import_tasks: verify_populate.yml
    - name: MOLECULE | VERIFY | POPULATE | Gather the package facts
    ansible.builtin.package_facts:
    manager: auto
    # - name: MOLECULE | VERIFY | POPULATE | Gather service facts
    # ansible.builtin.service_facts:
    ###
    ### TESTS - PACKAGES
    ###
    - name: MOLECULE | VERIFY | TEST | PACKAGES | Check that the packages from 'os_dependencies_packages' are installed.
    ansible.builtin.debug:
    msg: "Package: '{{ package_name }}' is installed"
    loop: "{{ os_dependencies_packages }}"
    loop_control:
    loop_var: package_name
    failed_when: package_name not in ansible_facts.packages
    ###
    ### TESTS - DOCKER
    ###
    - name: MOLECULE | VERIFY | TEST | DOCKER | Is installed.
    ansible.builtin.debug:
    msg: "Package: 'docker' is installed"
    failed_when:
    - verify_package_name_docker not in ansible_facts.packages
    - verify_package_name_docker_ce not in ansible_facts.packages
    when: docker_set_to_install | bool
    - name: MOLECULE | VERIFY | TEST | DOCKER | docker-compose is installed.
    ansible.builtin.debug:
    msg: "Package: 'docker-cokmpose' is installed"
    failed_when:
    - verify_package_name_docker_compose not in ansible_facts.packages
    - verify_package_name_docker_compose_plugin not in ansible_facts.packages
    when: docker_set_to_install | bool
    - name: MOLECULE | VERIFY | TEST | DOCKER | Get docker service state.
    ansible.builtin.systemd:
    name: "docker"
    register: docker_service
    when: docker_set_to_install | bool
    - name: MOLECULE | VERIFY | TEST | DOCKER | Check that docker is running.
    ansible.builtin.debug:
    msg: "Docker IS running..."
    failed_when: "'active' != docker_service.status.ActiveState"
    when: docker_set_to_install | bool
    ###
    ### TESTS - ADDED DOCKER USERS
    ###
    - name: MOLECULE | VERIFY | TEST | USER | Get added users infos.
    ansible.builtin.user:
    name: "{{ item }}"
    loop: "{{ docker_users }}"
    check_mode: true
    register: test_users
    - name: MOLECULE | VERIFY | TEST | USER | Check if users exists
    ansible.builtin.debug:
    msg: "User {{ item.item }} {{ 'exists' if item.state | d('') == 'present' else 'does not exist' }}"
    loop: "{{ test_users.results }}"
    loop_control:
    label: "{{ item.item }}"
    - name: MOLECULE | VERIFY | TEST | USER | Get the groups that the users belongs to.
    ansible.builtin.command:
    cmd: "id -Gn {{ item.item }}"
    loop: "{{ test_users.results }}"
    loop_control:
    label: "{{ item.item }}"
    register: user_groups
    changed_when: false
    - name: MOLECULE | VERIFY | TEST | USER | Check that the users are at the 'docker' group. - name: MOLECULE | VERIFY | TASKS
    ansible.builtin.debug: tags: import_verify_tasks
    msg: "User '{{ item.item.item }}' belongs to the docker group" ansible.builtin.import_tasks: verify_tasks.yml
    with_items: "{{ user_groups.results }}"
    failed_when: "'docker' not in item.stdout"
    ---
    # This is the file for populating the facts before verify
    - name: MOLECULE | VERIFY | POPULATE | Gather the package facts
    tags: populate
    ansible.builtin.package_facts:
    manager: auto
    ---
    # This is the tasks to be runned from the verify.yml file
    ###
    ### PACKAGES
    ###
    - name: MOLECULE | VERIFY | PACKAGES | Check that the packages from 'os_dependencies_packages' are installed.
    tags: install_packages
    ansible.builtin.debug:
    msg: "Package: '{{ package_name }}' is installed"
    loop: "{{ os_dependencies_packages }}"
    loop_control:
    loop_var: package_name
    failed_when: package_name not in ansible_facts.packages
    ###
    ### DOCKER
    ###
    - name: MOLECULE | VERIFY | DOCKER
    tags: install_docker
    vars:
    verify_package_name_docker: 'docker'
    verify_package_name_docker_ce: 'docker-ce'
    verify_package_name_docker_compose: 'docker-compose'
    verify_package_name_docker_compose_plugin: 'docker-compose-plugin'
    block:
    - name: MOLECULE | VERIFY | DOCKER | Is installed.
    ansible.builtin.debug:
    msg: "Package: 'docker' is installed"
    failed_when:
    - verify_package_name_docker not in ansible_facts.packages
    - verify_package_name_docker_ce not in ansible_facts.packages
    when: docker_set_to_install | bool
    - name: MOLECULE | VERIFY | DOCKER | docker-compose is installed.
    ansible.builtin.debug:
    msg: "Package: 'docker-cokmpose' is installed"
    failed_when:
    - verify_package_name_docker_compose not in ansible_facts.packages
    - verify_package_name_docker_compose_plugin not in ansible_facts.packages
    when: docker_set_to_install | bool
    - name: MOLECULE | VERIFY | DOCKER | Get docker service state.
    ansible.builtin.systemd:
    name: "docker"
    register: docker_service
    when: docker_set_to_install | bool
    - name: MOLECULE | VERIFY | DOCKER | Check that docker is running.
    ansible.builtin.debug:
    msg: "Docker IS running..."
    failed_when: "'active' != docker_service.status.ActiveState"
    when: docker_set_to_install | bool
    ###
    ### DOCKER USERS
    ###
    - name: MOLECULE | VERIFY | USER
    tags: install_docker_users
    block:
    - name: MOLECULE | VERIFY | USER | Get added users infos.
    ansible.builtin.user:
    name: "{{ item }}"
    loop: "{{ docker_users }}"
    check_mode: true
    register: test_users
    - name: MOLECULE | VERIFY | USER | Check if users exists
    ansible.builtin.debug:
    msg: "User {{ item.item }} {{ 'exists' if item.state | d('') == 'present' else 'does not exist' }}"
    loop: "{{ test_users.results }}"
    loop_control:
    label: "{{ item.item }}"
    - name: MOLECULE | VERIFY | USER | Get the groups that the users belongs to.
    ansible.builtin.command:
    cmd: "id -Gn {{ item.item }}"
    loop: "{{ test_users.results }}"
    loop_control:
    label: "{{ item.item }}"
    register: user_groups
    changed_when: false
    - name: MOLECULE | VERIFY | USER | Check that the users are at the 'docker' group.
    ansible.builtin.debug:
    msg: "User '{{ item.item.item }}' belongs to the docker group"
    with_items: "{{ user_groups.results }}"
    failed_when: "'docker' not in item.stdout"
    ...@@ -2,15 +2,18 @@ ...@@ -2,15 +2,18 @@
    # tasks file for dependencies # tasks file for dependencies
    - name: Importing the 'install_packages.yml' tasks - name: Importing the 'install_packages.yml' tasks
    tags: packages_install
    ansible.builtin.import_tasks: install_packages.yml ansible.builtin.import_tasks: install_packages.yml
    - name: Get docker service state. - name: Get docker service state.
    tags: docker_install
    ansible.builtin.systemd: ansible.builtin.systemd:
    name: "docker" name: "docker"
    register: docker_service register: docker_service
    when: docker_set_to_install | bool when: docker_set_to_install | bool
    - name: Set fact if docker already installed and active. - name: Set fact if docker already installed and active.
    tags: docker_install
    ansible.builtin.set_fact: ansible.builtin.set_fact:
    docker_installed: true docker_installed: true
    when: when:
    ...@@ -19,6 +22,7 @@ ...@@ -19,6 +22,7 @@
    - "'active' == docker_service.status.ActiveState" - "'active' == docker_service.status.ActiveState"
    - name: Importing the 'install_docker.yml' tasks if docker not installed. - name: Importing the 'install_docker.yml' tasks if docker not installed.
    tags: docker_install
    ansible.builtin.import_tasks: install_docker.yml ansible.builtin.import_tasks: install_docker.yml
    when: when:
    - docker_set_to_install | bool - docker_set_to_install | bool
    ......
    0% Loading or .
    You are about to add 0 people to the discussion. Proceed with caution.
    Please register or to comment