Per i nostri siti Web di produzione installiamo OctoPack ( Octopus Deploy ) nella soluzione web tramite un pacchetto nuget in Visual Studio 2013. Configuriamo un team Configurazione della città per quel progetto per attivare una distribuzione con Octopus Deploy, in cui abbiamo impostato un progetto e diverse macchine e ambienti (ad es. Staging, live). Utilizziamo trasformazioni di configurazione per garantire che vengano utilizzati i valori di configurazione corretti per questi ambienti.
Inizialmente abbiamo utilizzato le configurazioni limitate gratuite per Octopus e Team City, ma ora abbiamo attivato una licenza a pagamento per abilitare più siti.
Il build di Team City si verifica per noi al momento del check-in sul ramo Staging nel nostro repository git Bitbucket, che è approvato tramite la revisione del codice da un QA tecnologico tramite una richiesta pull. Questo quindi attiva una distribuzione automatica nell'ambiente di gestione temporanea.
Quindi promuoviamo la versione di Staging con firma sull'ambiente live tramite Octopus, che distribuisce lo stesso pacchetto nell'ambiente richiesto. È possibile impostare valori di configurazione in Octopus per ambienti e variabili diversi da utilizzare nelle impostazioni di configurazione. In futuro utilizzeremo la funzione di promozione delle caratteristiche anziché la promozione dell'ambiente per i nostri siti di supporto, in modo da poter distribuire i rami di caratteristiche da Staging a Live.
Una volta installato Tentacles, Octopus è molto semplice da utilizzare e non ho avuto problemi reali con Team City oltre a mancare DLL a causa di soluzioni mal organizzate. Tuttavia, per i miei ambienti locali, utilizzerei semplicemente la pubblicazione di Visual Studio incorporata o anche una distribuzione in un sito Web di Azure gratuito per il mio ambiente di sviluppo personale - di nuovo un'opzione in VS 2013.