云服务器内容精选

  • 配置流水线项目级策略 项目级策略是一种项目级别的资源,可应用于当前项目下所有流水线的准出条件。 访问CodeArts Pipeline首页,进入项目下流水线。 单击“策略”,进入项目级策略列表页面。 单击“新建策略”,进入“新建策略”页面,填写参数信息。 表4 项目级策略参数信息 参数项 说明 名称 策略名称,默认根据当前时间生成。支持输入中文、大小写英文字母、数字、“-”、“_”,长度不超过128个字符。 规则 选中的规则会在界面右侧展示,可对每条规则进行如下操作: 编辑:单击规则右上方“详情”,可查看规则详情,继续单击右上方“编辑”,可修改规则。 开关:单击规则右上方,可打开/关闭规则,关闭后,该规则在应用到流水线准出条件中会自动关闭并不做拦截校验。 说明: 单个策略中最多可配置20个规则。 单击“确定”,即可在策略列表生成一条项目级策略。 在策略列表页面,单击列表右侧,可编辑策略。 在策略列表页面,单击列表右侧,可查看策略,继续单击右上方“编辑”,可编辑策略。 在策略列表页面,单击列表右侧,选中“复制”,可基于当前策略快速复制一个策略。 在策略列表页面,单击列表右侧,选中“删除”,弹出删除警告对话框,确认后单击“删除”,可删除策略。 删除策略时,系统会提示当前有多少流水线引用了该策略,删除后相关流水线调度运行时会运行失败。 在策略列表页面,单击列表右侧,可以打开/关闭策略, 关闭策略时,如果策略有被引用,系统会提示当前有多少流水线引用了该策略,关闭后相关流水线调度运行时会忽略该策略中的准出条件。 在策略列表页面,单击页面右上方“租户策略”,打开“租户策略”侧滑框,可以查看、复制和继承租户级策略。 查看:单击操作列,可查看租户级策略,继续单击右上方“编辑”,可编辑租户级策略。 复制:单击操作列,可基于当前租户级策略复制一个项目级策略。 继承:单击操作列,可基于当前租户级策略继承一个项目级策略,通过继承生成的项目级策略,继承的规则实时和父租户级策略保持一致。
  • 编排流水线阶段 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,单击或“新建阶段”,可以为流水线添加新的阶段,添加完阶段后,可根据实际需要编辑、复制、删除、移动阶段、配置阶段准入类型。 表1 管理阶段 操作项 说明 编辑阶段 单击,弹出“编辑阶段”弹窗,可以配置阶段名称和阶段是否总是运行。 总是运行:选择“是”,表示流水线执行时,该阶段下的任务默认选中必须执行且不可取消。 总是运行:选择“否”,表示流水线执行时,该阶段下的任务默认选中但可以取消。 复制阶段 单击,可以复制流水线阶段。 删除阶段 单击,根据删除提示确认是否删除阶段。 排序阶段 单击不松开,可以移动阶段调整阶段顺序。 阶段准入 通过阶段准入校验,控制流水线阶段的执行。单击,弹出“准入设置”窗口,可以配置阶段准入类型。 自动:默认执行方式,流水线执行时自动进入下一阶段继续运行。 手动:流水线执行时需手动确认后才能进入下一阶段继续运行。 时间窗:流水线执行时需在配置好的时间段才能进入下一阶段继续执行。 准出条件 流水线服务提供基于规则和策略的准出条件管理能力,是指在流水线阶段中配置的用于自动化看护的质量指标卡点,通过配置规则和策略,来实现阶段准出校验,并最终控制流水线的执行。 规则:基于扩展插件的输出阈值,设置比较关系和阈值条件,供策略使用,并最终应用到流水线准出条件中,作为准出条件的判断依据。配置方法请参考配置流水线规则。 策略:策略是一系列规则的集合,每个规则对应了一个步骤插件的输出指标值的条件模板,通过预定义策略,可以很方便地在多条不同流水线中应用同样的准出条件。策略实行分层管理,可分为租户级策略和项目级策略。用户可根据需要将策略资源应用到流水线作为准出条件来控制流水线的执行,保障产品交付质量。 说明: 当前仅支持“标准策略准出条件”,可以选择当前项目或租户下创建好的策略。 流水线可以在各阶段单独设置准出条件,准出条件只对当前阶段有效。 同一阶段中可以配置多个不同的准出条件。 单击阶段下方“准出条件”,弹出“准出条件”侧滑框,将鼠标移动到准出条件卡片,单击“添加”。 填写准出条件名称,选择策略。 单击“确定”,即可添加一个准出条件。 阶段编排完成后,保存流水线。
  • 配置流水线钉钉通知 将流水线信息推送到钉钉。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“通知订阅”页面。 单击“第三方通知”下“钉钉”,根据需要填写通知信息,填写完成后即可激活通知。 图4 配置钉钉通知 表2 配置钉钉通知 操作项 说明 URL 填写钉钉机器人通知URL。 加签密钥 钉钉自定义机器人可以开启安全设置,若未使用加签,无需填写加签密钥。 事件类型 选择要通知的事件,可选择已完成、失败、暂停、挂起、忽略五种事件类型。 通知内容 选择要通知的内容,可选择流水线名称、流水线执行描述、执行人、触发信息、项目名称、执行时间、运行状态七种通知内容。 @user_id 填写要接受通知的飞书的user_id,多个user_id之间以逗号分隔。 配置完成后,保存流水线。
  • 配置流水线飞书通知 将流水线信息推送到飞书。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“通知订阅”页面。 单击“第三方通知”下“飞书”,根据需要填写通知信息,填写完成后即可激活通知。 图5 配置飞书通知 表3 配置飞书通知 操作项 说明 URL 填写飞书机器人通知URL。 事件类型 选择要通知的事件,可选择已完成、失败、暂停、挂起、忽略五种事件类型。 通知内容 选择要通知的内容,可选择流水线名称、流水线执行描述、执行人、触发信息、项目名称、执行时间、运行状态七种通知内容。 @user_id 填写要接受通知的飞书的user_id,多个user_id之间以逗号分隔。 加签密钥 飞书自定义机器人可以开启安全设置,若未使用加签,无需填写加签密钥。 配置完成后,保存流水线。
  • 配置流水线企业微信通知 将流水线信息推送到企业微信。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“通知订阅”页面。 单击“第三方通知”下“企业微信”,根据需要填写通知信息,填写完成后即可激活通知。 图3 配置企业微信通知 表1 配置企业微信通知 操作项 说明 URL 填写企业微信机器人通知URL。 事件类型 选择要通知的事件,可选择已完成、失败、暂停、挂起、忽略五种事件类型。 通知内容 选择要通知的内容,可选择流水线名称、流水线执行描述、执行人、触发信息、项目名称、执行时间、运行状态七种通知内容。 @user_id 填写要接受通知的企业微信的user_id,多个user_id之间以逗号分隔。 配置完成后,保存流水线。
  • 配置流水线站内 消息通知 通过服务动态的方式推送通知。流水线执行成功、执行失败、被删除以及配置被更新时,可以配置给创建人、执行人、收藏人发送服务动态。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“通知订阅”页面。 单击“系统消息”下“站内消息通知”,根据需要开启/关闭通知。 在流水线首页右上角单击,会弹出“通知”侧滑框,即可查看通知消息。 图1 配置服务动态通知 配置完成后,保存流水线。
  • 配置流水线邮件消息通知 通过邮件通知的方式推送通知。流水线执行成功、执行失败、被删除以及配置被更新时,可以配置给创建人、执行人、收藏人发送邮件。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“通知订阅”页面。 单击“系统消息”下“邮件通知”,根据需要开启/关闭通知。 图2 配置邮件通知 配置完成后,保存流水线。
  • 配置流水线自定义参数 介绍流水线自定义参数新建和配置。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“参数设置”页面。 单击参数列表下的“立即新建”(已存在自定义参数,则单击“新建参数”),填写参数信息。 表2 流水线自定义参数说明 参数信息 说明 名称 自定义参数名称,不可与系统预定义参数名称相同。支持大小写英文字母、数字、“_”,长度不超过128个字符。 类型 参数可选类型:字符串(默认类型)、自增长、枚举。 默认值 自定义参数的默认取值。 字符串:长度不超过8192个字符,可以为空。 自增长:长度不超过8192个字符。自增长类型参数如果被引用,全新执行一次后,下次执行时参数值末位如果是数字则会自动+1。 枚举:仅支持中文、大小写英文字母、数字、“-”、“_”、“,”、“.”、“/”,长度不超过8192个字符。 选择枚举类型后,在弹出的对话框中添加可选取值,添加完成后在“默认值”下拉框中选择一个默认值,支持输入关键词搜索过滤。 私密参数 参数为私密参数时,系统会将输入参数做加密存储,使用时解密,同时在运行日志里不可见。 运行时设置 打开“运行时设置”开关,在执行流水线时支持修改该参数的值。 参数描述 不超过512个字符。 单击“操作”列,可以新增参数;单击“操作”列,可以删除参数。 配置完成后,保存流水线。
  • 流水线参数应用示例 本文以通过流水线统一配置releaseversion参数并传递到构建任务为例,介绍流水线参数使用方法。 新建构建任务。 在“参数设置”页面添加releaseversion参数并设置好默认值,打开“运行时设置”。 图3 新建构建任务参数 在“构建步骤”页面,选择“上传软件包到软件发布库”,将“发布版本号”配置成引用参数形式。在参数输入框输入“$”符号后会自动出现参数列表,选择上一步已经新建好的releaseversion参数。 图4 引用构建任务参数 使用“$”符号引用通用参数组的参数时不会自动生成提示。 配置完成后,保存构建任务。 新建空白模板流水线,在流水线阶段添加一个新的任务,然后在该任务中添加“Build构建”插件并调用刚创建的构建任务,即可看到刚新建好的构建任务参数releaseversion。 图5 配置构建任务参数 将鼠标移动到releaseversion参数上,可以一键将该参数设置为流水线参数并能直接引用该参数;或直接单击“确定”,单击“参数设置”,切换到流水线“参数设置”页面,新建流水线参数releaseversion,类型可以根据需求选择自增长或字符串等,设置默认值并打开运行时设置。 图6 新建流水线参数 单击“任务编排”,切换至“任务编排”页面,编辑刚添加的构建任务,将流水线的releaseversion参数通过“$”符号引用到构建任务的releaseversion参数内。 图7 引用流水线参数 该处只显示构建任务中开启“运行时设置”的文本类型参数。 鼠标移至参数名称,可以快速将该参数设置为流水线参数并能直接引用该参数。 完成参数引用后,保存信息,然后单击“保存并执行”,弹出“执行配置”对话框,可查看“运行参数配置”。 运行时参数值默认为添加参数时为参数设置的默认值,可根据需要进行修改。流水线运行时在构建任务内使用的就是此时输入的参数值。 设置完参数,单击“执行”,开始使用配置的参数执行流水线。
  • 流水线系统预定义参数 表1 流水线系统预定义参数 参数信息 说明 PROJECT_ID 当前流水线所属项目ID。 PIPELINE_ID 当前流水线ID。 PIPELINE_NUMBER 流水线执行编号。 COMMIT_ID 执行时代码最后一次提交的ID。 COMMIT_ID_SHORT 执行时代码最后一次提交的短ID。 TIMESTAMP 流水线执行时间戳。例如:20211222124301。 PIPELINE_TRIGGER_TYPE 流水线触发类型。包括:Manual、Scheduler、RollBack以及WebHook类型(CreateTag、Note、Issue、MR、Push)。 PIPELINE_NAME 流水线名称。 REPO_URL 代码仓地址(HTTPS)。 EXECUTE_USER 执行人。 EXECUTE_USER_ID 执行人ID。 EXECUTE_USER_NAME 执行人名称。 EXECUTE_USER_NICKNAME 执行人昵称。 PASS_CONDITIONS_LINK 流水线执行详情链接。 PIPELINE_RUN_ID 流水线执行ID。 MERGE_ID 合并请求ID。 WEBHOOK_PAYLOAD Webhook请求负载信息。 Repo01_REPOSITORY_NAME 仓库名称。 Repo01_SOURCE_BRANCH 合并请求触发流水线时的仓库运行源分支名称。 Repo01_TARGET_BRANCH 仓库运行目标分支名称。 Repo01_TAG 仓库标签名称。 Repo01_COMMIT_ID 执行时代码最后一次提交的ID。 Repo01_COMMIT_ID_SHORT 执行时代码最后一次提交的短ID Repo01_REPO_URL 代码仓地址(HTTPS)。
  • 配置流水线并发策略 默认单条流水线最大执行并发数为5,超过并发数后新的触发忽略不执行。可以通过并发策略为单条流水线配置同时处于运行中和暂停状态的流水线最大实例个数,即并发数,更细粒度地为用户分配并发资源。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“执行计划”页面。 打开“并发策略”开关(默认关闭),设置并发数和超过并发后执行策略。 图6 配置并发策略 表3 配置并发策略 参数项 说明 并发个数 单条流水线最大执行并发数,受套餐和购买并发数限制。 超过并发后执行策略 超过并发数后可选择如下两种处理方式: 排队等待:超过并发数后新的触发排队等待执行,可进入流水线详情页查看排队记录。 单条流水线最多支持100条排队记录。 单条排队记录排队时长超过24小时后会被放弃执行。 排队记录支持手动取消排队,即放弃执行。 排队记录执行时,配置信息以入队时为准。 忽略不执行:超过并发数后新的触发忽略不执行。 配置完成后,保存流水线。
  • Webhook触发 通过Webhook触发,用户可以通过任意第三方系统触发流水线执行。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“执行计划”页面。 打开“Webhook”开关(默认关闭),参数说明如表2,保存流水线后即可生效。 图5 配置Webhook触发 表2 配置Webhook触发 参数项 说明 Webhook触发源 将该地址复制到第三方系统触发器,使用Post方法调用,即可运行流水线。 IAM 认证 启用IAM认证,需要将用户IAM Token加入接口请求头,调用示例如下: curl --header "Content-Type: application/json" --header 'x-auth-token: XXXX(IAM Token)' --request POST --data "{}" Webhook触发源 不启用IAM认证,调用示例如下: curl --header "Content-Type: application/json" --request POST --data "{}" Webhook触发源
  • 配置流水线抢占策略 同一条流水线存在多个运行实例时,新触发的运行实例会强行停止当前流水线中相同事件触发的其他所有运行实例。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“执行计划”页面。 打开“抢占策略”开关,选择抢占事件,保存流水线后即可生效。 图7 配置抢占策略 抢占策略当前只支持CodeArts Repo流水线源。 当前仅支持“MR ID”抢占事件,即抢占由同一个MR触发的流水线运行实例。 抢占事件触发后,将会停止当前流水线中满足抢占条件的所有运行中的流水线实例。 若当前流水线超并发,且不存在满足抢占条件的运行实例,则此次执行请求会按照并发策略来忽略或排队。
  • 配置流水线定时执行 配置流水线在指定的时间自动执行。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“执行计划”页面。 单击“定时任务”区域的“创建定时任务”,增加一个定时任务,打开“启用定时执行”开关(默认开启),配置如下信息: 图4 配置定时任务 表1 定时任务 参数项 说明 启用定时执行 选择是否开启定时执行。 执行日 选择执行日期。 时间段 选择执行时间段和时区。 间隔时间 设置间隔时间,即每间隔多长时间触发一次。 执行方案 选择定时执行的执行方案,也可新建执行方案,新建执行方案可参考配置执行方案。 最多可以设置10个定时任务。 单击右上角,可删除定时任务;单击右上角,可复制定时任务。 配置完成后,保存流水线。
  • 配置流水线事件触发 事件触发包括代码提交时触发、合并请求时触发、创建标签时触发。码云代码仓还支持Pull Request、新建issue、评论issue等其他事件。 访问CodeArts Pipeline首页。 在流水线列表页搜索目标流水线,单击操作列,选择“编辑”。 进入流水线“任务编排”页面,切换至“执行计划”页面,在“事件触发”勾选触发事件进行配置。 代码提交时触发(代码托管/码云) 监听代码提交触发事件,可以组合分支和具体路径的包含/排除范围,当在关联的代码仓库中有代码提交且所在的分支和变更文件的路径满足包含/排除策略,会自动触发关联流水线执行。 分支过滤:可以通过设置包含或排除分支,来监听触发事件所在的目标分支。 路径过滤:可以通过设置包含或排除路径,来监听触发事件所在的变更文件路径。 图1 配置代码提交时触发 合并请求时触发(代码托管/码云) 监听合并请求触发事件,可以组合分支和具体路径的包含/排除范围,对新建、合并、更新和重新打开事件设置触发策略,当在关联的代码仓库中触发合并请求事件且分支满足包含/排除策略,会自动触发关联流水线执行。 事件说明: 新建:合并请求创建时触发。 合并:合并请求合入时触发,该事件会同时触发代码提交事件。 重新打开:合并请求重新打开时触发。 更新:合并请求内容更新、设置更新或者源代码更新时触发,打开“仅代码更新触发”,则仅源代码更新时触发。 分支说明: 分支过滤:可以通过设置包含或排除分支,来监听触发事件所在的目标分支。 路径过滤:可以通过设置包含或排除路径,来监听触发事件所在的变更文件路径。 图2 配置合并请求时触发 创建标签时触发(代码托管) 监听创建标签触发事件,可以设置标签包含/排除范围,当在关联的代码仓库创建标签且满足标签包含/排除策略,会自动触发关联流水线执行。 图3 配置创建标签时触发 其他事件(码云) 评论Pull Request:评论Pull Request时触发流水线执行。 新建issue:新建issue时触发流水线运行。 评论issue:评论issue时触发流水线运行。 除了上述事件外,码云代码仓还支持开启事件触发成功后自动评论。 先匹配分支,再匹配路径,都匹配成功,则触发流水线。 路径排除优先于路径包含,即先匹配排除的路径,如果变更文件没有全部在排除范围内,则继续匹配包含的路径。若未配置包含路径,则匹配成功,触发流水线;若配置了包含路径,并且变更文件在路径排除范围外有任意一个在包含范围内,则匹配成功,触发流水线。 标签排除优先于标签包含,即标签同时在包含和排除中时,则匹配失败,不触发流水线。 路径匹配范围:单次提交的前300个变更文件,变更文件数超过300建议拆分。 配置完成后,保存流水线。