检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
在CCE中安装部署Jenkins 在CCE中安装部署Jenkins方案概述 资源和成本规划 实施步骤 父主题: DevOps
获取构建记录的构建脚本 功能介绍 获取构建记录的构建脚本 调用方法 请参见如何调用API。 URI GET /v1/record/{record_id}/build-script 表1 路径参数 参数 是否必选 参数类型 描述 record_id 是 String 记录ID,36位数字、小写字母、'-'组组合。
开通自动续费后,还可以手动续费该CodeArts Build套餐。手动续费后,自动续费仍然有效,在新的到期时间前的第7天开始扣款。 自动续费的到期前7日自动扣款属于系统默认配置,您也可以根据需要修改此扣款日,如到期前6日、到期前5日等等。 更多关于自动续费的规则介绍请参见自动续费规则说明。 前提条件 请确认包年/包月CodeArts
Jenkins Master安装部署 Jenkins界面中的词条可能因版本不同而存在一些差异,例如中英文不同等,本文中的截图仅供您参考。
如果您选择单Master安装Jenkins,执行完毕Jenkins Master安装部署中的操作后已完成,可直接进行流水线构建,请参见使用Jenkins构建流水线。
使用代码化构建时,选择任何构建模板都不影响使用YAML构建。 配置构建步骤 在“构建步骤”页面左上角单击“代码化”页签,系统会从配置构建任务基本信息中配置的代码仓库及分支中,自动读取YAML文件。 您可在此处参考配置构建任务中“代码化构建”部分的代码示例对YAML文件进行修改。如
例如,shell脚本(文本文件)描述如何自动执行command命令,AOS模板也一样,用来描述各种云对象的创建、销毁等流程。 以Shell脚本为例,其执行逻辑如下: Shell脚本特点大致为: 脚本是一个文本文件。 如果脚本写的好,可以重复执行。
图1 K8s安装Jenkins架构 操作流程 Jenkins Master安装部署。 Jenkins Master使用容器化镜像部署在CCE集群中。 Jenkins Agent配置。
编译构建服务支持通过yaml文件配置构建脚本,用户可以将构建时需要配置的构建环境、构建参数、构建命令、构建步骤等操作,通过yaml语法编写成build.yml文件实现,并且将build.yml文件和被构建的代码一起存储到代码仓库。执行构建任务时,系统会以build.yml文件作为构建脚本执行构建任务
基于弹性云服务器安装及部署Jenkins 准备工作 在安装Jenkins之前,需要购买弹性云服务器(推荐配置:4GB+内存,40GB+硬盘),操作系统选择CentOS 7.6。同时购买弹性公网IP,绑定到购买的弹性云服务器上。
Jenkins安装与配置 部署jenkins.war 删除tomcat-tomcat8/webapps/ 里面所有项目文件 rm -rf /root/servers/jenkins-tomcat8/webapps/* 复制jenkins.war到/root/servers/jenkins-tomcat8
GitLab自动触发Jenkins构建 GitLab触发Jenkins构建,有以下两种方式: 方式一:通过配置好的Webhook来Push events,触发Jenkins构建任务。 方式二:修改构建配置指定分支的文件来Push events,触发Jenkins构建任务。
保持默认“master”即可。 任务描述 对该构建任务的描述。 单击“下一步”,选择“Maven”模板。单击“确定”,进入构建步骤配置页面。 单击“代码化”页签,会自动加载“Repo01”代码仓中的构建运行脚本。 单击“保存并执行”,在弹出的窗口中单击“确定”即可跳转到构建任务运行页面。 查看编译构建结果 “
编译构建服务支持通过yaml文件配置构建脚本,用户可以将构建时需要配置的构建环境、构建参数、构建命令、构建步骤等操作,通过yaml语法编写成build.yml文件实现,并且将build.yml文件和被构建的代码一起存储到代码仓库。执行构建任务时,系统会以build.yml文件作为构建脚本执行构建任务,使构建过程可追溯、可还原,安全可信。
使用Ant构建 使用Ant构建可以编译、测试和部署Java项目。 图形化构建 在配置构建步骤中,添加“Ant构建”构建步骤,参考表1配置参数。 表1 Ant构建参数说明 参数 说明 步骤显示名称 构建步骤的名称,可自定义修改。 支持中文、英文、数字、“-”、“_”、英文逗号、英文分号、英文冒号、“
Jenkins流水线支持多组件按照依赖顺序部署 概述 前提条件 操作步骤
任务创建完成,自动跳转至构建步骤配置页面。 在“构建步骤”页签,单击“图形化”,单击左侧“点击添加构建步骤”,添加“Maven构建”,参数保持默认即可。 单击“添加步骤”,在右侧区域“容器类”页签中,单击“制作镜像并推送到SWR仓库”所在行的“添加”,按照图4配置参数。 其中“组
使用Kotlin构建 使用Kotlin构建可以编译、测试和部署项目。 图形化构建 在配置构建步骤中,添加“Kotlin构建”构建步骤,参考表1配置参数。 表1 Kotlin构建参数说明 参数 说明 步骤显示名称 构建步骤的名称,可自定义修改。 支持中文、英文、数字、“-”、“_”、英文逗号、英文分号、英文冒号、“
Gitlab自动触发Jenkins构建 Gitlab触发Jenkins构建有以下两种方式: 通过配置好的Webhook来Push events,触发Jenkins构建任务。 修改构建配置指定分支的文件来Push events,触发Jenkins构建任务。
执行Npm构建失败,但不显示错误日志 问题现象 Npm构建失败,但不显示错误日志,异常信息如下: 原因分析 在构建脚本中,设置了出现错误时,直接退出构建。 处理方法 检查构建脚本中对错误情况的处理,删除“process.exit(1)”等可能导致构建出错时直接退出的情况。 父主题: Npm构建
使用PyInstaller构建 使用PyInstaller工具可以将Python脚本打包成独立的可执行文件。 图形化构建 在配置构建步骤中,添加“PyInstaller构建”构建步骤,参考表1配置参数。 表1 PyInstaller构建参数说明 参数 说明 步骤显示名称 构建步骤的名称,可自定义修改。
编译构建服务支持通过yaml文件配置构建脚本,用户可以将构建时需要配置的构建环境、构建参数、构建命令、构建步骤等操作,通过yaml语法编写成build.yml文件实现,并且将build.yml文件和被构建的代码一起存储到代码仓库。执行构建任务时,系统会以build.yml文件作为构建脚本执行构建任务
flow下的jobs子节点有所区别,配置时请注意缩进。 job:构建任务名称,可自定义。 build_ref:该构建任务在构建过程中需要运行的加速构建脚本。 worker:指定为16vCPU的倍数,例如2就代表使用了32vCPU进行加速。 配置示例1:依赖解析模式 获取json文件。
由于在“参数设置”页签中“codeBranch”配置的默认值为“master”,因此本次设置的结果是当master有代码变更时自动触发构建。 验证配置结果:修改项目代码并提交至master,即可查看构建任务是否自动执行。 设置定时执行任务 为了防止问题代码进入生产环境,确保应用总是处于可部署的状态,团队建议对应用进行持续不断的验证。
构建拉取Repo代码时,存在“.gitmodules”文件且确认配置正确,但是没有去拉取子模块。 原因分析 此问题一般为没开启子模块自动更新。 处理办法 编辑构建任务,选择“代码下载配置”构建步骤,将“子模块(submodules)自动更新”开关打开。 父主题: 通用构建问题
华北-北京一,华北-北京四,华东-上海一,华东-上海二,华南-广州,华南-深圳,西南-贵阳一 源码源配置 工作流配置 模板配置工作流:提供系统内置构建模板和用户自定义模板功能。 图形化配置工作流:提供基于界面化的插件直接配置工作流的能力。 支持区域: 华北-北京一,华北-北京四,华东-上海一,华东-上
使用HarmonyOS构建 使用Hvigor进行编译,测试和部署项目。 使用Hvigor构建的执行机规格需4U8G及以上。 图形化构建 在配置构建步骤中,添加“HarmonyOS构建”构建步骤,参考表1配置参数。 表1 HarmonyOS构建参数说明 参数 说明 步骤显示名称 构建步骤的名称,可自定义修改。
构建缓存只提供文件缓存的上传和下载检出功能,支持用户自定义脚本更新。 该功能目前仅支持“华北-北京四”区域、代码源为CodeArts Repo的C/C++语言构建工程的编译构建加速。 使用代码缓存加速需购买配套加速特性包,购买方法请参考购买构建加速包。 YAML文件配置方法 参考创建代码化构建使用的YAML文件,在env中配置如下示例代码。
弹出的界面配置用户操作文件的权限。 图1 配置用户操作文件权限 表4 文件管理角色权限说明 权限类型 拥有该权限的角色 添加用户 项目下所有用户。 查看 文件创建者、相同租户的用户。 使用 文件创建者、文件创建者配置了使用权限的用户。 更新 文件创建者、文件创建者配置了更新权限的用户。
服务韧性 跨AZ容灾部署能力 CodeArts Build通过跨AZ部署、AZ之间数据容灾等技术方案,即在另一个可用区(跨AZ)部署一个同构的CodeArts Build灾备集群,如果生产集群所处的地理位置发生自然灾害,或者集群内部出现了故障从而导致生产集群无法正常对外提供读写服