6

Stiamo utilizzando VS2012 e abbiamo una soluzione con 4 progetti di siti Web al suo interno. Abbiamo aggiunto i seguenti argomenti MSBuild ai nostri argomenti integrazione continua MSBuild:Implementazione continua con più progetti di siti Web in soluzione

/p: DeployOnBuild = True/P: Configurazione = test/p: DeployTarget = MsDeployPublish/p: MSDeployPublishMethod = WMSvc/p: CreatePackageOnPublish = False/p: DeployIisAppPath = "{test}"/p: SkipExtraFilesOnServer = true /p:MsDeployServiceUrl={test}/MsDeploy.axd/P: AllowUntrustedCertificate = True/p: username = {nome utente}/p: password = {password}

Quando eseguiamo il check-in e le integrazioni continue vengono eseguite, vengono pubblicati tutti e 4 i siti Web nella stessa directory. Come specifichiamo quale progetto appartiene a quale applicazione IIS?

Abbiamo provato a spostare le impostazioni nel csproj come suggerito su How to tell TFS to deploy multiple webapps containing in one solution? Dopo aver apportato le modifiche, il check-in ha funzionato ma non è stato pubblicato.

+0

Non sarebbe meglio dividere in 4 sln uno per sito? –

risposta

15

Si sta distribuendo nello stesso sito perché si sta passando DeployIisAppPath nella riga di comando.

è possibile creare un profilo di pubblicazione in ogni applicazione web con lo stesso nome (ad es. Stage.pubxml), ciascuno dei quali contiene un valore differen DeployIisAppPath. Quando si distribuisce, è possibile specificare /p:PublishProfile=Stage e utilizzerà le impostazioni da quel profilo per ogni progetto specifico.

Se si desidera specificare proprietà come SkipExtraFilesOnServer e MsDeployServiceUrl dalla riga di comando, è sufficiente rimuoverle dai profili di pubblicazione.

+0

Grazie per questo, mi ha aiutato molto. – Michael

+0

@ Michael @Richard Szalay ci sono alcune condizioni in cui solo il primo progetto compilato sta prendendo il profilo di pubblicazione? http://stackoverflow.com/questions/38306581/msbuild-publish-profile-not-being-passed-to-second-web-project-for-solution-with –

Problemi correlati