- 最新动态
- 功能总览
- 产品介绍
- 计费说明
- 快速入门
-
用户指南
- 编译构建服务(CodeArts Build)使用流程
- 购买并授权使用CodeArts Build
- 配置CodeArts Build项目级角色权限
- 新建构建任务
-
配置构建任务
- 构建任务基础配置
- 选择构建步骤
-
配置构建步骤
- Maven构建
- Android构建
- Npm构建
- Gradle构建
- Yarn构建
- gulp构建
- Grunt构建
- mono构建
- PHP构建
- SetupTool构建
- PyInstaller构建
- 使用shell命令构建
- Gnu-arm构建
- Msbuild构建
- CMake构建
- Ant构建
- Kotlin构建
- Go语言构建
- Ionic Android App构建
- 构建Android快应用
- GFortran构建
- Sbt构建
- Grails构建
- Bazel构建
- Flutter构建
- HarmonyOS构建
- 构建方舟编译器
- 通过Docker命令操作镜像
- 生成单元测试报告
- 自定义构建环境
- 使用自定义环境构建
- 下载软件发布库中的软件包
- 上传软件包到软件发布库
- 上传文件到OBS
- 配置构建任务参数
- 配置构建任务执行计划
- 配置构建任务角色权限
- 配置构建任务事件通知
- 执行构建任务
- 查看构建任务
- 加速构建任务
- 管理构建任务
- 查询审计日志
- 参考
- 旧版手册页面
-
最佳实践
- CodeArts Build最佳实践汇总
- 基于Maven构建产物制作Docker镜像并发布到镜像仓(内置执行机/图形化构建)
- 使用Maven构建上传软件包至私有依赖库(内置执行机/图形化构建)
- 使用Maven构建实现私有依赖包的上传及下载引用(内置执行机/图形化构建)
- 使用NPM构建上传软件包至软件发布库(内置执行机/图形化构建)
- 使用自定义执行机执行Maven构建(自定义执行机/图形化构建)
- 使用Maven构建上传软件包和推送镜像到SWR(内置执行机/代码化构建)
- 使用Maven构建执行多任务构建工程(内置执行机/代码化构建)
- 基于私有依赖库使用Maven构建并上传软件包(内置执行机/图形化构建)
- 使用自定义构建环境执行构建任务(内置执行机/图形化构建)
- 对C/C++构建工程进行构建加速(内置执行机/图形化构建)
- HE2E DevOps实践:构建应用部分
-
API参考
- 使用前必读
- API概览
- 如何调用API
-
编译构建API
- 租户相关
- 镜像模板
-
构建任务管理
- 获取构建任务的角色权限矩阵信息
- 获取任务权限矩阵
- 查看用户全部的构建任务列表
- 查看项目下任务名是否存在
- 禁用任务
- 查看构建任务构建信息
- 获取通知信息
- 查看任务是否在构建
- 删除任务
- 编辑页获取参数类型的接口
- 获取编译构建默认参数
- 查询任务是否已禁用
- 获取构建任务配置的对比差异
- 设置回收站中的任务保留时间
- 查看回收站中删除的构建任务列表
- 删除回收站中的任务
- 清空回收站中的任务
- 恢复回收站中的任务
- 检查webhook地址参数
- 获取当前项目默认角色权限矩阵信息
- 获取修改历史
- 复制任务名
- 查看系统预定义参数
- 停止构建任务v1
- 检查任务数量是否上限
- 执行构建
- 创建构建任务v1
- 更新构建任务v1
- 复制构建任务
- 查询项目任务列表
- 获取构建任务详情v1
- 查询任务状态
- 流水线查看构建任务信息
- 详情页获取构建参数
- 构建记录
- 构建报告
- 模板管理
- 文件管理
- 编译构建(旧)
- 编译构建(待下线)
- 应用示例
- 附录
- 修订记录
- 场景代码示例
-
常见问题
- 通用构建问题
-
Maven构建
- 执行Maven构建时,提示未开通私有依赖仓
- 执行Maven构建时,提示license信息检查不通过
- 使用maven deploy命令上传包失败
- 执行Maven构建时,提示找不到pom文件
- 执行Maven构建时,提示找不到package/symbol
- 使用exec-maven-plugin插件实现Maven和npm混合编译
- 执行Maven构建时,多个子项目和父项目之间引用报错
- 如何配置及清理Maven构建缓存
- 如何查找Maven构建中正确的构建包路径
- 如何使用jib-maven-plugin插件构建Maven工程制作镜像
- 使用Maven构建时,代码更新后构建出来的包还是旧的
- 使用Maven构建时,Maven组件下载缓慢
- Android构建
- Gradle构建
- Msbuild构建
-
Npm构建
- 执行Npm构建时,报错提示JavaScript heap out of memory
- 执行Npm构建时,报错提示Unexpected end of JSON ...
- 执行Npm构建时,报错提示enoent ENOENT: no such file or directory
- 执行Npm构建时,报错提示Module not found: Error: Can't resolve ...
- 执行Npm构建失败,但不显示错误日志
- 执行Npm构建时,报错提示npm cb() never called
- 执行Npm构建时,报错提示gyp ERR! stack Error: EACCES: permission denied
- 执行Npm构建时,报错提示eslint: error 'CLODOP' is not defined
- 执行Npm构建时,报错提示node-sass下载失败
- 执行Npm构建时,报错提示error: could not write config file
- Npm构建耗时且安装依赖缓慢
- 执行Npm构建时,报错提示找不到依赖版本
- 镜像问题
- 视频帮助
- 文档下载
- 通用参考
链接复制成功!
通过Docker命令操作镜像
图形化构建
在配置构建步骤中,添加“执行Docker命令”构建步骤,参考表1配置参数。
参数 |
说明 |
---|---|
步骤显示名称 |
构建步骤的名称,可自定义修改。
|
工具版本 |
根据用户实际开发环境的需要,选择对应的工具版本。 CodeArts Build支持的工具版本,可查看构建工具版本。若当前的工具版本不满足您的使用要求,您可以自定义构建环境。 |
命令 |
单击“添加”,新增一条命令行,请根据需要选择并配置命令。CodeArts Build支持的Docker命令可参考编译构建支持的Docker命令。 可通过拖动命令调整命令执行顺序。 |
失败后是否继续运行 |
当前步骤执行失败后是否继续执行下一个步骤,根据实际使用场景选择是或否。 |
代码化构建
参考以下代码示例,修改在创建代码化构建使用的YAML文件中的BUILD部分代码信息。
1 2 3 4 5 6 7 8 |
version: 2.0 # 必须是2.0 steps: BUILD: - docker: inputs: command: | docker pull swr.xx-xxxxx-x.myxxcloud.com/codeci/dockerindocker:dockerindocker18.09-1.3.2 ignore_fail: true |
参数 |
类型 |
说明 |
---|---|---|
command |
string |
执行命令,每个命令一行。支持的docker命令可参考编译构建支持的Docker命令。 |
ignore_fail |
string |
用于控制当前步骤执行失败后是否继续执行下一个步骤。
|
编译构建支持的Docker命令
- docker login:登录docker仓库。
用法:docker login [options] [server]
options填写方法如下表,server为docker仓库地址。参数
对应短名称
说明
--password
-p
登录仓库的用户密码。
--username
-u
登录仓库的用户名。
--password
-stdin
从标准输入获取用户密码。
示例:docker login -u jack -p 12345 mydocker-registry.com
该示例表示使用jack用户远程登录地址为“mydocker-registry.com”的仓库,密码为“12345”。
高级用法
从文件里获取密码:cat ~/my_password.txt | docker login --username jack --password-stdin
- docker build:通过Dockerfile或者上下文制作镜像。上下文可以是构建执行所在的本地路径“Path”,也可以是远程URL,如Git库、tarball或文本文件等,还可以是“-”。
用法:docker build [options] Path | URL | -
options填写方法如下表。Path/URL/-为上下文来源。参数
对应短名称
说明
--file
-f
Dockerfile文件路径,默认为“./Dockerfile”。
--tag
-t
“镜像名:标签”格式。
示例:docker build -t mydocker-registry.com/org/alpine:1.0 -f ./Dockerfile .
该示例表示使用当前目录且标签为“mydocker-registry.com/org/alpine:1.0”的Dockerfile制作镜像。
- docker push:推送镜像到指定的地址。
用法:docker push [options] name[:tag]
示例:docker push mydocker-registry.com/org/alpine:1.0
该示例表示将“mydocker-registry.com/org/alpine”镜像的1.0版本推送到远程仓库。
- docker pull:从镜像仓库下载镜像到本地。
用法:docker pull [options] name[:tag|@digest]
options填写方法如下表。参数
对应短名称
说明
--all-tags
-a
下载镜像仓库所有标识tag的镜像。
示例:docker pull mydocker-registry.com/org/alpine:1.0
该示例表示从远程仓库拉取版本号为1.0的mydocker-registry.com/org/alpine镜像。
- docker tag:修改镜像的标签。
用法:docker tag source_image[:tag] target_image[:tag]
其中source_image[:tag]表示需要修改标签的镜像,target_image[:tag]表示目标镜像。
示例:docker tag mydocker-registry.com/org/alpine:1.0 mydocker-registry/neworg/alpine:2.0
该示例表示,将“mydocker-registry.com/org/alpine”镜像的标签从“1.0”改为“2.0”。
- docker save:保存一个或者多个镜像到tar类型的文件,默认是标准输出流。
用法:docker save [options] image [image ...]
options填写方法如下表。参数
对应短名称
说明
--output
-o
写文件,非使用标准输出。
示例:docker save -o alpine.tar mydocker-registry.com/org/alpine:1.0 mydocker-registry.com/org/alpine:2.0
该示例表示将mydocker-registry.com/org/alpine:1.0镜像和mydocker-registry.com/org/alpine:2.0镜像打包到alpine.tar。
- docker logout:从镜像仓库登出。
用法:docker logout [server]
示例:docker logout mydocker-registry.com
该示例表示登出地址为mydocker-registry.com的镜像仓。