Nexus和上传.NET应用程序的工件

时间:2015-06-15 21:16:51

标签: c# .net asp.net-mvc nexus

无论如何,Nexus可以用作.NET应用程序的构建输出的工件管理器吗?

我非常了解Nexus可以使用优秀的nuget代理和内部工件管理器,但是我需要Nexus在这些库中运行更多的下游并存储TeamCity构建的输出。

我已经研究过使用REST API来上传一个zip文件(比如一个MVC网站),但这看起来并不具有超级可持续性。有什么想法吗?

2 个答案:

答案 0 :(得分:3)

Nexus支持托管的NuGet存储库,这些存储库可以是您内部创建的nuget包的部署目标。所以你可以运行一个内部的Nuget仓库。有关如何进行部署的更多详细信息,请查看NuGet with Nexus的文档。

http://books.sonatype.com/nexus-book/reference/nuget.html

http://www.sonatype.org/nexus/2015/06/04/license-and-vulnerability-tracking-for-nuget-packages-with-nexus-lifecycle/

还有一个很好的视频介绍

部署程序包必须以托管存储库为目标并使用身份验证。详情请见http://books.sonatype.com/nexus-book/reference/nuget-deploying_packages_to_nuget_hosted_repositories.html

如果您不想使用nuget存储库存储构建输出,您还可以例如将zip文件上载到同一服务器上的Maven存储库。

一旦您的构建输出位于Nexus(Maven或nuget)的存储库中,您就可以使用例如普通的HTTP GET调用curl或其他任何你想要将安装zip下载到部署服务器上的东西,然后安装到那里。

答案 1 :(得分:2)

  

无论如何,Nexus可以用作.NET应用程序构建输出的工件管理器吗?

是的,但nexus版本必须为2.9或更高版本。

Sonatype:随着2.9版的发布,Nexus Repository Manager Pro和Nexus Repository Manager OSS中提供了NuGet支持。

您可以使用NuGet托管的存储库上传构建工件的输出。

  

我非常了解Nexus可以使用优秀的nuget代理和内部代理   工件管理器,但我需要Nexus更多操作   这些库的下游并存储TeamCity的输出   建立。我已经研究过使用REST API来上传一个zip文件   说一个MVC网站),但这看起来并不具有超级可持续性。任何   那里的想法?

我使用NuGet CLI而不是休息api。

nuget push foo.nupkg API-KEY -Source https://www.nuget.org/api/v2/hosted-repo/

使用API​​-KEY访问nuget托管仓库解释here

首先;生成API-KEY。 enter image description here

然后;激活NuGey API-Key领域 enter image description here

最后,您可以使用以下命令将您的nuget包推送到Nexus上托管的nexus存储库

nuget push foo.nupkg {GENERATED-API-KEY} -Source http://localhost:8081/repository/nuget-hosted/