diff --git a/src/docs/web/webdav.it.md b/src/docs/web/webdav.it.md index 6dfab77f1e03865477a6376a7422893f942a8fda..add14c7a287d6bf50760addaae655cf84070af9a 100644 --- a/src/docs/web/webdav.it.md +++ b/src/docs/web/webdav.it.md @@ -200,3 +200,49 @@ Potete collegarvi usando la App **"WebDAV Nav"** (gratuita ed a pagamento) che t 4. Cliccate sul pulsante "Salva". 5. Nella finestra adesso vi compare il nome che avete scelto, cliccateci sopra e se vi compare una schermata con delle cartelle azzurre significa che vi siete collegati. + + +Gitlab CI +--- + +Se usate un'istanza Gitlab per generare un sito statico, probabilmente +vi conviene aggiornare automaticamente il sito ogni volta che modificate +la vostra repository. Per farlo, potete usare [webdav-upload](https://git.autistici.org/ai3/tools/webdav-upload), che vi permette di caricare +i file nel vostro spazio web attraverso la continuous integration di Gitlab. + +Per farlo, dovrete aggiungere i seguenti comandi al vostro file `.gitlab-ci.yml`: + +1. Per installare webdav-upload avrete bisogno di pip3, quindi se python3-pip non è installato di default nell'immagine Docker che usate nel vostro script `.gitlab-ci.yml`, per prima cosa dovrete installare questo pacchetto. Se per esempio state usando un'immagine Debian, il primo comando del vostro script dovrà essere: + + - apt-get update -y && apt-get install -yq python3-pip + +1. A questo punto potete installare webdav_upload con il comando: + + pip3 install git+https://git.autistici.org/ai3/tools/webdav-upload#egg=webdav_upload + +2. Infine, caricate i file del vostro sito statico nel vostro spazio web con il seguente comando: + + webdav-upload --user="$WEBDAV_USER" --password="$WEBDAV_PASSWORD" --url "https://www.autistici.org/dav/$WEBDAV_USER/" output-folder html-yourwebsite + + In questo comando, dovrete sostituire alcuni elementi: + + - `output-folder` va sostituito con il nome del folder in cui viene generato il sito nel Gitlab runner. + - `html-yourwebsite` va sostituito con il nome della cartella nel vostro spazio web. Per esempio, se il vostro sito si trova all'indirizzo inventati.org/foo, il nome della cartella sarà `html-foo`. + - Potete salvare il vostro nome utente e la vostra password come variabili nei setting della vostra CI (Settings -> CI/CD -> Variables). Nel comando riportato sopra, il nome delle due variabili è WEBDAV_USER per il nome utente e WEBDAV_PASSWORD per la password. + + **È importante usare questo metodo per il nome utente e la password, che non dovrebbero essere incluse nello script, soprattutto se la vostra repository è pubblica!** + +Di seguito, uno script di esempio: + +``` +production: + stage: deploy + script: + - apt-get update -y && apt-get install -yq python3-pip + - pip3 install git+https://git.autistici.org/ai3/tools/webdav-upload#egg=webdav_upload + - jekyll build -d output-folder + # qui stiamo immaginando che usiate jekyll per generare il vostro sito e + # che salviate i file generati in una cartella chiamata `output-folder`, + # ma potete generare il sito con qualunque sistema per generare siti statici + - webdav-upload --user="$WEBDAV_USER" --password="$WEBDAV_PASSWORD" --url "https://www.autistici.org/dav/$WEBDAV_USER/" output-folder html-yourwebsite +```