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

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

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

相关推荐
zmm042018 小时前
Could not get unknown property ‘mUser‘ for Credentials [username: null]
jenkins·gradle
keson要进步1 天前
CICD实战(一) -----Jenkins的下载与安装
运维·ci/cd·centos·自动化·jenkins
新兴AI民工1 天前
windows上的visual studio2022的项目使用jenkins自动打包
windows·jenkins·visual studio
风早君1 天前
jenkins集成gitlab发布到远程服务器
服务器·gitlab·jenkins
Thanks_ks1 天前
SpringBoot 自动化部署实战:CI/CD 整合方案与避坑指南
pipeline·jenkins·springboot·自动化部署·gitlab ci/cd·ci/cd 实战·docker 容器化
爱宇阳1 天前
使用 Docker Compose 部署 Jenkins(LTS 版)持续集成环境
ci/cd·docker·jenkins
π大星星️1 天前
Jenkins 工作流程
运维·jenkins
一介草民丶2 天前
Jenkins | Jenkins构建成功服务进程关闭问题
运维·servlet·jenkins
小黄人软件2 天前
jenkins脚本查看及备份
运维·servlet·jenkins
一介草民丶2 天前
Jenkins | Linux环境部署Jenkins与部署java项目
java·linux·jenkins