不同操作系统的 Jenkinsfile,如 Windows 和 Linux

Jenkinsfile for different operating system like Windows and Linux

我有一个 Jenkinsfile 来创建管道。 如果此管道应在 Linux 和 Windows 等不同的操作系统上执行,那么管理这种情况的最佳方法是什么?

我的意思是,我需要创建两个不同的 Jenkinsfile 吗?一个用于 Windows,另一个用于 Linux,以便管理不同的 commands/shell 操作系统? 提前致谢

有一个 isUnix() 函数会 return TRUE 如果你 运行 所在的节点是像 OS 这样的 Unix(Unix/MacOS/Linux),或者 FALSE 如果它是 运行 在 Windows 上。您应该能够实施 if check

script {
    if (isUnix()) {
       //Linux Environment
       sh ./script.sh
     }
     else {
       //Windows Environment
       bat batchfile.bat
     }
 }