跑詹金斯'用户

时间:2015-06-01 07:27:13

标签: bash jenkins cygwin

我让Jenkins在Windows上运行,我有一个在CygWin终端的CygWin bash下工作正常的版本,所以我现在想要自动化它。但是,使用此脚本:

#!C:\cygwin\bin\bash.exe
whoami
make

系统报告为nt authority\system,而不是我在使用交互式shell时获得的ken。有没有一种简单的方法来说服Jenkins或CygWin像我一样跑?

2 个答案:

答案 0 :(得分:1)

您很可能正在使用默认安装运行jenkins。你有两个选择。首先在评论中提到。更改"服务帐户"和你的一样。

第二个选项来自best practices。在具有备份等的系统上运行jenkins master。使用您的帐户凭据配置slave node。将项目配置更改为在特定节点上构建。

(可以在具有不同凭据的同一台计算机上运行slave和master - 以防万一你想尝试一下)

答案 1 :(得分:1)

我遇到的真正问题不是shell脚本是以错误的用户身份运行,而是shell脚本没有执行默认的/etc/profile。所以,解决方案很简单:

#!C:\cygwin\bin\bash.exe -l
whoami
make

我仍然是nt authority\system,但现在我已经设置了正确的环境并且可以成功运行make

另请注意,如果我创建一个/home/system目录,我可以将.bash_profile等添加到该目录,以进一步自定义构建环境。