in base alla tecnologia: repo "nginx"/"vim" con 10 diverse conf di quella tecnologia. Poi nel pillar della macchina (cosi li dentro c'é tutta la sua descrizione) vogliamo fare un include di, ad esempio, vim.dev (conf di vim per i dev).
Oppure applicare dei pillar se una certa VM ha un certo grains
Capire su quali target dobbiamo fare l'apply:
Per farlo dobbiamo capire quali file sono cambiati (ha un modo salt? salt apply from last changes. salt returner)
git diff va bene ma vedere i file anche dei commit precedenti all'ultimo.
oppure trovare i file modificati dall'ultimo push?
FIRST SOLUTION: git diff origin/master
usare salt-client e i nostri pc
cambio pillar "apt", cercare di fare apply solo di apt. Script che guarda le diff in quel file e poi in qualche modo (yq) trovare sotto a cosa é.
schedulare queste pipeline cosi se qualcuno fa qualcosa a mano rimettiamo quello che c'é nei pillar.
salt apply laste
portare su git gli stati ancora su file system
usare le rules nella gitlab-ci
Mettere tutto in unico progetto usando sotto cartelle? Magari fare una cartella per le vm e una per i servizi. cosi se abbiamo 5 target che usano il pillar "postfix" faremo automaticamente apply su quei 5 target guardando nel top.sls quali hanno postfix. E inoltre possiamo fare include essendo tutto nello stesso.
include di ad esempio un pezzo di sanoid e poi sotto all'include usare jinja per settare dei dataset di cui fare il backup.
Auto-generare il top file con uno script.
Aprire issue:
Modificare le formula di sanoid (con dei default sulle policy), zfs potrebbe contenere dentro sanoid.