作为开发人员,我在一般的开发过程中使用持续集成是一个新手。但是我已经完成了将ci引入我们的软件团队的任务,因此已经做了一些尝试来实现这一目标。
目前我们有以下内容: 0. BitBucket作为我们的源代码库 1.团队城市 2. ProGet服务器 3.八达通部署 4.开发测试vm 5. UAT测试vm 6.生产vm
一般来说,这个过程
除了我们的开发人员之外,顶级的所有内容都适合所有人。
我们的问题不是概念,而是生活在过程中。原因是我们有两个解决方案,其中第二个解决方案引用了我们ProGet服务器的第一个解决方案的nuget包。这意味着每次依赖解决方案需要在第一个解决方案中进行修改时,我们必须等待循环发生,然后在第二个解决方案中更新nuget包以完成所需的更改。
当这个周期需要在达到所需结果之前很多次发生时,这真的很令人沮丧。
我喜欢的是在开发人员的PC上开发这两种解决方案,而无需等待ci构建和发布更改的包。我认为这意味着第一个解决方案中的dll将在本地引用,但是我如何更改这个以便最终引用是从ProGet服务器构建在CI盒上?
谁能告诉我怎么做?
答案 0 :(得分:-1)
这个工作流程非常具有挑战性;我们看到很多用户正在迁移到更多基础架构代码方法。
考虑这个教程Deploying ASP.NET and Windows Service Applications with Otter - 想法是,通过MSBuild构建解决方案(在工作站上或在TeamCity中的发布模式下)创建一个包文件(UPack或NuGet,无关紧要)
然后,作为开发人员,您可以添加一个步骤以使用Otter Romp在本地配置/部署该程序包,并定期Otter以确保其他环境中存在程序包/配置。通过这种方式,它是跨越本地的一致方法,以开发测试产品。
无论如何,这描述了一种非常不同的方法,所以它可能不是你的问题的一个很好的答案,但你问过一个过程变化,所以这是我经常看到的。
另请参阅:KB#1114 - A Comparison: Octopus Deploy vs Otter
__
免责声明,我的日常工作是在Inedo:)