TeamCity命令行权限被拒绝

13

我使用Vagrant创建了一个包含TeamCity的虚拟机。一切工作正常,但当我添加一个命令行构建步骤,并包含'drush cc all'时,我会遇到以下错误:

无法运行进程:无法在“/vagrant/public/dev”目录中运行程序“/vagrant/public/TeamCity/buildAgent/temp/agentTmp/custom_script1106304414420673073”,java.io.IOException: error=13,权限被拒绝


“Permission denied” - 看起来你有权限问题 :). 我不熟悉Vagrant,但你可能需要检查TeamCity构建代理使用的帐户是否可以访问你的脚本文件夹并具有执行它的权限。 - Philip Pittle
我找不到如何配置TeamCity运行的用户。 - Nealv
https://dev59.com/uXE95IYBdhLWcg3wDpYG - Philip Pittle
那是在Windows上的:/ 我需要在Linux上。 - Nealv
https://devnet.jetbrains.com/thread/436841 - Philip Pittle
2
它不起作用+找不到任何文档。我想我会放弃TeamCity转向另一个CI。无论如何感谢你。 - Nealv
1个回答

26

这是一个权限错误,可以通过在 GitHub 上更新模式来修复。我猜你的文件是用默认的100644创建的,但它们需要有100755才能在 TeamCity 上执行。在包含脚本的目录中执行以下操作:

$ git update-index --add --chmod=+x your-script-file

$ git commit -m "update mode"

$ git push

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接