From e85501ad680a1738ecf22cd316d69d2c97e28508 Mon Sep 17 00:00:00 2001
From: fejao <mail@fejao.de>
Date: Wed, 12 Feb 2025 14:00:54 +0000
Subject: [PATCH] Adding role dependencies submodule

---
 .gitlab-ci.yml                                |   4 +
 .gitmodules                                   |   7 +-
 ci-cd/templates/all-roles-b4-merge.yml        |  42 +++++
 roles/c3infodesk-deployment-role-dependencies |   1 +
 roles/c3infodesk-deployment-role-test         |   2 +-
 roles/dependencies/README.md                  | 167 ------------------
 roles/dependencies/defaults/main.yml          |  89 ----------
 roles/dependencies/handlers/main.yml          |  10 --
 roles/dependencies/meta/main.yml              |  12 --
 roles/dependencies/molecule/README.md         |  42 -----
 .../molecule/default/converge.yml             |  35 ----
 .../molecule/default/molecule.yml             |  68 -------
 .../dependencies/molecule/default/verify.yml  | 117 ------------
 .../tasks/docker/install_compose.yml          |  32 ----
 .../tasks/docker/install_docker_users.yml     |  12 --
 .../tasks/docker/setup-Debian.yml             |  74 --------
 .../tasks/docker/setup-RedHat.yml             |  61 -------
 roles/dependencies/tasks/install_docker.yml   | 112 ------------
 roles/dependencies/tasks/install_packages.yml |  11 --
 roles/dependencies/tasks/main.yml             |  21 ---
 roles/dependencies/vars/Alpine.yml            |   2 -
 roles/dependencies/vars/Archlinux.yml         |   3 -
 roles/dependencies/vars/main.yml              |   2 -
 23 files changed, 53 insertions(+), 873 deletions(-)
 create mode 100644 ci-cd/templates/all-roles-b4-merge.yml
 create mode 160000 roles/c3infodesk-deployment-role-dependencies
 delete mode 100644 roles/dependencies/README.md
 delete mode 100644 roles/dependencies/defaults/main.yml
 delete mode 100644 roles/dependencies/handlers/main.yml
 delete mode 100644 roles/dependencies/meta/main.yml
 delete mode 100644 roles/dependencies/molecule/README.md
 delete mode 100644 roles/dependencies/molecule/default/converge.yml
 delete mode 100644 roles/dependencies/molecule/default/molecule.yml
 delete mode 100644 roles/dependencies/molecule/default/verify.yml
 delete mode 100644 roles/dependencies/tasks/docker/install_compose.yml
 delete mode 100644 roles/dependencies/tasks/docker/install_docker_users.yml
 delete mode 100644 roles/dependencies/tasks/docker/setup-Debian.yml
 delete mode 100644 roles/dependencies/tasks/docker/setup-RedHat.yml
 delete mode 100644 roles/dependencies/tasks/install_docker.yml
 delete mode 100644 roles/dependencies/tasks/install_packages.yml
 delete mode 100644 roles/dependencies/tasks/main.yml
 delete mode 100755 roles/dependencies/vars/Alpine.yml
 delete mode 100644 roles/dependencies/vars/Archlinux.yml
 delete mode 100755 roles/dependencies/vars/main.yml

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c01900b..b868d75 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -60,6 +60,10 @@ include:
   - local: ci-cd/templates/role-oh-my-bash.yml
     rules:
       - if: '$RUN_UPSTREAM_FOR_ROLE_OH_MY_BASH == "true"'
+  ### BEFORE MREGE REQUEST
+  - local: ci-cd/templates/all-roles-b4-merge.yml
+    rules:
+      - if: $CI_PIPELINE_SOURCE == "merge_request_event"
 
 ###
 ### TEST PARSED VARS FROM UPSTREAM
diff --git a/.gitmodules b/.gitmodules
index bff688b..d76bb98 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,3 +1,6 @@
 [submodule "roles/c3infodesk-deployment-role-test"]
