我正在嘗試將基於CCNET的構建腳本遷移到基於F#Fake的構建腳本。我很難理解如何修改RestorePackages方法來兌現NuGet.config文件,該文件指示NuGet將軟件包放置在我們存儲庫中幾層深的名爲「外部」的文件夾中。如何指示RestorePackages將NuGet.config文件的repositoryPath用於包輸出路徑?
NuGet.config例子:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<add key="repositoryPath" value="Code\DotNet\External\" />
</config>
</configuration>
的NuGet CCNET例子:
<exec executable="Tools\NuGet\nuget.exe">
<buildArgs>restore $[$CCNetWorkingDirectory]\Code\DotNet\Web\All.sln</buildArgs>
</exec>
在上面的例子中,我只是告訴的NuGet恢復包解決方案中的所有項目。這將授予NuGet.config中的設置。
的NuGet假例如: 目標 「RestorePackages」(好玩_ - > RestorePackages() )
但是,調用RestorePackages()不不榮譽NuGet.config(因爲此方法只使用默認參數),所以我的軟件包在錯誤的位置更新。
理想情況下,我想指示RestorePackages專門查看Visual Studio解決方案文件,就像我使用CCNET一樣。這可能嗎?
如果這是不可行的,我想指示RestorePackages遵守NuGet.config文件中的設置。
但是,如果兩者都不可行,我需要能夠覆蓋輸出路徑。不幸的是,我很難理解the documentation,我不知道如何構建這個。