当前位置:   GIT > 正文

NuGet Server适用于多种环境?

tfs,environments,nuget,服务器,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在线开发工具,前端开发工具,开发人员工具,站长工具

我正在考虑为私人订阅源设置NuGet服务器,这看起来很简单(有一个循序渐进的指南).我预见到的问题是它看起来不像是支持多种环境.

在功能上是否内置了通过多种环境(测试/测试/生产)"推广"包的想法?

我是否必须托管多个服务器(每个环境一个)?

有没有其他解决方案,我还没有?


我主要担心的是我们更新了一个软件包并将其用于我们的测试环境,但我们不希望我们的测试版或生产环境如果出现问题就会失败...我们要等到更新被"批准"之前可用于Beta,然后是第二次批准,以使其可用于生产.



1> Petrik..:

在我目前的工作场所,我们有类似的问题.在不稳定分支中正在开发的NuGet软件包应该可以在我们产品的Alpha版本上进行开发,但不能用于我们产品的Beta/RTM版本.因此,为了实现这一目标,我们设置了3个不同的NuGet存储库:

开发存储库:所有开发人员都具有只读访问权限的文件共享.文件共享有一个用于NuGet包的空间,另一个用于匹配的NuGet符号包.只有构建服务器(和构建工程师)具有对此存储库的写访问权.

QA存储库:另一个类似于开发存储库的文件共享.

生产存储库:Klondike NuGet服务器的私有实例,用作所有NuGet包(及其源)的NuGet和符号服务器,允许在生产版本中使用.

作为分支策略,我们使用GitFlow.使用此策略允许我们使用以下方法:

feature分支上完成的构建将其NuGet包推送到开发存储库.

完成的构建hotfixrelease分支将其NuGet包推送到QA存储库

在这些分支只获得合并提交的情况下,不对分支developmaster分支进行编译构建.

可以将包引入生产存储库的唯一方法是通过QA存储库进行升级.为了实现这一目标,每个产品存储库都有一个指向master分支的构建.当新的合并提交被推送到此分支时,构建将执行以下步骤:

    获取新版本的代码

    通过获取应用于新修订版的版本号标记来确定该修订的版本号

    通过搜索nuspec文件并从这些文件中获取软件包名称,确定哪些NuGet软件包已从新版本中释放.

    软件包名称和版本号的组合提供了完整的软件包文件名.

    在QA存储库中查找包并将它们推送到生产存储库.还可以找到符号包并将其推送到生产符号服务器.最后从QA存储库中删除包

这个工作流程显然可以扩展到包括开发存储库,但到目前为止我们还没有看到它的需要.

请注意,如果您希望以这种方式提升包,那么为QA存储库提供的构建生成包含最终版本号(例如1.2.3)而不是预发布版本号(例如1.2.3-alpha0001)的包很重要.否则促销构建无法确定要抓取的正确包.

这种方法的另一个好处是,当代码被推送到生产分支时,开发人员不必对其项目文件进行更改,因为项目文件已经引用了正确的NuGet包版本.

那么回答你的问题:

NuGet中的包促销没有内置功能.但是,设置一个允许您处理包促销的系统并不困难.还有一些商业NuGet服务器提供促销功能.

您可以托管多台服务器,但并非总是如此.Nuget也可以将文件共享用作存储库,因此对于测试/ beta环境,您可以使用文件共享,然后使用适当的NuGet服务器用于生产环境.

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
  • 如何解决《应该在提交历史中保持合并吗?》经验,为你挑选了1个好方法。git,github,git-merge,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在线开发工具,前... [详细]

  • 如何解决《R中的PlotlyMaps不渲染》经验,为你挑选了1个好方法。r,plotly,https,windows,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,... [详细]

  • 如何解决《使用python3从jupyter笔记本中相对导入的另一个目录中的模块导入本地函数》经验,为你挑选了3个好方法。python,relative-import,jupyter-notebook,服务器,https,git,bash,... [详细]

  • 如何解决《如何处理用于CLI测试的"fmt"golang库包》经验,为你挑选了1个好方法。testing,mocking,go,https,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,... [详细]

  • 如何解决《使用ASP.NET5中的Cookie身份验证重定向到使用属性授权登录》经验,为你挑选了1个好方法。c#,asp.net-core-mvc,asp.net-core,chrome,git,https,DevBox,在线流程图,编程,... [详细]

  • 如何解决《使用Git和IntelliJIDEA保持两个不同更改列表中的一个文件的更改》经验,为你挑选了1个好方法。git,version-control,intellij-idea,DevBox,在线流程图,编程,编程问答,程序员,开发者工... [详细]

  • 如何解决《如何配置本地Chocolatey存储库?》经验,为你挑选了1个好方法。chocolatey,https,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在线... [详细]

  • 如何解决《获取电子表格中AWSS3存储桶中所有对象的链接?》经验,为你挑选了1个好方法。cloud,amazon-s3,amazon-web-services,https,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具... [详细]

  • 如何解决《视差效果跳跃》经验,为你挑选了1个好方法。html,css,jquery,git,https,devbox,ajax,go,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix... [详细]

  • 如何解决《无法访问WindowsUniversalApplication中的TCPServer》经验,为你挑选了0个好方法。tcpserver,win-universal-app,windows,服务器,https,git,DevBox,在... [详细]

  • 如何解决《Docker容器内的码头工人》经验,为你挑选了1个好方法。docker,dockerfile,容器,centos,https,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成... [详细]

  • 如何解决《货物安装是否具有等效的更新命令?》经验,为你挑选了4个好方法。rust,rust-cargo,go,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在线开发... [详细]

  • 如何解决《使用MapStruct将实体映射到带有DI的DTO》经验,为你挑选了1个好方法。spring,mapstruct,容器,https,git,go,apache,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具... [详细]

  • 如何解决《在rebase之后,Git分支在远程后面》经验,为你挑选了1个好方法。git,rebase,https,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在线开发工具... [详细]

  • 如何解决《Div不在正确的位置》经验,为你挑选了0个好方法。javascript,css,webkit,https,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在... [详细]

  • 如何解决《Spring-bootJWT注销》经验,为你挑选了1个好方法。authentication,logout,jwt,spring-boot,https,git,服务器,容器,mvc,DevBox,在线流程图,编程,编程问答,程序员,... [详细]

  • 如何解决《如何正确找到Heisenbug?》经验,为你挑选了1个好方法。c++,c++14,git,windows,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix时间戳,在线开发工... [详细]

  • 如何解决《React/Redux服务器端呈现初始状态》经验,为你挑选了1个好方法。flux,reactjs,redux,服务器,容器,注入,https,git,json,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具... [详细]

  • 如何解决《如何在ui-grid中的过滤器更改时将分页重置为第一页》经验,为你挑选了1个好方法。angularjs,https,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成,unix... [详细]

  • 如何解决《Presto是否具有与Hive的SET命令相同的功能》经验,为你挑选了1个好方法。presto,hive,sql,https,git,DevBox,在线流程图,编程,编程问答,程序员,开发者工具,开发工具,json解析,二维码生成... [详细]

相关标签
  

闽ICP备14008679号