我正在編寫一個腳本,它會自動將Nuget文件打包併發布到我的私有存儲庫(文件共享)和私有符號服務器(本地主機上)。從'nuget pack'命令檢索創建的NuGet包文件名?
當我在PowerShell中運行nuget pack
我得到一個同時包含的NuGet和符號包的文件位置的字符串輸出,但據我可以告訴有沒有辦法編程獲得這些路徑不必解析字符串。軟件包的版本由.csproj本身決定,所以我不一定知道哪個版本將放在文件名中。
下面是從包命令的輸出:
Attempting to build package from 'MyProject.csproj'.
Building project 'C:\Users\me\prg\MyProject.csproj' for target framework '.NETFramework,Version=v4.0'.
Packing files from 'C:\Users\me\prg\bin\Release'.
Using 'Myproject.nuspec' for metadata.
Successfully created package 'C:\nuget\MyProject.1.0.0.0.nupkg'.
Attempting to build symbols package for 'MyProject.csproj'.
Building project 'C:\Users\me\prg\MyProject.csproj' for target framework '.NETFramework,Version=v4.0'.
Packing files from 'C:\Users\me\prg\bin\Release'.
Using 'MyProject.nuspec' for metadata.
Successfully created package 'C:\nuget\Myproject.1.0.0.0.symbols.nupkg'.
如果我只是硬着頭皮寫一些正則表達式來解析出「成功創建包」線?
呀,'OutputDirectory'是我使用現在唯一的問題是我需要代碼包和符號包進入不同的目錄(實際上,符號到一個http服務器)。 臨時文件夾...現在有一個想法。 – nemec
@nemec:如果您使用臨時文件夾,您可以先將**。symbols.nupkg *移動到您的符號服務器。這隻會將實際的軟件包留在臨時文件夾中,並且您可以通過將** .nupkg *移動到NuGet文件共享來完成,而不需要使用正則表達式來匹配確切的文件名稱等。 – Nailuj