Files
Simone 0d6486b19b chore(plans): archive Phase A and B completed documents
Moves all A/B closeouts, checklists, idea docs, and implementation plans
to plans/archived/2026-05-23/. Both phases are production-stable.

Active plans remaining in plans/:
  - idea-3-powershell-removal.md  (Phase C — in progress)
  - idea-3-esxi-support.md        (Phase D — future)
  - ideas-overview.md             (roadmap reference)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-23 19:52:09 +02:00

2.1 KiB

B3 — Closeout

Passo B3 di plans/PhaseB-user-checklist.md: trasferimento credenziali e chiavi SSH al user ci-runner headless.

Stato

COMPLETATO — chiavi SSH, credenziale guest Windows e GiteaPAT disponibili a ci-runner; PoC headless verificato.

Cosa è stato fatto

  • Chiavi SSH guest Linux già presenti in /var/lib/ci/keys/ (copiate con i template in B2). Permessi corretti:

    • ci_linux: 600 (owner ci-runner)
    • ci_linux.pub: 644 (owner ci-runner)
  • Credenziale guest Windows BuildVMGuest già salvata come prerequisito del Passo 2 con tools/ci-cred-set.py.

    • Backend: keyrings.alt.file.PlaintextKeyring (~/.local/share/python_keyring/keyring_pass.cfg)
    • Verificata con tools/ci-cred-check.py BuildVMGuestOK (file) username='WINBUILD-2025\ci_build'
  • Gitea PAT salvato:

    sudo -u ci-runner /opt/ci/venv/bin/python \
      /opt/ci/local-ci-cd-system/tools/ci-cred-set.py GiteaPAT ci-runner-linux
    

    Verificato con ci-cred-check.py GiteaPATOK (file).

  • PoC headless confermato: il backend PlaintextKeyring non dipende da D-Bus e funziona sia da sudo -u ci-runner che dall'interno di act-runner.service (verificato durante smoke test B2 e B4).

Deviazioni / gotcha

  • secret-tool scartato: il piano originale usava secret-tool (GNOME Secret Service). Non funziona senza una D-Bus session attiva, che non è disponibile in contesti systemd headless. Alternativa adottata: keyrings.alt.file.PlaintextKeyring — nessuna dipendenza da D-Bus, file in chiaro in ~/.local/share/python_keyring/keyring_pass.cfg (accessibile solo a ci-runner). Configurazione in ~/.local/share/python_keyring/keyringrc.cfg.
  • Credenziale B2: il prerequisito del Passo 2 anticipava la parte minima di B3 (solo BuildVMGuest) per sbloccare lo smoke test Windows. In B3 si è completato aggiungendo il GiteaPAT e fissando i permessi chiavi SSH.

Riferimenti commit

  • 3921758 — feat: add credential management scripts (tools/ci-cred-set.py, tools/ci-cred-check.py)