forked from finallycoffee/base
		
	chore(mariadb): role was migrated to finallycoffee.databases collection
This commit is contained in:
		@@ -1,19 +0,0 @@
 | 
			
		||||
# `finallycoffee.base.mariadb` ansible role
 | 
			
		||||
 | 
			
		||||
This role deploys a MariaDB instance in a docker container.
 | 
			
		||||
 | 
			
		||||
## Usage
 | 
			
		||||
 | 
			
		||||
The role expects the following variables to be populated with values and/or secrets:
 | 
			
		||||
 | 
			
		||||
```yaml
 | 
			
		||||
mariadb_root_password: #mariadb root password
 | 
			
		||||
mariadb_database: # name of the database to create
 | 
			
		||||
mariadb_username: # name of a user to auto-create and assign permission on the mariadb_database
 | 
			
		||||
mariadb_password: # password of the user in mariadb_username
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Requirements
 | 
			
		||||
 | 
			
		||||
- Docker installed
 | 
			
		||||
- python-docker present on target system for ansible to be able to talk with the docker API.
 | 
			
		||||
@@ -1,49 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
mariadb_version: "10.11.9"
 | 
			
		||||
mariadb_base_path: /var/lib/mariadb
 | 
			
		||||
mariadb_data_path: >-2
 | 
			
		||||
  {{ mariadb_base_path }}/{{ mariadb_version | split('.') | first }}
 | 
			
		||||
mariadb_state: present
 | 
			
		||||
 | 
			
		||||
mariadb_root_password: ~
 | 
			
		||||
mariadb_database: ~
 | 
			
		||||
mariadb_username: ~
 | 
			
		||||
mariadb_password: ~
 | 
			
		||||
 | 
			
		||||
mariadb_container_base_environment:
 | 
			
		||||
  MARIADB_ROOT_PASSWORD: "{{ mariadb_root_password }}"
 | 
			
		||||
mariadb_container_extra_environment: {}
 | 
			
		||||
 | 
			
		||||
mariadb_container_image_registry: docker.io
 | 
			
		||||
mariadb_container_image_namespace: ~
 | 
			
		||||
mariadb_container_image_name: mariadb
 | 
			
		||||
mariadb_container_image_tag: ~
 | 
			
		||||
mariadb_container_image: >-2
 | 
			
		||||
  {{
 | 
			
		||||
    ([
 | 
			
		||||
      mariadb_container_image_registry | default([], true),
 | 
			
		||||
      mariadb_container_image_namespace | default([], true),
 | 
			
		||||
      mariadb_container_image_name,
 | 
			
		||||
    ] | flatten | join('/'))
 | 
			
		||||
    + ':' + mariadb_container_image_tag | default(mariadb_version, true)
 | 
			
		||||
  }}
 | 
			
		||||
mariadb_container_image_source: pull
 | 
			
		||||
mariadb_container_image_force_source: >-2
 | 
			
		||||
  {{ mariadb_container_image_tag | default(false, true) | bool }}
 | 
			
		||||
 | 
			
		||||
mariadb_container_name: mariadb
 | 
			
		||||
mariadb_container_base_volumes:
 | 
			
		||||
  - "{{ mariadb_data_path }}:{{ mariadb_container_data_path }}:z"
 | 
			
		||||
mariadb_container_extra_volumes: []
 | 
			
		||||
mariadb_container_base_labels:
 | 
			
		||||
  version: "{{ mariadb_version }}"
 | 
			
		||||
mariadb_container_extra_labels: {}
 | 
			
		||||
mariadb_container_restart_policy: "unless-stopped"
 | 
			
		||||
mariadb_container_environment: >-2
 | 
			
		||||
  {{ mariadb_container_base_environment
 | 
			
		||||
  | combine(mariadb_container_database_environment
 | 
			
		||||
      if (mariadb_database and mariadb_username and mariadb_password)
 | 
			
		||||
      else {}, recursive=True)
 | 
			
		||||
  | combine(mariadb_container_extra_environment) }}
 | 
			
		||||
mariadb_container_state: >-2
 | 
			
		||||
  {{ (mariadb_state == 'present') | ternary('started', 'absent') }}
 | 
			
		||||
@@ -1,27 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
- name: Warn about deprecation
 | 
			
		||||
  ansible.builtin.debug:
 | 
			
		||||
    msg: >-2
 | 
			
		||||
      This ansible role is moved to the finallycoffee.databases collection
 | 
			
		||||
      and will be removed soon!
 | 
			
		||||
 | 
			
		||||
- name: Ensure mariadb container image '{{ mariadb_container_image }}' is {{ mariadb_state }}
 | 
			
		||||
  community.docker.docker_image:
 | 
			
		||||
    name: "{{ mariadb_container_image }}"
 | 
			
		||||
    state: "{{ mariadb_state }}"
 | 
			
		||||
    source: "{{ mariadb_container_image_source }}"
 | 
			
		||||
    force_source: "{{ mariadb_container_image_force_source }}"
 | 
			
		||||
 | 
			
		||||
- name: Ensure mariadb container '{{ mariadb_container_name }}' is {{ mariadb_container_state }}
 | 
			
		||||
  community.docker.docker_container:
 | 
			
		||||
    name: "{{ mariadb_container_name }}"
 | 
			
		||||
    image: "{{ mariadb_container_image }}"
 | 
			
		||||
    env: "{{ mariadb_container_environment }}"
 | 
			
		||||
    ports: "{{ mariadb_container_ports | default(omit, true) }}"
 | 
			
		||||
    labels: "{{ mariadb_container_labels | default(omit, true) }}"
 | 
			
		||||
    volumes: "{{ mariadb_container_volumes }}"
 | 
			
		||||
    networks: "{{ mariadb_container_networks | default(omit, true) }}"
 | 
			
		||||
    etc_hosts: "{{ mariadb_container_etc_hosts | default(omit, true) }}"
 | 
			
		||||
    purge_networks: "{{ mariadb_container_purge_networks | default(omit, true) }}"
 | 
			
		||||
    restart_policy: "{{ mariadb_container_restart_policy }}"
 | 
			
		||||
    state: "{{ mariadb_container_state }}"
 | 
			
		||||
@@ -1,10 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
mariadb_container_database_environment:
 | 
			
		||||
  MARIADB_DATABASE: "{{ mariadb_database }}"
 | 
			
		||||
  MARIADB_USER: "{{ mariadb_username }}"
 | 
			
		||||
  MARIADB_PASSWORD: "{{ mariadb_password }}"
 | 
			
		||||
 | 
			
		||||
mariadb_container_data_path: /var/lib/mysql
 | 
			
		||||
mariadb_container_volumes: "{{ mariadb_container_base_volumes + mariadb_container_extra_volumes }}"
 | 
			
		||||
mariadb_container_labels: "{{ mariadb_container_base_labels | combine(mariadb_container_extra_labels, recursive=True) }}"
 | 
			
		||||
		Reference in New Issue
	
	Block a user