--- - name: Add GPG key for MariaDB repo apt_key: id=0x177F4010FE56CA3336300305F1656F24C74CD1D8 url=https://mariadb.org/mariadb_release_signing_key.asc register: add_mariadb_apt_key tags: mariadb, packages - name: Add MariaDB 10.5 repo template: src=mariadb.list.j2 dest=/etc/apt/sources.list.d/mariadb.list owner=root group=root mode=0644 register: add_mariadb_apt_repository tags: mariadb, packages - name: Update apt cache apt: update_cache: yes when: add_mariadb_apt_key is changed or add_mariadb_apt_repository is changed - name: Install mariadb-server apt: name={{ item }} state=present cache_valid_time=3600 loop: - mariadb-server - python3-pymysql # for ansible tags: mariadb, packages - name: Create system my.cnf template: src=my.cnf.j2 dest=/etc/mysql/my.cnf owner=root group=root mode=0644 notify: - restart mariadb tags: mariadb # See: https://docs.ansible.com/ansible/latest/collections/community/mysql/mysql_user_module.html - name: Update MariaDB root password for all root accounts mysql_user: name=root host={{ item }} password={{ mariadb_root_password }} login_unix_socket={{ mariadb_login_unix_socket }} loop: - 127.0.0.1 - ::1 tags: mariadb - name: Create .my.conf file with root credentials template: src=.my.cnf.j2 dest=/root/.my.cnf owner=root mode=0600 tags: mariadb # See: https://docs.ansible.com/ansible/latest/collections/community/mysql/mysql_db_module.html - name: Create MariaDB database(s) mysql_db: db={{ item.name }} state=present encoding=utf8mb4 login_unix_socket={{ mariadb_login_unix_socket }} loop: "{{ mariadb_databases }}" when: mariadb_databases is defined tags: mariadb - name: Create MariaDB user(s) mysql_user: name={{ item.user }} password={{ item.pass }} priv={{ item.name }}.*:ALL host=127.0.0.1 state=present login_unix_socket={{ mariadb_login_unix_socket }} loop: "{{ mariadb_databases }}" when: mariadb_databases is defined tags: mariadb # vim: set ts=2 sw=2: