跳至正文

Jenkins分布式部署到多台机器执行构建

Jenkins支持分布式部署,即主节点和子节点可以分布在不同的网络环境中,节点之间通过长链接通信。例如,Jenkins主节点在外网,随时随地可以访问,两个子节点在内网,一台Windows机器构建app的安卓版本,一台iMac机器构建app的iOS版本。

本文演示如何添加一个子节点。

新建节点

1、Manage Jenkins -> Manage Nodes and Clouds -> 新建节点,

节点名称自定义,例如:Agent1,点击确定。
2、开始配置节点信息。

其中远程工作目录,就是子节点机器上的工作目录。

Jenkins设置

启动方式中如果没有Launch agent by connecting it to the master,需要开启。
Manage Jenkins -> Configure Global Security,代理选择:随机选取,如图:

下载子节点文件

Manage Jenkins -> Manage Nodes and Clouds,点击子节点,如图

点击Launch,下载完成后,拷贝到子节点机器(需要有Java环境),双击运行,如果出现以下信息,代表运行成功,子节点已连接。

任务配置

打开任务配置,限制项目的运行节点,输入Agent1。

最后执行构建,就能看到Jenkins任务成功地分配到Agent1节点了。

标签:

《Jenkins分布式部署到多台机器执行构建》有4个想法

  1. 我按照步骤添加了agent节点,还是会卡在这里。
    引擎版本是2.4.3
    { status: 419, msg: ‘Error Session Token Owner’ }
    [15008] Building 3D physics modules…

    Browserslist: caniuse-lite is outdated. Please run:
    npx browserslist@latest –update-db
    [15008] Cocos Service load base data!

    build jsb-adapter: 425.384ms

  2. “autoCompile”: false,
    “scenes”: [
    “cbe12e12-d85d-4871-9e98-52707c5bc744”,
    “26a9d6f3-4536-49c5-b158-81ae1da24824”,
    “2e0c54bc-1fdf-4ff3-b70e-0d5f2885b87f”,
    “7df5046a-1ea1-43d1-ac4d-8d21db59672d”
    ],
    “project”: “D:\\Work\\bing3.sun\\Code\\Ncl”,
    “projectName”: “newAKClient”,
    “debugBuildWorker”: false
    }

    Builder: do custom process [build-start]
    [8212] Building D:\Work\bing3.sun\Code\Ncl

    [8212] Destination D:\Work\bing3.sun\Code\Ncl\build\wechatgame

    [8212] Delete D:\Work\bing3.sun\Code\Ncl\build\wechatgame\**\*,!D:\Work\bing3.sun\Code\Ncl\build\wechatgame\game.json,!D:\Work\bing3.sun\Code\Ncl\build\wechatgame\project.config.json

    卡在这里了。cc版本2.3.2,
    jenkins执行batch command
    C:
    cd C:\\ProgramData\\cocos\\editors\\Creator\\2.3.2\\
    CocosCreator.exe –path D:\\Work\bing3.sun\\Code\\Ncl –build `

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注