检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
统会以build.yml文件作为构建脚本执行构建任务,使构建过程可追溯、可还原,安全可信。 本节以使用Maven构建为例,演示基于X86服务器和预置镜像使用代码化构建方式,上传软件包至软件包发布库和制作镜像推送至SWR仓库。 前提条件 已注册华为云并实名认证,如果还没有华为账号,请参考以下步骤创建。
如果您购买的CodeArts Build套餐、资源扩展、增值特性的到期日不同,可以将到期日统一设置到固定一个日期,便于日常管理和续费。 图2展示了用户将两个不同时间到期的资源,同时续费一个月,并设置“统一到期日”后的效果对比。 图2 统一到期日 更多关于统一到期日的规则请参见如何设置统一到期日。
CreateBuildJobScm 参数 参数类型 描述 branch String 代码分支 url String 代码仓地址 repo_id String repo的id web_url String 代码仓http地址 scm_type String 仓库类别,Repo、Github等 is_auto_build
资源类型 resource_spec_code String 资源规格 tips tips object 咨询 表4 tips 参数 参数类型 描述 summary Tips object 资讯 表5 Tips 参数 参数类型 描述 status Integer 状态 next_action
参数类型 描述 branch 否 String 代码分支 url 是 String 代码仓地址 repo_id 否 String repo的id web_url 否 String 代码仓http地址 scm_type 是 String 仓库类别,Repo、Github等 is_auto_build
类型 说明 image string 填写镜像地址,有以下两种格式。 cloudbuild@nodejs8.11.2:以cloudbuild开始,@作为分隔符,后面是CodeArts Build提供的默认镜像版本。 完整的swr镜像地址,例如:swr.example.example
参数类型 描述 branch 否 String 代码分支 url 是 String 代码仓地址 repo_id 否 String repo的id web_url 否 String 代码仓http地址 scm_type 是 String 仓库类别,Repo、Github等 is_auto_build
CreateBuildJobScm 参数 参数类型 描述 branch String 代码分支 url String 代码仓地址 repo_id String repo的id web_url String 代码仓http地址 scm_type String 仓库类别,Repo、Github等 is_auto_build
gitignore”,例如:Java。 初始化设置 勾选全部。 允许项目内人员访问仓库:选择后会自动将项目中的项目经理设为仓库管理员,开发人员设为仓库普通成员。当项目新增这两个角色时,也会自动同步到已经存在的仓库中。 允许生成README文件:可以通过编辑README文件,记录项目的架构、编写目的等信息,相当于对整个仓库的一种注释。
配置构建步骤并执行构建任务 配置“Npm构建”。 在命令编辑器里,npm run build命令前加“#”,新增zip -r ./nodeserver.zip ./命令,用来将代码打包成“nodeserver.zip”,如图1所示。其他参数保持默认即可。 图1 命令示例 按图2所示配置“上传软件包到软件发布库”。
is_modify Boolean 是否有修改任务权限 is_delete Boolean 是否有删除任务权限 is_view Boolean 是否有查看任务权限 is_execute Boolean 是否有执行任务权限 is_copy Boolean 是否有复制任务权限 is_forbidden
击右上角“编辑”。 在弹框中,将“类型”设置为“公开”,单击“确定”。 图1 编辑镜像 获取完整的镜像地址:单击复制镜像下载指令,其中,docker pull后面部分为镜像地址。 图形化构建 在配置构建步骤中,添加“使用SWR公共镜像”构建步骤,参考表1配置参数。 表1 使用SWR公共镜像参数说明
is_modify Boolean 是否有修改任务权限 is_delete Boolean 是否有删除任务权限 is_execute Boolean 是否有执行任务权限 is_copy Boolean 是否有复制任务权限 is_forbidden Boolean 是否有禁用任务权限 is_view
scope String 模板范围,自定义模板默认为custom description String 模板说明 tool_type String 构建工具类型,yaml构建还是action构建 intl_description Object intl说明 parameters Array
通过注册的方式托管到编译构建服务中,委托编译构建服务进行调度并执行构建任务。本实践我们通过“Maven构建”和“上传软件包到软件发布库”两个构建步骤来演示使用自定义执行机的构建场景。 使用Maven构建上传软件包和推送镜像到SWR(内置执行机/代码化构建) 编译构建服务支持通过
Build服务进行源代码编译构建之外的操作。 禁止使用sleep、usleep、read、timeout、yes、dd、while循环等命令长期(超过10分钟)占用服务器进程。 命名限制 限制项 说明 构建任务名称 支持中英文,数字,下划线“_”和连接符“-”。 字符长度范围为1~115。 构建步骤名称 支
**/*.class:当前目录下递归匹配所有的“.class”结尾的文件。 test/a??.java:匹配“test”目录下以“a”开头后跟两个字符的java文件。 **/test/**/XYZ*:递归匹配父目录为“test”文件是“XYZ”开头的所有文件,比如“abc/test/def/ghi/XYZ123”。
is_modify Boolean 是否有修改任务权限 is_delete Boolean 是否有删除任务权限 is_execute Boolean 是否有执行任务权限 is_copy Boolean 是否有复制任务权限 is_forbidden Boolean 是否有禁用任务权限 is_view
组织存在,但当前用户对该组织没有编辑权限,推送镜像时仍然会出现此错误,管理员可参考授权管理选择性为当前用户授权。 组织存在,且用户对该组织有编辑权限,那么请进入统一身份认证服务,检查该用户是不是在只读权限的用户组里,如果是,请移除该用户。 推送镜像提示组织数达到上限 错误日志 denied:
身份认证与访问控制 身份认证 用户访问CodeArts Build的方式有多种,包括CodeArts Build用户界面、API,无论访问方式封装成何种形式,其本质都是通过CodeArts Build提供的REST风格的API接口进行请求。 CodeArts Build的接口需要