云服务器内容精选

  • 代码化构建(单仓下载) 参考以下代码示例,修改在创建代码化构建使用的YAML文件中的PRE_BUILD部分代码信息。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 version: 2.0 # 必须是2.0 steps: PRE_BUILD: - checkout: name: checkout inputs: scm: codehub # 代码来源:仅支持Repo url: xxxxxxxxx # 拉取代码的ssh地址。 branch: ${codeBranch} # 任何时候都必填,支持参数化 commit: ${commitId} lfs: true submodule: true depth: 100 tag: ${tag} path: test 表2 单仓下载代码示例参数说明 参数 类型 说明 scm string 填写代码源:当前只支持Repo,如果yaml文件中没配置,则使用构建任务配置的代码仓信息。 默认值:codehub。 url string 填写拉取代码的代码仓ssh地址。 branch string 拉取的代码分支。 支持参数化,可使用${codeBranch}调用。 commit string 可选参数。指定commitId构建时,填写拉取的commitId。 支持参数化,可使用${commitId}调用。 tag string 可选参数。指定tag构建时,填写拉取的tag。 支持参数化,可使用${tag}调用。如果同时指定commitId和tag,优先执行commitId构建。 depth int 可选参数。浅克隆深度:当选择commitId构建时,depth必须大于等于commitId所在深度。 默认值:1。 submodule bool 可选参数。配置是否拉取子模块。 true:拉取。 false:不拉取。 默认值:false。 lfs bool 可选参数。配置是否开启git lfs。 true:开启。 false:不开启。 构建默认不拉取音视频、图像等大型文件,开启git lfs后,构建将会全量拉取文件。默认值:false。 path string 可选参数。clone的子路径:代码将会下载到子目录下。
  • 图形化构建 可选择使用指定代码仓库Tag或CommitID构建,同时可选择开启子模块(submodules)自动更新与Git LFS。 预置“代码下载配置”步骤,参考表1配置参数。 表1 代码下载配置参数说明 参数 说明 使用指定代码仓库Tag或CommitID构建 配置执行构建任务时是否指定Tag构建或CommitID构建。 不指定:拉取全部代码进行构建。 指定Tag构建:仅拉取指定Tag的代码进行构建。执行构建任务时需在弹框中输入Tag。 Tag是指代码仓库中的标签。如果代码源选择的是Repo,关于如何创建Tag可参见标签管理。如果代码源使用的是第三方代码仓,需在第三方代码仓中创建标签。 指定CommitID构建:仅拉取指定CommitID的代码进行构建。执行构建任务时需在弹框中输入CommitID。 CommitID是指提交代码时生成的编号。以Repo代码仓为例,CommitID在代码仓库中显示如图1。 图1 CommitID 克隆深度 可选参数。 克隆深度是指距离最近一次提交的提交次数,该值越大,检出代码的深度越深。深度为正整数,推荐最大深度为25。 例如:克隆深度5就表示只克隆最新5次提交记录以及提交之后的最新内容,不克隆历史提交。 子模块(submodules)自动更新 子模块(submodule)是Git为管理仓库共用而衍生出的一个工具,通过子模块用户可以将公共仓库作为子目录包含到用户的仓库中,并能够双向同步该公共仓库的代码,借助子模块用户能将公共仓库隔离、复用,能随时拉取最新代码以及对它提交修复,能大大提高团队效率。更多详情请参考子模块管理(Git Submodule操作)。 开启:当代码仓库存在子模块时,系统在构建时会自动拉取子模块仓库的代码。 不开启:系统不会自动拉取子模块仓库的代码。 开启Git LFS 根据需要选择是否开启“Git LFS”,构建默认不拉取音视频、图像等大型文件,开启“Git LFS”后,构建将会全量拉取文件。
  • 代码化构建(manifest多仓下载) 在安卓、鸿蒙等场景下,一次构建需要同时集成数百甚至上千个代码仓,多个代码仓的集成下载效率至关重要。 编译构建集成Repo下载工具,用户只需进行简单配置即可实现多个代码仓的联动集成。当前支持仅Repo代码仓。 参考以下代码示例,修改在创建代码化构建使用的YAML文件中的PRE_BUILD部分代码信息。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 version: 2.0 # 必须是2.0 steps: PRE_BUILD: - manifest_checkout: name: "manifest" inputs: manifest_url: "https://example.example.example.example.example.com/xx/manifest.git" manifest_branch: "master" manifest_file: "default.xml" path: "dir/dir02" repo_url: "https://example.example.example.example.example.com/xx/git-repo.git" repo_branch: "master" username: "someone" password: "${PASSWD}" 表3 manifest多仓下载代码示例参数说明 参数 类型 说明 name string 可选参数。填写步骤名称。默认值为manifest_checkout。 manifest_url string 填写manifest仓地址,包含xml文件的仓库。 manifest_branch string 可选参数。填写manifest分支或revision。默认值为“HEAD”。 manifest_file string 可选参数。manifest文件路径。默认值为“default.xml”。 path string 可选参数。自定义manifest所有子仓下载路径,为工作目录的相对路径 路径不能以“/”开头,不能包含“.”。默认为工作目录。 repo_url string 可选参数。填写repo仓库地址。默认值为“https://gerrit.googlesource.com/git-repo”。 repo_branch string 可选参数。填写repo仓库分支。默认值为“stable”。 username string 可选参数。填写下载仓库时使用的用户名,当下载非公开仓库时需填写。 password string 可选参数。填写下载仓库时使用的https密码,下载非公开仓库时需填写。 manifest_file中定义的多个仓库,必须为同一种代码源。 manifest_url与manifest_file必须为同一种代码源;如果为非公开仓库,username&password应该有下载权限。 repo_url对应的repo仓库,需要有下载权限(仓库开源,或者仓库私有但配置了账号密码)。 以上非必填的参数,如果配置的值为空,则使用默认值。 建议在使用非公开仓库时,用户名密码通过构建的私密参数进行配置,详情参考配置构建任务参数。 该功能目前仅支持北京四区域使用,其余区域后续上线。
  • 图形化构建 CodeArts Build预置了“构建环境配置”步骤,参考表2配置参数。 表2 构建环境配置参数说明 参数 说明 构建环境主机类型 X86服务器、鲲鹏(ARM)服务器。 说明: 在不同芯片架构上运行的软件,需要选择对应的环境主机。如软件最终在鲲鹏服务器上运行,则选择鲲鹏服务器。 执行主机 选择用来执行编译构建任务的计算资源。在编译构建服务中,该计算资源为虚拟机。执行主机包括内置执行机和自定义执行机。 内置执行机:编译构建服务自身提供的执行主机,用户无需配置即可开箱即用。执行机默认规格为2U8G。 自定义执行机:用户自行提供表1的计算资源,通过注册的方式托管到编译构建服务中,通过编译构建服务进行调度并执行构建任务。 可根据实际情况选择内置执行机或自定义执行机,自定义执行机为在资源池中添加的代理执行机,具体自定义操作可参考资源池管理。 宿主机目录与容器目录映射 配置自定义执行机的目录和容器的目录映射,配置映射后,可将自定义执行机中的依赖项等文件挂载到容器中执行构建。当执行主机选择自定义执行时需要配置。 例如:宿主机目录填写“/home”,容器目录填写“/opt”,就会把执行机本地“/home”目录下的内容,挂载到容器内的“/opt”目录下。
  • 代码化构建 参考以下构建环境配置代码示例,修改在创建代码化构建使用的YAML文件中的env部分代码信息。 1 2 3 4 5 6 7 version: 2.0 # 必须是2.0,该版本号必填且唯一 env: # 定义构建环境信息。非必填,如果不填写,默认使用X86 resource: type:docker # 资源池类型:docker或custom,其中docker表示使用默认执行机,custom表示使用自定义执行机 arch:X86 # 构建环境主机类型:X86或ARM class:8U16G # 规格:2U8G、4U8G、8U16G、16U32G或16U64G,当type为custom时无需填写该参数 pool:Mydocker #资源池名称,当type为custom时需要填写该参数 参考以下BuildSpace代码示例,在创建代码化构建使用的YAML文件中添加以下代码信息。 可使用的环境为自定义执行机、构建并发包和构建加速包L3。 version: 2.0 buildspace: #表示使用BuildSpace fixed: true path: kk clean: true clean_exclude: - cache #排除的具体路径 - aa #排除的具体路径 - bb #排除的具体路径 表3 BuildSpace代码示例参数说明 参数 类型 说明 fixed string 可选参数。 在编译构建服务中,默认每一次构建都会使用一个空白的且随机的目录(比如/devcloud/ws/sMMM/workspace/j_X/)作为此次构建的根目录,这个根目录所代表的空间称为BuildSpace。 BuildSpace的路径默认是随机的,即使是同一个项目的不同构建任务的BuildSpace也会被随机分配。 但是在某些场景下固定一个BuildSpace的路径是有必要的,因此编译构建服务支持配置BuildSpace,以固定构建执行目录。 true:使用固定路径。 false:不使用固定路径。 默认值:false。 path string 可选参数。 当使用固定路径时,路径为:/opt/cloud/slavespace/usr1/+"${domainId}"+/。配置path参数,表示在前面的固定路径基础上拼接路径。 例如:“path”配置路径为“kk”,那么固定路径为:/opt/cloud/slavespace/usr1/+"${domainId}"+/kk。 clean string 可选参数。 true:需要清理固定路径。即路径是固定的,但是每次执行完会清理路径下的文件。 false:不清理固定路径。但是工作空间可存储的容量是有限的,当文件容量达到工作空间上限后,需要手动清理工作空间(clean配置为true即可)。 说明: 如果未配置清理固定路径,当文件容量达到工作空间上限后,会自动清理当前租户下的固定路径中所有文件。 工作空间指的是用户自定义的执行机的规格。 默认值:true。 clean_exclude string 可选参数。配置后表示使用路径清理,但是排除配置的路径。仅支持指定固定路径下的一级文件夹。