46 lines
1.3 KiB
YAML
46 lines
1.3 KiB
YAML
---
|
|
- name: Check if mcrcon is already installed
|
|
ansible.builtin.stat:
|
|
path: "{{ minecraft_tools_dir }}/mcrcon"
|
|
register: mcrcon_installed
|
|
|
|
- name: Download mcrcon
|
|
ansible.builtin.get_url:
|
|
url: "{{ mcrcon_url }}"
|
|
dest: "{{ minecraft_tools_dir }}/mcrcon.tar.gz"
|
|
owner: "{{ minecraft_user }}"
|
|
group: "{{ minecraft_group }}"
|
|
mode: '0644'
|
|
when: not mcrcon_installed.stat.exists
|
|
|
|
- name: Extract mcrcon
|
|
ansible.builtin.unarchive:
|
|
src: "{{ minecraft_tools_dir }}/mcrcon.tar.gz"
|
|
dest: "{{ minecraft_tools_dir }}"
|
|
owner: "{{ minecraft_user }}"
|
|
group: "{{ minecraft_group }}"
|
|
remote_src: yes
|
|
creates: "{{ minecraft_tools_dir }}/mcrcon"
|
|
when: not mcrcon_installed.stat.exists
|
|
|
|
- name: Make mcrcon executable
|
|
ansible.builtin.file:
|
|
path: "{{ minecraft_tools_dir }}/mcrcon"
|
|
mode: '0755'
|
|
owner: "{{ minecraft_user }}"
|
|
group: "{{ minecraft_group }}"
|
|
|
|
- name: Create mcrcon wrapper script
|
|
ansible.builtin.copy:
|
|
content: |
|
|
#!/bin/bash
|
|
{{ minecraft_tools_dir }}/mcrcon -H localhost -P {{ rcon_port }} -p "{{ rcon_password }}" "$@"
|
|
dest: "{{ minecraft_base_dir }}/scripts/rcon.sh"
|
|
owner: "{{ minecraft_user }}"
|
|
group: "{{ minecraft_group }}"
|
|
mode: '0755'
|
|
|
|
- name: Clean up mcrcon archive
|
|
ansible.builtin.file:
|
|
path: "{{ minecraft_tools_dir }}/mcrcon.tar.gz"
|
|
state: absent |