Atlassian发布了Bamboo和Bitbucket Server的新版本,这两项工具旨在支持企业的DevOps。新功能包括代码配置(configuration as code)、增强的构建控制和构建进度监控。
\\在“Bitbucket Server 5.0 \u0026amp; Bamboo 6.0: Bringing DevOps to the Enterprise”这篇博文中,Atlassian对新产品进行了介绍。
\\\\\在企业中采用DevOps,不仅仅意味着运营和开发之间更好的沟通、现代化的持续集成实践或者恰当的版本控制类型。合规性和规模也同样重要。工具必须能提供自由度和结构化、伸缩性和性能,但这些通常难以并存。
\\Atlassian工具拥有独一无二的能力,它可以在实现DevOps工作流的同时确保可追溯性、可用性和安全性都保持不变。在Bitbucket Server和 Data Center 5.0以及Bamboo 6.0中,我们使用了一个用于验证代码提交者的Git钩子,并更新了智能镜像,以此来提升产品的能力。
\
关于Bamboo 6.0和Bitbucket Server 5.0的主要变化,以及这些变化给正在应用DevOps的企业带来怎样的好处,InfoQ专程采访了在Atlassian负责Bamboo业务的Alison Huselid。
\\InfoQ:Bamboo 6.0的主要变化是什么?
\\\\\Alison Huselid:Bamboo 6.x系列的关注点在于为企业带来现代化的持续集成实践,比如代码配置。另外,工作流的增强(例如与Bitbucket深度集成)也为团队提升了速度,并且可以更轻松地实施DevOps实践。我们在Bamboo 6.0引入了以下内容。
\\
- Bamboo Specs,可以通过代码配置的方式定义Bamboo构建计划,这使得企业软件开发更加现代化。也在开发过程中给予开发者更多的控制权,消除团队间的耦合或者避免在代码和构建系统之间来回切换。\\t
- 与Bitbucket Server的深度集成包括在Bitbucket拉取请求创建时触发Bamboo构建、在Bitbucket中查看正在进行的构建状态以及在Bamboo中创建和查看拉取请求。通过这些增强,开发者在启动构建时获得了更多的控制权,而且可以从Bitbucket内部监控进度。\\t
- 对xCode和Fastlane的官方支持,让开发者可以在一个构建工具中构建和测试所有应用。\
InfoQ:通过代码配置的方式来定义Bamboo计划,它的原理是什么?
\\\Huselid:Bamboo提供了一个Bamboo Specs库,它有一组API可以用于在IDE中以代码的方式编写配置信息,还有一个Bamboo Specs Runner Maven插件,可以用它将计划部署到一个Bamboo服务器上。
\\Bamboo库是用Java编写的。这意味着可以用任意高层次的JVM语言编写代码来实现与Java的互操作,比如Groovy、Scala或者Kotlin。即便你不熟悉Java,培训过程也将引导你直接进入工作环境,像Python、C++或C#这些语言的用户也会熟悉如何定义计划。
\\源自Bamboo文档的教程“Create a simple plan with Bamboo Specs”用实例阐述了工作流程。
\\关于如何用Bamboo Specs创建一个新计划,这里还有个非常简短的示例:
\\\Plan plan = new Plan(project, \"My Plan One\