【问题标题】:Running php script via Jenkins Execute shell通过 Jenkins Execute shell 运行 php 脚本
【发布时间】:2014-04-30 21:31:24
【问题描述】:

我正在尝试通过 Jenkins 中的执行 shell 运行 php 脚本,但我似乎遗漏了一些东西。

这是我在 Jenkins 的执行 shell 中的命令

#!/usr/bin/php

php /home/admin/reports/test.php"

我在控制台输出中没有收到任何错误。

当我尝试这些命令时:

#!/bin/bash    
php /home/admin/reports/test.php"

然后我收到错误消息,上面写着 failed to open stream: Permission denied in /home/admin/reports/test.php"

【问题讨论】:

  • 没有错误。但是当我在 CLI linux 中运行相同的命令时,这个脚本会被执行,我会得到我需要的结果。但詹金斯什么都没有。

标签: php jenkins jenkins-php


【解决方案1】:

Jenkins,默认安装,将在jenkins 用户下运行。该用户无权访问您的 /home/admin 主目录。 Permission denied 是不言自明的。

  • 要么授予 jenkins 用户对 /home/admin 的读取权限(不推荐)
  • 或将文件放入/home/jenkins 目录(也不是最佳解决方案)
  • 或者更好的是,将文件放在可供双方访问的共享位置,最好是通过 SCM 填充的作业工作区(推荐)。

【讨论】:

  • 感谢 Windows 用户,这些小事有时真的很头疼
最近更新 更多