作曲家 在多语言特拉维斯项目中选择 php 版本



我有一个多语言项目(目前是php和python(。目前我只是使用Travis运行Python测试套件,我想添加PHP测试套件。

不能在language标记中添加多种语言,因此,如此处所述,您应该安装任何其他语言所需的语言。事实上,php 和作曲家已经出现在默认图像中。但我需要的是 PHP5 而不是 PHP7。PHP7 在 Ubuntu/Trusty 中也不能作为 apt 包提供。谁能弄清楚如何设置它?

(免责声明:此解决方案不是记录在案的解决方案,也不是特拉维斯的方式。我自己通过注入命令来检查图像内容。所以,不确定这是正确的方法。因此,仍然欢迎确认或更好的答案(

Travis目前正在使用phpenv,而不是apt,以便拥有多个版本的php。默认映像当前包含 5.6、7.0 和 7.1 版本。我试图在env部分中定义PHPENV_VERSION环境,但它不起作用。通过调用正确的phpenv local子命令,您可以获得正确的环境。

language: python
python:
- "2.7"
- "3.5"
- "3.6"
env: # This should have effect by itself but it doesn't
- PHPENV_VERSION="7.0"
- PHPENV_VERSION="7.1"
before_install:
- php --version # This will still show 5.6
- phpenv local $PHPENV_VERSION # This is required
- php --version # Here you got the one

一个完整的解决方案是安装映像上没有的任何列出的版本。可以使用记录的phpenv install子命令来完成,但在映像的 phpenv 版本中不可用。

最新更新