2016-01-18 29 views
10

Abbiamo appena aggiornato da TFS 2010 a TFS 2015 e sto ricreando una definizione di build XAML nel formato "vNext" di build/flusso di lavoro.TFS 2015 Publish Build Artifacts in una directory

Nella vecchia build era possibile stampare tutti i file (le DLL) in un'unica directory, senza la loro struttura di directory originale.

Ciò è ancora possibile con il nuovo framework TFS 2015 Build?

ho la seguente Publish Build Artifact -Settings:

Artifact Type: File Share

Path: \\server\tfslib\$(Build.DefinitionName)\$(Build.DefinitionName)_$(Build.BuildNumber)

Il problema è che la struttura di directory soluzione originale è conservato nella directory di uscita specificato in Path. Come posso ottenere l'output senza l'intera sottostruttura?

Come soluzione temporanea, lo sto facendo attualmente con un passo di PowerShell dopo lo Publish Build Artifact ma sarebbe bello farlo durante il processo di pubblicazione stesso.

risposta

4

Questo è ancora possibile, è possibile passare il seguente argomento della riga di comando per Visual Studio Costruire o MsBuild compito:

/p:OutputPath="$(Build.BinariesDirectory)" 

Questo istruirà il compito di compilazione per reindirizzare tutto l'output alla directory dei binari, come eri abituato alle vecchie build XAML.

oppure si può utilizzare il mio MsBuild Helper task dal Visual Studio Market Place per configurare il percorso di uscita, quindi aggiungere la variabile $(MsBuildAdditionalArguments) al MsBuild o Visual Studio Costruiamo ulteriori argomenti di ingresso:

MsBuild Helper Task enter image description here

Visual Studio Costruire/MsBuild Task enter image description here

1

Anche per favore prova a dare questo argomento MSBuild

/p:GenerateProjectSpecificOutputFolder=true /p:OutDirWasSpecified=true 
/p:OutputPath=$(Build.BinariesDirectory) 
+0

Non penso che funzioni ancora in Visual Studio 2015/MsBuild 14 e versioni successive: https://social.msdn.microsoft.com/Forums/vstudio/en-US/43dcc9cf-8eff-43e2-9292-eeecd1ff3bcf/msbuild -14-generateprojectspecificoutputfolder? forum = TFSBuild – jessehouwing