新建构建任务
前提准备
(该操作仅使用代码化构建时执行)
编写YAML文件,并存放在代码仓库的“.cloudbuild”目录下。YAML文件编写方法可参考单任务YAML文件结构说明。
若YAML文件不存放在“.cloudbuild”目录,可通过“CB_BUILD_YAML_PATH”参数来指定YAML文件在代码仓中的路径。参数配置可参考配置构建任务参数 (可选操作)。
配置基本信息
- 新建项目。
- 新建代码仓库。
- 登录编译构建服务首页。
- 单击“新建任务”,进入配置“基本信息”页面,填写构建任务基本信息。使用图形化构建,参考表1;使用代码化构建,参考表2。
表1 图形化构建基本信息配置说明 参数项
描述
任务名称
任务的名称。
归属项目
任务所属项目。
源码源
- Repo:从代码托管服务拉取代码进行构建。
- 其他项目Repo:从其他项目的代码托管中拉取代码进行构建,请选择已有的项目、该项目下已经创建的源码仓库以及分支。
- 来自流水线:如果选择来自流水线,则只能通过流水线任务驱动执行,不能单独执行。
以下为第三方代码仓库,首次使用第三方代码仓,需新建服务扩展点,详情可参考新建服务扩展点(可选操作)。
- GitHub:拉取托管在GitHub上的代码进行构建。
- 通用Git:拉取托管在其他服务上的代码进行构建。
- GitCode:拉取托管在GitCode仓库上的代码进行构建。
- 码云:拉取托管在码云上的代码进行构建。
- Gerrit:拉取托管在Gerrit上的代码进行构建。
源码仓库
选择实际使用的源码仓库。
分支
选择仓库分支。
任务描述
对任务进行描述。
配置构建模板
- 单击“下一步”,进入“构建模板”页面。
- 选择构建模板。
- 图形化构建:选择适合自己项目的构建模板。
也可以选择“空白构建模板”,然后添加实际使用的构建步骤。如果预置模板不满足使用要求,也可以自定义模板。
- 代码化构建:选择“空白构建模板”。
使用代码化构建时,选择任何构建模板都不影响使用YAML构建。
- 图形化构建:选择适合自己项目的构建模板。
配置构建步骤
- 单击“下一步”,进入“构建步骤”页签。
- 配置构建步骤。
- 图形化构建:页面展示所选模板的默认步骤组合。单击构建步骤上的可根据实际需要添加构建步骤,每个构建步骤的配置指导请参考配置构建步骤。
若构建步骤中预置的工具版本无法满足使用需求,可以通过制作镜像并推送到SWR仓库自定义环境进行构建。
- 代码化构建:页面左上角单击“代码化”页签,则系统会在配置基本信息中配置的代码仓库及分支中,自动读取YAML文件,也可在此处对YAML文件进行修改。
如果在此处修改了YAML文件,则执行构建任务后,修改的内容会覆盖前提准备中的原YAML文件。
- 图形化构建:页面展示所选模板的默认步骤组合。单击构建步骤上的可根据实际需要添加构建步骤,每个构建步骤的配置指导请参考配置构建步骤。
- 配置完成后,单击“新建”,即可完成构建任务的创建。
配置构建任务参数 (可选操作)
编译构建服务默认生成codeBranch参数和系统预定义参数。用户可以根据需要修改codeBranch参数类型和参数值,并添加其他自定义参数。
系统预定义参数的参数值由系统自动生成,无需定义,可通过${参数名}引用。
配置指导如下:
- 切至“参数设置”页签,单击“新建参数”。
- 新建字符串类型参数:“类型”选择“字符串”,根据实际需要修改参数名、参数类型、参数值,以及是否设置为私密参数或者运行时设置。
- 新建枚举类型参数:填写参数名称,“类型”选择“枚举”,在弹出的对话框中,填写“可选取值”,每个参数值必须以英文分号结尾。设置完后,在“默认值”列单击下拉列表,为该参数设置一个默认值。
- 新建自增长类型参数:“类型”选择“自增长”,在“默认值”列设置参数。
- 使用参数示例如下。
- 使用自定义参数
- 系统预定义参数
- 配置执行参数。
编辑构建任务,选择“构建步骤”页签,配置构建步骤,在发布版本号文本框里输入“${BUILDNUMBER}”,保存构建任务。
参数名
说明
BUILDNUMBER
构建编号。格式为“日期.今日该构建任务执行次数”,例如:20200312.3。
TIMESTAMP
构建执行时间戳。例如:20190219191621。
INCREASENUM
该任务构建执行总次数,从1开始自增长,每执行1次加1。
PROJECT_ID
项目编号。
WORKSPACE
工作空间,源代码根目录。
GIT_TAG
代码tag名,使用tag构建时才有值。
COMMIT_ID_SHORTER
代码提交号的前8位。
COMMIT_ID
代码提交号。例如:b6192120acc67074990127864d3fecaf259b20f5。
- 执行构建任务。
- 本构建任务是Maven构建并且开通了制品仓库服务,所以可以在软件发布库里查到该任务的构建包。
进入软件发布库,找到刚构建的构建包,即可看到版本号就是系统的执行参数“BUILDNUMBER”的值。
- 配置执行参数。
配置构建任务执行计划(可选操作)
编译构建支持用户配置触发事件和定时执行任务,从而使得开发者达到项目持续集成的目的。
切换至“执行计划”页签,根据实际需要配置执行计划。
- 持续集成:将“提交代码触发执行”按钮设置为开启状态,构建任务所引用的源码源发生提交代码行为时,则会触发执行构建任务。
源码源为“Repo”时才能使用。
- 定时执行:将“启用定时执行”按钮设置为开启状态,选择需要构建任务定时执行的时间,并可按需开启是否“代码变化才执行”。
功能开启后,构建任务会按照您设定的执行日与时间定时执行。
若同时开启了“代码变化才执行”按钮,只有到达设定的执行日和时间,并且代码与上次构建有所变动时才会执行构建任务。
配置构建任务角色权限(可选操作)
编译构建支持为当前构建任务的各个角色配置权限,默认的用户角色类型及对构建任务的操作权限说明参考表3。
项目角色 |
编辑 |
删除 |
查看 |
执行 |
复制 |
禁用 |
权限管理 |
---|---|---|---|---|---|---|---|
任务创建者 |
√(*) |
√(*) |
√(*) |
√(*) |
√(*) |
√(*) |
√(*) |
项目创建者 |
√(*) |
√(*) |
√(*) |
√(*) |
√(*) |
√(*) |
√(*) |
项目经理 |
√ |
√ |
√ |
√ |
√ |
√ |
√ |
开发人员 |
√ |
√ |
√ |
√ |
√ |
√ |
× |
测试经理 |
× |
× |
√ |
× |
× |
× |
× |
测试人员 |
× |
× |
× |
× |
× |
× |
× |
参与者 |
× |
× |
× |
× |
× |
× |
× |
浏览者 |
× |
× |
√ |
× |
× |
× |
× |
- “√”表示默认有权限,“×”表示默认没有权限。
- 拥有“权限管理”权限的角色可以修改权限矩阵,但带“*”的权限不可修改。
- 项目创建者、项目经理和开发人员可以创建编译构建任务。
切换至“权限管理”页签,可根据实际需要配置不同角色的操作权限。
单击“同步项目权限”,可将当前构建任务的权限同步为项目权限。项目权限配置详情请参考配置项目级角色权限。
配置构建任务事件通知(可选操作)
编译构建支持给用户发送事件通知。任务构建成功、任务构建失败、任务被禁用、任务配置被更新和任务被删除时,可以给用户发送消息通知、邮件通知或者钉钉通知。
切换至“通知”页签,按照实际需要进行配置。
- 配置消息/邮件通知:分别选择“消息”通知和“邮件”通知进行设置。
默认所有事件都发送消息通知,构建任务失败发送邮件通知,请根据实际需要单击开启通知,单击关闭通知。
- 配置钉钉通知:
- 进入钉钉群,找到“群设置 > 智能群助手”,然后添加机器人(选择自定义类型)。
- 填写机器人名字,选择群组,完成安全设置(需勾选“加签”,并单击加签文本框旁的“复制”获取加签密钥)。
- 已阅读并同意相关协议后,单击“完成”,进入如下页面,单击Webhook文本框旁的“复制”获取钉钉Webhook地址。
- 选择“钉钉”通知,填写Webhook地址并单击“测试”确保Webhook地址可用。
- 勾选“启动加签密钥”并填写加签密钥、选择事件类型。
- 单击“保存”。
配置完成后,当任务运行结果满足事件类型设置集时,编译构建服务会发送消息到指定的钉钉群。
自定义构建任务模板(可选操作)
如果需将当前的构建任务保存为模板,以便后续创建构建任务时选择,则可以按照以下操作执行。
- 在构建任务历史页面,单击页面右上角,在下拉列表中选择“保存模板”。
- 在弹框中输入模板名称与模板描述,单击“保存”。
- 单击用户名,在下拉菜单中选择 。
- 选择导航栏 ,即可在列表中看到已保存的构建模板。
对已保存的构建模板,可以完成以下操作:
表4 管理自定义模板 操作
说明
搜索模板
在搜索框输入关键字,可搜索模板。
收藏模板
单击,可以收藏该模板。
删除模板
单击,在弹框中单击“确定”,即可删除该模板。
新建服务扩展点(可选操作)
当在配置基本信息阶段,源码源选择第三仓库时需要配置。
服务扩展点(Endpoint)是软件开发生产线的一种扩展插件,为软件开发生产线提供链接第三方服务的能力。
编译构建服务默认从代码托管服务拉取代码进行构建,同时也可使用服务扩展点连接第三方代码仓库获取项目源码。
- 使用第三方代码仓库可能出现网络不稳定或其他问题,具体使用体验取决于第三方代码仓库网络环境和服务状态。
- 建议使用代码托管的代码导入功能,将代码导入到代码托管,实现安全、稳定、高效下载与构建。
新建GitHub服务扩展点
GitHub连接可选择使用OAuth授权或使用AccessToken授权,可限制赋予编译构建服务对仓库的访问权限(可以拉取代码完成构建即可)。
同时可以随时删除连接或取消授权,可有效避免密码泄露风险。
- 单击“扩展点实例”右侧的“新建”。
- 在弹出的对话框中,配置如下参数。
参数名称
功能描述
连接名称
服务扩展点的名称,可自定义。
验证方式
- OAuth认证:需要登录GitHub账号进行手动授权。
- Access Token认证:按照如下方式获取GitHub的Access Token,填写此处。
- 登录GitHub,并打开设置页面。
- 单击“Developer settings”。
- 选择 。
- 验证登录账号。
- 填写Token描述并选择权限,选择私有仓库访问权限,单击“Generate token”生成Token。
- 复制生成的Token。
- 授权成功后,回到新建编译构建任务页面。
新建通用Git服务扩展点
- 单击“扩展点实例”右侧的“新建”。
- 在弹出的对话框中,配置如下参数。
参数名称
功能描述
连接名称
服务扩展点的名称,可自定义。
Git仓库Url
Git仓库的Url(https协议地址)。
用户名
Git仓库用户名。
密码或Access Token
Git仓库密码或Access Token。
- 单击“确定”。
新建GitCode服务扩展点
- 单击“扩展点实例”右侧的“新建”。
- 在弹出的对话框中,配置如下参数。
参数名称
功能描述
连接名称
服务扩展点的名称,可自定义。
Token
填写GitCode上获取的Token,获取方法如下:
- 登录GitCode。
- 单击页面右上角账号名称,选择“个人设置”。
- 单击 “+访问令牌”,填写令牌名称以及到期时间。
- 单击“新建访问令牌”,生成“你的个人访问令牌”,即Token。
- 单击,即可复制生成的Token。
说明:
- Token生成后,请及时保存,下次刷新页面将无法读取,需要重新生成新Token。
- 注意填写有效的Token描述信息,避免误删除导致构建失败。
- 无需使用时及时删除Token,避免信息泄露。
- 单击“确定”。
新建码云服务扩展点
码云连接可选择使用OAuth授权或使用AccessToken授权,可限制赋予编译构建服务对仓库的访问权限(可以拉取代码完成构建即可)。
同时可以随时删除连接或取消授权,可有效避免密码泄露风险。
- 单击“扩展点实例”右侧的“新建”。
- 在弹出的对话框中,配置如下参数。
参数名称
功能描述
连接名称
服务扩展点的名称,可自定义。
验证方式
- OAuth认证:需要登录码云账号进行手动授权。
- Access Token认证:按照如下方式获取码云的Access Token,填写此处。
- 登录码云,并打开设置页面。
- 单击 “私人令牌”,然后单击 “生成新令牌”。
- 验证登录账号,如已登录则进入下一步。
- 填写Token描述并选择权限,选择私有仓库访问权限,单击“提交”生成Token。
- 单击,即可复制生成的Token。
说明:- Token生成后,请及时保存,下次刷新页面将无法读取,需要重新生成新Token。
- 注意填写有效的Token描述信息,避免误删除导致构建失败。
- 无需使用时及时删除Token,避免信息泄露。
- 授权成功后,回到新建编译构建任务页面。
新建Gerrit服务扩展点
- 单击“扩展点实例”右侧的“新建”。
- 在弹出的对话框中,配置如下参数。
参数名称
功能描述
连接名称
服务扩展点的名称。
Gerrit地址
Gerrit仓库地址(https协议地址)。
用户名
Gerrit仓库用户名。
密码
Gerrit仓库密码。
- 单击“确定”。