tencent cloud

文档反馈

自定义构建节点相关

最后更新时间:2023-12-29 11:44:51
    

    在自定义构建节点中访问本地 Jenkins?

    步骤1:访问 Jenkins

    1. 首先需要将您的设备作为自定义构建节点接入
    2. 为了避免对外暴露端口,CODING CI 自定义节点默认启动的 Jenkins 只会监听本地回环地址(127.0.0.1),默认的监听端口为 15740,此时,您只能在构建节点机器通过 localhost 或者 127.0.0.1 进行访问,具体的访问地址为 <http://localhost:15740>
    3. 如果无法访问,可以通过命令 cat ~/.coding/cci-agent.yml 查看端口 (publicPort)
    4. 如果您希望在构建节点外部访问 Jenkins,可以在执行 up 命令启动程序时添加 --jserver 0.0.0.0 参数,同时也可以使用 --jport 指定监听端口,假设构建节点 IP 为 NODE_IP,指定的监听端口为 PORT 此时的访问地址为 <http://NODE_IP:PORT>

    步骤2:Jenkins 登录令牌

    在浏览器中输入 Jenkins 访问地址,会看到登录页面。
    
    Jenkins 登录用户名和密码分别为 coding11bf48c0403ec88231b530b5f98a113cad,您可以执行 ./cci-agent up -h 命令。
    
    

    如何在自定义构建节点安装插件?

    自定义构建节点是以开源软件 Jenkins 为引擎进行构建的,Jenkins 提供了超过 1000 个插件支持构建、部署、自动化。CODING CI 自定义节点默认提供的 Jenkins 仅内置了最常用的部分插件,如果不能满足您项目的需求,您可以自行安装需要的插件。
    1. 首先需要您登录 Jenkins。
    2. 登录到 Jenkins 后,可以看到 Jenkins 管理界面,进入系统管理 > 插件管理页面。
    3. 左侧菜单栏中单击系统管理
    
    4. 下拉页面,单击插件管理
    
    5. 打开插件管理页面。
    
    6. 在插件管理页面,找到可选插件选项页,搜索并勾选需要安装的插件,点击页面下方的下载待重启后安装,在弹出的更新中心页面勾选安装完成后重启 Jenkins,等待 Jenkins 安装完成后自动重启,即可使用。
    
    

    如何自定义构建节点配额?

    接入的自定义节点不会受到 CODING 团队配额限制;
    自定义构建节点不计入团队每周构建次数配额限制;
    自定义构建节点不受团队并行上限配额限制;
    自定义构建节点不受超时配额限制;
    

    如何自定义构建节点的缓存?

    配置了自定义构建节点池的构建计划将使用构建节点自身的缓存。
    
    使用自定义构建节点执行的构建计划,在每次执行的时候会创建一个独立的 WorkSpace,构建结束后会将其清理。构建过程中产生在工作空间外的文件将会保留(如 maven / npm 等制品库的全局缓存)。
    
    

    重复注册 cci-agent 如何处理?

    默认的情况下,如果在一台机器上重复注册 cci-agent 会提示节点已被注册,并且需要删除注册节点后才能重新注册。
    
    这是因为注册节点需要提供 config 目录(默认为 ~/.config)和端口号(默认为 15740),您只需要手动指定不冲突的 config 目录和端口号即可重复注册节点。
    在进行操作之前,请确保您已经在项目设置 > 开发者选项 > 项目令牌申请了具备构建节点权限的项目令牌密码。
    下面为使用 ~/.coding215741 端口进行重复注册的示例操作。
    ./cci-agent init --config ~/.coding2 --pt <项目令牌密码>
    ./cci-agent up --config ~/.coding2 --jport 15741
    

    自定义节点异常问题收集

    自定义节点操作系统为最小化安装的 CentOS

    如果您的自定义节点 Jenkins 无法启动,如下情况报 Warning 时,可能是由于节点的操作系统为最小化安装的 CentOS (Minimal Install),而 Jenkins 的网页页面依赖一些图形化组件。
    
    解决方案为执行一下命令:
    yum install fontconfig
    

    异常状态处理方式

    在实际生产中,接入自定义构建节点可能会存在如客户端的网络环境,配置环境缺失等诸多不稳定因素,下面将罗列出已知异常状态的处理方式。

    删除构建节点池

    相关位置
    构建记录错误提示
    处理方式
    配置构建计划
    -
    构建计划节点池配置中不会出现已经被删除的构建节点池
    已配置构建计划
    配置页面上会提示构建节点池已被删除
    在构建计划中已配置的构建节点池被删除
    触发构建任务
    该构建计划配置的构建节点池 my\\-pool 已被删除,请重新配置
    允许触发,但构建任务会立即失败
    队列中、初始化、准备构建、构建中
    该构建计划配置的构建节点池 my\\-pool 已被删除,请重新配置
    这几种状态的构建任务会立即失败
    

    删除处于"占用"状态的构建节点

    相关位置
    构建记录错误提示
    处理方式
    队列中的构建任务
    -
    不受到影响,队列中的构建任务尚未分配具体的构建节点,在寻找到有效构建节点之前会一直处于队列中的状态
    初始化、准备构建、构建中
    构建节点 xxx 已离线
    这几种状态的构建任务会立即失败
    

    处于“占用"状态的构建节点掉线

    说明:
    由于客户端网络环境不稳定,构建节点可能会存在掉线的情况
    掉线后客户端(构建节点)会尝试进行重试,服务端会尝试等待客户端重新连接
    等待超时( 3 分钟)则会判断构建节点离线,并将构建任务标记为失败
    若重连成功,客户端将继续上报构建的内容
    相关位置
    构建记录错误提示
    处理方式
    队列中的构建任务
    -
    不受到影响,队列中的构建任务尚未分配具体的构建节点,在寻找到有效构建节点之前会一直处于队列中的状态
    初始化、准备构建、构建中
    构建节点 xxx 已离线
    这几种状态的构建任务会立即失败

    配置的构建节点池没有接入节点

    相关位置
    构建记录错误提示
    处理方式
    配置构建计划
    -
    因为构建计划并不会直接关联构建节点,所以不影响构建计划对配置,若节点池内不存在构建节点 ,配置页面中会给出相应的警告
    已配置构建计划
    -
    因为构建计划并不会直接关联构建节点,所以不影响构建计划对配置,若节点池内不存在构建节点 ,配置页面中会给出相应的警告
    初始化、准备构建、构建中
    该构建计划配置的构建节点池 my\\-pool 已被删除,请重新配置
    这几种状态的构建任务会立即失败
    

    取消构建计划授权

    相关位置
    构建记录错误提示
    处理方式
    配置构建计划
    会给出相对应的提示信息
    不允许用户选中未授权的构建计划
    已配置构建计划
    -
    构建记录列表页面和构建配置页面会给出未授权的提示信息,用户需要手动调整节点池配置
    触发构建任务
    该构建计划没有获得构建节点池 default 的授权,请授权
    允许触发,但构建任务会立即失败
    初始化、准备构建、构建中
    该构建计划配置的构建节点池 my\\-pool 已被删除,请重新配置
    这几种状态的构建任务会立即失败
    
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持