Octopus consente di modificare le impostazioni quando si crea un rilascio.
Potresti anche utilizzare team city o altri strumenti di compilazione, ma probabilmente desideri impostazioni diverse per ambiente. Quindi il tuo strumento di distribuzione è in una posizione migliore per questo lavoro.
La configurazione dei servizi in fase di esecuzione introduce ovviamente il rischio che il servizio di configurazione non sia attivo. Ma credo che il vero rischio sia nella confusione della configurazione con lo stato dell'applicazione.
Essere sicuri del controllo delle modifiche per il servizio implementato è molto importante.
Quindi spostare i parametri di configurazione che possono cambiare solo con una distribuzione in stato Application che cambia in base allo stato di un altro strumento introduce una variabile extra nel processo di controllo delle modifiche.
Assicurati che qualsiasi strumento di configurazione che stai utilizzando ti permetta di controllare la configurazione dei vari servizi nel tempo.
Devi essere in grado di determinare quale sia la configurazione in un dato momento e confrontarla con i log degli errori.
La tentazione di utilizzare uno strumento di configurazione come una sorta di pannello di controllo della soluzione, in cui si attivano e disattivano le funzionalità, si implementa il failover, si controlla il bilanciamento del carico ecc.
Ma come con tutti gli strumenti potenti, le caratteristiche "noiose" di YAGNI come il rollback, la registrazione e la diagnostica possono essere dimenticate fino a quando qualcosa non si rompe. e vorresti averli.