---

# https://docs.debops.org/en/stable-3.2/ansible/roles/mariadb_server/defaults/main.html

- name: Manage MariaDB server
  collections: [ 'debops.debops', 'debops.roles01',
                 'debops.roles02', 'debops.roles03' ]
  hosts: [ 'debian10' ]
  become: True

  environment: '{{ inventory__environment | d({})
                   | combine(inventory__group_environment | d({}))
                   | combine(inventory__host_environment  | d({})) }}'

  vars:
    mariadb_server__flavor: '{{ ansible_local.mariadb.flavor
                                |d(mariadb_server__flavor_map[ansible_distribution_release] | d("mariadb_upstream")) }}'
    mariadb_server__upstream_version: '11.2'
    mariadb_server__bind_address: '127.0.0.1'
    mariadb_server__mysqld_performance_options:
      'innodb_buffer_pool_instances': '{{ ansible_processor_vcpus | d(1) }}'
      'innodb_buffer_pool_size': '{{ (ansible_memtotal_mb / 2) | int }}M'
      'innodb_log_file_size': '{{ (ansible_memtotal_mb / 2) / 4 | int }}M'
      'query_cache_type': '1'
      'query_cache_size': '1M'
      'query_cache_limit': '10M'
      'join_buffer_size': '1M'
      'performance_schema': 'ON'
      'skip-name-resolve': 'ON'
#    mariadb_server__options:
#      'query_cache_size': '1M'


  roles:
    - role: keyring
      tags: [ 'role::keyring', 'skip::keyring', 'role::mariadb_server' ]
      keyring__dependent_apt_keys:
        - '{{ mariadb_server__keyring__dependent_apt_keys }}'

    - role: etc_services
      tags: [ 'role::etc_services' ]
      etc_services__dependent_list:
        - '{{ mariadb_server__etc_services__dependent_rules }}'
#
#    - role: ferm
#      tags: [ 'role::ferm', 'skip::ferm' ]
#      ferm__dependent_rules:
#        - '{{ mariadb_server__ferm__dependent_rules }}'

#    - role: tcpwrappers
#      tags: [ 'role::tcpwrappers', 'skip::tcpwrappers' ]
#      tcpwrappers__dependent_allow:
#        - '{{ mariadb_server__tcpwrappers__dependent_allow }}'

    - role: python
      tags: [ 'role::python', 'skip::python', 'role::mariadb_server' ]
      python__dependent_packages3:
        - '{{ mariadb_server__python__dependent_packages3 }}'
      python__dependent_packages2:
        - '{{ mariadb_server__python__dependent_packages2 }}'

    - role: mariadb_server
      tags: [ 'role::mariadb_server', 'skip::mariadb_server' ]