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:
12
playbooks/services/mariadb.yml
Normal file
12
playbooks/services/mariadb.yml
Normal 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
|
||||
37
playbooks/services/mysql.yml
Normal file
37
playbooks/services/mysql.yml
Normal 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
|
||||
11
playbooks/services/nfs.yaml
Normal file
11
playbooks/services/nfs.yaml
Normal 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
|
||||
23
playbooks/services/samba.yml
Normal file
23
playbooks/services/samba.yml
Normal 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
|
||||
10
playbooks/services/wireguard-cerberus.yml
Normal file
10
playbooks/services/wireguard-cerberus.yml
Normal 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
|
||||
23
playbooks/services/wireguard-client-gen.yml
Normal file
23
playbooks/services/wireguard-client-gen.yml
Normal 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'
|
||||
|
||||
|
||||
Reference in New Issue
Block a user