是否有人对其中任何一方有任何意见。
我们正在考虑尝试将我们的发布流程从开发自动化到测试到生产,包括运行单元测试,进行代码审查以及对允许谁将UAT中的构建推送到生产中的权限。
答案 0 :(得分:4)
免责声明:我是Bamboo的产品经理
@Bernard :您能否提供有关流程的更多详细信息?
Bamboo 2.7是我们的第一个版本,它允许您将Build划分为不同的阶段并在Stages中并行执行Jobs。这可以显着改善构建的整体周转时间。我们目前正在进行工件传递,这将允许您在不同阶段之间传递构建工件。同样,这将减少总体构建时间,是迈向持续部署过程的另一个重要步骤。
不幸的是,我们目前没有一个好的“开箱即用”的方式来强制构建的某些部分的权限。同样,有一些方法可以通过插件和以某种方式设置Build来解决这个问题。但是如果不更详细地了解您的流程,就很难提供建议。如果您愿意与我们分享您的流程细节,我很乐意亲自与您联系(jlass at atlassian dot com)。
@jgritty :您指出的问题部分是我们Perforce集成的问题,部分似乎是未知的错误。请随时在支持上创建支持请求。@ atlassian.com或在jira.atlassian.com上发布错误报告。
由于Perforce在Bamboo用户中的使用较少(与CVS和SVN相比),因此我们通常会得到较少的反馈,并且对现有问题的了解较少。请直接向我们提出问题,我们会尽力在即将发布的版本中修复它们。
干杯,
Jens Schumacher
答案 1 :(得分:3)
我从未听说过Go,但我可以告诉你,Bamboo有一些严重的怪癖。根据您的源控制系统,您的里程可能会有所不同。
它需要一种最不常见的分母方法来处理它所连接的所有SCM,所以对于我们使用perforce,我们会失去一些我们应该免费获得的东西。
以下是一些尚未解决的令人烦恼的事情:
设置构建代理以使用特定客户端(当然必须已存在,grr)。 现在假设客户端植根于c:\ buildarea。 你必须手动创建c:\ buildarea文件夹,否则代理会给你一些关于无法将文件提取到客户端根目录的荒谬错误。 显然'p4 sync -c YOURCLIENT'可以做到这一点,但Bamboo做了一些笨蛋。
它不能做的另一件事是从现有标签中正确构建。假设您有一个跨平台构建,并且您想要从相同的更改列表/标签构建说linux和Windows,在Bamboo中没有简单的方法可以做到这一点。你可以同时开火并祈祷。您可以为另一个文件同步一个文件,但无法使用标签进行构建。
最后一个有点愚蠢(但并不可怕)的事情就是假设每个人都以“标记”构建的方式使用CVS。当构建包含大量更改列表时,而不是仅将其称为更改列表并将其编号一次,它会为更改列表中的每个文件列出“版本#”。显然,不是交易破坏者,对于p4用户来说只是有点奇怪。
总而言之,这些问题都没有杀死我们,我们每天使用它几百个版本,并且在任何给定时间都有大约200个构建计划的活动。我确信我能想到其他问题,但很多事情都得到了解决。
答案 2 :(得分:3)
@Bernard:我在ThoughtWorks工作并且使用Go(Cruise)比使用Bamboo更有经验,所以我现在就给你提供信息Go地址你的查询
与市场上的许多工具不同,Go提供了对触发构建之间关系的可见性,环境建模,来自并行构建的聚合结果,自动发布工件的简易性以及自动更新构建代理
来自ThoughtWorks Studios的@jgritty: Go is the successor to Cruise。
答案 3 :(得分:2)
我使用过Bamboo / TeamCity / Jenkins / etc,并最近评论了ButWorks Go对抗标准CI服务器。
我真的很想知道他们是否破解了团队管理和发布问题。我个人最喜欢TeamCity,但给了Go一个机会。说实话,我有点失望,作为纯粹的构建服务器,它不像TeamCity / Bamboo那样先进。它缺乏对关键SCM和构建工具的支持。此外,大多数构建服务器都有很多支持第三方工具,如FindBugs / PMD / Emma / Clover /等,Go不会
与市场上其他产品不同的一个领域是环境概念和在不同环境中移动的能力。然而,这是该概念的一个非常原始的版本。
Thoughtworks的人员是世界上最好的人,并且在开发团队方面拥有丰富的经验,我希望看到更多的工具版本,他们真正开始解决围绕软件开发过程的一些关键问题
我的快速评论可以在这里找到
http://diarmuidmoloney.wordpress.com/2011/11/24/thoughtworks-go/