Database Setup Role 🚀
This Ansible role provides the necessary tasks, files, templates, and variables to set up databases in your Docker Compose environment. It is essential for configuring your application's database, whether using a local or a central instance of MariaDB or PostgreSQL.
Overview 🔍
- 
Database Variables 
 Defined in ./vars/database.yml, these variables include:- database_instance
- database_host
- database_name
- database_username
- database_port
- database_env
 
- 
Tasks 
 Located in ./tasks/main.yml, the tasks perform the following:- Include the Docker Compose role.
- Load database variables.
- Create the environment file for the chosen database from a template.
- Optionally create a central database (if enabled).
 
- 
Templates - Environment Files:
- Service Files:
 
Usage 📋
To use this role, include it in your playbook as follows:
- hosts: all
  roles:
    - your_database_role_name
When executed, the role will:
- Load database configuration variables.
- Generate the appropriate environment file for the database.
- Incorporate the Docker Compose routines.
- Create a central database if applications[application_id].database.central_storageis set totrue.
Author
Developed by Kevin Veen-Birkenbach 💻🌐
Acknowledgments & ChatGPT Conversations 🤖💬
This role was created with the assistance of ChatGPT. The following ChatGPT conversations helped shape the design and implementation of this role:
- https://chatgpt.com/share/67a23d18-fb54-800f-983c-d6d00752b0b4
- https://chatgpt.com/share/67a244bb-11e4-800f-980f-5ef0e8b109d7
Feel free to explore these discussions for insights into design decisions and implementation details.
Happy automating! 🎉