使用自定义执行机执行Maven构建(自定义执行机/图形化构建)
应用场景
当编译构建服务提供的内置执行机构建环境不满足业务要求时,您可接入自行提供的计算资源,通过注册的方式托管到编译构建服务中,委托编译构建服务进行调度并执行构建任务。本实践我们通过“Maven构建”和“上传软件包到软件发布库”两个构建步骤来演示使用自定义执行机的构建场景。
本实践需要依赖使用的其他服务如下:
约束限制
- 需已具备CodeArts Artifact服务的操作权限,具体操作可参考授权使用CodeArts Artifact服务。
- 需已具备CodeArts Repo服务的操作权限,具体操作可参考授权使用CodeArts Repo服务。
操作流程
流程 |
说明 |
---|---|
为本实践新建项目。 |
|
为本实践新建所需的自定义执行机资源池。 |
|
为本实践新建存储代码的代码仓。 |
|
为本实践新建构建任务,包括“Maven构建”和“上传软件包到软件发布库”构建步骤。 |
|
为您介绍通过查看构建日志确认该实践的构建任务使用的执行机和在制品仓中查看上传的软件包。 |
新建项目
- 使用华为云账号登录华为云控制台页面。
- 单击页面左上角,在服务列表中选择 。
- 单击“立即使用”,进入CodeArts服务首页。
- 在首页单击“新建项目”,选用“Scrum”项目模板。
- 项目名称填写“build-bestpractice”,其他保持默认即可。
- 单击“确定”后,进入到“build-bestpractice”项目下。
新建自定义执行机资源池
- 在导航栏中单击用户名,选择“租户设置”。
- 选择 。
- 单击“新建资源池”,在弹出的窗口中参考表2配置参数后,单击“保存”。
- 单击新建的资源池名称“custom_pool”,进入到资源池配置页面。
- 单击“新建代理”,在弹出的窗口中,参考表3配置代理信息,其他参数项保持默认即可。
- 勾选协议,依次单击“生成命令”和“复制命令”。单击“关闭”。
图1 新建代理
- 根据“步骤三”提示,在弹性云服务器列表页,单击前提准备中购买的服务器所在行的“远程登录”按钮,执行6中复制的命令。
- 在代理列表页面,单击“刷新列表”,后台自动同步信息后,代理列表中会增加一条代理执行机信息。代理执行机的代理别名为“agent_test_custom-mwlye1NlLG”。
图2 代理执行机
新建并执行编译构建任务
- 在页面导航栏中选择 。
- 单击“新建任务”,根据表4填写参数信息,单击“下一步”。
表4 基本信息配置 参数
说明
任务名称
自定义任务名称,例如:custom_task。
代码源
选择“Repo”。拉取CodeArts Repo代码仓中的代码进行编译构建。
代码仓
选择新建CodeArts Repo代码仓中新建的代码仓库名称“custom_repo”。
默认分支
选择默认“master”即可。
任务描述
对该构建任务的描述。
- 选择“Maven”模板,单击“确定”,进入构建步骤配置页面。
- 参考配置“构建环境配置”步骤,其他参数保持默认即可,单击“保存并执行”。
表5 构建环境配置参数说明 参数
说明
执行主机
选择自定义执行。
选择代理资源池
在下拉框中选择新建自定义执行机资源池中新建的资源池“custom_pool”。
图4 构建环境配置
- 在弹出的窗口中单击“确定”,跳转到构建任务运行页面。
查看构建任务和构建结果
- 在构建日志中,控制台会滚动打印构建任务执行日志信息。如图5所示,使用的执行机为新建自定义执行机资源池中新建的代理资源池“custom_pool”下的执行机“agent_test_custom-mwlye1NlLG”,表示当前构建任务是在该代理执行机中运行的。
- 待构建任务执行完成后,每个构建步骤标记表示构建任务执行成功。
图6 构建任务执行成功
- 单击步骤日志的“上传软件包至软件发布库”,在日志中查看上传到软件发布库的路径为“/custom_task/20240620.19/”,如图7所示。
- 在导航栏选择“/custom_task/20240620.19/javaMavenDemo-1.0.jar”。
,文件路径为图8 软件包信息