本文介绍了如何配置流水线源,包括代码源、制品源、Jenkins源、Flow流水线源等类型。
流水线源
流水线源是Flow流水线的输入源头,可以从文件托管服务或者其他第三方服务中获取原料,并将这些原料放入到工作区。流水线可以对工作区的原料进行处理,通常处理的目的可以是编译打包、执行任务、版本制作等,流水线处理输出的结果可以是软件的测试报告、压缩文件、目录、文档等。
代码源
Flow支持将业界通用的代码仓库作为流水线的触发源,在流水线编辑页面,选择Codeup、自建 Gitlab、码云、通用Git、Github、Gitlab
,为流水线添加代码源,支持:、Bitbucket、SVN。
在代码源的使用中,可以通过服务连接并添加用户名和密码来进行授权。此外,对于自建的GitLab、Bitbucket、Gitlab以及通用Git,可以通过组织公钥授权。具体操作是将组织的SSH公钥拷贝并添加到Git仓库中。以自建GitLab为例,为了能够使用组织SSH公钥同步代码,需要将公钥绑定到Git仓库的个人账号上。然而,由于每个公钥在同一代码平台上只能配置一次,因此最佳实践是由组织管理员将SSH公钥配置到组织的公共账号上,然后通过该公共账号进行代码同步。这样可以避免公钥冲突,并确保代码同步的顺利进行。
制品源
Flow支持将业界通用的制品仓库作为流水线的触发源:
在流水线编辑页面,选择
,按需选择制品源仓库。单击添加服务连接。
单击创建,完成相关服务连接的绑定。
填写相关参数信息,并完成添加:
云效Packages通用制品:选择仓库类型为通用制品(目前仅支持Packages通用制品),选择仓库、制品和默认版本。
阿里云ACR镜像仓库:选择ACR(仅支持组织版ACR镜像仓库),选择地域、实例、命名空间、仓库、默认版本。
Jenkins源
在流水线编辑页,单击添加流水线源,在 添加流水线源 弹框中选择 Jenkins,添加Jenkins服务连接,输入您的 Jenkins 公网地址、用户、密码,完成账号绑定。
选择 Jenkins 任务 Job名称 和 默认版本,即可完成配置。
重要请确保您的 Jenkins 服务配置了公网出口。
Flow流水线源
在实际应用过程中,存在构建环节和部署环节分离的场景。比如,需要对开发环境、测试环境、生产环境分别进行部署,但是每个环境的部署频率是不同的。如果将多个环境的部署配置在同一条流水线,则会存在多次重复、取消的情况。如果将多个环境配置成多条流水线,则每个环境在部署过程中会出现重复构建的现象。因此,Flow 支持跨流水线制品传递(通用制品或镜像),典型使用场景如下:预发阶段从源代码构建镜像,预发环境部署验证通过后,生产阶段直接使用预发镜像发布上线。本场景您可以将预发流水线设置为生产流水线的源,生产流水线可以直接引用预发流水线中的构建产物并执行后续任务。
在流水线(如:生产流水线)编辑页,点击 添加流水线源,在 添加流水线源 抽屉中选择 Flow流水线,选择 源流水线(如:预发流水线) 和 默认版本。
在流水线(如:生产流水线)环境部署任务,选择使用原流水线构建产物(如:预发流水线镜像产物)直接发起部署。
此外,流水线之间也支持自动触发,打开 触发事件 开关,可选择自动触发事件。如原流水线运行成功自动触发目标流水线运行。