Skip to content

Commit 785dc87

Browse files
committed
build: use Docker containers in Travis CI
1 parent ac7b455 commit 785dc87

File tree

1 file changed

+31
-27
lines changed

1 file changed

+31
-27
lines changed

.travis.yml

Lines changed: 31 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,28 @@
11
language: node_js
22
node_js:
3-
- '0.6'
4-
- '0.8'
5-
- '0.10'
6-
- '0.12'
7-
- '1.8'
8-
- '2.5'
9-
- '3.3'
10-
- '4.2.0' # Test timers regression
11-
- '4.8'
12-
- '5.12'
13-
- '6.10'
14-
- '7.6'
15-
3+
- "0.6"
4+
- "0.8"
5+
- "0.10"
6+
- "0.12"
7+
- "1.8"
8+
- "2.5"
9+
- "3.3"
10+
- "4.2.0" # Test timers regression
11+
- "4.8"
12+
- "5.12"
13+
- "6.10"
14+
- "7.6"
15+
env:
16+
- "DOCKER_MYSQL_TYPE=mysql DOCKER_MYSQL_VERSION=5.5"
1617
matrix:
1718
include:
18-
- node_js: '4.8'
19-
env: MYSQL_TYPE=mariadb MYSQL_HOST=localhost MYSQL_DATABASE=node_mysql MYSQL_USER=root MYSQL_PASSWORD=
20-
addons: {mariadb: '10.1'}
19+
- node_js: "6.10"
20+
env: "DOCKER_MYSQL_TYPE=mariadb DOCKER_MYSQL_VERSION=10.1"
2121

22-
sudo: false
22+
dist: trusty
23+
sudo: required
24+
services:
25+
- docker
2326

2427
cache:
2528
directories:
@@ -35,8 +38,18 @@ before_install:
3538
- "test ! -d node_modules || npm prune"
3639
- "test ! -d node_modules || npm rebuild"
3740

41+
# Setup environment
42+
- "export MYSQL_DATABASE=node_mysql"
43+
- "export MYSQL_USER=root"
44+
45+
install:
46+
- "docker run -d --name mysql -e MYSQL_ALLOW_EMPTY_PASSWORD=yes -e MYSQL_DATABASE=$MYSQL_DATABASE $DOCKER_MYSQL_TYPE:$DOCKER_MYSQL_VERSION"
47+
- "npm install"
48+
- "docker run --link mysql:db -e CHECK_PORT=3306 -e CHECK_HOST=db giorgos/takis"
49+
3850
before_script:
39-
- "mysql -e 'create database node_mysql; select version();'"
51+
- "docker --version"
52+
- "docker exec mysql mysql -e 'select version()'"
4053

4154
script:
4255
# Run test script, depending on istanbul install
@@ -46,12 +59,3 @@ script:
4659

4760
after_script:
4861
- "test -e ./coverage/lcov.info && npm install coveralls@2 && cat ./coverage/lcov.info | coveralls"
49-
50-
env:
51-
- MYSQL_TYPE=mysql MYSQL_HOST=localhost MYSQL_DATABASE=node_mysql MYSQL_USER=root MYSQL_PASSWORD=
52-
53-
mysql:
54-
adapter: mysql2
55-
username: root
56-
encoding: utf8
57-
database: node_mysql

0 commit comments

Comments
 (0)