迁移来自培养基

这个文档提供了一个关于如何从构建风筝迁移到CircleCI的概述。

Imaginex Consulting提供的提示

源代码控制设置

首先,您需要确保您的源代码位于GitHub或Bitbucket中。有关如何导入代码的详细信息,请参阅以下内容:

GitHub企金宝博娱乐官网网址业

以下是使用git命令行工具将代码导入GitHub企业所需的步骤:金宝博娱乐官网网址

  1. 在GitHub企业实例上创建一个空存储库。金宝博娱乐官网网址

  2. 在本地机器上创建外部存储库的裸克隆,获取所有远程标记(refs/tags/*)并将所有远程分支头(refs/heads/\*)直接复制到相应的本地分支头。

    git克隆https://external-host.com/extuser/repo.git——bare
  3. 将GitHub企业存储库作为远程金宝博娱乐官网网址引用添加到本地克隆中。

    CD [repo-name] git远程添加企业git @ 金宝博娱乐官网网址[hostname]:[所有者] / [repo-name] .git
  4. 将所有本地引用(refs/*)推到远程GitHub企业存储库。金宝博娱乐官网网址

    git push企金宝博娱乐官网网址业——镜像

将代码导入GitHub或Bitbucket后,您可以使用Circleci创建项目入门指南

构建配置

接下来,您需要迁移构建配置。在Buildkite上,构建配置要么在web接口中定义,要么在调用的文件中定义.pipeline.yml在源代码存储库的根目录中。如果使用shell脚本执行构建,则可以重用Circleci中的那些脚本。

首先,创建一个CircleCI构建配置文件。在源代码存储库的根目录中,创建一个名为.circleci的文件夹,并在该文件夹中创建一个名为config.yml的文件。接下来,按照这里的CircleCI文档学习如何配置.config。yml文件。

造风筝和圆形的配置将会不同。同时打开Buildkite和CircleCI参考文档来帮助构建步骤的转换可能是有帮助的:

一些差异值得指出:

Buildkite Circleci.

定义执行单个构建步骤的作业。

-命令:'execute- scripte -for job .sh'
jobs: job1:步骤:-签出-运行:“执行-为job1编写脚本”

指定要为作业使用的docker映像。

步骤: - 标签:'Job1'插件: -  Docker#V3.2.0:图片:'node:10'
乔布斯:Job1:Docker: - 图片:node:10 auth:用户名:mydockerhub-user密码:$ dockerhub_password#上下文/项目ui env-var参考

定义一个多阶段构建管道。Job1和Job2并发运行。一旦它们完成,Job3就运行了。一旦Job3完成,就会运行Job4。

步骤: - 标签:'Job1'命令:'制作构建依赖性' - 标签:'Job2'命令:'制作构建工件' - 等待 - 标签:'Job3'命令:'制作测试' - 等待 - 标签:'Job 4'命令:'depople'
版本:2个作业:Job1:步骤: -  checkout  - 运行:使构建依赖项Job2:步骤: - 运行:制作构建工件Job3:步骤: - 运行:make test Job4: - 运行: - 运行:MATE DELED Works Flowers:Make Depoy Worksflows:Make Depoy工作流程:版本:2乔布斯: -  Job1  -  Job2  -  Job3:需要: -  Job1  -  Job2  -  Job4:需要: -  Job3

在多个平台上执行作业。FiellKite使用标签来标识构建代理。Circleci为Docker,Linux和MacOS提供了执行者。

步骤:- label: 'ubuntuJob'代理:ubuntu: '16.04'命令:'echo "你好,$USER!"' - label: 'osxJob'代理:osx: 'true'命令:'echo ' Hello, $USER! '
乔布斯:Ubuntujob:机器:图片:Ubuntu-1604:201903-01步骤: - 结帐 - 运行:echo“Hello,$用户!”OSXJOB:MacOS:Xcode:11.3.0步骤: - 结帐 - 运行:echo“Hello,$用户!”

对于更大、更复杂的构建文件,我们建议逐步转移构建步骤,直到您熟悉了CircleCI平台。我们推荐这个订单:

  1. 执行shell脚本和Docker编写文件

  2. 工作流

  3. 工件

  4. 缓存

  5. 触发器

  6. 性能选项