如何调试通过Jenkins运行shell脚本的问题?

2024-05-21 09:21:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在运行一个来自Jenkins的python脚本,它运行的shell脚本由于下面的Permission denied错误而失败,我尝试了以下方法来调试这个问题。。。在

1.我正在打印运行Jenkins作业的userid,它是正确的用户

2.我在Jenkins节点上用相同的userid手动运行了pre_audit命令,它工作正常,没有权限拒绝错误

这个错误只会发生在詹金斯身上,我不知道为什么会这样?有没有关于为什么会发生这种情况或如何在使用具有权限的正确用户的情况下进一步调试的提示?在

2018-05-04 22:09:39 script.py submit_to_techteamweb    469    INFO    : userid:username

2018-05-04 22:09:39 script.py submit_to_techteamweb    471    INFO    : ./pre_audit --version 9.130.63.0.32.6.27 --chip 4364 --file /Users/username/FWintegration/techteam-automation/integration/release_notes.txt
2018-05-04 22:09:39 script.py submit_to_techteamweb    482    INFO    : Printing error...
2018-05-04 22:09:39 script.py submit_to_techteamweb    483    INFO    : Traceback (most recent call last):
  File "./pre_audit", line 46, in <module>
    os.mkdir(submission_directory)
OSError: [Errno 13] Permission denied: '/SWE/Teams/techteam/Firmware/submissions/4364/9.130.63.0.32.6.27

Tags: to用户pyinfo脚本错误scriptaudit
2条回答

从jenkins运行shell脚本需要适当的执行权限。在执行script.sh之前,在python脚本中运行以下命令:

sh "chmod 755 script.sh"

机器上是否启用SELinux?可能是Jenkins服务被限制(应该是这样)不能在$WORKDIR之外写入文件。在工作目录之外创建文件是个坏主意™ 在詹金斯。在

相关问题 更多 >