2016-04-20 10 views
9

Attualmente sto scrivendo uno script di creazione di Cake per creare un numero di siti ASP.NET MVC.Passare gli argomenti di MSBuild a Cake Build Script per produrre _PublishedWebsites

Al momento non riesco a vedere un'opzione per passare argomenti a MSBuild per produrre la cartella _PublishedWebsites per la distribuzione.

Credo che le argomentazioni che ho bisogno di passare sono:

/p:OutDir=$(build.stagingDirectory) 
/p:DeployOnBuild=true 
/p:WebPublishMethod=Package 
/p:PackageAsSingleFile=true 
/p:SkipInvalidConfigurations=true 

Se v'è un approccio alternativo che produce lo stesso contenuto in uscita non solo nella stessa directory cartella che andrebbe bene.

risposta

15

L'esempio seguente dovrebbe impostare le proprietà MSBuild corrette durante la creazione della soluzione del sito Web da Cake.

MSBuild("./src/Website.sln", new MSBuildSettings() 
    .WithProperty("OutDir", "$(build.stagingDirectory)") 
    .WithProperty("DeployOnBuild", "true") 
    .WithProperty("WebPublishMethod", "Package") 
    .WithProperty("PackageAsSingleFile", "true") 
    .WithProperty("SkipInvalidConfigurations", "true")); 

Per impostare la directory di output del sito web, è sufficiente scambiare la parte "$(build.stagingDirectory)" con il percorso della directory in cui si desidera visualizzare l'output.

È possibile leggere ulteriori informazioni sull'alias MSBuild in Cake qui: http://cakebuild.net/api/cake.common.tools.msbuild/

Problemi correlati