From e14e6b96e9ca63fea8bbd7645d94cf09370ea81f Mon Sep 17 00:00:00 2001 From: Kevin Veen-Birkenbach Date: Sat, 12 Jul 2025 10:11:52 +0200 Subject: [PATCH] Renamed Database roles --- roles/cmp-db-docker/README.md | 8 ++++---- roles/cmp-db-docker/tasks/main.yml | 2 +- roles/cmp-db-docker/vars/main.yml | 2 +- .../templates/services/main.yml.j2 | 1 - .../README.md | 0 .../meta/main.yml | 0 .../tasks/main.yml | 8 ++++++-- .../templates/configuration.yml.j2 | 0 .../templates/env/mariadb.env.j2 | 0 .../templates/env/postgres.env.j2 | 0 roles/cmp-rdbms/templates/services/main.yml.j2 | 1 + .../templates/services/mariadb.yml.j2 | 0 .../templates/services/postgres.yml.j2 | 2 +- .../vars/database.yml | 2 +- roles/docker-compose/templates/base.yml.j2 | 2 +- roles/svc-mariadb/Administration.md | 6 ++++++ .../{svc-rdbms-mariadb => svc-mariadb}/README.md | 0 .../config/main.yml | 0 .../defaults/README.md | 4 ++-- .../defaults/main.yml | 0 .../meta/main.yml | 0 .../schema/main.yml | 0 .../tasks/main.yml | 16 ++++++++-------- .../vars/README.md | 2 +- roles/svc-mariadb/vars/main.yml | 1 + .../Administration.md | 2 +- .../README.md | 0 .../{svc-rdbms-postgres => svc-postgres}/Todo.md | 0 .../Upgrade.md | 0 .../config/main.yml | 0 .../meta/main.yml | 0 .../schema/main.yml | 0 .../tasks/init_database.yml | 0 .../tasks/main.yml | 0 roles/svc-postgres/vars/main.yml | 1 + roles/svc-rdbms-mariadb/Administration.md | 6 ------ roles/svc-rdbms-mariadb/vars/main.yml | 1 - roles/svc-rdbms-postgres/vars/main.yml | 1 - .../update-docker/templates/update-docker.py.j2 | 2 +- roles/web-app-discourse/tasks/main.yml | 6 +++--- roles/web-app-discourse/tasks/reset.yml | 2 +- roles/web-app-espocrm/README.md | 2 +- roles/web-app-friendica/Administration.md | 6 +++--- .../tasks/create-and-seed-database.yml | 2 +- roles/web-app-pgadmin/vars/db_config.yml | 2 +- roles/web-app-phpmyadmin/templates/env.j2 | 4 ++-- 46 files changed, 49 insertions(+), 45 deletions(-) delete mode 100644 roles/cmp-rdbms-orchestrator/templates/services/main.yml.j2 rename roles/{cmp-rdbms-orchestrator => cmp-rdbms}/README.md (100%) rename roles/{cmp-rdbms-orchestrator => cmp-rdbms}/meta/main.yml (100%) rename roles/{cmp-rdbms-orchestrator => cmp-rdbms}/tasks/main.yml (66%) rename roles/{cmp-rdbms-orchestrator => cmp-rdbms}/templates/configuration.yml.j2 (100%) rename roles/{cmp-rdbms-orchestrator => cmp-rdbms}/templates/env/mariadb.env.j2 (100%) rename roles/{cmp-rdbms-orchestrator => cmp-rdbms}/templates/env/postgres.env.j2 (100%) create mode 100644 roles/cmp-rdbms/templates/services/main.yml.j2 rename roles/{cmp-rdbms-orchestrator => cmp-rdbms}/templates/services/mariadb.yml.j2 (100%) rename roles/{cmp-rdbms-orchestrator => cmp-rdbms}/templates/services/postgres.yml.j2 (89%) rename roles/{cmp-rdbms-orchestrator => cmp-rdbms}/vars/database.yml (96%) create mode 100644 roles/svc-mariadb/Administration.md rename roles/{svc-rdbms-mariadb => svc-mariadb}/README.md (100%) rename roles/{svc-rdbms-mariadb => svc-mariadb}/config/main.yml (100%) rename roles/{svc-rdbms-mariadb => svc-mariadb}/defaults/README.md (91%) rename roles/{svc-rdbms-mariadb => svc-mariadb}/defaults/main.yml (100%) rename roles/{svc-rdbms-mariadb => svc-mariadb}/meta/main.yml (100%) rename roles/{svc-rdbms-mariadb => svc-mariadb}/schema/main.yml (100%) rename roles/{svc-rdbms-mariadb => svc-mariadb}/tasks/main.yml (75%) rename roles/{svc-rdbms-mariadb => svc-mariadb}/vars/README.md (80%) create mode 100644 roles/svc-mariadb/vars/main.yml rename roles/{svc-rdbms-postgres => svc-postgres}/Administration.md (60%) rename roles/{svc-rdbms-postgres => svc-postgres}/README.md (100%) rename roles/{svc-rdbms-postgres => svc-postgres}/Todo.md (100%) rename roles/{svc-rdbms-postgres => svc-postgres}/Upgrade.md (100%) rename roles/{svc-rdbms-postgres => svc-postgres}/config/main.yml (100%) rename roles/{svc-rdbms-postgres => svc-postgres}/meta/main.yml (100%) rename roles/{svc-rdbms-postgres => svc-postgres}/schema/main.yml (100%) rename roles/{svc-rdbms-postgres => svc-postgres}/tasks/init_database.yml (100%) rename roles/{svc-rdbms-postgres => svc-postgres}/tasks/main.yml (100%) create mode 100644 roles/svc-postgres/vars/main.yml delete mode 100644 roles/svc-rdbms-mariadb/Administration.md delete mode 100644 roles/svc-rdbms-mariadb/vars/main.yml delete mode 100644 roles/svc-rdbms-postgres/vars/main.yml diff --git a/roles/cmp-db-docker/README.md b/roles/cmp-db-docker/README.md index e9a21e11..7e1e4e25 100644 --- a/roles/cmp-db-docker/README.md +++ b/roles/cmp-db-docker/README.md @@ -1,18 +1,18 @@ # Database Docker Composition -This role combines the central RDBMS role (`cmp-rdbms-orchestrator`) with Docker Compose to deliver a ready-to-use containerized database environment. +This role combines the central RDBMS role (`cmp-rdbms`) with Docker Compose to deliver a ready-to-use containerized database environment. ## Features - **Central RDBMS Integration** - Includes the `cmp-rdbms-orchestrator` role, which handles backups, restores, user and permission management for your relational database system (PostgreSQL, MariaDB, etc.). + Includes the `cmp-rdbms` role, which handles backups, restores, user and permission management for your relational database system (PostgreSQL, MariaDB, etc.). - **Docker Compose** Utilizes the standalone `docker-compose` role to define and bring up containers, networks, and volumes automatically. - **Variable Load Order** 1. Docker Compose variables (`roles/docker-compose/vars/docker-compose.yml`) - 2. Database variables (`roles/cmp-rdbms-orchestrator/vars/database.yml`) + 2. Database variables (`roles/cmp-rdbms/vars/database.yml`) Ensures compose ports and volumes are defined before the database role consumes them. The role will load both sub-roles and satisfy all dependencies transparently. @@ -22,4 +22,4 @@ The role will load both sub-roles and satisfy all dependencies transparently. 1. **Set Fact** `database_application_id` to work around lazy‐loading ordering. 2. **Include Vars** in the specified order. 3. **Invoke** `docker-compose` role to create containers, networks, and volumes. -4. **Invoke** `cmp-rdbms-orchestrator` role to provision the database, backups, and users. \ No newline at end of file +4. **Invoke** `cmp-rdbms` role to provision the database, backups, and users. \ No newline at end of file diff --git a/roles/cmp-db-docker/tasks/main.yml b/roles/cmp-db-docker/tasks/main.yml index 6310df87..53023752 100644 --- a/roles/cmp-db-docker/tasks/main.yml +++ b/roles/cmp-db-docker/tasks/main.yml @@ -14,4 +14,4 @@ - name: "Load central rdbms for {{ application_id }}" include_role: - name: cmp-rdbms-orchestrator \ No newline at end of file + name: cmp-rdbms \ No newline at end of file diff --git a/roles/cmp-db-docker/vars/main.yml b/roles/cmp-db-docker/vars/main.yml index cbb7f293..6a8a6f7c 100644 --- a/roles/cmp-db-docker/vars/main.yml +++ b/roles/cmp-db-docker/vars/main.yml @@ -1,2 +1,2 @@ -cmp_db_docker_vars_file_db: "{{ playbook_dir }}/roles/cmp-rdbms-orchestrator/vars/database.yml" +cmp_db_docker_vars_file_db: "{{ playbook_dir }}/roles/cmp-rdbms/vars/database.yml" cmp_db_docker_vars_file_docker: "{{ playbook_dir }}/roles/docker-compose/vars/docker-compose.yml" \ No newline at end of file diff --git a/roles/cmp-rdbms-orchestrator/templates/services/main.yml.j2 b/roles/cmp-rdbms-orchestrator/templates/services/main.yml.j2 deleted file mode 100644 index fca3c44c..00000000 --- a/roles/cmp-rdbms-orchestrator/templates/services/main.yml.j2 +++ /dev/null @@ -1 +0,0 @@ -{% include 'roles/cmp-rdbms-orchestrator/templates/services/' + database_type + '.yml.j2' %} \ No newline at end of file diff --git a/roles/cmp-rdbms-orchestrator/README.md b/roles/cmp-rdbms/README.md similarity index 100% rename from roles/cmp-rdbms-orchestrator/README.md rename to roles/cmp-rdbms/README.md diff --git a/roles/cmp-rdbms-orchestrator/meta/main.yml b/roles/cmp-rdbms/meta/main.yml similarity index 100% rename from roles/cmp-rdbms-orchestrator/meta/main.yml rename to roles/cmp-rdbms/meta/main.yml diff --git a/roles/cmp-rdbms-orchestrator/tasks/main.yml b/roles/cmp-rdbms/tasks/main.yml similarity index 66% rename from roles/cmp-rdbms-orchestrator/tasks/main.yml rename to roles/cmp-rdbms/tasks/main.yml index 10b7a7e2..cbe946b4 100644 --- a/roles/cmp-rdbms-orchestrator/tasks/main.yml +++ b/roles/cmp-rdbms/tasks/main.yml @@ -1,5 +1,5 @@ # The following env file will just be used from the dedicated mariadb container -# and not the {{applications['rdbms-mariadb'].hostname }}-database +# and not the {{applications['mariadb'].hostname }}-database - name: "Create {{database_env}}" template: src: "env/{{database_type}}.env.j2" @@ -9,8 +9,12 @@ - name: "Create central database" include_role: - name: "svc-rdbms-{{database_type}}" + name: "svc-{{database_type}}" when: applications | is_feature_enabled('central_database',application_id) +#- name: "Create central database" +# include_tasks: "{{ playbook_dir }}/roles/svc-{{database_type}}/tasks/main.yml" +# when: applications | is_feature_enabled('central_database',application_id) + - name: "Add database to backup" include_tasks: "{{ playbook_dir }}/roles/sys-bkp-docker-to-local/tasks/seed-database-to-backup.yml" \ No newline at end of file diff --git a/roles/cmp-rdbms-orchestrator/templates/configuration.yml.j2 b/roles/cmp-rdbms/templates/configuration.yml.j2 similarity index 100% rename from roles/cmp-rdbms-orchestrator/templates/configuration.yml.j2 rename to roles/cmp-rdbms/templates/configuration.yml.j2 diff --git a/roles/cmp-rdbms-orchestrator/templates/env/mariadb.env.j2 b/roles/cmp-rdbms/templates/env/mariadb.env.j2 similarity index 100% rename from roles/cmp-rdbms-orchestrator/templates/env/mariadb.env.j2 rename to roles/cmp-rdbms/templates/env/mariadb.env.j2 diff --git a/roles/cmp-rdbms-orchestrator/templates/env/postgres.env.j2 b/roles/cmp-rdbms/templates/env/postgres.env.j2 similarity index 100% rename from roles/cmp-rdbms-orchestrator/templates/env/postgres.env.j2 rename to roles/cmp-rdbms/templates/env/postgres.env.j2 diff --git a/roles/cmp-rdbms/templates/services/main.yml.j2 b/roles/cmp-rdbms/templates/services/main.yml.j2 new file mode 100644 index 00000000..df1bb93a --- /dev/null +++ b/roles/cmp-rdbms/templates/services/main.yml.j2 @@ -0,0 +1 @@ +{% include 'roles/cmp-rdbms/templates/services/' + database_type + '.yml.j2' %} \ No newline at end of file diff --git a/roles/cmp-rdbms-orchestrator/templates/services/mariadb.yml.j2 b/roles/cmp-rdbms/templates/services/mariadb.yml.j2 similarity index 100% rename from roles/cmp-rdbms-orchestrator/templates/services/mariadb.yml.j2 rename to roles/cmp-rdbms/templates/services/mariadb.yml.j2 diff --git a/roles/cmp-rdbms-orchestrator/templates/services/postgres.yml.j2 b/roles/cmp-rdbms/templates/services/postgres.yml.j2 similarity index 89% rename from roles/cmp-rdbms-orchestrator/templates/services/postgres.yml.j2 rename to roles/cmp-rdbms/templates/services/postgres.yml.j2 index a5e5d5f2..c9805d3c 100644 --- a/roles/cmp-rdbms-orchestrator/templates/services/postgres.yml.j2 +++ b/roles/cmp-rdbms/templates/services/postgres.yml.j2 @@ -1,7 +1,7 @@ # This template needs to be included in docker-compose.yml, which depend on a postgres database {% if not applications | is_feature_enabled('central_database',application_id) %} {{ database_host }}: - image: postgres:{{applications['rdbms-postgres'].version}}-alpine + image: postgres:{{applications['postgres'].version}}-alpine container_name: {{application_id}}-database env_file: - {{database_env}} diff --git a/roles/cmp-rdbms-orchestrator/vars/database.yml b/roles/cmp-rdbms/vars/database.yml similarity index 96% rename from roles/cmp-rdbms-orchestrator/vars/database.yml rename to roles/cmp-rdbms/vars/database.yml index 04621d73..1552129c 100644 --- a/roles/cmp-rdbms-orchestrator/vars/database.yml +++ b/roles/cmp-rdbms/vars/database.yml @@ -3,7 +3,7 @@ database_host: "{{ 'central-' + database_type if applications | is_feature_ database_name: "{{ applications[database_application_id].database.name | default( database_application_id ) }}" # The overwritte configuration is needed by bigbluebutton database_username: "{{ applications[database_application_id].database.username | default( database_application_id )}}" # The overwritte configuration is needed by bigbluebutton database_password: "{{ applications[database_application_id].credentials.database_password }}" -database_port: "{{ 3306 if database_type == 'mariadb' else applications['rdbms-postgres'].port }}" +database_port: "{{ 3306 if database_type == 'mariadb' else applications['postgres'].port }}" database_env: "{{docker_compose.directories.env}}{{database_type}}.env" database_url_jdbc: "jdbc:{{ database_type if database_type == 'mariadb' else 'postgresql' }}://{{ database_host }}:{{ database_port }}/{{ database_name }}" database_url_full: "{{database_type}}://{{database_username}}:{{database_password}}@{{database_host}}:{{database_port}}/{{ database_name }}" \ No newline at end of file diff --git a/roles/docker-compose/templates/base.yml.j2 b/roles/docker-compose/templates/base.yml.j2 index 03a284f6..68b92670 100644 --- a/roles/docker-compose/templates/base.yml.j2 +++ b/roles/docker-compose/templates/base.yml.j2 @@ -2,7 +2,7 @@ services: {# Load Database #} {% if applications[application_id].docker.services.database.enabled | default(false) | bool %} -{% include 'roles/cmp-rdbms-orchestrator/templates/services/main.yml.j2' %} +{% include 'roles/cmp-rdbms/templates/services/main.yml.j2' %} {% endif %} {# Load Redis #} {% if applications[application_id].docker.services.redis.enabled | default(false) | bool %} diff --git a/roles/svc-mariadb/Administration.md b/roles/svc-mariadb/Administration.md new file mode 100644 index 00000000..e8121569 --- /dev/null +++ b/roles/svc-mariadb/Administration.md @@ -0,0 +1,6 @@ +# Administration + +## Execute SQL commands +```bash +docker exec -it {{applications['mariadb'].hostname }} mariadb -u root -p +``` \ No newline at end of file diff --git a/roles/svc-rdbms-mariadb/README.md b/roles/svc-mariadb/README.md similarity index 100% rename from roles/svc-rdbms-mariadb/README.md rename to roles/svc-mariadb/README.md diff --git a/roles/svc-rdbms-mariadb/config/main.yml b/roles/svc-mariadb/config/main.yml similarity index 100% rename from roles/svc-rdbms-mariadb/config/main.yml rename to roles/svc-mariadb/config/main.yml diff --git a/roles/svc-rdbms-mariadb/defaults/README.md b/roles/svc-mariadb/defaults/README.md similarity index 91% rename from roles/svc-rdbms-mariadb/defaults/README.md rename to roles/svc-mariadb/defaults/README.md index 912ac735..c9594580 100644 --- a/roles/svc-rdbms-mariadb/defaults/README.md +++ b/roles/svc-mariadb/defaults/README.md @@ -1,6 +1,6 @@ # defaults/ -This directory contains default variable definition files for the `svc-rdbms-mariadb` Ansible role. It centralizes all configurable values related to MariaDB deployment and can be adjusted without modifying task logic. +This directory contains default variable definition files for the `svc-mariadb` Ansible role. It centralizes all configurable values related to MariaDB deployment and can be adjusted without modifying task logic. --- @@ -34,7 +34,7 @@ Defines default values for how the MariaDB database should be created. To customize any of these values without editing role defaults: -1. Create or update a playbook-level vars file (e.g. `group_vars/all/svc-rdbms-mariadb.yml`). +1. Create or update a playbook-level vars file (e.g. `group_vars/all/svc-mariadb.yml`). 2. Set the desired values, for example: ```yaml diff --git a/roles/svc-rdbms-mariadb/defaults/main.yml b/roles/svc-mariadb/defaults/main.yml similarity index 100% rename from roles/svc-rdbms-mariadb/defaults/main.yml rename to roles/svc-mariadb/defaults/main.yml diff --git a/roles/svc-rdbms-mariadb/meta/main.yml b/roles/svc-mariadb/meta/main.yml similarity index 100% rename from roles/svc-rdbms-mariadb/meta/main.yml rename to roles/svc-mariadb/meta/main.yml diff --git a/roles/svc-rdbms-mariadb/schema/main.yml b/roles/svc-mariadb/schema/main.yml similarity index 100% rename from roles/svc-rdbms-mariadb/schema/main.yml rename to roles/svc-mariadb/schema/main.yml diff --git a/roles/svc-rdbms-mariadb/tasks/main.yml b/roles/svc-mariadb/tasks/main.yml similarity index 75% rename from roles/svc-rdbms-mariadb/tasks/main.yml rename to roles/svc-mariadb/tasks/main.yml index 6fdb909e..ef9154ff 100644 --- a/roles/svc-rdbms-mariadb/tasks/main.yml +++ b/roles/svc-mariadb/tasks/main.yml @@ -8,11 +8,11 @@ - name: install MariaDB docker_container: - name: "{{applications['rdbms-mariadb'].hostname }}" - image: "mariadb:{{applications['rdbms-mariadb'].version}}" #could lead to problems with nextcloud + name: "{{applications['mariadb'].hostname }}" + image: "mariadb:{{applications['mariadb'].version}}" #could lead to problems with nextcloud detach: yes env: - MARIADB_ROOT_PASSWORD: "{{applications['rdbms-mariadb'].credentials.root_password}}" + MARIADB_ROOT_PASSWORD: "{{applications['mariadb'].credentials.root_password}}" MARIADB_AUTO_UPGRADE: "1" networks: - name: central_mariadb @@ -23,7 +23,7 @@ command: "--transaction-isolation=READ-COMMITTED --binlog-format=ROW" #for nextcloud restart_policy: "{{docker_restart_policy}}" healthcheck: - test: "/usr/bin/mariadb --user=root --password={{applications['rdbms-mariadb'].credentials.root_password}} --execute \"SHOW DATABASES;\"" + test: "/usr/bin/mariadb --user=root --password={{applications['mariadb'].credentials.root_password}} --execute \"SHOW DATABASES;\"" interval: 3s timeout: 1s retries: 5 @@ -38,7 +38,7 @@ - name: Wait until the MariaDB container is healthy community.docker.docker_container_info: - name: "{{ applications['rdbms-mariadb'].hostname }}" + name: "{{ applications['mariadb'].hostname }}" register: db_info until: - db_info.containers is defined @@ -56,7 +56,7 @@ name: "{{ database_name }}" state: present login_user: root - login_password: "{{ applications['rdbms-mariadb'].credentials.root_password }}" + login_password: "{{ applications['mariadb'].credentials.root_password }}" login_host: 127.0.0.1 login_port: "{{ database_port }}" encoding: "{{ database_encoding }}" @@ -70,7 +70,7 @@ priv: '{{database_name}}.*:ALL' state: present login_user: root - login_password: "{{applications['rdbms-mariadb'].credentials.root_password}}" + login_password: "{{applications['mariadb'].credentials.root_password}}" login_host: 127.0.0.1 login_port: "{{database_port}}" @@ -78,7 +78,7 @@ # @todo Remove if this works fine in the future. #- name: Grant database privileges # ansible.builtin.shell: -# cmd: "docker exec {{applications['rdbms-mariadb'].hostname }} mariadb -u root -p{{ applications['rdbms-mariadb'].credentials.root_password }} -e \"GRANT ALL PRIVILEGES ON `{{database_name}}`.* TO '{{database_username}}'@'%';\"" +# cmd: "docker exec {{applications['mariadb'].hostname }} mariadb -u root -p{{ applications['mariadb'].credentials.root_password }} -e \"GRANT ALL PRIVILEGES ON `{{database_name}}`.* TO '{{database_username}}'@'%';\"" # args: # executable: /bin/bash diff --git a/roles/svc-rdbms-mariadb/vars/README.md b/roles/svc-mariadb/vars/README.md similarity index 80% rename from roles/svc-rdbms-mariadb/vars/README.md rename to roles/svc-mariadb/vars/README.md index a30f2e59..2f410877 100644 --- a/roles/svc-rdbms-mariadb/vars/README.md +++ b/roles/svc-mariadb/vars/README.md @@ -1,6 +1,6 @@ # vars/ -This directory contains variable definition files for the `svc-rdbms-mariadb` Ansible role. It centralizes all configurable values related to MariaDB deployment and can be adjusted without modifying task logic. +This directory contains variable definition files for the `svc-mariadb` Ansible role. It centralizes all configurable values related to MariaDB deployment and can be adjusted without modifying task logic. --- diff --git a/roles/svc-mariadb/vars/main.yml b/roles/svc-mariadb/vars/main.yml new file mode 100644 index 00000000..068689f3 --- /dev/null +++ b/roles/svc-mariadb/vars/main.yml @@ -0,0 +1 @@ +application_id: mariadb diff --git a/roles/svc-rdbms-postgres/Administration.md b/roles/svc-postgres/Administration.md similarity index 60% rename from roles/svc-rdbms-postgres/Administration.md rename to roles/svc-postgres/Administration.md index 75f3cb88..ca6a7f0d 100644 --- a/roles/svc-rdbms-postgres/Administration.md +++ b/roles/svc-postgres/Administration.md @@ -3,5 +3,5 @@ ## Root Access To access the database via the root account execute the following on the server: ```bash -docker exec -it "{{ applications['rdbms-postgres'].hostname }}" psql -U postgres +docker exec -it "{{ applications['postgres'].hostname }}" psql -U postgres ``` \ No newline at end of file diff --git a/roles/svc-rdbms-postgres/README.md b/roles/svc-postgres/README.md similarity index 100% rename from roles/svc-rdbms-postgres/README.md rename to roles/svc-postgres/README.md diff --git a/roles/svc-rdbms-postgres/Todo.md b/roles/svc-postgres/Todo.md similarity index 100% rename from roles/svc-rdbms-postgres/Todo.md rename to roles/svc-postgres/Todo.md diff --git a/roles/svc-rdbms-postgres/Upgrade.md b/roles/svc-postgres/Upgrade.md similarity index 100% rename from roles/svc-rdbms-postgres/Upgrade.md rename to roles/svc-postgres/Upgrade.md diff --git a/roles/svc-rdbms-postgres/config/main.yml b/roles/svc-postgres/config/main.yml similarity index 100% rename from roles/svc-rdbms-postgres/config/main.yml rename to roles/svc-postgres/config/main.yml diff --git a/roles/svc-rdbms-postgres/meta/main.yml b/roles/svc-postgres/meta/main.yml similarity index 100% rename from roles/svc-rdbms-postgres/meta/main.yml rename to roles/svc-postgres/meta/main.yml diff --git a/roles/svc-rdbms-postgres/schema/main.yml b/roles/svc-postgres/schema/main.yml similarity index 100% rename from roles/svc-rdbms-postgres/schema/main.yml rename to roles/svc-postgres/schema/main.yml diff --git a/roles/svc-rdbms-postgres/tasks/init_database.yml b/roles/svc-postgres/tasks/init_database.yml similarity index 100% rename from roles/svc-rdbms-postgres/tasks/init_database.yml rename to roles/svc-postgres/tasks/init_database.yml diff --git a/roles/svc-rdbms-postgres/tasks/main.yml b/roles/svc-postgres/tasks/main.yml similarity index 100% rename from roles/svc-rdbms-postgres/tasks/main.yml rename to roles/svc-postgres/tasks/main.yml diff --git a/roles/svc-postgres/vars/main.yml b/roles/svc-postgres/vars/main.yml new file mode 100644 index 00000000..09d25696 --- /dev/null +++ b/roles/svc-postgres/vars/main.yml @@ -0,0 +1 @@ +application_id: postgres diff --git a/roles/svc-rdbms-mariadb/Administration.md b/roles/svc-rdbms-mariadb/Administration.md deleted file mode 100644 index 7526f484..00000000 --- a/roles/svc-rdbms-mariadb/Administration.md +++ /dev/null @@ -1,6 +0,0 @@ -# Administration - -## Execute SQL commands -```bash -docker exec -it {{applications['rdbms-mariadb'].hostname }} mariadb -u root -p -``` \ No newline at end of file diff --git a/roles/svc-rdbms-mariadb/vars/main.yml b/roles/svc-rdbms-mariadb/vars/main.yml deleted file mode 100644 index a3e1d92f..00000000 --- a/roles/svc-rdbms-mariadb/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: rdbms-mariadb diff --git a/roles/svc-rdbms-postgres/vars/main.yml b/roles/svc-rdbms-postgres/vars/main.yml deleted file mode 100644 index f44e16c9..00000000 --- a/roles/svc-rdbms-postgres/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: rdbms-postgres diff --git a/roles/update-docker/templates/update-docker.py.j2 b/roles/update-docker/templates/update-docker.py.j2 index dfbbf023..4957b6c9 100644 --- a/roles/update-docker/templates/update-docker.py.j2 +++ b/roles/update-docker/templates/update-docker.py.j2 @@ -133,7 +133,7 @@ def update_discourse(directory): update_procedure("docker stop {{applications.discourse.container}}") update_procedure("docker rm {{applications.discourse.container}}") try: - update_procedure("docker network connect {{applications.discourse.network}} {{ applications['rdbms-postgres'].hostname }}") + update_procedure("docker network connect {{applications.discourse.network}} {{ applications['postgres'].hostname }}") except subprocess.CalledProcessError as e: error_message = e.output.decode() if "already exists" in error_message or "is already connected" in error_message: diff --git a/roles/web-app-discourse/tasks/main.yml b/roles/web-app-discourse/tasks/main.yml index 32dd9f8b..0b3226ae 100644 --- a/roles/web-app-discourse/tasks/main.yml +++ b/roles/web-app-discourse/tasks/main.yml @@ -43,13 +43,13 @@ meta: flush_handlers when: run_once_docker_discourse is not defined -- name: "Connect {{ applications[application_id].container }} to network {{ applications['rdbms-postgres'].network }}" +- name: "Connect {{ applications[application_id].container }} to network {{ applications['postgres'].network }}" command: > - docker network connect {{ applications['rdbms-postgres'].network }} {{ applications[application_id].container }} + docker network connect {{ applications['postgres'].network }} {{ applications[application_id].container }} register: network_connect failed_when: > network_connect.rc != 0 and - 'Error response from daemon: endpoint with name {{ applications[application_id].container }} already exists in network {{ applications['rdbms-postgres'].network }}' + 'Error response from daemon: endpoint with name {{ applications[application_id].container }} already exists in network {{ applications['postgres'].network }}' not in network_connect.stderr changed_when: network_connect.rc == 0 when: diff --git a/roles/web-app-discourse/tasks/reset.yml b/roles/web-app-discourse/tasks/reset.yml index 3ef8e8b8..2bb59f20 100644 --- a/roles/web-app-discourse/tasks/reset.yml +++ b/roles/web-app-discourse/tasks/reset.yml @@ -1,5 +1,5 @@ - name: "Load database variables for reset function" - include_vars: "{{playbook_dir}}/roles/cmp-rdbms-orchestrator/vars/main.yml" + include_vars: "{{playbook_dir}}/roles/cmp-rdbms/vars/main.yml" - name: "cleanup central database from {{application_id}}_default network" command: diff --git a/roles/web-app-espocrm/README.md b/roles/web-app-espocrm/README.md index 62a7225c..e3b590bd 100644 --- a/roles/web-app-espocrm/README.md +++ b/roles/web-app-espocrm/README.md @@ -8,7 +8,7 @@ Enhance your sales and service processes with EspoCRM, an open-source CRM featur This Ansible role deploys EspoCRM using Docker. It handles: -- MariaDB database provisioning via the `cmp-rdbms-orchestrator` role +- MariaDB database provisioning via the `cmp-rdbms` role - Nginx domain setup with WebSocket and reverse-proxy configuration - Environment variable management through Jinja2 templates - Docker Compose orchestration for **web**, **daemon**, and **websocket** services diff --git a/roles/web-app-friendica/Administration.md b/roles/web-app-friendica/Administration.md index 143a93f8..072834f7 100644 --- a/roles/web-app-friendica/Administration.md +++ b/roles/web-app-friendica/Administration.md @@ -14,7 +14,7 @@ The following environment variables need to be defined for successful operation: To completely reset Friendica, including its database and volumes, run: ```bash -docker exec -i {{applications['rdbms-mariadb'].hostname }} mariadb -u root -p"${DB_ROOT_PASSWORD}" -e "DROP DATABASE IF EXISTS friendica; CREATE DATABASE friendica;" +docker exec -i {{applications['mariadb'].hostname }} mariadb -u root -p"${DB_ROOT_PASSWORD}" -e "DROP DATABASE IF EXISTS friendica; CREATE DATABASE friendica;" docker compose down rm -rv /mnt/hdd/data/docker/volumes/friendica_data docker volume rm friendica_data @@ -25,7 +25,7 @@ docker volume rm friendica_data ## Manual Method: 1. Connect to the MariaDB instance: ```bash - docker exec -it {{applications['rdbms-mariadb'].hostname }} mariadb -u root -p + docker exec -it {{applications['mariadb'].hostname }} mariadb -u root -p ``` 2. Run the following commands: ```sql @@ -37,7 +37,7 @@ docker volume rm friendica_data ## Automatic Method: ```bash DB_ROOT_PASSWORD="your_root_password" -docker exec -i {{applications['rdbms-mariadb'].hostname }} mariadb -u root -p"${DB_ROOT_PASSWORD}" -e "DROP DATABASE IF EXISTS friendica; CREATE DATABASE friendica;" +docker exec -i {{applications['mariadb'].hostname }} mariadb -u root -p"${DB_ROOT_PASSWORD}" -e "DROP DATABASE IF EXISTS friendica; CREATE DATABASE friendica;" ``` ## Enter the Application Container 🔍 diff --git a/roles/web-app-matrix/tasks/create-and-seed-database.yml b/roles/web-app-matrix/tasks/create-and-seed-database.yml index 777c7a7b..6ca24de2 100644 --- a/roles/web-app-matrix/tasks/create-and-seed-database.yml +++ b/roles/web-app-matrix/tasks/create-and-seed-database.yml @@ -6,7 +6,7 @@ # - database_password - name: "create {{database_name}} database" include_role: - name: svc-rdbms-postgres + name: svc-postgres when: applications | is_feature_enabled('central_database',application_id) - name: "include seed-database-to-backup.yml" diff --git a/roles/web-app-pgadmin/vars/db_config.yml b/roles/web-app-pgadmin/vars/db_config.yml index 98187647..3b1c6773 100644 --- a/roles/web-app-pgadmin/vars/db_config.yml +++ b/roles/web-app-pgadmin/vars/db_config.yml @@ -9,6 +9,6 @@ pgadmin_servers: port: "{{ database_port }}" username: "postgres" maintenance_db: "postgres" - password: "{{ applications['rdbms-postgres'].credentials.postgres_password }}" + password: "{{ applications['postgres'].credentials.postgres_password }}" # Here you can add more databases \ No newline at end of file diff --git a/roles/web-app-phpmyadmin/templates/env.j2 b/roles/web-app-phpmyadmin/templates/env.j2 index d19e9c48..c4ba7046 100644 --- a/roles/web-app-phpmyadmin/templates/env.j2 +++ b/roles/web-app-phpmyadmin/templates/env.j2 @@ -1,7 +1,7 @@ # Configuration @see https://hub.docker.com/_/phpmyadmin -PMA_HOST={{applications['rdbms-mariadb'].hostname}} +PMA_HOST={{applications['mariadb'].hostname}} {% if applications[application_id].autologin | bool %} PMA_USER= root -PMA_PASSWORD= "{{applications['rdbms-mariadb'].credentials.root_password}}" +PMA_PASSWORD= "{{applications['mariadb'].credentials.root_password}}" {% endif %} \ No newline at end of file