阿里云首页 云效2020 相关技术圈

配置 Flow 流水线源

原理说明

在实际应用过程中,存在构建环节和部署环节分离的场景。

比如,需要对开发环境、测试环境、生成环境分别进行部署,但是每个环境的部署频率是不同的。如果将多个环境的部署环境配置在同一条流水线,则会存在多次重复、取消的情况。如果将多个环境配置成多条流水线,则每个环境在部署过程中会出现重复构建的现象。

因此,Flow 提供了流水线之间触发的能力,您可以将流水线 A 设置为流水线 B 的触发源,当流水线 B 被触发运行时,Flow 会根据您的配置下载源流水线 A 中的构建产物并执行后续任务。

在流水线编排页,点击“添加源”,在新建流水线弹框中选择"Flow 流水线",选择源流水线 和默认版本,当流水线被执行时就会下载源流水线默认版本的构建产物。

注意

流水线 A 若想下载流水线 B 的构建产物,B 需要将构建产物进行归档,归档完成后流水线 B 的构建产物会和流水线运行记录绑定。可查看归档至云效公共存储空间

如果使用 Packages 通用制品仓库管理制品文件,上传至 Packages 通用制品仓库并不会将制品归档,因此如果想实现多流水线之间的制品传递,需要在上传完 Packages 后对制品文件进行归档操作。

同时,流水线之间也可以自动触发,打开触发事件开关,可选择自动触发的事件。

图1. 配置 Flow 流水线源

配置完成后,点击保存运行,会下载源流水线的构建产物至工作区;若要将构建产物进行部署,需要将工作区的构建产物上传之后,才可选择部署。

12321

示例

场景说明:流水线 A 生成产物,流水线 B 获取构建产物后,发布至 ECS。

流水线 A 中进行 Java 构建,并对构建产物进行归档操作。

12

流水线 B 将 A 配置为流水线源,将下载到的构建产物重新归档,并部署至 ECS。

abc123

123123