-	path = roles/c3infodesk-deployment-role-test
-	url = git@git.cccv.de:fejao/c3infodesk-deployment-role-test.git
+    path = roles/c3infodesk-deployment-role-test
+    url = git@git.cccv.de:fejao/c3infodesk-deployment-role-test.git
+[submodule "roles/c3infodesk-deployment-role-dependencies"]
+    path = roles/c3infodesk-deployment-role-dependencies
+    url = git@git.cccv.de:fejao/c3infodesk-deployment-role-dependencies.git
diff --git a/ci-cd/templates/all-roles-b4-merge.yml b/ci-cd/templates/all-roles-b4-merge.yml
new file mode 100644
index 0000000..461127e
--- /dev/null
+++ b/ci-cd/templates/all-roles-b4-merge.yml
@@ -0,0 +1,42 @@
+---
+
+###
+### VARIABLES
+###
+variables:
+  AUTHOR: fejao
+  # RUN_UPSTREAM_FOR_ROLE_TEST: true
+  # RUN_UPSTREAM_FOR_ROLE_DEPENDENCIES: true
+  # RUN_UPSTREAM_FOR_ROLE_CLONE_REPOSITORIES: true
+  # RUN_UPSTREAM_FOR_ROLE_DOCKER_IMAGES: true
+  # RUN_UPSTREAM_FOR_ROLE_DOCKER_CONTAINERS: true
+  # RUN_UPSTREAM_FOR_ROLE_OH_MY_BASH: true
+
+###
+### INCLUDE
+###
+include:
+  ### ROLE TEST
+  - local: ci-cd/templates/role-test.yml
+    # rules:
+    #   - if: '$RUN_UPSTREAM_FOR_ROLE_TEST == "true"'
+  ### ROLE DEPENDENCIES
+  - local: ci-cd/templates/role-dependencies.yml
+    # rules:
+    #   - if: '$RUN_UPSTREAM_FOR_ROLE_DEPENDENCIES == "true"'
+  ### ROLE CLONE-REPOSITORIES
+  - local: ci-cd/templates/role-clone-repositories.yml
+    # rules:
+    #   - if: '$RUN_UPSTREAM_FOR_ROLE_CLONE_REPOSITORIES == "true"'
+  ### ROLE DOCKER-IMAGES
+  - local: ci-cd/templates/role-docker-images.yml
+    # rules:
+    #   - if: '$RUN_UPSTREAM_FOR_ROLE_DOCKER_IMAGES == "true"'
+  ### ROLE DOCKER-CONTAINERS
+  - local: ci-cd/templates/role-docker-containers.yml
+    # rules:
+    #   - if: '$RUN_UPSTREAM_FOR_ROLE_DOCKER_CONTAINERS == "true"'
+  ### ROLE OH-MY-BASH
+  - local: ci-cd/templates/role-oh-my-bash.yml
+    # rules:
+    #   - if: '$RUN_UPSTREAM_FOR_ROLE_OH_MY_BASH == "true"'
diff --git a/roles/c3infodesk-deployment-role-dependencies b/roles/c3infodesk-deployment-role-dependencies
new file mode 160000
index 0000000..0c1e74b
--- /dev/null
+++ b/roles/c3infodesk-deployment-role-dependencies
@@ -0,0 +1 @@
+Subproject commit 0c1e74bbb71bce7827c0a4b9dd713fc24c12d61e
diff --git a/roles/c3infodesk-deployment-role-test b/roles/c3infodesk-deployment-role-test
index ddc45d2..796e6c8 160000
--- a/roles/c3infodesk-deployment-role-test
+++ b/roles/c3infodesk-deployment-role-test
@@ -1 +1 @@
-Subproject commit ddc45d25c366878dd3f92136c54d4852562342c6
+Subproject commit 796e6c8f9f2088ab2c4ff69d3280bf053e64b6c9
diff --git a/roles/dependencies/README.md b/roles/dependencies/README.md
deleted file mode 100644
index 2d63089..0000000
--- a/roles/dependencies/README.md
+++ /dev/null
@@ -1,167 +0,0 @@
-# dependencies role
-
-
-This ansible-role for dealing with installing the dependencies for deploying the system used from **c3infodesk**.
-
-## Mentions
-This role uses great part of it from [geerlingguy](https://github.com/geerlingguy) for installing **docker** at the target host.
-
-The original code used can be found at: [https://github.com/geerlingguy/ansible-role-docker](https://github.com/geerlingguy/ansible-role-docker)
-
-## Requirements
-- To have [ansible](https://docs.ansible.com/ansible/latest/installation_guide/installation_distros.html) installed at your system.
-
-
-## Configuration
-You need to set some configuration for this to work
-- ### ansible.cfg
-  You have to edit the **ansible.cfg** file to your needs for accessing your target.
-  - #### remote_user
-    You need to set the **remote_user** configuration for accessing the target host.
-
-    Example: [remote_user](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/ansible.cfg#L227)
-
-- ### HOST_VARS
-  In order to access your target host, you need to create/edit your **inventories/host_vars/<YOUR_HOST_NAME>.yml**
-  - #### ansible_become_pass
-    You need to set the **sudo** password from the user setted on **remote_user** for installing packages and etc. at the target.
-
-    Example: [ansible_become_pass](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/inventories/host_vars/example_server.yml#L5)
-
-- ### HOSTS
-  You need to provide a **group** in which your target belongs to with the same name setted for **inventories/host_vars/<YOUR_HOST_NAME>.yml**.
-
-  There you can add/edit the target address/IP.
-
-  Example: [hosts](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/inventories/hosts)
-
-## Role Variables
-Here are the variables setted:
-
-- ### From: inventories/host_vars/<TARGET_NAME>
-  Here are the variables that you should be changing for your own deployment.
-  - **docker_users**: DEFAULT="[test-user]"
-    - The users to be added to the docker group.
-    - These users should should contain at least the same user setted on **ansible.cfg** at the **remote_user**
-  - **ansible_become_pass**: DEFAULT="Please change this"
-    - The password used from the user setted on **ansible.cfg** at the **remote_user**
-
-
-- ### From: inventories/group_vars/<TARGET_GROUP>
-  This role needs no variable setted on **group_vars**
-
-- ### From: roles/clone-repositories/defaults/main.yml
-  Here are the variables used for this role. Please don't change then here but instead in **inventories/host_vars/<TARGET_NAME>**
-
-  - **docker_users**
-  - **ansible_become_pass**
-  - **os_dependencies_packages**
-  - **docker_edition**
-  - **docker_packages**
-  - **docker_packages_state**
-  - **docker_obsolete_packages**
-  - **docker_obsolete_packages**
-  - **docker_service_manage**
-  - **docker_service_state**
-  - **docker_service_enabled**
-  - **docker_restart_handler_state**
-  - **docker_install_compose_plugin**
-  - **docker_compose_package**
-  - **docker_compose_package_state**
-  - **docker_install_compose**
-  - **docker_compose_version**
-  - **docker_compose_arch**
-  - **docker_compose_url**
-  - **docker_compose_path**
-  - **docker_add_repo**
-  - **docker_apt_release_channel**
-  - **docker_apt_ansible_distribution**
-  - **docker_apt_arch**
-  - **docker_apt_repository**
-  - **docker_apt_ignore_key_error**
-  - **docker_apt_gpg_key**
-  - **docker_apt_gpg_key_checksum**
-  - **docker_apt_filename**
-  - **docker_yum_repo_url**
-  - **docker_yum_repo_enable_nightly**
-  - **docker_yum_repo_enable_test**
-  - **docker_yum_gpg_key**
-  - **docker_daemon_options**
-
-- ### From: roles/dependencies/vars/main.yml
-  - **docker_packages**
-  - **docker_compose_package**
-
-
-## Dependencies
-This role have no dependency from any another role.
-
-
-## Example Playbook
-
-- ### Using the provided example
-    For using the example playbook **[playbooks/examples/example_02_dependencies.yml](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/playbooks/examples/example_02_dependencies.yml)** file you only need to:
-    - Change the user at the **[ansible.cfg](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/ansible.cfg)** file at the field **[remote_user](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/ansible.cfg#L227)** for acessing your target.
-    - Update the file **[inventories/host_vars/example_server.yml](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/inventories/host_vars/example_server.yml)** and change the value for **[ansible_become_pass](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/inventories/host_vars/example_server.yml#L5)** from the **[remote_user](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/ansible.cfg#L227)**
-    - Update the **[inventories/hosts](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/inventories/hosts)** file and change the **[example_server](https://git.cccv.de/fejao/c3infodesk-deployment/-/blob/main/inventories/hosts#L2)** with the IP address from your target.
-
-    And run the command:
-  ```bash
-  ansible-playbook -i inventories/hosts playbooks/examples/example_02_dependencies.yml
-  ```
-
-- ### Setting your own example
-  After setting your variables at **inventories/host_vars/<HOST_NAME>**, you can add this role to your playbook as a regular role.
-
-  Here is an example using the **<HOST_NAME>** as **test_servers**
-
-  ```yaml
-  - hosts:
-      - test_servers
-    roles:
-      - roles/dependencies
-  ```
-
-  And call the playbook as:
-
-  ```bash
-  ansible-playbook -i <INVENTORY> <PLAYBOOK_NAME>.yml
-  ```
-
-## Testing
-You can test this locally using **DIND (docker in docker)** at your own computer using [ansible molecule](https://ansible.readthedocs.io/projects/molecule/installation/)
-
-- ### Testing requirements
-  You need docker installed at your system and the [ansible molecule](https://ansible.readthedocs.io/projects/molecule/installation/).
-
-  You might have to set DIND at your system, for linux, you can create the file **/etc/docker/daemon.json**
-
-  And add the content and restart docker.
-
-  ```json
-  {
-    "exec-opts": ["native.cgroupdriver=systemd"],
-    "features": {
-      "buildkit": true
-    },
-    "experimental": true,
-    "cgroup-parent": "docker.slice"
-  }
-  ```
-
-- ### Using molecule
-  Just go to the root of the role **roles/dependencies** and run the command:
-
-  ```bash
-  molecule test
-  ```
-
-
-## License
-
-MIT / BSD
-
-
-## Author Information
-
-![fejao logo](../../files/from_authors/fejao_logo_circle.png "fejao") [https://chaos.social/@fejao](https://chaos.social/@fejao)
diff --git a/roles/dependencies/defaults/main.yml b/roles/dependencies/defaults/main.yml
deleted file mode 100644
index 8215573..0000000
--- a/roles/dependencies/defaults/main.yml
+++ /dev/null
@@ -1,89 +0,0 @@
----
-# defaults file for dependencies
-
-
-###
-### DEPLOYMENT USER
-###
-# This should be the password from the deployment user setted on ansible.cfg
-ansible_become_pass: "UPDATE THIS FOR THE HOSTS"
-
-# A list of users who will be added to the docker group.
-docker_users: []
-
-###
-### install_packages.yml
-###
-os_dependencies_packages:
-  - bash-completion
-  - git
-  - htop
-  - vim
-  - tree
-
-###
-### install_docker.yml
-###
-docker_installed: false
-# Edition can be one of: 'ce' (Community Edition) or 'ee' (Enterprise Edition).
-docker_edition: 'ce'
-docker_packages:
-  - "docker-{{ docker_edition }}"
-  - "docker-{{ docker_edition }}-cli"
-  - "docker-{{ docker_edition }}-rootless-extras"
-  - "containerd.io"
-  - docker-buildx-plugin
-docker_packages_state: present
-docker_obsolete_packages:
-  - docker
-  - docker.io
-  - docker-engine
-  - docker-doc
-  - podman-docker
-  - containerd
-  - runc
-
-# Service options.
-docker_service_manage: true
-docker_service_state: started
-docker_service_enabled: true
-docker_restart_handler_state: restarted
-
-# Docker Compose Plugin options.
-docker_install_compose_plugin: true
-docker_compose_package: docker-compose-plugin
-docker_compose_package_state: present
-
-# Docker Compose options.
-docker_install_compose: false
-docker_compose_version: "v2.32.1"
-docker_compose_arch: "{{ ansible_architecture }}"
-docker_compose_url: "https://github.com/docker/compose/releases/download/{{ docker_compose_version }}/docker-compose-linux-{{ docker_compose_arch }}"
-docker_compose_path: /usr/local/bin/docker-compose
-
-# Enable repo setup
-docker_add_repo: true
-
-# Docker repo URL.
-docker_repo_url: https://download.docker.com/linux
-
-# Used only for Debian/Ubuntu/Pop!_OS/Linux Mint. Switch 'stable' to 'nightly' if needed.
-docker_apt_release_channel: stable
-# docker_apt_ansible_distribution is a workaround for Ubuntu variants which can't be identified as such by Ansible,
-# and is only necessary until Docker officially supports them.
-docker_apt_ansible_distribution: "{{ 'ubuntu' if ansible_distribution in ['Pop!_OS', 'Linux Mint'] else ansible_distribution }}"
-docker_apt_arch: "{{ 'arm64' if ansible_architecture == 'aarch64' else 'armhf' if ansible_architecture == 'armv7l' else 'amd64' }}"
-docker_apt_repository: "deb [arch={{ docker_apt_arch }} signed-by=/etc/apt/keyrings/docker.asc] {{ docker_repo_url }}/{{ docker_apt_ansible_distribution | lower }} {{ ansible_distribution_release }} {{ docker_apt_release_channel }}"
-docker_apt_ignore_key_error: true
-docker_apt_gpg_key: "{{ docker_repo_url }}/{{ docker_apt_ansible_distribution | lower }}/gpg"
-docker_apt_gpg_key_checksum: "sha256:1500c1f56fa9e26b9b8f42452a553675796ade0807cdce11975eb98170b3a570"
-docker_apt_filename: "docker"
-
-# Used only for RedHat/CentOS/Fedora.
-docker_yum_repo_url: "{{ docker_repo_url }}/{{ (ansible_distribution == 'Fedora') | ternary('fedora', 'centos') }}/docker-{{ docker_edition }}.repo"
-docker_yum_repo_enable_nightly: '0'
-docker_yum_repo_enable_test: '0'
-docker_yum_gpg_key: "{{ docker_repo_url }}/centos/gpg"
-
-# Docker daemon options as a dict
-docker_daemon_options: {}
diff --git a/roles/dependencies/handlers/main.yml b/roles/dependencies/handlers/main.yml
deleted file mode 100644
index d8fd57c..0000000
--- a/roles/dependencies/handlers/main.yml
+++ /dev/null
@@ -1,10 +0,0 @@
----
-# handlers file for dependencies
-
-- name: HANDLER_RESTART_DOCKER
-  ansible.builtin.systemd_service:
-    name: docker
-    state: restarted
-    daemon_reload: true
-  when: docker_service_manage | bool
-  become: true
diff --git a/roles/dependencies/meta/main.yml b/roles/dependencies/meta/main.yml
deleted file mode 100644
index 38d2833..0000000
--- a/roles/dependencies/meta/main.yml
+++ /dev/null
@@ -1,12 +0,0 @@
----
-
-galaxy_info:
-  role_name: dependencies
-  description: Role to install the dependencies from the c3InfoDesk sytems
-  author: fejao
-  company: cccv.de
-  license: "MIT / BSD"
-  min_ansible_version: '2.10'
-  galaxy_tags: []
-
-dependencies: []
diff --git a/roles/dependencies/molecule/README.md b/roles/dependencies/molecule/README.md
deleted file mode 100644
index 81b4e59..0000000
--- a/roles/dependencies/molecule/README.md
+++ /dev/null
@@ -1,42 +0,0 @@
-## ansible molecule tests for role: dependencies
-
-
-
-## Why to use it
-It's allways a good idea to test your things.
-
-With **ansible molecule** you can test your role locally without the need of using a **real server** but a local **docker container**.
-
-## Dependencies
-
-- ### molecule
-  You need to have [ansible molecule](https://ansible.readthedocs.io/projects/molecule/installation/) installed.
-
-- ### DIND (docker in docker)
-    For using the tests, you will to have **docker** installed locally and and set it for using **DIND (docker in docker)**
-
-
-    - ### DIND linux
-      You have to create/edit the file **/etc/docker/daemon.json** with the content:
-
-    ```json
-    {
-    "exec-opts": ["native.cgroupdriver=systemd"],
-    "features": {
-        "buildkit": true
-    },
-    "experimental": true,
-    "cgroup-parent": "docker.slice"
-    }
-    ```
-
-
-## Configuration
-There's not much for configuring for using the tests
-
-## Running the tests
-For running the **molecule tests** you just need to run the command:
-
-```bash
-molecule test
-```
diff --git a/roles/dependencies/molecule/default/converge.yml b/roles/dependencies/molecule/default/converge.yml
deleted file mode 100644
index ac4c198..0000000
--- a/roles/dependencies/molecule/default/converge.yml
+++ /dev/null
@@ -1,35 +0,0 @@
----
-
-- name: MOLECULE | Converge
-  hosts: all
-  pre_tasks:
-    - name: MOLECULE | COVERGE | PRE-TASKS | VARIABLES | From -> ../../defaults
-      ansible.builtin.include_vars:
-        dir: ../../defaults
-        depth: 1
-        extensions:
-          - 'yml'
-
-    - name: MOLECULE | COVERGE | PRE-TASKS | VARIABLES | From -> ../../vars
-      ansible.builtin.include_vars:
-        dir: ../../vars
-        depth: 1
-        extensions:
-          - 'yml'
-
-    - name: MOLECULE | COVERGE | PRE-TASKS | VARIABLES | From -> ../../../../inventories/group_vars
-      ansible.builtin.include_vars:
-        dir: ../../../../inventories/group_vars
-        extensions:
-          - 'yml'
-
-    - name: MOLECULE | COVERGE | PRE-TASKS | VARIABLES | From -> ../../../../inventories/host_vars
-      ansible.builtin.include_vars:
-        dir: ../../../../inventories/host_vars
-        extensions:
-          - 'yml'
-
-  tasks:
-    - name: MOLECULE | CONVERGE | Call the 'dependencies' role.
-      ansible.builtin.include_role:
-        name: dependencies
diff --git a/roles/dependencies/molecule/default/molecule.yml b/roles/dependencies/molecule/default/molecule.yml
deleted file mode 100644
index cbd61d5..0000000
--- a/roles/dependencies/molecule/default/molecule.yml
+++ /dev/null
@@ -1,68 +0,0 @@
----
-
-dependency:
-  name: galaxy
-
-driver:
-  name: docker
-
-platforms:
-  - name: molecule_dependencies
-    ### At the moment I'm not running at the latest kernel, please use always with a older kernel than the host
-    # image: docker.io/geerlingguy/docker-ubuntu2204-ansible
-    image: geerlingguy/docker-ubuntu2204-ansible:latest
-    command: /usr/sbin/init
-    pre_build_image: true
-    cgroupns_mode: host
-    privileged: true
-    volumes:
-      - /sys/fs/cgroup:/sys/fs/cgroup:rw
-      - /var/lib/containerd
-
-provisioner:
-  name: ansible
-
-lint: |
-  ansible-lint --exclude molecule/default/
-
-scenario:
-  name: default
-  create_sequence:
-    - dependency
-    - create
-    - prepare
-  check_sequence:
-    - dependency
-    - cleanup
-    - destroy
-    - create
-    - prepare
-    - converge
-    - check
-    - destroy
-  converge_sequence:
-    - dependency
-    - create
-    - prepare
-    - converge
-  destroy_sequence:
-    - dependency
-    - cleanup
-    - destroy
-  test_sequence:
-    # - lint
-    # - dependency
-    # - cleanup
-    - destroy
-    - syntax
-    - create
-    # - prepare
-    - converge
-    - verify
-    - idempotence
-    # - side_effect
-    # - cleanup
-    - destroy
-
-verifier:
-  name: ansible
diff --git a/roles/dependencies/molecule/default/verify.yml b/roles/dependencies/molecule/default/verify.yml
deleted file mode 100644
index 0e486c2..0000000
--- a/roles/dependencies/molecule/default/verify.yml
+++ /dev/null
@@ -1,117 +0,0 @@
----
-
-- name: VERIFY | Test role for debugging variables
-  hosts: all
-  vars:
-    package_name_docker: 'docker'
-    package_name_docker_ce: 'docker-ce'
-    package_name_docker_compose: 'docker-compose'
-    package_name_docker_compose_plugin: 'docker-compose-plugin'
-
-  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 -> ../../vars
-      ansible.builtin.include_vars:
-        dir: ../../vars
-        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
-
-    # - name: MOLECULE | VERIFY | POPULATE | Gather service facts
-    #   ansible.builtin.service_facts:
-
-    ###
-    ### TESTS - PACKAGES
-    ###
-    - name: MOLECULE | VERIFY | TEST | 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
-
-    - name: MOLECULE | VERIFY | TEST | Check that docker is installed.
-      ansible.builtin.debug:
-        msg: "Package: 'docker' is installed"
-      failed_when:
-        - package_name_docker not in ansible_facts.packages
-        - package_name_docker_ce not in ansible_facts.packages
-
-    - name: MOLECULE | VERIFY | TEST | Check that docker-compose is installed.
-      ansible.builtin.debug:
-        msg: "Package: 'docker-cokmpose' is installed"
-      failed_when:
-       - package_name_docker_compose not in ansible_facts.packages
-       - package_name_docker_compose_plugin not in ansible_facts.packages
-
-    ###
-    ### TESTS - DOCKER
-    ###
-    - name: MOLECULE | VERIFY | TEST | Get docker service state.
-      ansible.builtin.systemd:
-        name: "docker"
-      register: docker_service
-
-    - name: MOLECULE | VERIFY | TEST | Check that docker is running.
-      ansible.builtin.debug:
-        msg: "Docker IS running..."
-      failed_when: "'active' != docker_service.status.ActiveState"
-
-    ###
-    ### TESTS - ADDED USERS
-    ###
-    - name: MOLECULE | VERIFY | TEST | Get added users infos.
-      ansible.builtin.user:
-        name: "{{ item }}"
-      loop: "{{ docker_users }}"
-      check_mode: true
-      register: test_users
-
-    - name: MOLECULE | VERIFY | TEST | 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 | 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 | 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"
diff --git a/roles/dependencies/tasks/docker/install_compose.yml b/roles/dependencies/tasks/docker/install_compose.yml
deleted file mode 100644
index 8c353a4..0000000
--- a/roles/dependencies/tasks/docker/install_compose.yml
+++ /dev/null
@@ -1,32 +0,0 @@
----
-- name: DOCKER | COMPOSE | Check current docker-compose version.
-  ansible.builtin.command: "{{ docker_compose_path }} --version"
-  register: docker_compose_vsn
-  check_mode: false
-  changed_when: false
-  failed_when: false
-
-- name: Setting the docker compose version
-  ansible.builtin.set_fact:
-    docker_compose_current_version: "{{ docker_compose_vsn.stdout | regex_search('(\\d+(\\.\\d+)+)') }}"
-  when: >
-    docker_compose_vsn.stdout is defined
-    and (docker_compose_vsn.stdout | length > 0)
-
-- name: DOCKER | COMPOSE | Delete existing docker-compose version if it's different.
-  ansible.builtin.file:
-    path: "{{ docker_compose_path }}"
-    state: absent
-  when: >
-    docker_compose_current_version is defined
-    and (docker_compose_version | regex_replace('v', '')) not in docker_compose_current_version
-
-- name: DOCKER | COMPOSE | Install Docker Compose (if configured).
-  ansible.builtin.get_url:
-    url: "{{ docker_compose_url }}"
-    dest: "{{ docker_compose_path }}"
-    mode: "0755"
-  when: >
-    (docker_compose_current_version is not defined)
-    or (docker_compose_current_version | length == 0)
-    or (docker_compose_current_version is version((docker_compose_version | regex_replace('v', '')), '<'))
diff --git a/roles/dependencies/tasks/docker/install_docker_users.yml b/roles/dependencies/tasks/docker/install_docker_users.yml
deleted file mode 100644
index 2f78a65..0000000
--- a/roles/dependencies/tasks/docker/install_docker_users.yml
+++ /dev/null
@@ -1,12 +0,0 @@
----
-
-- name: DOCKER | USERS | Ensure docker users are added to the docker group.
-  ansible.builtin.user:
-    name: "{{ item }}"
-    groups: docker
-    append: true
-  with_items: "{{ docker_users }}"
-  become: true
-
-- name: DOCKER | USERS | Reset ssh connection to apply user changes.
-  ansible.builtin.meta: reset_connection
diff --git a/roles/dependencies/tasks/docker/setup-Debian.yml b/roles/dependencies/tasks/docker/setup-Debian.yml
deleted file mode 100644
index 8835450..0000000
--- a/roles/dependencies/tasks/docker/setup-Debian.yml
+++ /dev/null
@@ -1,74 +0,0 @@
----
-- name: DOCKER | DEBIAN | Ensure apt key is not present in trusted.gpg.d
-  ansible.builtin.file:
-    path: /etc/apt/trusted.gpg.d/docker.asc
-    state: absent
-
-- name: DOCKER | DEBIAN | Ensure old apt source list is not present in /etc/apt/sources.list.d
-  ansible.builtin.file:
-    path: /etc/apt/sources.list.d/download_docker_com_linux_ubuntu.list
-    state: absent
-
-- name: DOCKER | DEBIAN | Ensure the repo referencing the previous trusted.gpg.d key is not present
-  ansible.builtin.apt_repository:
-    repo: "deb [arch={{ docker_apt_arch }} signed-by=/etc/apt/trusted.gpg.d/docker.asc] {{ docker_repo_url }}/{{ docker_apt_ansible_distribution | lower }} {{ ansible_distribution_release }} {{ docker_apt_release_channel }}"
-    state: absent
-    filename: "{{ docker_apt_filename }}"
-    update_cache: true
-  when: docker_add_repo | bool
-
-# See https://docs.docker.com/engine/install/debian/#uninstall-old-versions
-- name: DOCKER | DEBIAN | Ensure old versions of Docker are not installed.
-  ansible.builtin.package:
-    name: "{{ docker_obsolete_packages }}"
-    state: absent
-
-- name: DOCKER | DEBIAN | Ensure dependencies are installed.
-  become: true
-  ansible.builtin.apt:
-    name:
-      - apt-transport-https
-      - ca-certificates
-    state: present
-  when: docker_add_repo | bool
-
-- name: DOCKER | DEBIAN | Ensure directory exists for /etc/apt/keyrings
-  ansible.builtin.file:
-    path: /etc/apt/keyrings
-    state: directory
-    mode: "0755"
-
-- name: DOCKER | DEBIAN | Add Docker apt key.
-  ansible.builtin.get_url:
-    url: "{{ docker_apt_gpg_key }}"
-    dest: /etc/apt/keyrings/docker.asc
-    mode: "0644"
-    force: false
-    checksum: "{{ docker_apt_gpg_key_checksum | default(omit) }}"
-  register: add_repository_key
-  ignore_errors: "{{ docker_apt_ignore_key_error }}"
-  when: docker_add_repo | bool
-  become: true
-
-- name: DOCKER | DEBIAN | Ensure curl is present (on older systems without SNI).
-  ansible.builtin.apt:
-    name: curl
-    state: present
-  when: add_repository_key is failed and docker_add_repo | bool
-
-- name: DOCKER | DEBIAN | Add Docker apt key (alternative for older systems without SNI).
-  ansible.builtin.shell: >
-    set -o pipefail &&
-    curl -sSL {{ docker_apt_gpg_key }} | apt-key add -
-  when: add_repository_key is failed and docker_add_repo | bool
-  register: ret_add_docker_key
-  changed_when: ret_add_docker_key.rc != 0
-
-- name: DOCKER | DEBIAN | Add Docker repository.
-  ansible.builtin.apt_repository:
-    repo: "{{ docker_apt_repository }}"
-    state: present
-    filename: "{{ docker_apt_filename }}"
-    update_cache: true
-  when: docker_add_repo | bool
-  become: true
diff --git a/roles/dependencies/tasks/docker/setup-RedHat.yml b/roles/dependencies/tasks/docker/setup-RedHat.yml
deleted file mode 100644
index 228585f..0000000
--- a/roles/dependencies/tasks/docker/setup-RedHat.yml
+++ /dev/null
@@ -1,61 +0,0 @@
----
-- name: DOCKER | RED-HAT | Ensure old versions of Docker are not installed.
-  ansible.builtin.package:
-    name:
-      - docker
-      - docker-common
-      - docker-engine
-    state: absent
-
-- name: DOCKER | RED-HAT | Add Docker GPG key.
-  ansible.builtin.rpm_key:
-    key: "{{ docker_yum_gpg_key }}"
-    state: present
-  when: docker_add_repo | bool
-
-- name: DOCKER | RED-HAT | Add Docker repository.
-  ansible.builtin.get_url:
-    url: "{{ docker_yum_repo_url }}"
-    dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo'
-    owner: root
-    group: root
-    mode: "0644"
-  when: docker_add_repo | bool
-
-- name: DOCKER | RED-HAT | Configure Docker Nightly repo.
-  community.general.ini_file:
-    dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo'
-    section: 'docker-{{ docker_edition }}-nightly'
-    option: enabled
-    value: '{{ docker_yum_repo_enable_nightly }}'
-    mode: "0644"
-    no_extra_spaces: true
-  when: docker_add_repo | bool
-
-- name: DOCKER | RED-HAT | Configure Docker Test repo.
-  community.general.ini_file:
-    dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo'
-    section: 'docker-{{ docker_edition }}-test'
-    option: enabled
-    value: '{{ docker_yum_repo_enable_test }}'
-    mode: "0644"
-    no_extra_spaces: true
-  when: docker_add_repo | bool
-
-- name: DOCKER | RED-HAT | Configure containerd on RHEL 8.
-  when: ansible_distribution_major_version | int == 8
-  block:
-    - name: Ensure runc is not installed.
-      ansible.builtin.package:
-        name: runc
-        state: absent
-
-    - name: Ensure container-selinux is installed.
-      ansible.builtin.package:
-        name: container-selinux
-        state: present
-
-    - name: Ensure containerd.io is installed.
-      ansible.builtin.package:
-        name: containerd.io
-        state: present
diff --git a/roles/dependencies/tasks/install_docker.yml b/roles/dependencies/tasks/install_docker.yml
deleted file mode 100644
index 745b046..0000000
--- a/roles/dependencies/tasks/install_docker.yml
+++ /dev/null
@@ -1,112 +0,0 @@
----
-
-- name: DOCKER | Load OS-specific vars.
-  ansible.builtin.include_vars: "{{ lookup('first_found', params) }}"
-  vars:
-    params:
-      files:
-        - '{{ ansible_distribution }}.yml'
-        - '{{ ansible_os_family }}.yml'
-        - main.yml
-      paths:
-        - 'vars'
-
-- name: DOCKER | Installing for RedHat OS family
-  ansible.builtin.include_tasks: docker/setup-RedHat.yml
-  when: ansible_os_family == 'RedHat'
-
-- name: DOCKER | Installing for Debian OS family
-  ansible.builtin.include_tasks: docker/setup-Debian.yml
-  when: ansible_os_family == 'Debian'
-
-- name: DOCKER | Install Docker packages.
-  ansible.builtin.package:
-    name: "{{ docker_packages }}"
-    state: "{{ docker_packages_state }}"
-  notify: HANDLER_RESTART_DOCKER
-  ignore_errors: "{{ ansible_check_mode }}"
-  when: "ansible_version.full is version_compare('2.12', '<') or ansible_os_family not in ['RedHat', 'Debian']"
-  become: true
-
-- name: DOCKER | Install Docker packages (with downgrade option).
-  ansible.builtin.package:
-    name: "{{ docker_packages }}"
-    state: "{{ docker_packages_state }}"
-    allow_downgrade: true
-  notify: HANDLER_RESTART_DOCKER
-  ignore_errors: "{{ ansible_check_mode }}"
-  when: "ansible_version.full is version_compare('2.12', '>=') and ansible_os_family in ['RedHat', 'Debian']"
-  become: true
-
-- name: DOCKER | Install docker-compose plugin.
-  ansible.builtin.package:
-    name: "{{ docker_compose_package }}"
-    state: "{{ docker_compose_package_state }}"
-  notify: HANDLER_RESTART_DOCKER
-  ignore_errors: "{{ ansible_check_mode }}"
-  when:
-    - docker_install_compose_plugin | bool
-    - ansible_version.full is version_compare('2.12', '<') or ansible_os_family not in ['RedHat', 'Debian']
-  become: true
-
-- name: DOCKER | Install docker-compose-plugin (with downgrade option).
-  ansible.builtin.package:
-    name: "{{ docker_compose_package }}"
-    state: "{{ docker_compose_package_state }}"
-    allow_downgrade: true
-  notify: HANDLER_RESTART_DOCKER
-  ignore_errors: "{{ ansible_check_mode }}"
-  when:
-  - docker_install_compose_plugin | bool
-  - ansible_version.full is version_compare('2.12', '>=')
-  - ansible_os_family in ['RedHat', 'Debian']
-  become: true
-
-- name: DOCKER | Ensure /etc/docker/ directory exists.
-  ansible.builtin.file:
-    path: /etc/docker
-    state: directory
-    mode: "0755"
-  when: docker_daemon_options.keys() | length > 0
-
-- name: DOCKER | Configure Docker daemon options.
-  ansible.builtin.copy:
-    content: "{{ docker_daemon_options | to_nice_json }}"
-    dest: /etc/docker/daemon.json
-    mode: "0644"
-  when: docker_daemon_options.keys() | length > 0
-  notify: HANDLER_RESTART_DOCKER
-
-- name: DOCKER | Ensure Docker is started and enabled at boot.
-  ansible.builtin.service:
-    name: docker
-    state: "{{ docker_service_state }}"
-    enabled: "{{ docker_service_enabled }}"
-  ignore_errors: "{{ ansible_check_mode }}"
-  when: docker_service_manage | bool
-
-- name: DOCKER | Ensure handlers are notified now to avoid firewall conflicts.
-  ansible.builtin.meta: flush_handlers
-
-- name: Installing 'docker compose'
-  ansible.builtin.include_tasks: docker/install_compose.yml
-  when: docker_install_compose | bool
-
-- name: DOCKER | Get docker group info using getent.
-  ansible.builtin.getent:
-    database: group
-    key: docker
-    split: ':'
-  when: docker_users | length > 0
-
-- name: DOCKER | Check if there are any users to add to the docker group.
-  ansible.builtin.set_fact:
-    at_least_one_user_to_modify: true
-  when:
-    - docker_users | length > 0
-    - item not in ansible_facts.getent_group["docker"][2]
-  with_items: "{{ docker_users }}"
-
-- name: DOCKER | Adding users to the docker group
-  ansible.builtin.include_tasks: docker/install_docker_users.yml
-  when: at_least_one_user_to_modify is defined
diff --git a/roles/dependencies/tasks/install_packages.yml b/roles/dependencies/tasks/install_packages.yml
deleted file mode 100644
index 5e7390f..0000000
--- a/roles/dependencies/tasks/install_packages.yml
+++ /dev/null
@@ -1,11 +0,0 @@
----
-
-- name: INSTALL_PACKAGES | Installing the packages from list
-  ansible.builtin.package:
-    name: "{{ package_name }}"
-    state: present
-    update_cache: true
-  loop: "{{ os_dependencies_packages }}"
-  loop_control:
-    loop_var: package_name
-  become: true
diff --git a/roles/dependencies/tasks/main.yml b/roles/dependencies/tasks/main.yml
deleted file mode 100644
index 25bbb59..0000000
--- a/roles/dependencies/tasks/main.yml
+++ /dev/null
@@ -1,21 +0,0 @@
----
-# tasks file for dependencies
-
-- name: Importing the 'install_packages.yml' tasks
-  ansible.builtin.import_tasks: install_packages.yml
-
-- name: Get docker service state.
-  ansible.builtin.systemd:
-    name: "docker"
-  register: docker_service
-
-- name: Set fact if docker already installed and active.
-  ansible.builtin.set_fact:
-    docker_installed: true
-  when:
-    - docker_service is defined
-    - "'active' == docker_service.status.ActiveState"
-
-- name: Importing the 'install_docker.yml' tasks if docker not installed.
-  ansible.builtin.import_tasks: install_docker.yml
-  when: docker_installed | bool is false
diff --git a/roles/dependencies/vars/Alpine.yml b/roles/dependencies/vars/Alpine.yml
deleted file mode 100755
index b81917a..0000000
--- a/roles/dependencies/vars/Alpine.yml
+++ /dev/null
@@ -1,2 +0,0 @@
----
-docker_packages: "docker"
diff --git a/roles/dependencies/vars/Archlinux.yml b/roles/dependencies/vars/Archlinux.yml
deleted file mode 100644
index f68d962..0000000
--- a/roles/dependencies/vars/Archlinux.yml
+++ /dev/null
@@ -1,3 +0,0 @@
----
-docker_packages: "docker"
-docker_compose_package: docker-compose
diff --git a/roles/dependencies/vars/main.yml b/roles/dependencies/vars/main.yml
deleted file mode 100755
index 805232b..0000000
--- a/roles/dependencies/vars/main.yml
+++ /dev/null
@@ -1,2 +0,0 @@
----
-# Empty file
-- 
GitLab