我有一个symfony应用程序,它依赖于apcu(php5-apcu
)。服务器在ubuntu 15.04上运行php 5.6。APCU需要通过composer作为依赖项,即:
"require": {
"ext-apc": "~4.0"
}
效果很好。尝试让应用程序在travis ci上运行并不是那么顺利,因为它们运行的是ubuntu 12.04,它没有
php5-apcu
包,这会产生:E:找不到包php5 apcu
安装
php-apc
不满足ext-apcu
要求,我不希望升级不推荐的包。关于如何在travis ci上设置apcu有什么建议吗?最好不要手动下载包。
最佳答案
您可以从PECL轻松安装APCU扩展。
下面是一个示例.travis.yml文件:
language: php
php:
- 5.6
before_script:
- pear config-set preferred_state beta
- yes '' | pecl install apcu
script:
- cd tests/ && phpunit
如果您需要一个更复杂的解决方案,例如多个php版本,那么您应该能够轻松地采用docine/cache存储库(https://github.com/doctrine/cache/blob/master/.travis.yml)中的解决方案。
他们对php 5.3-5.6和hhvm使用以下before_脚本运行测试:
[...]
before_script:
- [...]
- sh -c "if [[ $TRAVIS_PHP_VERSION != 'hhvm' && `php-config --vernum` -ge 50500 ]] ; then pecl config-set preferred_state beta; printf "yes\n" | pecl install apcu ; else echo 'extension="apc.so"' >> ./tests/travis/php.ini ;fi"
- [...]
[...]
快乐测试