Compare commits
10 Commits
transcaffe
...
main
Author | SHA1 | Date | |
---|---|---|---|
e6987ee55d | |||
93bfb97b5a | |||
4076a576cf | |||
851f47beaf | |||
e5529a7102 | |||
ce3f809397 | |||
39ad346e29 | |||
e30b283b77 | |||
26199f6859 | |||
815cfca718 |
@ -1,6 +1,6 @@
|
|||||||
namespace: finallycoffee
|
namespace: finallycoffee
|
||||||
name: databases
|
name: databases
|
||||||
version: 0.1.2
|
version: 0.1.3
|
||||||
readme: README.md
|
readme: README.md
|
||||||
authors:
|
authors:
|
||||||
- transcaffeine <transcaffeine@finally.coffee>
|
- transcaffeine <transcaffeine@finally.coffee>
|
||||||
@ -8,6 +8,7 @@ description: Collection for deploying and configuring databases
|
|||||||
dependencies:
|
dependencies:
|
||||||
"community.docker": "^4.0.0"
|
"community.docker": "^4.0.0"
|
||||||
"community.postgresql": "^3.9.0"
|
"community.postgresql": "^3.9.0"
|
||||||
|
"containers.podman": "^1.16.0"
|
||||||
license_file: LICENSE.md
|
license_file: LICENSE.md
|
||||||
build_ignore:
|
build_ignore:
|
||||||
- '*.tar.gz'
|
- '*.tar.gz'
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
elasticsearch_version: "8.17.0"
|
elasticsearch_version: "8.17.3"
|
||||||
elasticsearch_state: present
|
elasticsearch_state: present
|
||||||
|
|
||||||
elasticsearch_base_path: /opt/elasticsearch
|
elasticsearch_base_path: /opt/elasticsearch
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
---
|
---
|
||||||
mariadb_version: "10.11.10"
|
mariadb_version: "10.11.11"
|
||||||
mariadb_base_path: /var/lib/mariadb
|
mariadb_base_path: /var/lib/mariadb
|
||||||
mariadb_data_path: >-2
|
mariadb_data_path: >-2
|
||||||
{{ mariadb_base_path }}/{{ mariadb_version | split('.') | first }}
|
{{ mariadb_base_path }}/{{ mariadb_version | split('.') | first }}
|
||||||
mariadb_state: present
|
mariadb_state: present
|
||||||
|
mariadb_deployment_method: docker
|
||||||
|
|
||||||
mariadb_root_password: ~
|
mariadb_root_password: ~
|
||||||
mariadb_database: ~
|
mariadb_database: ~
|
||||||
|
20
roles/mariadb/tasks/deploy-docker.yml
Normal file
20
roles/mariadb/tasks/deploy-docker.yml
Normal 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 }}"
|
20
roles/mariadb/tasks/deploy-podman.yml
Normal file
20
roles/mariadb/tasks/deploy-podman.yml
Normal 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 }}"
|
@ -1,20 +1,19 @@
|
|||||||
---
|
---
|
||||||
- name: Ensure mariadb container image '{{ mariadb_container_image }}' is {{ mariadb_state }}
|
- name: Ensure mariadb state parameter is valid
|
||||||
community.docker.docker_image:
|
ansible.builtin.fail:
|
||||||
name: "{{ mariadb_container_image }}"
|
msg: >-2
|
||||||
state: "{{ mariadb_state }}"
|
Unknown state '{{ mariadb_state }}'!
|
||||||
source: "{{ mariadb_container_image_source }}"
|
Supported states are {{ mariadb_states | join(', ') }}
|
||||||
force_source: "{{ mariadb_container_image_force_source }}"
|
when: mariadb_state not in mariadb_states
|
||||||
|
|
||||||
|
- name: Ensure deployment method is valid
|
||||||
|
ansible.builtin.fail:
|
||||||
|
msg: >-2
|
||||||
|
Unknown deployment method '{{ mariadb_deployment_method }}'!
|
||||||
|
Supported deployment methods are {{ mariadb_deployment_methods | join(', ') }}
|
||||||
|
when: mariadb_deployment_method not in mariadb_deployment_methods
|
||||||
|
|
||||||
|
- 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 }}"
|
|
||||||
|
@ -1,4 +1,10 @@
|
|||||||
---
|
---
|
||||||
|
mariadb_states:
|
||||||
|
- present
|
||||||
|
- absent
|
||||||
|
mariadb_deployment_methods:
|
||||||
|
- docker
|
||||||
|
- podman
|
||||||
|
|
||||||
mariadb_container_database_environment:
|
mariadb_container_database_environment:
|
||||||
MARIADB_DATABASE: "{{ mariadb_database }}"
|
MARIADB_DATABASE: "{{ mariadb_database }}"
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
---
|
|
||||||
- name: Ensure postgresql package is {{ postgresql_state }}
|
|
||||||
ansible.builtin.package:
|
|
||||||
name: "{{ postgresql_os_package_name }}"
|
|
||||||
state: "{{ postgresql_state }}"
|
|
||||||
|
|
||||||
- name: Ensure postgresql systemd unit is {{ (postgresql_state == 'present') | ternary('enabled', 'disabled') }}
|
|
||||||
ansible.builtin.systemd:
|
|
||||||
name: "{{ postgresql_systemd_service_name }}"
|
|
||||||
enabled: "{{ (postgresql_state == 'present') }}"
|
|
||||||
when: ansible_facts['service_mgr'] == 'systemd'
|
|
@ -4,4 +4,3 @@ postgresql_states:
|
|||||||
- absent
|
- absent
|
||||||
postgresql_deployment_methods:
|
postgresql_deployment_methods:
|
||||||
- docker
|
- docker
|
||||||
- local
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
valkey_version: "8.0.1"
|
valkey_version: "8.0.2"
|
||||||
valkey_state: "present"
|
valkey_state: "present"
|
||||||
valkey_instance: ~
|
valkey_instance: ~
|
||||||
valkey_instance_suffix: >-2
|
valkey_instance_suffix: >-2
|
||||||
|
Loading…
x
Reference in New Issue
Block a user