詹金斯管道蝙蝠多行

Gri*_*fin 4 jenkins jenkins-groovy jenkins-pipeline

根据文档,一个可以在script参数中有多行bat

但是,我在阶段步骤中尝试了以下操作,并且只执行了第一行

声明式管道:

...
bat """
    c:\\path\\to\\conda activate my_env
    cd c:\\path\\to\\scripts
    python myscript.py ${some_arg}
"""
...
Run Code Online (Sandbox Code Playgroud)

脚本化管道:

...
bat(
    returnStdout: true, 
    script: """
        c:\\path\\to\\conda activate my_env
        cd c:\\path\\to\\scripts
        python myscript.py ${some_arg}
    """
)
...
Run Code Online (Sandbox Code Playgroud)

我需要做什么才能让所有行按顺序执行?

ps我知道我可以用“&”将命令链接到一行中,但是如果有很多命令,这很快就会变得不可读。

use*_*090 12

您可以添加关键字call,无论您在何处运行脚本,请遵循以下操作:-

...
bat """
    call c:\\path\\to\\conda activate my_env
    cd c:\\path\\to\\scripts
    call python myscript.py ${some_arg}
"""
...
Run Code Online (Sandbox Code Playgroud)

  • 为什么需要添加`call`? (2认同)