我正在尝试设置 phing 以使用 travis-ci,但我无法让它运行设置脚本来安装所有依赖项。
我的 .travis.yml 文件是:
language: php
php:
- 5.2
script: ./.travis-phing.sh
在特拉维斯,我得到了错误:
/home/travis/build.sh: line 105: ./.travis-phing.sh: Permission denied
是什么原因造成的?
我正在尝试设置 phing 以使用 travis-ci,但我无法让它运行设置脚本来安装所有依赖项。
我的 .travis.yml 文件是:
language: php
php:
- 5.2
script: ./.travis-phing.sh
在特拉维斯,我得到了错误:
/home/travis/build.sh: line 105: ./.travis-phing.sh: Permission denied
是什么原因造成的?
解决了
要设置为执行的脚本。我用了:
chmod a+x .travis-phing.sh
然后简单地提交,然后推回 github。
另一种选择是使用 bash 运行脚本,这将省略修改文件权限的需要。
bash path/to/file.sh
或者:
sh path/to/file.sh
在这种情况下,您不是在 执行脚本本身,而是在执行 bash
或sh
随后运行脚本。因此脚本不需要是可执行的。
有道理?
我自己发现这个解决方案非常有用。我主要在 travis-ci 上运行node
&npm
项目,这些构建使用npm test
您可以配置为任何内容的命令。
我要修改我需要sudo chmod ...
在本地机器上使用的文件权限。但是你不能总是sudo
在 travis-ci 上使用。
sh file.sh
允许我在本地和 travis-ci 上运行我的测试,而无需手动更新权限。