5.9 KiB
Executable File
Setup workspace macchine LAN
Scopo
Questo runbook serve ad attivare rapidamente le altre macchine Linux della rete anche prima di avere Gitea ovunque.
L obiettivo minimo e semplice:
- tutti leggono gli stessi
docs/ - tutti trovano gli stessi
scripts/ai/ - ogni macchina ha uno spazio di lavoro locale coerente
- il lavoro distribuito parte subito senza copie manuali sparse
Scelta pratica consigliata
Per la prima fase usare NFS.
Motivo:
- e gia dentro gli strumenti Linux base
- non richiede dominio
- funziona bene se hai uniformato utente e UID/GID tra le macchine
- e sufficiente per condividere manuali, indici e piccoli script
Layout consigliato
Macchina capofila
- nodo capofila:
192.168.0.200 - repository Day0 locale:
/home/michele/netgescon/netgescon-day0 - cartella LAN condivisa:
/srv/netgescon/shared-docs
Contenuto condiviso minimo:
/srv/netgescon/shared-docs/docs/srv/netgescon/shared-docs/scripts/ai/srv/netgescon/shared-docs/exchange/srv/netgescon/shared-docs/modules
Macchine client
- mount condiviso:
/srv/netgescon/shared-docs - workspace locale:
/home/$USER/netgescon-lan-workspace
Contenuto workspace locale minimo:
docs -> /srv/netgescon/shared-docs/docsscripts/ai -> /srv/netgescon/shared-docs/scripts/aiexchange -> /srv/netgescon/shared-docs/exchangemodules/shared -> /srv/netgescon/shared-docs/modulesnotes/opzionale per appunti temporanei locali
Procedura rapida
1. Preparare il server share
Eseguire:
bash bootstrap_docs_lan_share.sh server /home/michele/netgescon/netgescon-day0 192.168.0.0/24 /srv/netgescon/shared-docs "docs,scripts/ai,app,config,routes,resources,tests"
Lo script prepara:
- la cartella
/srv/netgescon/shared-docs - la copia aggiornata di
docs/ - la copia aggiornata di
scripts/ai/ - la cartella
/srv/netgescon/shared-docs/exchangeper messaggi, handoff e materiale - la cartella
/srv/netgescon/shared-docs/modulesper superfici di lavoro condivise - la riga NFS da inserire in
/etc/exports - i comandi
exportfsda lanciare consudo
2. Abilitare davvero l export NFS sul server
Eseguire sulla macchina capofila:
sudo mkdir -p /srv/netgescon/shared-docs
echo '/srv/netgescon/shared-docs 192.168.0.0/24(ro,sync,no_subtree_check)' | sudo tee /etc/exports.d/netgescon-docs.exports
sudo exportfs -rav
sudo systemctl enable --now nfs-server
Se serve scrittura dai client sostituire ro con rw, ma la scelta iniziale consigliata e ro.
Se vuoi usare la share anche per lo scambio operativo tra agent, la variante consigliata e separare documentazione e scambio:
echo '/srv/netgescon/shared-docs 192.168.0.0/24(ro,sync,no_subtree_check)' | sudo tee /etc/exports.d/netgescon-docs.exports
echo '/srv/netgescon/shared-docs/exchange 192.168.0.0/24(rw,sync,no_subtree_check)' | sudo tee /etc/exports.d/netgescon-exchange.exports
sudo exportfs -rav
3. Preparare una macchina client
Eseguire:
bash bootstrap_docs_lan_share.sh client 192.168.0.200:/srv/netgescon/shared-docs /srv/netgescon/shared-docs /home/$USER/netgescon-lan-workspace
Lo script:
- crea il mount point
- stampa il comando
mount - crea il workspace locale minimo
- crea i symlink a
docs/escripts/ai/
Poi completare con:
sudo mount -t nfs 192.168.0.200:/srv/netgescon/shared-docs /srv/netgescon/shared-docs
Per rendere il mount persistente aggiungere una riga in /etc/fstab.
Esempio:
192.168.0.200:/srv/netgescon/shared-docs /srv/netgescon/shared-docs nfs defaults,_netdev 0 0
Se monti anche la cartella di scambio in scrittura:
sudo mkdir -p /srv/netgescon/shared-exchange
sudo mount -t nfs 192.168.0.200:/srv/netgescon/shared-docs/exchange /srv/netgescon/shared-exchange
ln -sfn /srv/netgescon/shared-exchange /home/$USER/netgescon-lan-workspace/exchange-rw
Struttura consigliata per la cartella exchange
Dentro /srv/netgescon/shared-docs/exchange conviene usare da subito:
handoff/incoming/outgoing/messages/artifacts/
Comandi iniziali sul server:
sudo mkdir -p /srv/netgescon/shared-docs/exchange/{handoff,incoming,outgoing,messages,artifacts}
sudo chown -R michele:michele /srv/netgescon/shared-docs
Struttura consigliata per i moduli condivisi
Dentro /srv/netgescon/shared-docs/modules puoi iniziare a depositare:
app/config/routes/resources/tests/
Questa cartella serve a distribuire rapidamente superfici di lavoro coerenti finche la rete non e ancora tutta su Gitea.
Procedura operativa capofila
Il nodo 192.168.0.200 fa tre cose:
- aggiorna il repository Day0 autorevole
- rigenera la share LAN con
bootstrap_docs_lan_share.sh server ... - assegna ai client quali cartelle o moduli leggere prima di lavorare
4. Apertura workspace sulle altre macchine
Aprire in VS Code il path locale:
/home/$USER/netgescon-lan-workspace
Dentro il workspace l agente deve trovare subito:
docs/README.mddocs/00-INDICE-LAVORO-DISTRIBUITO.mddocs/support/CONTINUITA-SVILUPPO-AGENT.mddocs/support/RETE-DOCS-E-AGENT-OPERATIVITA.md
Regole operative iniziali
- una sola macchina aggiorna i docs sorgente della LAN
- le altre macchine leggono dalla share e lavorano con gli stessi runbook
- le note locali valgono solo come appunti temporanei
- quando Gitea sara disponibile ovunque, la share LAN restera supporto o fallback, non sorgente finale
Checklist minima per ogni nuova macchina
- stesso utente Linux o UID/GID compatibili
- mount NFS attivo
- workspace locale creato
- docs leggibili dal workspace
- indice distribuito letto prima di iniziare il lavoro
Criterio di successo
La fase LAN puo dirsi pronta quando:
- almeno due macchine leggono la stessa cartella
docs/condivisa - entrambe aprono lo stesso indice distribuito
- i runbook vengono aggiornati solo sulla macchina capofila
- il passaggio a Gitea non richiedera di ripensare la struttura workspace