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

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

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

相关推荐
oioihoii3 小时前
Jenkins自动部署全流程:CentOS 7、GitHub、Gitee、GitLab、Vue+Maven与Webhook
centos·github·jenkins
Geek-Chow1 天前
Building and Using a Jenkins Shared Library
jenkins
flytalei1 天前
逐浪笔记 GitOps 实战:Jenkins 构建、Argo CD 同步与 Git 回滚
笔记·git·jenkins
flytalei2 天前
从 Jenkins 到 Argo CD:搭建一条完整的 GitOps 实战链路
运维·jenkins
你看我名字2 天前
LAMP 架构演练:从云主机准备到 Apache、PHP、MySQL 上线验证
运维·ci/cd·架构·kubernetes·jenkins
成为你的宁宁2 天前
【基于 SSH 与 JNLP 协议的 Jenkins 分布式构建方案】
分布式·jenkins
小白的码BUG之路6 天前
Jenkins -- 配置jdk和maven
java·jenkins·maven
9144062326 天前
安装jenkins遇到的问题总结
运维·jenkins
小白的码BUG之路6 天前
Jenkins -- 配置ssh
运维·ssh·jenkins
王琦03187 天前
jenkins使用手册
运维·jenkins