2015-11-30 14 views
7

Chcę przełączyć z MSBuild na FAKE. W moim skrypcie MSBuilda tworzę pakiet Webdeploy, wywołując MSBuild z właściwościami DeployOnBuild = True i DeployTarget = Package. Spowoduje to webdeploy generowania pakietu wdrażania podczas kompilacji jest uruchomiony:FAKE: Jak zdefiniować właściwości MSBuild?

<MSBuild Projects="@(ItemToBuild)" 
     Targets="Build" 
     Properties="Configuration=$(Configuration); 
        Platform=$(Platform); 
        DeployOnBuild=True; 
        DeployTarget=Package; 
        OutFolder=$(OutFolder)" /> 

Jak mogę zrobić to samo z FAKE? Doszedłem tak daleko:

Target "Build" (fun _ -> 
    !! solutionFile 
    |> MSBuildRelease binDir "Build" 
    |> Log "Build-Output: " 
) 

Jak mogę określić wymagane właściwości?

Odpowiedz

9

Jeśli spojrzysz na source code, zobaczysz, że MSBuildRelease jest po prostu skrótem dla właściwej wersji z pewnymi predefiniowanymi właściwościami. Jeśli chcesz zdefiniować inne właściwości, poza "Konfiguracją", możesz po prostu wrócić do wersji MSBuild:

Target "Build" (fun _ -> 
    !! solutionFile 
    |> MSBuild binDir "Build" 
     [ 
      "Configuration", "Release" 
      "Platform", "AnyCPU" 
      "DeployOnBuild", "True" 
      "DeployTarget", "Package" 
      "OutFolder", "/what/ever" 
     ] 
    |> Log "Build-Output: " 
)