【问题标题】:os.rename() gives permisson denied when python script launched from jenkins当从 jenkins 启动 python 脚本时,os.rename() 授予权限被拒绝
【发布时间】:2015-06-08 05:20:37
【问题描述】:

当我从 jenkins 启动构建脚本时出现以下错误

os.rename(str1,str) OSError: [Errno 13] 权限被拒绝 构建步骤“执行 shell”将构建标记为失败

我可以手动重命名文件。我对该文件有 rwx 权限。但是当从 jenkins 启动 python 脚本时我不能做同样的事情。有什么想法吗?

【问题讨论】:

  • 确保 Jenkins 使用与您重命名文件时相同的用户运行,或者 Jenkins 用户具有适当的权限。

标签: python jenkins


【解决方案1】:

我认为您使用的是相对路径名。在这种情况下,它将默认为当前工作目录,当你手动运行它时它会工作,但当 Jenkins 使用不同的工作目录运行你的代码时可能会失败。解决方案是确保 srcdst args 到 os.rename() 都是绝对路径,或者先到正确目录的 chdir()

【讨论】:

  • 我只使用绝对路径。但这是在将 jenkins 配置为 ldap 身份验证之后发生的
猜你喜欢
  • 2011-08-14
  • 2011-10-17
  • 2011-08-28
  • 2019-03-10
  • 2017-05-14
  • 1970-01-01
  • 2018-04-04
  • 2021-10-18
  • 1970-01-01
相关资源
最近更新 更多