totaldebug.minecraft

ansible-role-minecraft

この役割は、MinecraftまたはSpigotをインストールし、systemdまたはSupervisorで実行されるように設定します。

このリリースの多くを作成したdevops-coopに感謝します。

インストール

ansible-galaxy install totaldebug.minecraft

特徴

  • バニラMinecraftとSpigotをサポート
  • Debian 10、Ubuntu 18.04、RHEL/CentOS 7と8をサポート
  • systemdで実行中は、セーフにサーバーを停止
  • Github Actionsとmoleculeを使用して統合テストを実行
  • ユーザーACLの管理
  • server.propertiesの管理
  • フック:実行中の特定のステージで任意のタスクを含める

役割変数

役割変数

以下の変数のデフォルトは defaults/main.yml に定義されています。

minecraft_server_type minecraft または spigot のどちらかを選択(デフォルト: minecraft

minecraft_version インストールするMinecraftのバージョン(デフォルト: latest

例:

.. code:: yaml

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

minecraft_server_download_url MinecraftダウンロードURL(デフォルト: https://launcher.mojang.com/v1/objects

minecraft_server_download_checksum MinecraftダウンロードURLのチェックサム

minecraft_user Minecraftが実行されるシステムユーザー(デフォルト: minecraft

minecraft_group Minecraftが実行されるシステムグループ(デフォルト: minecraft

minecraft_home Minecraftをインストールするディレクトリ(デフォルト: /srv/minecraft

minecraft_max_memory 割り当てるJavaの最大メモリ(-Xmx)(デフォルト: 1024M

minecraft_initial_memory 割り当てるJavaの初期メモリ(-Xms)(デフォルト: 1024M

minecraft_service_name systemdのサービス名またはSupervisorプログラム名(デフォルト: minecraft

minecraft_supervisor_name 非推奨: Supervisorプログラム名(デフォルト: {{ minecraft_service_name }}

minecraft_process_control systemdsupervisor のいずれかを選択(デフォルト: systemd)。

minecraft_whitelist ホワイトリストに追加するMinecraftユーザー名のリスト(デフォルト: []

minecraft_ops サーバーのオペレーターにするMinecraftユーザー名のリスト(デフォルト: []

minecraft_banned_players バンするMinecraftユーザー名のリスト(デフォルト: []

minecraft_banned_ips バンするIPアドレスのリスト(デフォルト: []

minecraft_server_properties 設定するserver.propertiesエントリーの辞書(例: server-port: 25565)(デフォルト: {}

フックと実行ステージ

ansible-minecraftは実行をいくつかのステージに分けます:

setup

  • 必要なものをインストールします(例:Java)
  • Minecraftユーザーとグループを作成します

download

  • ランチャーAPIから最新バージョンを取得します
  • Minecraftをダウンロードします

install

  • バージョンを minecraft_server.jar にシンボリックリンクします
  • EULAに同意します

acl

  • サーバーACLを設定します(ホワイトリスト、バンされたプレイヤーなど)

configure

  • server.propertiesを設定します

start

  • サーバーを(再)起動します

特定のステージの前後にカスタムタスクを実行することができます。関連する役割変数を使用して、タスクを含めるファイルを指定してください:

.. code:: yaml

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

利用可能なフックは:

minecraft_hook_before_setup setupタスクの前に実行

minecraft_hook_after_setup setupタスクの後に実行

minecraft_hook_before_download downloadタスクの前に実行

minecraft_hook_after_download downloadタスクの後に実行

minecraft_hook_before_install installタスクの前に実行

minecraft_hook_after_install installタスクの後に実行

minecraft_hook_before_start startタスクの前に実行

minecraft_hook_after_start startタスクの後に実行

.. code:: yaml

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

コントリビュート

プルリクエストは歓迎します。他の機能の中で、この役割はカスタムMinecraftサーバーのサポートが不足しています。

バージョニング

このプロジェクトはセマンティックバージョニングに従います。

セマンティックバージョニングの文脈では、役割の変数によって役割契約が定義されると考えてください。

  • ユーザーの介入が必要な重大な変更はメジャーバージョンを増加させます。これは、役割変数のデフォルト値を変更することを含みます。
  • ユーザー介入が必要ないが、新しい機能を追加する変更はマイナーバージョンを増加させます。
  • バグ修正はパッチバージョンを増加させます。
プロジェクトについて

Provisions a vanilla minecraft or spigot server

インストール
ansible-galaxy install totaldebug.minecraft
ライセンス
Unknown
ダウンロード
120
所有者