Refactor: Organize Ansible project structure

- Reorganized Ansible project structure to follow best practices.
- Created dedicated directories: , , , , and .
- Categorized playbooks into  (host-specific) and  (service-specific).
- Moved all roles into the  directory and standardized their naming conventions.
- Relocated  to  for better variable management.
- Renamed  to  to reflect its global variable scope.
- Created  to correctly set the  to the new  directory.
- Moved  and  into the  directory.
- Added  to  providing explanations for common commands.
- Cleaned up  directories from all individual roles to centralize version control.
This commit is contained in:
warezjoe
2026-01-26 11:54:00 +01:00
parent 25fa9eaf25
commit 5bbc551106
177 changed files with 4162 additions and 77 deletions

View File

@@ -0,0 +1,12 @@
- name: mariadb init
hosts: mariadb
become: true
vars_files:
- vault.yml
- zeus-vars.yml
vars:
mariadb_location: /MariaDB
tasks:
- name: mariadb
ansible.builtin.include_role:
name: mariaDB

View File

@@ -0,0 +1,37 @@
---
- name: Setup MySQL database and user
hosts: mariadb
vars_files:
- vault.yml
- zeus-vars.yml
become: yes
vars:
mysql_database: "{{ UPTIMEKUMA.MYSQL_DATABASE }}" # Replace with your desired database name
mysql_user: "{{ UPTIMEKUMA.MYSQL_USER }}" # Replace with your desired database user
mysql_password: "{{ UPTIMEKUMA.MYSQL_PASSWORD }}" # Replace with your desired database user password
tasks:
- name: Create MySQL database
community.mysql.mysql_db:
name: "{{ mysql_database }}"
state: present
login_unix_socket: /var/run/mysqld/mysqld.sock
- name: Create MySQL user
community.mysql.mysql_user:
name: "{{ mysql_user }}"
password: "{{ mysql_password }}"
priv: "{{ mysql_database }}.*:ALL"
host: "%"
state: present
login_unix_socket: /var/run/mysqld/mysqld.sock
- name: Grant privileges to MySQL user on the database
community.mysql.mysql_user:
name: "{{ mysql_user }}"
host: "%"
password: "{{ mysql_password }}"
priv: "{{ mysql_database }}.*:ALL,GRANT"
state: present
login_unix_socket: /var/run/mysqld/mysqld.sock
append_privs: yes

View File

@@ -0,0 +1,11 @@
- name: nfs init
hosts: nfs
become: true
vars_files:
- vault.yml
- zeus-vars.yml
tasks:
- name: nfs init
ansible.builtin.include_role:
name: nfs

View File

@@ -0,0 +1,23 @@
- name: samba init
hosts: samba
become: true
vars_files:
- vault.yml
- zeus-vars.yml
vars:
user: tata
uid: 1001
gid: "{{ uid }}"
shell: "/usr/sbin/nologin"
home: "/tata"
password: "{{ tata_password }}"
create_home: false
tasks:
- name: create_user
ansible.builtin.include_role:
name: create_user
- name: samba
ansible.builtin.include_role:
name: samba

View File

@@ -0,0 +1,10 @@
- name: cerberos init
hosts: wireguard-cerberus
become: true
vars_files:
- vault.yml
- zeus-vars.yml
tasks:
- name: wireguard-server
ansible.builtin.include_role:
name: wireguard-server

View File

@@ -0,0 +1,23 @@
- name: wireguard-client-gen
hosts: localhost
#connection: local
vars_files:
- vault.yml
- zeus-vars.yml
vars:
user: desktop
IP_name: 'wireguard_{{ user }}_ip'
IP: "{{ lookup('vars', IP_name) }}"
priv_name: 'wireguard_{{ user }}_key'
priv: "{{ lookup('vars', priv_name) }}"
tasks:
- name: Copy from template
template:
src: ~/.ansible/roles/wireguard-server/templates/wireguardclient.conf
dest: ~/{{ user }}.conf
owner: "{{ ansible_user_id }}"
group: "{{ ansible_user_id }}"
mode: '0644'