Architettura precedente:
- first-setup.sh copiava setup_server.py/setup.html/gen_config.py
da /opt/argos-setup-pkg/ verso /opt/argos/setup/
- Service girava da /opt/argos/setup/
- Doppia cartella: git pull su -pkg non aggiornava il service
Architettura nuova:
- Service gira direttamente da /opt/argos-setup-pkg/ (nessuna copia)
- A fine install _schedule_cleanup() lancia systemd-run --scope che:
1. attende 5s (permette risposta HTTP al browser)
2. stop+disable+rm argos-setup.service
3. chiude porta 8888 nel firewall
4. rm -rf /opt/argos-setup-pkg/
- Cartella /opt/argos/setup/ non viene piu' creata (rimossa da mkdir glob)
Il refactor Fase 6 ha inserito 'Licenza' come step 1 shiftando tutti
gli altri step +1, ma i numeri hardcoded dei bottoni Avanti/Indietro
erano rimasti con la vecchia numerazione. Effetto: dallo step
'Rete & SSL' il bottone Avanti saltava direttamente a 'Utente admin'
scavalcando 'SIEM'.
Panel -> Indietro -> Avanti:
panel-2 (Rete&SSL): 4 -> 1 | 4 -> 3
panel-3 (SIEM): 1 -> 2 | 3 -> 4
panel-4 (Admin): 2 -> 3 | (goToInstall invariato)
panel-5 (Install): 3 -> 4 | (-)
- system.vendor_heartbeat abilitato di default (install_key shared secret)
- system.anthropic_key vuoto (valorizzabile dopo da UI)
- paths.analytics_exclude_entities per coerenza con runtime
NON genera system.update (codice morto dopo Fase 5, credenziali Gitea
ora vivono nella licenza firmata).
Sposta installer di prima fase e Web Setup Wizard dal repo argos
al nuovo repo pubblico argos-setup.
File provenienti da argos/scripts/:
- install.sh -> first-setup.sh (rinominato)
- setup_server.py
- setup.html
- gen_config.py
Rimane in argos/scripts/:
- update.sh (continua a vivere nel codice runtime)
Il nuovo repo e' pubblico: il contenuto non include secret ne' codice
proprietario di ARGOS, solo il tooling di installazione.