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分支

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

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

相关推荐
回眸不遇13 小时前
类型的区别和应用场景 nested 每个对象独立存储为隐藏的子文档 适合存储数组 查询的时候有特定的语法 nested查询 且字段要 ...
运维·jenkins
X1A0RAN1 天前
容器化部署 Jenkins 教程
运维·docker·jenkins
BullSmall1 天前
jenkins 全局工具变更后,构建的任务为什么没有刷新过来
运维·jenkins
BullSmall2 天前
报错 libatomic.so.1: No such file or directory
jenkins
ji_shuke2 天前
从零深入:基于 Playwright + Pytest + Allure 的企业级 Web 端到端自动化测试框架实战
前端·自动化测试·docker·jenkins·pytest·allure·playwright
上海安当技术2 天前
老系统零改造接入:旁路代理统一认证实战
java·servlet·架构·kubernetes·jenkins
Mr. zhihao3 天前
Jenkins 从节点连不上主节点?一次网络排查全记录 + 机器间通信“拦截层“全景讲解
网络·servlet·jenkins
砍材农夫4 天前
运维|devops|jenkins构建分支选择及执行日志展示
运维·jenkins·devops
阿标在干嘛4 天前
政策快报平台日志系统的3次演进:从文件到ELK到告警
运维·elk·jenkins
worilb4 天前
Spring Cloud 学习与实践(16):Elasticsearch 商品搜索、中文分词与索引一致性
运维·jenkins