FUSS Server

fuss-server è uno script python che lancia un playbook ansible che configura una macchina per poter funzionare come server in una rete FUSS.

fuss-server

I vari sottocomandi dello script fuss-server corrispondono alle funzioni con lo stesso nome e generalmente si concludono con l”os.execvp di un comando di shell per lanciare ansible; notare che questo termina l’esecuzione del programma python, eventuale codice successivo non viene eseguito.

Playbook

Ansible viene chiamato con uno dei seguenti playbook, a seconda del sottocomando usato:

create.yml

per configurare un fuss-server, sia inizialmente che per gli aggiornamenti;

purge.yml

per eliminare la configurazione del fuss-server.

Quest’ultimo ripristina alcuni file di configurazione dai backup, il primo non compie direttamente azioni, ma richiama ruoli dalla directory roles, per organizzare il codice in modo più leggibile.

Pacchetti Debian

Il repository prevede la generazione di due pacchetti .deb, fuss-server e fuss-server-dependencies; il primo contiene il fuss-server vero e proprio, mentre il secondo è un metapacchetto che dipende da tutti i pacchetti installati dal playbook ansible.

fuss-server-dependencies non è necessario per l’uso di fuss-server, ma è aggiunto per comodità per pre-installare (e soprattutto pre-scaricare) tutti i pacchetti necessari.

Per le istruzioni su come buildare i pacchetti e caricarli su archive.fuss.bz.it si può vedere l’articolo Pacchetti e Repository

Numeri di versione

Il pacchetto fuss-server è nativo, quindi il numero di versione è del tipo X.Y.Z dove X è il numero di versione debian corrispondente (ad esempio 12 per bookworm, 13 per trixie).