You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins脚本化流水线:修改Node块默认工作区名称并避免重复分配

Jenkins脚本化流水线修改node默认工作区的方法

答案是肯定的,你完全可以修改node('myAgent'){...}自动分配的默认工作区,不用再嵌套ws块导致工作区翻倍,这里给你两种靠谱的实现方式:

  • 直接给node块指定workspace参数
    这种方式最直接,在声明node的时候就指定好自定义工作区,整个node块内的代码都会在这个路径下执行,不会产生额外的隐式工作区分配:

    node('myAgent', workspace: "ws${env.BUILD_ID}/myWorkspace") {
        // 你的流水线逻辑写在这里,直接使用指定的工作区
    }
    
  • 在node块内调用customWorkspace步骤
    如果需要在node块执行过程中动态切换工作区,或者更灵活地定义路径,可以用customWorkspace步骤,调用后后续所有步骤都会切换到指定工作区:

    node('myAgent') {
        customWorkspace "ws${env.BUILD_ID}/myWorkspace"
        // 后续的流水线操作都将使用这个自定义工作区
    }
    

你之前用node嵌套ws的方式之所以会导致工作区翻倍,是因为node块会先自动创建一个默认工作区,然后ws步骤又会新建一个独立的工作区,两个都会被Jenkins纳入管理。而上面的两种方法都是直接复用或替换node块的默认工作区,只会产生一个工作区,完美解决你的问题。

内容的提问来源于stack exchange,提问作者salkin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 19:57:14