Compare commits

..

No commits in common. "64e4a1fb5b85d93ceb64122c73e127f4cda6b74e" and "723b3e5a617121caacb8d84863ae49f815bc6c15" have entirely different histories.

22
app.py
View file

@ -1905,20 +1905,14 @@ async def tts_bridge_deploy(req: TTSBridgeDeployRequest, _=Depends(_verify)):
"/app-config/tts-bridge/butler-token": BUTLER_TOKEN, "/app-config/tts-bridge/butler-token": BUTLER_TOKEN,
"/app-config/tts-bridge/client-token": client_token, "/app-config/tts-bridge/client-token": client_token,
} }
installer = """import json, os, pathlib encoded = base64.b64encode(json.dumps(files).encode()).decode()
files = json.loads({files_json!r}) script = (
base = pathlib.Path('/app-config/tts-bridge') "import base64,json,os,pathlib;"
base.mkdir(parents=True, exist_ok=True) f"files=json.loads(base64.b64decode('{encoded}'));"
for filename, value in files.items(): "pathlib.Path('/app-config/tts-bridge').mkdir(parents=True,exist_ok=True);"
path = pathlib.Path(filename) "[(pathlib.Path(p).write_text(v),os.chmod(p,0o600)) for p,v in files.items()]"
if path.is_dir(): )
path.rmdir() rc, _out, err = _ssh("sascha@10.5.85.5", f"sudo python3 -c {__import__('shlex').quote(script)}", timeout=30)
path.write_text(value)
os.chmod(path, 0o600)
""".format(files_json=json.dumps(files))
encoded = base64.b64encode(installer.encode()).decode()
command = f"sudo python3 -c {__import__('shlex').quote(f'import base64;exec(base64.b64decode({encoded!r}))')}"
rc, _out, err = _ssh("sascha@10.5.85.5", command, timeout=30)
if rc != 0: if rc != 0:
_audit("/tts/bridge/deploy", "POST", 500, "secret installation failed") _audit("/tts/bridge/deploy", "POST", 500, "secret installation failed")
raise HTTPException(status_code=500, detail="Could not install bridge secrets") raise HTTPException(status_code=500, detail="Could not install bridge secrets")