Use Shell Execute with Jenkins windows master/slave

有时候我们的jenkins master或者slave是windows平台的,一般情况下都是用“Execute Windows batch command”这个构建步骤。但是有时候也会碰到想要在Jenkins job中用“Execute shell”这个构建步骤,那么如何配置才能像Linux系统一样自如地用shell脚本呢?

以下是几种我尝试过的方法,前提是我装了git,所以用了git里自带的sh.exe(eg:C:\Program Files\Git\bin\sh.exe):

1. Jenkins系统配置Shell executable:Jenkins -> System Configure -> Shell -> Shell executable

《Use Shell Execute with Jenkins windows master/slave》

此方法设置的是系统shell环境变量,如果你的Jenkins master和所有slaves都是windows系统,并且每台机器上都有C:\Program Files\Git\bin\sh.exe这个目录是没问题。但是当你有的机器的shell目录不在这个地址的时候就会出问题。所以这个方法的配置是有局限性的,不够灵活。

2. 第二种方法就比较灵活,上述1的设置为空,把设置放到job里。这样可以灵活根据每个slave的shell执行路径去设置执行。

《Use Shell Execute with Jenkins windows master/slave》

3. 第三种方法是把shell的执行路径设置到机器的PATH中,这样上述1、2的地方都不需要设置。

《Use Shell Execute with Jenkins windows master/slave》

可惜的是,这种方法我设置好了,并没有成功。可能我哪里还缺少设置吧。

综上所述,推荐的方式是方法2。

    原文作者:shyingsheng
    原文地址: https://www.jianshu.com/p/4aa5c62a8876
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