zonemod autostart
This commit is contained in:
parent
891e29a362
commit
dc614483b5
5 changed files with 47 additions and 9 deletions
|
|
@ -132,11 +132,11 @@ steam mkdir -p /opt/l4d2/overlays/competitive_rework/left4dead2
|
||||||
test -d /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/cfgogl || \
|
test -d /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/cfgogl || \
|
||||||
curl -L https://github.com/SirPlease/L4D2-Competitive-Rework/archive/refs/heads/master.tar.gz | steam tar -xz --strip-components=1 -C /opt/l4d2/overlays/competitive_rework/left4dead2
|
curl -L https://github.com/SirPlease/L4D2-Competitive-Rework/archive/refs/heads/master.tar.gz | steam tar -xz --strip-components=1 -C /opt/l4d2/overlays/competitive_rework/left4dead2
|
||||||
|
|
||||||
if ! test -f /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/server_original.cfg
|
# if ! test -f /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/server_original.cfg
|
||||||
then
|
# then
|
||||||
steam mv /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/server.cfg /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/server_original.cfg
|
# steam mv /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/server.cfg /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/server_original.cfg
|
||||||
steam echo -e "exec server_original.cfg\nsm_forcematch zonemod" > /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/server.cfg
|
# steam echo -e "exec server_original.cfg\nsm_forcematch zonemod" > /opt/l4d2/overlays/competitive_rework/left4dead2/cfg/server.cfg
|
||||||
fi
|
# fi
|
||||||
|
|
||||||
# -- SERVERS -- #
|
# -- SERVERS -- #
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ function steam() {
|
||||||
}
|
}
|
||||||
|
|
||||||
mountpoint -q "/opt/l4d2/servers/$name/merged" && umount "/opt/l4d2/servers/$name/merged"
|
mountpoint -q "/opt/l4d2/servers/$name/merged" && umount "/opt/l4d2/servers/$name/merged"
|
||||||
steam rm -rf "/opt/l4d2/servers/$name"
|
steam rm -rf "/opt/l4d2/servers/$name/work" "/opt/l4d2/servers/$name/upper" "/opt/l4d2/servers/$name/merged"
|
||||||
|
|
||||||
steam mkdir -p \
|
steam mkdir -p \
|
||||||
"/opt/l4d2/servers/$name" \
|
"/opt/l4d2/servers/$name" \
|
||||||
|
|
@ -26,4 +26,10 @@ mount -t overlay overlay \
|
||||||
-o "lowerdir=/opt/l4d2/overlays/$overlay:/opt/l4d2/installation,upperdir=/opt/l4d2/servers/$name/upper,workdir=/opt/l4d2/servers/$name/work" \
|
-o "lowerdir=/opt/l4d2/overlays/$overlay:/opt/l4d2/installation,upperdir=/opt/l4d2/servers/$name/upper,workdir=/opt/l4d2/servers/$name/work" \
|
||||||
"/opt/l4d2/servers/$name/merged"
|
"/opt/l4d2/servers/$name/merged"
|
||||||
|
|
||||||
steam "/opt/l4d2/servers/$name/merged/srcds_run" -norestart -pidfile "/opt/l4d2/servers/$name/pid" -game left4dead2 -ip 0.0.0.0 -port "$port" $params +hostname "Crone_$name" +map c1m1_hotel
|
# TODO: pass config file paht instead of expecting it here
|
||||||
|
steam mv "/opt/l4d2/servers/$name/merged/left4dead2/cfg/server.cfg" "/opt/l4d2/servers/$name/merged/left4dead2/cfg/server_original.cfg"
|
||||||
|
steam touch "/opt/l4d2/servers/$name/merged/left4dead2/cfg/server.cfg"
|
||||||
|
echo "exec server_original.cfg" > "/opt/l4d2/servers/$name/merged/left4dead2/cfg/server.cfg"
|
||||||
|
cat "/opt/l4d2/servers/$name/server.cfg" >> "/opt/l4d2/servers/$name/merged/left4dead2/cfg/server.cfg"
|
||||||
|
|
||||||
|
steam "/opt/l4d2/servers/$name/merged/srcds_run" -norestart -pidfile "/opt/l4d2/servers/$name/pid" -game left4dead2 -ip 0.0.0.0 -port "$port" +hostname "Crone_$name" $params +map c1m1_hotel +exec server_wrapper
|
||||||
|
|
@ -1,3 +1,5 @@
|
||||||
|
directories = {}
|
||||||
|
|
||||||
files = {
|
files = {
|
||||||
'/opt/l4d2/setup': {
|
'/opt/l4d2/setup': {
|
||||||
'mode': '755',
|
'mode': '755',
|
||||||
|
|
@ -7,6 +9,10 @@ files = {
|
||||||
},
|
},
|
||||||
'/opt/l4d2/start': {
|
'/opt/l4d2/start': {
|
||||||
'mode': '755',
|
'mode': '755',
|
||||||
|
'triggers': {
|
||||||
|
f'svc_systemd:left4dead2-{server_name}.service:restart'
|
||||||
|
for server_name in node.metadata.get('left4dead2').keys()
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -21,7 +27,27 @@ svc_systemd = {
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
for server_name in node.metadata.get('left4dead2').keys():
|
for server_name, config in node.metadata.get('left4dead2').items():
|
||||||
|
directories[f'/opt/l4d2/servers/{server_name}'] = {
|
||||||
|
'owner': 'steam',
|
||||||
|
'mode': '755',
|
||||||
|
'needed_by': {
|
||||||
|
f'svc_systemd:left4dead2-{server_name}.service',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
files[f'/opt/l4d2/servers/{server_name}/server.cfg'] = {#
|
||||||
|
'content': '\n'.join(config.get('config', [])) + '\n',
|
||||||
|
'owner': 'steam',
|
||||||
|
'mode': '644',
|
||||||
|
'needed_by': {
|
||||||
|
f'svc_systemd:left4dead2-{server_name}.service',
|
||||||
|
},
|
||||||
|
'triggers': {
|
||||||
|
f'svc_systemd:left4dead2-{server_name}.service:restart',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
svc_systemd[f'left4dead2-{server_name}.service'] = {
|
svc_systemd[f'left4dead2-{server_name}.service'] = {
|
||||||
'enabled': True,
|
'enabled': True,
|
||||||
'running': True,
|
'running': True,
|
||||||
|
|
|
||||||
|
|
@ -51,7 +51,7 @@ def server_units(metadata):
|
||||||
|
|
||||||
params = config.get("params", "")
|
params = config.get("params", "")
|
||||||
if config.get("tickrate"):
|
if config.get("tickrate"):
|
||||||
params += f" -tickrate {config['tickrate']}"
|
params = f"-tickrate {config['tickrate']} " + params
|
||||||
|
|
||||||
units[f'left4dead2-{name}.service'] = {
|
units[f'left4dead2-{name}.service'] = {
|
||||||
'Unit': {
|
'Unit': {
|
||||||
|
|
|
||||||
|
|
@ -41,6 +41,12 @@
|
||||||
'overlay': 'competitive_rework',
|
'overlay': 'competitive_rework',
|
||||||
'port': 27017,
|
'port': 27017,
|
||||||
'tickrate': '100',
|
'tickrate': '100',
|
||||||
|
'config': [
|
||||||
|
'sm_forcematch zonemod',
|
||||||
|
'hostname server3_comp1_test',
|
||||||
|
'motd_enabled 0',
|
||||||
|
'rcon_password ' + vault.decrypt('encrypt$gAAAAABpAdZhxwJ47I1AXotuZmBvyZP1ecVTt9IXFkLI28JiVS74LKs9QdgIBz-FC-iXtIHHh_GVGxxKQZprn4UrXZcvZ57kCKxfHBs3cE2JiGnbWE8_mfs=').value,
|
||||||
|
],
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
'bind': {
|
'bind': {
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue