Fabric è diventato il mio strumento di distribuzione di scelta sia per la distribuzione di progetti Django sia per la configurazione iniziale di Ubuntu slices. Tuttavia, il mio attuale flusso di lavoro con Fabric non è molto DRY, come mi ritrovo:Condivisione di un fabfile su più progetti
- copiando il
fabfile.py
da un Django progetto ad un altro e - modificando il
fabfile.py
come necessario per ogni progetto (ad esempio, la modifica del Attivitàwebserver_restart
da Apache a Nginx, configurazione dell'host e della porta SSH, ecc.).
Uno dei vantaggi di questo flusso di lavoro è che la fabfile.py
diventa parte del mio repository Git, quindi tra il fabfile.py
e piprequirements.txt
, ho un recreateable processo virtualenv e la distribuzione. Voglio mantenere questo vantaggio, pur diventando sempre più DRY. Sembra che ho potuto migliorare il mio flusso di lavoro:
- essere in grado di
pip install
le attività comuni definiti nelfabfile.py
e - avere un file
fab_config
contenente le informazioni di configurazione host per ogni progetto e sovrascrivendo qualsiasi attività come necessario
Eventuali suggerimenti su come aumentare DRY del mio flusso di lavoro Fabric?