homelab/fighter/scripts/update_minecraft_server_list.sh

36 lines
1.1 KiB
Bash
Raw Normal View History

#!/bin/bash
# Get list of configured servers
# One server per line, includes router
2023-10-06 15:56:19 -07:00
CONFIG_DIR="/home/admin/homelab/fighter/config/minecraft"
SERVERS="$(docker-compose -f $CONFIG_DIR/docker-compose.yml config --services)"
# exporter-minecraft: Create comma-separated list for EXPORT_SERVERS
EXPORT_SERVERS=""
for server in $SERVERS
do
if [ $server != "router" ]
then EXPORT_SERVERS="${EXPORT_SERVERS}${EXPORT_SERVERS:+,}$server"
fi
done
2023-10-06 15:56:19 -07:00
echo "EXPORT_SERVERS=\"$EXPORT_SERVERS\"" > $CONFIG_DIR/exporter.env
# router: Create valid and correct mapping command for mc-router
# example: command: --mapping=vanilla.jafner.net=vanilla:25565,e9.jafner.net=e9:25565,fan.jafner.net=fan:25565,vanilla2.jafner.net=vanilla2:25565,bmcp.jafner.net=bmcp:25565 --api-binding=0.0.0.0:25566
MAPPINGS=""
for server in $SERVERS
do
if [ $server != "router" ]
2022-11-08 19:43:04 -08:00
then MAPPINGS="${MAPPINGS}${MAPPINGS:+,}$server.jafner.net=$server:25565"
fi
done
2023-10-06 15:56:19 -07:00
sed -i "s/--mapping=[^ ]\+/--mapping=$MAPPINGS/m" $CONFIG_DIR/docker-compose.yml
DIR=$(pwd)
cd $CONFIG_DIR && docker-compose up -d --force-recreate router exporter-minecraft
cd $DIR