'Nant'在Jenkins Mac Slave

时间:2016-06-08 10:31:50

标签: macos shell jenkins nant jenkins-slave

我有一个Jenkins的主从结构设置,在Windows服务器上创建了Master,还有一些Windows奴隶和一个Mac-slave。 流程是这样的,

  1. Jenkins shell脚本触发一个shell命令(sh sample.command)[这在两个窗口上使用(使用win-bash)和mac节点.....]
  2.   

    它触发shell脚本的第一步是在windows和mac slave上正常工作。

    #!/bin/bash
    echo “This is a shell script acting as a middleware to trigger the NAnt....”
    echo "Calling NAnt...."
    nant ${1} ${2} ${3} ${4}
    

    2.现在,sample.command有一个代码来触发一个nant命令,该命令无法处理 mac slave 并给我一个错误:   nant:找不到命令

    3.通过brew安装在Mac-slave上的NAnt,当我从Mac机器触发这个shell脚本sample.command时,它工作正常并执行nant命令,但不能通过jenkins工作。

    任何帮助将不胜感激,提前谢谢。

1 个答案:

答案 0 :(得分:0)

我能够通过在shell脚本的开头设置$ PATH变量来解决这个问题。刚刚在shell脚本中添加了以下行,

export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/share/dotnet/bin

这里提到的路径在其他机器上可能有所不同,我所做的是,我在从Mac机器调用shell并复制粘贴时检查了$ PATH,并且有效。