5

Come la maggior parte delle persone sto usando teamcity come strumento di configurazione e sto anche utilizzando le trasformazioni di configurazione web in modo piuttosto pesante, un sacco di volte per inserire valori di configurazione.Come posso interrompere due volte gli inserti di trasformazione di configurazione inseriti?

Il mio processo di compilazione è in genere quello di creare l'intera soluzione e quindi (utilizzando msdeploypublish) distribuire il sito Web in un sito Web.

Poiché eseguo msbuild due volte, le trasformazioni di configurazione vengono eseguite due volte e quindi ho finito con valori duplicati nelle versioni finali dei file di configurazione (principalmente web.config ma ne ho anche altri).

Esiste un modo per eseguire le trasformazioni di configurazione una sola volta, ad esempio utilizzando un parametro in msbuild che impedirà che accada?

risposta

6

Ho trovato leggermente non documentato InsertIfMissing che sembra fare il lavoro.

+0

In realtà mi sono imbattuto in questo con una normale trasformazione web.config. Improvvisamente oggi, quando preformo la stessa pubblicazione che ho fatto ieri, gli inserti vengono eseguiti due volte. WTF! Fortunatamente questo l'ha risolto, non avrei dovuto aver bisogno di esso. Grazie! –

+0

Ho visto questo stesso problema con una normale trasformazione web.config. È risultato essere dovuto ad una cattiva configurazione | Piattaforma mappatura nel mio file '.sln'. Vedi http://stackoverflow.com/questions/31542753/web-config-transform-is-running-twice-on-publish/31542754 – hgcummings