从队伍中迁移
本文档概述了如何从Teamcity迁移到Circleci。
快速开始
Circleci从队伍的设置和配置中具有各种差异。为了尝试Circleci的最佳体验,建议您入门以下内容:
阅读(或至少浏览)本文档巩固概念差异。
快速构建并运行简单你好世界工作在任何存储库中。此配置演示了我们的YAML设置的简单性,它展示了如何定义执行环境和在其内运行的步骤。Circleci上的所有作业都分享了这种格式。
了解配置后,修改执行程序和个人步骤以满足您的需求。例如,一个Rails项目可以使用Ruby容器图像并运行
Bundler.
命令。咨询我们的教程页面对于不同语言和框架的各种示例。完成一份作业后,在Circleci上设置您的其他作业配置工作流程。这将基本上迁移您的构建链。
下一个,优化你的工作具有高级功能要查看Circleci平台上的构建速度有多速度。
在整个过程中,请咨询配置参考有关Circleci平台上的所有可用配置的列表。
为什么迁移到Circleci?
Circleci是一种现代化的CI / CD工具,旨在表现和开发人员的生产力。使用灵活的配置系统,您可以为您的应用程序的特定需求定义复杂的工作流程和作业。
- 配置为代码
-
大多数Circleci的配置是通过yaml完成的。学习很容易维护和微不足道,可以跟踪您的CI / CD管道,并将其源代码的其余部分被跟踪和版本。
- 自动缩放架构
-
所有构建环境都是根据您的配置动态创建的,并在完成任务时终止。您可以同时运行一百 - 或数百个工作,而无需任何麻烦或开销。
- 灵活性
-
Circleci是供应商和工具无关的。我们的配置允许与具有API的任何平台或云提供商集成。看我们集成页面对于现有的伙伴关系。依赖关系和库可以在您的工作中安装ad-hoc,我们提供依赖性缓存加快后续构建。
- 可共享,可重复使用的配置
-
可以使用的步骤,执行环境和作业,参数化,共享,并在不同的项目和团队中进行参数化,共享和重复使用Circleci Orbs.。利用众多的一体化和眼球已经为你写了。
概念
高级别差异
Circleci和Teamcity分享了项目的概念。
Teamcity的构建配置相当于Circleci的工作,这是由达到目标的许多步骤或命令组成的原子元素(例如运行单元测试)。
Teamcity传统上使用UI来配置大多数构建,并具有Kotlin脚本配置是一个较新的功能。Circleci使用Yaml配置大部分管道功能。
队伍settings.kts. | 等价Circleci.config.yml. |
---|---|
|
|
队伍settings.kts. |
---|
|
等价Circleci.config.yml. |
---|
|
队伍建立链子 | 等效Circleci工作流程 |
---|---|
|
|
队伍建立链子 |
---|
|
等效Circleci工作流程 |
---|
|
组态
环境
Teamcity要求使用安装所需的操作系统和工具和相应的构建配置设置构建代理。在Circleci中,所有作业配置都有一个executer定义,而Circleci处理旋转给您的代理。查看我们的列表可用的执行者。
版本:2.1作业:my-mac作业:#执行程序定义acos:xcode:“11.3.0”#步骤定义步骤: - 结帐#...等。
脚步
在Teamcity中,从已定义的Runner类型列表中选择构建步骤(例如Visual Studio,Maven,Gradle等)。在Circleci上,步骤定义可以灵活地拍摄您将在终端或命令提示符中运行的任何命令。
随后,这种灵活性允许步骤适应任何语言,框架和工具。例如,一个Rails项目可以使用Ruby容器并运行Bundler.
命令。一种node.js项目可以使用节点容器和NPM.
命令。访问我们教程页面对于各种语言和框架示例。
队长步骤 | 等效的circleci步骤 |
---|---|
|
|
队长步骤 |
---|
|
等效的circleci步骤 |
---|
|
构建模板/元跑步者
Circleci的相当于元跑步者和构建模板是Orbs的,它是可塑造的,可共同的配置。阅读更多关于他们的更多信息ORBS文件。