Jenkins 给任务分配 节点(Node)、设置工作空间目录

Jenkins 给任务分配 节点(Node)、设置工作空间目录

  1. 创建 Freestyle project 类型 任务

  2. 任务配置 Node

    打开任务-> Configure-> General

    勾选 Restrict where this project can be run

    Label Expression 填写一个 Node 的 Label,输入有效的 Label名字,会有提示

    此处选择 Mac,表示为设置此任务属于 Label 中包含 Mac 的节点Node

  3. 点击 Advanced... 按钮

    设置 工作空间目录

    勾选 Use custom workspace

    Directory 下填自定义的 工作目录

    这个任务的 工作目录就设置为 jenkins 工作空间下 /workspace/Test 目录

  4. 在 Build 模块,添加一个 Execute shell

    添加脚本输出 WORKSPACE 工作目录

  5. 执行构建,输出如下

bash 复制代码
Running as SYSTEM
Building on the built-in node in workspace /Users/townest/.jenkins/workspace/Test
[Test] $ /bin/sh -xe /var/folders/09/x25mf3zn5cs0d6_zgdd2v7dr0000gn/T/jenkins2473616443623046485.sh
+ echo WORKSPACE=/Users/townest/.jenkins/workspace/Test
WORKSPACE=/Users/townest/.jenkins/workspace/Test
Finished: SUCCESS

可以看到输出的 工作空间目录为 WORKSPACE=/Users/townest/.jenkins/workspace/Test

  1. 设置工作空间目录的意义
    当不同的任务需要使用一个工作目录时,两个任务可以设置为相同的工作目录

比如添加两个任务 Test 和 Test_2

两个任务构建时都会从 git 服务器拉取项目,如果不配置或者配置为不同的目录,那么会在workspace 目录下创建两个不同的目录,拉取git分支

两个任务使用不同目录的优点:相互独立、可以并行各自处理不同的逻辑

两个任务使用想通目录的优点:节省空间,两个任务共用一个目录,只需要占用一份磁盘空间

相关推荐
LSL666_20 小时前
5 Repository 层接口
android·运维·elasticsearch·jenkins·repository
飞哥专栏1 天前
阿里云效 = Jenkins + Gitlab + 免费服务器
阿里云·gitlab·jenkins
linmengmeng_13142 天前
【Jenkins】Jenkins配置从节点 - Launch Agent
运维·servlet·jenkins
LSL666_2 天前
1 elasticSearch 和 IK分词器的本地下载
大数据·elasticsearch·jenkins
破烂pan2 天前
Jenkins 定时触发(cron)使用说明
运维·jenkins
liuyunshengsir2 天前
让 Elasticsearch Delete By Query 请求立即生效
大数据·elasticsearch·jenkins
❥ღ Komo·3 天前
Elasticsearch单机部署全指南
运维·jenkins
chevysky.cn4 天前
Jenkins自动部署CI/CD
运维·ci/cd·jenkins
Archy_Wang_14 天前
基于BaGet 构建NuGet私有库并实现类库打包到NuGet私有库
运维·jenkins
佐杰4 天前
Jenkins使用指南1
java·运维·jenkins