Dynamic Java options on Minecraft systemd service

This commit is contained in:
2021-06-21 22:36:35 -04:00
parent f44ac239d9
commit d87eb4f8cd
8 changed files with 50 additions and 11 deletions

View File

@@ -2,14 +2,14 @@
apt:
name: gpg
state: present
when: item.java is defined and item.java == 8
when: item.java.version is defined and item.java.version == 8
loop: "{{ minecraft }}"
- name: Add AdoptOpenJDK's signing key
apt_key:
id: 8ED17AF5D7E675EB3EE3BCE98AC3B29174885C03
url: https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public
when: item.java is defined and item.java == 8
when: item.java.version is defined and item.java.version == 8
loop: "{{ minecraft }}"
- name: Install AdoptOpenJDK repository
@@ -17,21 +17,21 @@
repo: deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb/ buster main
mode: 0644
state: present
when: item.java is defined and item.java == 8
when: item.java.version is defined and item.java.version == 8
loop: "{{ minecraft }}"
- name: Install Java 8
apt:
name: adoptopenjdk-8-hotspot
state: present
when: item.java is defined and item.java == 8
when: item.java.version is defined and item.java.version == 8
loop: "{{ minecraft }}"
- name: Install Java 11
apt:
name: openjdk-11-jre
state: present
when: item.java is not defined or item.java == 11
when: item.java.version is not defined or item.java.version == 11
loop: "{{ minecraft }}"
- name: Activate Java 8

View File

@@ -28,6 +28,8 @@
file:
src: "{{ item.files[0].path }}"
dest: "{{ minecraft_home }}/{{ item.item.name }}/minecraft_server.jar"
owner: "{{ minecraft_user }}"
group: "{{ minecraft_user }}"
state: link
loop: "{{ minecraft_forge.results }}"
when: minecraft_forge is defined and item.files[0].path is defined

View File

@@ -4,14 +4,34 @@
dest: "/etc/systemd/system/minecraft@.service"
register: minecraft_systemd
- name: Deploy service environmental variables
template:
src: environment.conf.j2
dest: "{{ minecraft_home }}/{{ item.name }}/environment.conf"
owner: "{{ minecraft_user }}"
group: "{{ minecraft_user }}"
loop: "{{ minecraft }}"
- name: Reload systemd manager configuration
systemd:
daemon_reload: true
when: minecraft_systemd.changed
- name: Start Service
- name: Disable non-default service instances
service:
name: "minecraft@{{ item.name }}"
enabled: false
loop: "{{ minecraft }}"
when: item.name != minecraft_onboot
- name: Enable default service instance
service:
name: "minecraft@{{ minecraft_onboot }}"
enabled: true
when: minecraft_eula and minecraft_onboot is defined
- name: Run default service instance
service:
name: "minecraft@{{ minecraft_onboot }}"
state: started
enabled: true
when: minecraft_eula and minecraft_onboot is defined
when: minecraft_eula and minecraft_onboot is defined and minecraft_onboot_run