You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/learning/mkdocs_tutorial/github_pages.md
+30Lines changed: 30 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,3 +31,33 @@ Ecco alcune caratteristiche:
31
31
!!! note "tip"
32
32
33
33
Bisogna quindi impostare questa opzione in **Settings > Pages > Build and deployment > Source = Github Actions**
34
+
35
+
## Gestione dei secrets
36
+
37
+
Spesso capita che all'interno dei nostri progetti dobbiamo utilizzare dei valori che non devono essere mostrati in chiaro perchè riservati.
38
+
39
+
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.
40
+
41
+
Un esempio é l'estensione per google analytics fornita da mkdocs material:
42
+
43
+
```{ .yaml .copy }
44
+
analytics:
45
+
provider: google
46
+
property: !ENV GOOGLE_ANALYTICS_KEY
47
+
```
48
+
49
+
In questo caso abbiamo passato il valore **GOOGLE_ANALYTICS_KEY** tramite la github actions che si occupa del deploy del sito.
50
+
Come fare?
51
+
52
+
1. Nella vostra repo andate nella sezione **Settings** e poi in **Secrets and variables**
53
+
2. Nella sezione actions selezionate **New repository secret** e aggiungete il vostro secret
54
+
3. All' interno dello yaml di configurazione della github actions richiamate il valore del secret in questo modo:
Nel panorama delle librerie per generare documentazione automatica e siti statici non possiamo non citare [Sphinx](https://sphinx-rtd-theme.readthedocs.io/en/stable/) che forse ha rappresentato lo standard python fino a qualche anno fa.
11
+
12
+
Potete trovare già un riferimento a **sphinx** e alle sue caratteristiche all'interno di questo [articolo](../../learning/document_code/index.md)
13
+
14
+
In questa sezione confrontiamo invece in maniera schematica quali sono le caratteristiche di sphinx e mkdocs in modo da poter evidenziare i punti di forza di entrambi.
|`Formati supportati`|**Markdown**|**rST** ma con l'estensione myst-parser supporta il markdown |
19
+
|`Startup`| Facile con il comando `poetry run mkdocs .`| Semplice con il comando `sphinx-quickstart`|
20
+
|`Configurazione`| Utilizza un file yaml **mkdocs.yml**| Utilizza un file python **conf.py**|
21
+
|`Layout`| Elegante ed accattivante, risulta anche ben navigabile | Risulta un po' retro. Iconico il tema Read the Docs |
22
+
|`Build`| Fornisce un server locale per provare interamente il sito. Comodo il comando `poetry run mkdocs serve`| Genera la build del sito ma é l'utente che lo deve poi provare nel suo browser. Questa operazione viene fatta con `make html`|
23
+
|`Estensioni`| Sono tantissime ma non tutte vengono mantenute | Sono presenti molte estensioni ma la community é meno attiva rispetto a mkdocs |
24
+
|`Personalizzazione`| Possibilità infinite grazie all'integrazione dei css e ai temi disponibili | Decisamente meno personalizzabile |
25
+
|`Integrazione con terze parti`| Integrazione con Confluence con questa [estensione](https://github.com/pawelsikora/mkdocs-with-confluence)| Integrazione con Confluence con questa [estensione](https://sphinxcontrib-confluencebuilder.readthedocs.io/en/stable/)|
0 commit comments