db engine switch

This commit is contained in:
marito 2025-06-16 16:28:53 +08:00
parent 180a5ed4e9
commit f27b289e12

View File

@ -1,10 +1,51 @@
--- ---
- name: "Install MariaDB/MySQL server" # ------------------ MariaDB Specific Tasks ------------------
- name: "Install MariaDB server"
ansible.builtin.apt: ansible.builtin.apt:
name: mariadb-server name: mariadb-server
state: present state: present
update_cache: yes update_cache: yes
when: db_engine == 'mariadb' or db_engine == 'mysql' when: db_engine == 'mariadb'
- name: "Ensure MariaDB service is running and enabled (when selected)"
ansible.builtin.service:
name: mariadb
state: started
enabled: yes
when: db_engine == 'mariadb'
- name: "Ensure MariaDB service is stopped and disabled (when NOT selected)"
ansible.builtin.service:
name: mariadb
state: stopped
enabled: no
when: db_engine != 'mariadb'
# ------------------ MySQL Specific Tasks ------------------
- name: "Install MySQL server"
ansible.builtin.apt:
name: mysql-server
state: present
update_cache: yes
when: db_engine == 'mysql'
- name: "Ensure MySQL service is running and enabled (when selected)"
ansible.builtin.service:
name: mysql
state: started
enabled: yes
when: db_engine == 'mysql'
- name: "Ensure MySQL service is stopped and disabled (when NOT selected)"
ansible.builtin.service:
name: mysql
state: stopped
enabled: no
when: db_engine != 'mysql'
# ------------------ PostgreSQL Specific Tasks (Placeholder) ------------------
- name: "Install PostgreSQL server" - name: "Install PostgreSQL server"
ansible.builtin.apt: ansible.builtin.apt:
@ -15,13 +56,6 @@
update_cache: yes update_cache: yes
when: db_engine == 'postgres' when: db_engine == 'postgres'
- name: "Ensure MariaDB/MySQL service is running and enabled"
ansible.builtin.service:
name: mariadb
state: started
enabled: yes
when: db_engine == 'mariadb' or db_engine == 'mysql'
- name: "Ensure PostgreSQL service is running and enabled" - name: "Ensure PostgreSQL service is running and enabled"
ansible.builtin.service: ansible.builtin.service:
name: postgresql name: postgresql
@ -29,7 +63,9 @@
enabled: yes enabled: yes
when: db_engine == 'postgres' when: db_engine == 'postgres'
- name: "Install Python dependencies for MariaDB/MySQL management" # --- Common Tasks for MySQL/MariaDB ---
- name: "Install Python dependencies for MySQL/MariaDB management"
ansible.builtin.apt: ansible.builtin.apt:
name: python3-pymysql name: python3-pymysql
state: present state: present