Github pages
Estimated time to read: 2 minutes
Ci sono vari servizi di hosting che si possono valutare per ospitare un sito. In questo tutorial vi mostreremo come poter pubblicare e ospitare un sito su Github Pages.
Cos'é Github Pages¶
GitHub Pages è un servizio di hosting web gratuito offerto da GitHub. Consente agli utenti di pubblicare siti web statici direttamente da una repository github. Ecco alcune caratteristiche:
- Possono essere hostati solo siti web statici.
- Il servizio di hosting é gratuito
- Di default viene impostato un dominio del tipo https://username.github.io/my-project ma é possibile impostare un dominio di un altro provider.
Primi passi¶
- Creare la propria repository su Github
-
Dopo aver creato la propria repository é necessario assicurarsi che la repository sia pubblica per poter usufruire di Github Pages. Per chi possiede una sottoscrizione a github enterprise é possibile mantenere la repository privata.
tip
Per verificare che la repository sia pubblica andare su Settings > Danger Zone > Change repository visibility.
-
Per poter pubblicare su github Pages noi utilizziamo le github actions che permettono di costruire delle pipeline di CI/CD a partire da un file di configurazione YAML.
tip
Bisogna quindi impostare questa opzione in Settings > Pages > Build and deployment > Source = Github Actions
Gestione dei secrets¶
Spesso capita che all'interno dei nostri progetti dobbiamo utilizzare dei valori che non devono essere mostrati in chiaro perchè riservati.
In mkdocs é possibile inserire delle variabili di ambiente all'interno di mkdocs.yml e poi passare il vero valore dinamicamente per esempio tramite la pipeline di cicd.
Un esempio é l'estensione per google analytics fornita da mkdocs material:
In questo caso abbiamo passato il valore GOOGLE_ANALYTICS_KEY tramite la github actions che si occupa del deploy del sito. Come fare?
- Nella vostra repo andate nella sezione Settings e poi in Secrets and variables
- Nella sezione actions selezionate New repository secret e aggiungete il vostro secret
- All' interno dello yaml di configurazione della github actions richiamate il valore del secret in questo modo: