# vim:ft=ansible:
- name: docker deploy minecraft - magicpack
  docker_container:
    name: minecraft-magicpack
    state: absent
    image: itzg/minecraft-server:java8
    env:
      # Common envvars
      EULA: "true"
      OPS: "VintageSalt"
      SNOOPER_ENABLED: "false"
      SPAWN_PROTECTION: "0"
      USE_AIKAR_FLAGS: "true"
      #
      # This enables the use of Ely.by as an auth and skin server
      # Comment this and the above line out if you'd like to use Mojang's
      # https://docs.ely.by/en/authlib-injector.html
      #
      # All players should register on Ely.by in order for this to work.
      # They should also use Fjord Launcher by Unmojang:
      # https://github.com/unmojang/FjordLauncher
      #
      JVM_OPTS: "-javaagent:/authlib-injector.jar=ely.by"
      RCON_CMDS_STARTUP: |-
        scoreboard objectives add Deaths deathCount
        #scoreboard objectives add Health health {"text":"❤","color":"red"}
      RCON_CMDS_ON_CONNECT: |-
        scoreboard objectives setdisplay list Deaths
        #scoreboard objectives setdisplay belowName Health
      # Pack-specific stuff
      MODRINTH_PROJECT: "https://srv.9iron.club/files/packs/1.7.10-magicpack/server.mrpack"
      MOTD: "It's ya boy, uh, skrunkly modpack"
      TYPE: "MODRINTH"
      VERSION: "1.7.10"
      MAX_MEMORY: "6G"
      #VIEW_DISTANCE: "10"
    ports:
      - "25565:25565/tcp"
      - "25565:25565/udp"
      - "24454:24454/udp"
      # Prometheus exporter for Forge
      # https://www.curseforge.com/minecraft/mc-mods/prometheus-exporter
      - "19565:19565/tcp"
      # Prometheus exporter for Fabric
      # https://modrinth.com/mod/fabricexporter
      #- "19565:25585/tcp"
    volumes:
      - /data/minecraft/magicpack:/data
      - /data/minecraft/authlib-injector-1.2.5.jar:/authlib-injector.jar
  tags: [ docker, minecraft, magicpack ]