From 83de11c5f426d64e86d3d6119f25b43c3406ca18 Mon Sep 17 00:00:00 2001 From: Karol Konkol Date: Wed, 9 Sep 2026 13:47:54 +0200 Subject: [PATCH] Run the translator as a systemd system service --- .github/workflows/translation-demo-deploy.yml | 5 ++++- .../service/deploy/translator.service | 17 +++++++++++++++++ 2 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 translation-demo/service/deploy/translator.service diff --git a/.github/workflows/translation-demo-deploy.yml b/.github/workflows/translation-demo-deploy.yml index 605a686..f9c4e0e 100644 --- a/.github/workflows/translation-demo-deploy.yml +++ b/.github/workflows/translation-demo-deploy.yml @@ -92,7 +92,10 @@ jobs: printf 'FISHJAM_ID=%s\nFISHJAM_MANAGEMENT_TOKEN=%s\nGOOGLE_API_KEY=%s\n' \ "$FISHJAM_ID" "$FISHJAM_MANAGEMENT_TOKEN" "$GOOGLE_API_KEY" > .env uv sync - systemctl --user restart translator + install -m 644 deploy/translator.service /etc/systemd/system/translator.service + systemctl daemon-reload + systemctl enable translator + systemctl restart translator env: SERVICE_DIR: ${{ secrets.TRANSLATOR_SERVICE_DIR }} FISHJAM_ID: ${{ secrets.TRANSLATION_FISHJAM_ID }} diff --git a/translation-demo/service/deploy/translator.service b/translation-demo/service/deploy/translator.service new file mode 100644 index 0000000..f72748b --- /dev/null +++ b/translation-demo/service/deploy/translator.service @@ -0,0 +1,17 @@ +# Installed to /etc/systemd/system/translator.service by +# .github/workflows/translation-demo-deploy.yml. A system unit (not a +# `systemctl --user` one) so the service survives SSH logouts and reboots. +[Unit] +Description=MoQ live translation service +After=network-online.target +Wants=network-online.target + +[Service] +User=root +WorkingDirectory=/home/translator-service +ExecStart=/root/.local/bin/uv run --env-file .env translator +Restart=always +RestartSec=5 + +[Install] +WantedBy=multi-user.target