配置流水线源

本文介绍了如何配置流水线源,包括代码源、制品源、Jenkins源、Flow流水线源等类型。

流水线源

流水线源是Flow流水线的输入源头,可以从文件托管服务或者其他第三方服务中获取原料,并将这些原料放入到工作区。流水线可以对工作区的原料进行处理,通常处理的目的可以是编译打包、执行任务、版本制作等,流水线处理输出的结果可以是软件的测试报告、压缩文件、目录、文档等。

代码源

Flow支持将业界通用的代码仓库作为流水线的触发源,在流水线编辑页面,选择添加流水线源 > 代码源 ,为流水线添加代码源,支持:Codeup、自建 Gitlab、码云、通用Git、Github、Gitlab

、Bitbucket、SVN。

高的 (15)

在代码源的使用中,可以通过服务连接并添加用户名和密码来进行授权。此外,对于自建的GitLab、Bitbucket、Gitlab以及通用Git,可以通过组织公钥授权。具体操作是将组织的SSH公钥拷贝并添加到Git仓库中。以自建GitLab为例,为了能够使用组织SSH公钥同步代码,需要将公钥绑定到Git仓库的个人账号上。然而,由于每个公钥在同一代码平台上只能配置一次,因此最佳实践是由组织管理员将SSH公钥配置到组织的公共账号上,然后通过该公共账号进行代码同步。这样可以避免公钥冲突,并确保代码同步的顺利进行。

高的 - 2025-02-11T170800

制品源

Flow支持将业界通用的制品仓库作为流水线的触发源:

  1. 在流水线编辑页面,选择添加流水线源 > 制品源,按需选择制品源仓库。

  2. 单击添加服务连接

    高的 - 2025-02-11T173747

  3. 单击创建,完成相关服务连接的绑定。高的 - 2025-02-11T174040

  4. 填写相关参数信息,并完成添加:

    • 云效Packages通用制品:选择仓库类型通用制品(目前仅支持Packages通用制品),选择仓库制品默认版本

      高的 - 2025-02-11T171717

    • 阿里云ACR镜像仓库:选择ACR(仅支持组织版ACR镜像仓库),选择地域实例命名空间仓库默认版本高的 - 2025-02-11T171540

Jenkins

  1. Flow 支持将您的Jenkins服务配置为流水线源,当流水线触发运行时,Flow会根据您的配置下载 Jenkins 任务的构建产物并执行后续任务。您的构建产物需要在 Jenkins 的任务中先进行归档操作。

    高的 (18)

  2. 在流水线编辑页,单击添加流水线源,在 添加流水线源 弹框中选择 Jenkins,添加Jenkins服务连接,输入您的 Jenkins 公网地址、用户、密码,完成账号绑定。

    image

  3. 选择 Jenkins 任务 Job名称默认版本,即可完成配置。

    image

    重要

    请确保您的 Jenkins 服务配置了公网出口。

    高的 (20)

Flow流水线源

在实际应用过程中,存在构建环节和部署环节分离的场景。比如,需要对开发环境、测试环境、生产环境分别进行部署,但是每个环境的部署频率是不同的。如果将多个环境的部署配置在同一条流水线,则会存在多次重复、取消的情况。如果将多个环境配置成多条流水线,则每个环境在部署过程中会出现重复构建的现象。因此,Flow 支持跨流水线制品传递(通用制品或镜像),典型使用场景如下:预发阶段从源代码构建镜像,预发环境部署验证通过后,生产阶段直接使用预发镜像发布上线。本场景您可以将预发流水线设置为生产流水线的源,生产流水线可以直接引用预发流水线中的构建产物并执行后续任务。

image

  1. 在流水线(如:生产流水线)编辑页,点击 添加流水线源,在 添加流水线源 抽屉中选择 Flow流水线,选择 源流水线(如:预发流水线) 和 默认版本

    高的 (21)

  2. 在流水线(如:生产流水线)环境部署任务,选择使用原流水线构建产物(如:预发流水线镜像产物)直接发起部署。

    高的 (22)

  3. 此外,流水线之间也支持自动触发,打开 触发事件 开关,可选择自动触发事件。如原流水线运行成功自动触发目标流水线运行。

    高的 (23)