new version
Some checks failed
Ansible Minecraft CI/CD / Ansible Lint (push) Successful in 8s
Ansible Minecraft CI/CD / Syntax Check (push) Failing after 7s
Ansible Minecraft CI/CD / Deploy to Staging (push) Has been skipped
Ansible Minecraft CI/CD / Deploy to Production (push) Has been skipped

This commit is contained in:
2025-08-27 15:11:08 +02:00
parent 3e64946953
commit 8f0877cd53
105 changed files with 911 additions and 2540 deletions

View File

@@ -1,76 +1,30 @@
---
# Configuration Ansible
ansible_user: ansible
ansible_become: true
ansible_become_method: sudo
# Configuration globale Production
environment: production
python_interpreter: /usr/bin/python3
# Configuration réseau
ssh_port: 22
allowed_ssh_users: ["ansible", "minecraft"]
fail2ban_enabled: true
# Configuration Java
java_version: "17"
java_package: "openjdk-17-jdk"
# Configuration Minecraft
minecraft_version: "1.21.6"
minecraft_type: "spigot"
minecraft_user: minecraft
minecraft_group: minecraft
minecraft_base_dir: /opt/minecraft
minecraft_server_dir: /opt/minecraft/server
minecraft_sources_dir: /opt/minecraft/sources
minecraft_tools_dir: /opt/minecraft/tools
minecraft_backup_dir: /opt/minecraft/backups
spigot_build_tools_url: "https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar"
minecraft_max_memory: "4G"
minecraft_min_memory: "2G"
# Configuration mémoire
minecraft_memory_min: 2048
minecraft_memory_max: 4096
# Configuration Java
java_version: 21
java_vendor: openjdk
# Configuration Réseau
server_port: 25565
rcon_port: 25575
enable_rcon: true
rcon_password: "{{ vault_rcon_password | default('ChangeMe123!') }}"
# Configuration serveur
server_name: "Production Minecraft Server"
max_players: 20
view_distance: 10
gamemode: survival
difficulty: normal
enable_command_block: false
online_mode: true
pvp: true
white_list: false
# Configuration Backup
backup_retention_daily: 7
backup_retention_weekly: 4
backup_retention_monthly: 3
backup_time_daily: "03:00"
backup_time_weekly: "04:00"
backup_time_monthly: "05:00"
# Configuration backups
backup_enabled: true
backup_remote_host: "backup.example.com"
backup_local_path: "/opt/minecraft/backups"
backup_remote_path: "/backups/minecraft"
# Configuration sécurité
ssh_port: 22
firewall_allowed_tcp_ports:
- 22
- 25565
- 25575
firewall_allowed_udp_ports: []
# Administrateurs SSH (à remplir avec vos clés)
admin_ssh_keys: []
# - name: admin1
# key: "ssh-rsa AAAAB3..."
# Opérateurs Minecraft (à remplir)
minecraft_ops: []
# - name: "PlayerName"
# uuid: "uuid-here"
# level: 4
# bypassesPlayerLimit: true
# Plugins à installer
minecraft_plugins_list:
- name: "EssentialsX"
url: "https://github.com/EssentialsX/Essentials/releases/latest/download/EssentialsX.jar"
- name: "Vault"
url: "https://github.com/MilkBowl/Vault/releases/latest/download/Vault.jar"
firewall_enabled: true
automatic_updates: false
hardening_enabled: true

View File

@@ -1,12 +1,19 @@
---
all:
children:
minecraft_servers:
hosts:
minecraft-prod-01:
ansible_host: 192.168.1.10
vars:
ansible_user: ansible
environment: production
minecraft_memory: 4096
minecraft_port: 25565
minecraft_servers:
hosts:
minecraft-prod-01:
ansible_host: 10.0.1.10
ansible_user: ansible
minecraft_server_name: "Production Server 01"
minecraft_port: 25565
minecraft_rcon_port: 25575
minecraft-prod-02:
ansible_host: 10.0.1.11
ansible_user: ansible
minecraft_server_name: "Production Server 02"
minecraft_port: 25565
minecraft_rcon_port: 25575
vars:
environment: production
backup_retention_days: 90
update_schedule: "0 3 * * 0" # Dimanche 3h

View File

@@ -1,76 +1,28 @@
---
# Configuration Ansible
ansible_user: ansible
ansible_become: true
ansible_become_method: sudo
# Configuration globale Staging
environment: staging
python_interpreter: /usr/bin/python3
# Configuration réseau
ssh_port: 22
allowed_ssh_users: ["ansible", "minecraft", "developer"]
fail2ban_enabled: false
# Configuration Java
java_version: "17"
java_package: "openjdk-17-jdk"
# Configuration Minecraft
minecraft_version: "1.21.6"
minecraft_type: "spigot"
minecraft_user: minecraft
minecraft_group: minecraft
minecraft_base_dir: /opt/minecraft
minecraft_server_dir: /opt/minecraft/server
minecraft_sources_dir: /opt/minecraft/sources
minecraft_tools_dir: /opt/minecraft/tools
minecraft_backup_dir: /opt/minecraft/backups
spigot_build_tools_url: "https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar"
minecraft_max_memory: "2G"
minecraft_min_memory: "1G"
# Configuration mémoire
minecraft_memory_min: 2048
minecraft_memory_max: 4096
# Configuration Java
java_version: 21
java_vendor: openjdk
# Configuration Réseau
server_port: 25565
rcon_port: 25575
enable_rcon: true
rcon_password: "{{ vault_rcon_password | default('ChangeMe123!') }}"
# Configuration serveur
server_name: "Production Minecraft Server"
max_players: 20
view_distance: 10
gamemode: survival
difficulty: normal
enable_command_block: false
online_mode: true
pvp: true
white_list: false
# Configuration Backup
backup_retention_daily: 7
backup_retention_weekly: 4
backup_retention_monthly: 3
backup_time_daily: "03:00"
backup_time_weekly: "04:00"
backup_time_monthly: "05:00"
# Configuration backups
backup_enabled: true
backup_local_path: "/opt/minecraft/backups"
# Configuration sécurité
ssh_port: 22
firewall_allowed_tcp_ports:
- 22
- 25565
- 25575
firewall_allowed_udp_ports: []
# Administrateurs SSH (à remplir avec vos clés)
admin_ssh_keys: []
# - name: admin1
# key: "ssh-rsa AAAAB3..."
# Opérateurs Minecraft (à remplir)
minecraft_ops: []
# - name: "PlayerName"
# uuid: "uuid-here"
# level: 4
# bypassesPlayerLimit: true
# Plugins à installer
minecraft_plugins_list:
- name: "EssentialsX"
url: "https://github.com/EssentialsX/Essentials/releases/latest/download/EssentialsX.jar"
- name: "Vault"
url: "https://github.com/MilkBowl/Vault/releases/latest/download/Vault.jar"
firewall_enabled: false
automatic_updates: true
hardening_enabled: false

View File

@@ -1,12 +1,13 @@
---
all:
children:
minecraft_servers:
hosts:
minecraft-staging-01:
ansible_host: 192.168.2.10
vars:
ansible_user: ansible
environment: staging
minecraft_memory: 2048
minecraft_port: 25565
minecraft_servers:
hosts:
minecraft-staging-01:
ansible_host: 10.0.2.10
ansible_user: ansible
minecraft_server_name: "Staging Server 01"
minecraft_port: 25565
minecraft_rcon_port: 25575
vars:
environment: staging
backup_retention_days: 30
update_schedule: "0 2 * * *" # Tous les jours 2h