Domanda

Sto cercando di cambiare la nostra build da CruiseControl.net eseguendo un file .msbuild personalizzato al team build 2010. L'applicazione in fase di compilazione è una soluzione VS2008 con numerosi progetti, due dei quali sono progetti Web.

Utilizzando defaultTemplate.xaml, sembra che i due progetti Web siano distribuiti Binaries\_PublishedWebsites\(ProjectName). Quella posizione predefinita va bene. Tuttavia, il contenuto delle directory di output sembra essere aggiornabile, come se aspnet_compiler.exe è stato chiamato con -u, o come se fosse un msbuild <AspNetCompiler> L'attività è stata utilizzata con Updateable="true". Quindi, due domande:

  1. Come faccio a realizzare il team build produrre output non aggiornabili per _PublishedWebsites directory?
  2. Come posso anche impostare il VirtualPath IIS come se stessi facendo quanto segue in un'attività MSBuild:

    <AspNetCompiler Clean="true" Force="true" VirtualPath="/My-IIS-Virtual-Path" />
    

Ho scoperto nella risoluzione dei problemi precedenti che l'unico modo per ottenere IIS 6 per servire un servizio web compilato aspnet_compiler.exe In modalità non aggiornabile è specificare il percorso virtuale nel comando, motivo per cui sto chiedendo il numero 2.

Modificare:

Dopo aver visto l'unica risposta finora, mi sono reso conto che avrei dovuto essere molto più chiaro su quale sia il problema. Mi rendo conto che, se posso fare qualcosa in MSBuild, posso semplicemente chiamare MSBuild dal modello di costruzione. Tuttavia, mi chiedo un po 'di più su come il cambiamento di ciò che accade per copiare l'output al _PublishedWebsites directory. "Trova il compito che copia il sito Web e lo modifica" funzionerebbe bene, tranne per il fatto che non vedo cosa sta effettivamente copiare l'output in _PublishedWebsites. Quello che voglio davvero fare è modificare il passaggio nel modello che lo realizza.

Il registro di build fa riferimento a un obiettivo di compilazione chiamato _CopyWebApplication Ciò sembra fare il lavoro di copia dei file necessari per un'applicazione Web. Tuttavia, non sono sicuro di come modificare questo obiettivo di compilazione, poiché non lo vedo da nessuna parte nel modello di build né in alcun file nella soluzione. Inoltre, qualunque cosa corre _CopyWebApplication Sembra che lo stia eseguendo solo per progetti di applicazioni Web, non per molti altri progetti nella soluzione. Questa è una buona cosa, tranne per il fatto che non so dove esiste la logica che determina se usare _CopyWebApplication.

Forse c'è un file MSBuild predefinito che mi manca? Alcuni parametri di costruzione che potrei usare? Come posso modificare il passaggio di costruzione sopra menzionato?

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top