Skip to content

Commit 29ddce4

Browse files
committed
PHPLIB-279: Remove PHP 5.4 and add PHP 7.1 and 7.2 to CI build matrix
This also switches to container-based build environments, which allow installing multiple versions of MongoDB via the apt addon.
1 parent e08edde commit 29ddce4

File tree

1 file changed

+48
-38
lines changed

1 file changed

+48
-38
lines changed

.travis.yml

Lines changed: 48 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,67 @@
11
language: php
2+
dist: trusty
3+
sudo: false
24

3-
php:
4-
- 5.4
5-
- 5.5
6-
- 5.6
7-
- 7.0
5+
services:
6+
- mongodb
87

98
env:
109
global:
11-
- KEY_SERVER="hkp://keyserver.ubuntu.com:80"
12-
- MONGO_REPO_URI="http://repo.mongodb.com/apt/ubuntu"
13-
- MONGO_REPO_TYPE="precise/mongodb-enterprise/"
14-
- SOURCES_LOC="/etc/apt/sources.list.d/mongodb.list"
15-
matrix:
16-
- DRIVER_VERSION=1.2.0 SERVER_VERSION=2.6
17-
- DRIVER_VERSION=1.2.0 SERVER_VERSION=3.0
18-
- DRIVER_VERSION=1.2.0 SERVER_VERSION=3.2
10+
- DRIVER_VERSION=stable SERVER_VERSION=3.4
11+
12+
addons:
13+
apt:
14+
packages: &common_packages
15+
- gdb
1916

2017
matrix:
2118
fast_finish: true
2219
include:
20+
- php: 5.5
21+
addons: &common_addons
22+
apt:
23+
sources: [ mongodb-3.4-precise ]
24+
packages: [ mongodb-org, *common_packages ]
25+
- php: 5.6
26+
addons: *common_addons
27+
- php: 7.0
28+
addons: *common_addons
29+
- php: 7.1
30+
addons: *common_addons
31+
- php: 7.2
32+
addons: *common_addons
2333
- php: 7.0
2434
env: DRIVER_VERSION=1.2.0 SERVER_VERSION=2.4
35+
addons:
36+
apt:
37+
sources: [ mongodb-upstart ]
38+
packages: [ mongodb-10gen, *common_packages ]
2539
- php: 7.0
26-
env: DRIVER_VERSION=devel SERVER_VERSION=3.2
27-
exclude:
28-
- php: 5.4
29-
env: DRIVER_VERSION=stable SERVER_VERSION=2.6
30-
- php: 5.4
31-
env: DRIVER_VERSION=stable SERVER_VERSION=3.0
32-
- php: 5.5
33-
env: DRIVER_VERSION=stable SERVER_VERSION=2.6
34-
- php: 5.5
35-
env: DRIVER_VERSION=stable SERVER_VERSION=3.0
36-
37-
before_install:
38-
- sudo apt-key adv --keyserver ${KEY_SERVER} --recv 7F0CEB10
39-
- sudo apt-key adv --keyserver ${KEY_SERVER} --recv EA312927
40-
- echo "deb ${MONGO_REPO_URI} ${MONGO_REPO_TYPE}${SERVER_VERSION} multiverse" | sudo tee ${SOURCES_LOC}
41-
- sudo apt-get update -qq
42-
43-
install:
44-
- if dpkg --compare-versions ${SERVER_VERSION} le "2.4"; then export SERVER_PACKAGE=mongodb-10gen-enterprise; else export SERVER_PACKAGE=mongodb-enterprise; fi
45-
- sudo apt-get install ${SERVER_PACKAGE}
46-
- sudo apt-get -y install gdb
40+
env: DRIVER_VERSION=1.2.0 SERVER_VERSION=2.6
41+
addons:
42+
apt:
43+
sources: [ mongodb-upstart ]
44+
packages: [ mongodb-org, *common_packages ]
45+
- php: 7.0
46+
env: DRIVER_VERSION=1.2.0 SERVER_VERSION=3.0
47+
addons:
48+
apt:
49+
sources: [ mongodb-3.0-precise ]
50+
packages: [ mongodb-org, *common_packages ]
51+
- php: 7.0
52+
env: DRIVER_VERSION=1.2.0 SERVER_VERSION=3.2
53+
addons:
54+
apt:
55+
sources: [ mongodb-3.2-precise ]
56+
packages: [ mongodb-org, *common_packages ]
57+
- php: 7.0
58+
env: DRIVER_VERSION=devel SERVER_VERSION=3.4
59+
addons: *common_addons
4760

4861
before_script:
49-
- phpenv config-rm xdebug.ini
50-
- if dpkg --compare-versions ${SERVER_VERSION} le "2.4"; then export SERVER_SERVICE=mongodb; else export SERVER_SERVICE=mongod; fi
51-
- if ! nc -z localhost 27017; then sudo service ${SERVER_SERVICE} start; fi
5262
- mongod --version
63+
- mongo --eval 'var v = db.runCommand({buildInfo:1}).versionArray; if ((v[0] == 3 && v[1] >= 4) || v[0] >= 4) db.adminCommand({setFeatureCompatibilityVersion:"3.4"});'
5364
- pecl install -f mongodb-${DRIVER_VERSION}
54-
- if [ "$(php -v | grep 'PHP 5.4')" ]; then echo 'extension = mongodb.so' >> ~/.phpenv/versions/$(phpenv version-name)/etc/php.ini; fi
5565
- php --ri mongodb
5666
- composer install --dev --no-interaction --prefer-source
5767
- ulimit -c

0 commit comments

Comments
 (0)