From 536fd688e833aeea99399faa56c1347445698e5e Mon Sep 17 00:00:00 2001 From: Simone Date: Thu, 21 May 2026 00:45:43 +0200 Subject: [PATCH] feat: update runner configuration steps and add config.yaml generation instructions --- plans/PhaseB-user-checklist.md | 44 +++++++++++++++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/plans/PhaseB-user-checklist.md b/plans/PhaseB-user-checklist.md index 64bf929..56c4551 100644 --- a/plans/PhaseB-user-checklist.md +++ b/plans/PhaseB-user-checklist.md @@ -252,7 +252,7 @@ systemd. Environment="CI_BUILD_VMS=/var/lib/ci/build-vms" Environment="CI_ARTIFACTS=/var/lib/ci/artifacts" Environment="CI_KEYS=/etc/ci/keys" - ExecStart=/opt/ci/act_runner/act_runner daemon + ExecStart=/opt/ci/act_runner/act_runner daemon --config /var/lib/ci/runner/config.yaml Restart=on-failure RestartSec=10 @@ -284,10 +284,52 @@ EOF sudo journalctl -u act-runner -f # Ctrl+C dopo conferma OK ``` +- [x] Generare e configurare `config.yaml` del runner: + + ```bash + # 1. Generare il file di default (conserva la registrazione in .runner) + sudo -u ci-runner /opt/ci/act_runner/act_runner generate-config \ + | sudo -u ci-runner tee /var/lib/ci/runner/config.yaml > /dev/null + + # 2. Sostituire le righe di esempio nella sezione runner.envs con le variabili CI + # (generate-config scrive due righe A_TEST_ENV_NAME_* come placeholder) + sudo -u ci-runner sed -i \ + -e 's/ A_TEST_ENV_NAME_1: a_test_env_value_1/ CI_PYTHON_LAUNCHER: \/opt\/ci\/venv\/bin\/python/' \ + -e 's/ A_TEST_ENV_NAME_2: a_test_env_value_2/ GITEA_CI_TEMPLATE_PATH: \/var\/lib\/ci\/templates\/WinBuild2025\/WinBuild2025.vmx\n GITEA_CI_LINUX_TEMPLATE_PATH: \/var\/lib\/ci\/templates\/LinuxBuild2404\/LinuxBuild2404.vmx/' \ + /var/lib/ci/runner/config.yaml + + # 3. Verificare il risultato + grep -A4 'envs:' /var/lib/ci/runner/config.yaml + ``` + + Atteso: + ```yaml + envs: + CI_PYTHON_LAUNCHER: /opt/ci/venv/bin/python + GITEA_CI_TEMPLATE_PATH: /var/lib/ci/templates/WinBuild2025/WinBuild2025.vmx + GITEA_CI_LINUX_TEMPLATE_PATH: /var/lib/ci/templates/LinuxBuild2404/LinuxBuild2404.vmx + ``` + + > Le variabili di sistema (`CI_ROOT`, `PYTHONIOENCODING`, ecc.) restano + > nel service unit. `runner.envs` è per la configurazione specifica + > del runner CI (path template, launcher Python). + + ```bash + # 4. Ricaricare e riavviare + sudo systemctl daemon-reload + sudo systemctl restart act-runner.service + sudo journalctl -u act-runner -n 20 # confermare avvio OK + ``` + - [ ] Smoke job: triggerare manualmente `self-test.yml` selezionando il runner Linux (mettere temporaneamente in pausa quello Windows o usare label distinte). Atteso: PASS. + > ⚠️ Prerequisito: le variabili `GITEA_CI_TEMPLATE_PATH` e + > `GITEA_CI_LINUX_TEMPLATE_PATH` devono essere presenti nel service + > unit **prima** di avviare lo smoke test, altrimenti il job fallisce + > con "Got unexpected extra argument". + --- ## Passo 5 — Installare i timer systemd (B5)