我希望标准化我们的库,可执行文件和网站的发布机制。
NuGet网站上的所有文档都讨论了发布库,工具和源文件,但在发布完全打包的可执行文件和网站时似乎没有关于目录结构的任何指导。
对此有任何指导或现有惯例吗?
如果我要做些什么,那就像是:
exe/net40/*.*
website/net40/**/*.*
答案 0 :(得分:11)
我们正在使用Paul Stovell的Octopus Deploy,这是一个自动部署工具,可以从Nuget Feed中提取并使用中央仪表板分发您的应用程序。
我们还有一些msbuild脚本遵循他网站上的约定,告诉你how to build the nuget files。
显然,最新版本的Teamcity (EAP) can automatically package您的工件可用于nuget包和act as a NuGet server。
我们使用TC和Octopus Deploy进行自动构建和部署取得了很大成功。
答案 1 :(得分:7)
NuGet不适用于工具/应用程序/可执行文件。它适用于进入源并与源一起工作的事物。 NuGet停止的地方,Chocolatey进来。您也可以使用Octopus进行常规部署,请参阅the answer in this question with Octopus Deploy。您还可以将Chocolatey与八达通融为一体。
Chocolatey将更好地支持打包网站并将其作为网站安装在未来。在回答这个问题时,它还没有内置的安装Web应用程序的功能。
答案 2 :(得分:2)
我一直在准备我们公司的Nuget设置,以便将我们的库分发给我们的开发人员。
Nuget的事情是,你可以做很多事情,但是值得努力让它做一些它并不是真正想要做的事情。
似乎更容易使用其他软件,如CruiseControl或类似的东西来分发已完成的程序和网站。
您可以使用Nuget执行的大多数自定义操作只能在Visual Studio中使用。
也许你也可以看看Chocolatey(适应Nuget安装应用程序)