feat(mariadb): support podman as deployment method

This commit is contained in:
transcaffeine 2025-02-14 21:32:27 +01:00
parent e5529a7102
commit 851f47beaf
Signed by: transcaffeine
GPG Key ID: 03624C433676E465
4 changed files with 44 additions and 18 deletions

View File

@ -0,0 +1,20 @@
---
- 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) }}"
restart_policy: "{{ mariadb_container_restart_policy }}"
state: "{{ mariadb_container_state }}"

View File

@ -0,0 +1,20 @@
---
- name: Ensure mariadb container image '{{ mariadb_container_image }}' is {{ mariadb_state }}
containers.podman.podman_image:
name: "{{ mariadb_container_image }}"
state: "{{ mariadb_state }}"
pull: "{{ (mariadb_container_image_source == 'pull') | bool }}"
force: "{{ mariadb_container_image_force_source }}"
- name: Ensure mariadb container '{{ mariadb_container_name }}' is {{ mariadb_container_state }}
containers.podman.podman_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 }}"
network: "{{ mariadb_container_networks | default(omit, true) }}"
etc_hosts: "{{ mariadb_container_etc_hosts | default(omit, true) }}"
restart_policy: "{{ mariadb_container_restart_policy }}"
state: "{{ mariadb_container_state }}"

View File

@ -13,22 +13,7 @@
Supported deployment methods are {{ mariadb_deployment_methods | join(', ') }}
when: mariadb_deployment_method not in mariadb_deployment_methods
- 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 is deployed using {{ mariadb_deployment_method }}
ansible.builtin.include_tasks:
file: "deploy-{{ mariadb_deployment_method }}.yml"
- 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) }}"
restart_policy: "{{ mariadb_container_restart_policy }}"
state: "{{ mariadb_container_state }}"

View File

@ -4,6 +4,7 @@ mariadb_states:
- absent
mariadb_deployment_methods:
- docker
- podman
mariadb_container_database_environment:
MARIADB_DATABASE: "{{ mariadb_database }}"