From 3c053cf51b548f1f6616e29f0979c5601f8c1e6c Mon Sep 17 00:00:00 2001 From: cronekorkn Date: Thu, 24 Nov 2022 18:19:24 +0100 Subject: [PATCH] l4d2 rcon --- bundles/left4dead2/files/server.cfg | 2 ++ bundles/left4dead2/items.py | 1 + bundles/left4dead2/metadata.py | 17 +++++++++++++++++ 3 files changed, 20 insertions(+) diff --git a/bundles/left4dead2/files/server.cfg b/bundles/left4dead2/files/server.cfg index 8ca3e79..9201575 100644 --- a/bundles/left4dead2/files/server.cfg +++ b/bundles/left4dead2/files/server.cfg @@ -4,6 +4,8 @@ sv_contact "admin@sublimity.de" // assign serevr to steam group sv_steamgroup "${','.join(steamgroups)}" +rcon_password "${rcon_password}" + // no annoying message of the day motd_enabled 0 diff --git a/bundles/left4dead2/items.py b/bundles/left4dead2/items.py index bbcc535..cd1d6e6 100644 --- a/bundles/left4dead2/items.py +++ b/bundles/left4dead2/items.py @@ -32,6 +32,7 @@ for name, config in node.metadata.get('left4dead2/servers').items(): 'context': { 'name': name, 'steamgroups': node.metadata.get('left4dead2/steamgroups'), + 'rcon_password': config['rcon_password'], }, 'owner': 'steam', 'group': 'steam', diff --git a/bundles/left4dead2/metadata.py b/bundles/left4dead2/metadata.py index 0617ff6..94dad2c 100644 --- a/bundles/left4dead2/metadata.py +++ b/bundles/left4dead2/metadata.py @@ -16,6 +16,23 @@ defaults = { } +@metadata_reactor.provides( + 'left4dead2/servers', +) +def rconn_password(metadata): + # only works from localhost! + return { + 'left4dead2': { + 'servers': { + server: { + 'rcon_password': repo.vault.password_for(f'{node.name} left4dead2 {server} rcon', length=24), + } + for server in metadata.get('left4dead2/servers') + }, + }, + } + + @metadata_reactor.provides( 'steam-workshop-download/left4dead', )