totaldebug.minecraft

ansible-role-minecraft

Ten rol instaluje Minecraft lub Spigot i konfiguruje go do uruchamiania pod systemd lub Supervisor.

Uznanie dla devops-coop, który stworzył większość tej wersji.

Instalacja

ansible-galaxy install totaldebug.minecraft

Cechy

  • obsługuje zwykły Minecraft i Spigot
  • działa na Debianie 10, Ubuntu 18.04, RHEL/CentOS 7 i RHEL/CentOS 8
  • bezpiecznie zatrzymuje serwer używając stop, gdy działa pod systemd
  • Używa Github Actions i molecule do przeprowadzania testów integracyjnych
  • zarządza uprawnieniami użytkowników (ACL)
  • zarządza plikiem server.properties
  • haki: pozwala na dodawanie dowolnych zadań na określonych etapach wykonania

Zmienne roli

Zmienne roli

Następujące wartości domyślne zmiennych są zdefiniowane w defaults/main.yml.

minecraft_server_type wybierz pomiędzy minecraft lub spigot (domyślnie: minecraft)

minecraft_version wersja Minecraft do zainstalowania (domyślnie: latest)

Przykłady:

.. kod:: yaml

   minecraft_version: latest
   minecraft_version: 1.10
   minecraft_version: 1.9.1
   minecraft_version: 16w21a

minecraft_server_download_url URL do pobierania Minecraft (domyślnie: https://launcher.mojang.com/v1/objects)

minecraft_server_download_checksum Suma kontrolna URL do pobrania Minecraft

minecraft_user systemowy użytkownik, pod którym działa Minecraft (domyślnie: minecraft)

minecraft_group systemowa grupa, pod którą działa Minecraft (domyślnie: minecraft)

minecraft_home katalog, w którym zainstalowany będzie Minecraft (domyślnie: /srv/minecraft)

minecraft_max_memory maksymalna pamięć Java (-Xmx) do przydzielenia (domyślnie: 1024M)

minecraft_initial_memory początkowa pamięć Java (-Xms) do przydzielenia (domyślnie: 1024M)

minecraft_service_name nazwa usługi systemd lub nazwa programu Supervisor (domyślnie: minecraft)

minecraft_supervisor_name NIEZALECANE: nazwa programu Supervisor (domyślnie: {{ minecraft_service_name }})

minecraft_process_control wybierz pomiędzy systemd a supervisor (domyślnie: systemd).

minecraft_whitelist lista nazw użytkowników Minecraft do dodania do białej listy (domyślnie: [])

minecraft_ops lista nazw użytkowników Minecraft, którzy będą mieć uprawnienia serwera (domyślnie: [])

minecraft_banned_players lista nazw użytkowników Minecraft do zbanowania (domyślnie: [])

minecraft_banned_ips lista adresów IP do zbanowania (domyślnie: [])

minecraft_server_properties słownik wpisów do server.properties (np. server-port: 25565) do ustawienia (domyślnie: {})

Haki i etapy uruchamiania

ansible-minecraft organizuje wykonanie w kilka etapów:

setup

  • instalacja wymaganych pakietów (np. Java)
  • utworzenie użytkownika i grupy Minecraft

download

  • pobranie najnowszej wersji z API launchera
  • pobranie Minecraft

install

  • utworzenie dowiązania do minecraft_server.jar
  • zaakceptowanie EULA

acl

  • konfigurowanie ACL serwera (biała lista, zbanowani gracze itp.)

configure

  • ustawienie server.properties

start

  • (re)uruchomienie serwera

Możesz wykonać niestandardowe zadania przed lub po określonych etapach. Wystarczy określić plik z zadaniami za pomocą odpowiedniej zmiennej roli:

.. kod:: yaml

- hosts: minecraft
  roles:
    - role: devops-coop.minecraft
      minecraft_hook_before_start: "{{ playbook_dir }}/download-world-from-s3.yml"

Dostępne haki to:

minecraft_hook_before_setup uruchamiane przed zadaniami setup

minecraft_hook_after_setup uruchamiane po zadaniach setup

minecraft_hook_before_download uruchamiane przed zadaniami download

minecraft_hook_after_download uruchamiane po zadaniach download

minecraft_hook_before_install uruchamiane przed zadaniami install

minecraft_hook_after_install uruchamiane po zadaniach install

minecraft_hook_before_start uruchamiane przed zadaniami start

minecraft_hook_after_start uruchamiane po zadaniach start

Przykład

.. kod:: yaml

- hosts: minecraft
  roles:
     - { role: devops-coop.minecraft, minecraft_whitelist: ["jeb_", "dinnerbone"]}

Współpraca

Proszę o zgłaszanie propozycji zmian. Ta rola nie obsługuje jeszcze niestandardowych serwerów Minecraft.

Wersjonowanie

Projekt ten stosuje zasady wersjonowania semantycznego.

W kontekście wersjonowania semantycznego, umowa dotycząca roli jest definiowana przez zmienne roli.

  • Zmiany, które łamią zgodność lub wymagają interwencji użytkownika, zwiększą wersję major. Dotyczy to zmiany domyślnej wartości zmiennej roli.
  • Zmiany, które nie wymagają interwencji użytkownika, ale dodają nowe funkcje, zwiększą wersję minor.
  • Poprawki błędów zwiększą wersję patch.
O projekcie

Provisions a vanilla minecraft or spigot server

Zainstaluj
ansible-galaxy install totaldebug.minecraft
Licencja
Unknown
Pobrania
120
Właściciel