Commit ae7b1a9e authored by Jens Segers's avatar Jens Segers

🐳 New travis docker setup

parent bdb15c94
sudo: required language: minimal
dist: trusty
language: php matrix:
php: include:
- "7.2" - name: "7.1"
- "7.1" env: PHP_VERSION=7.1
- name: "7.2"
env: PHP_VERSION=7.2
- name: "7.3"
env: PHP_VERSION=7.3
services: services:
- docker - docker
cache:
directories:
- $HOME/.composer/cache
install: install:
- docker version - docker version
- sudo pip install docker-compose - sudo pip install docker-compose
- docker-compose version - docker-compose version
- cat Dockerfile - docker-compose build --build-arg PHP_VERSION=${PHP_VERSION}
- docker-compose build --build-arg PHP_VERSION=${TRAVIS_PHP_VERSION} - docker-compose run --rm tests composer install --no-interaction
script: script:
- docker-compose up --exit-code-from php - docker-compose run --rm tests ./vendor/bin/phpunit --coverage-clover ./clover.xml
ARG PHP_VERSION=7.2 ARG PHP_VERSION=7.2
ARG COMPOSER_VERSION=1.8
FROM composer:${COMPOSER_VERSION}
FROM php:${PHP_VERSION}-cli FROM php:${PHP_VERSION}-cli
RUN pecl install xdebug
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y autoconf pkg-config libssl-dev git zlib1g-dev apt-get install -y autoconf pkg-config libssl-dev git libzip-dev zlib1g-dev && \
pecl install mongodb && docker-php-ext-enable mongodb && \
RUN pecl install mongodb && docker-php-ext-enable mongodb && \ pecl install xdebug && docker-php-ext-enable xdebug && \
docker-php-ext-install -j$(nproc) pdo pdo_mysql zip && docker-php-ext-enable xdebug docker-php-ext-install -j$(nproc) pdo_mysql zip
RUN curl -sS https://getcomposer.org/installer | php \ COPY --from=composer /usr/bin/composer /usr/local/bin/composer
&& mv composer.phar /usr/local/bin/ \
&& ln -s /usr/local/bin/composer.phar /usr/local/bin/composer
ENV PATH="~/.composer/vendor/bin:./vendor/bin:${PATH}" WORKDIR /code
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
"illuminate/container": "^5.8", "illuminate/container": "^5.8",
"illuminate/database": "^5.8", "illuminate/database": "^5.8",
"illuminate/events": "^5.8", "illuminate/events": "^5.8",
"mongodb/mongodb": "^1.0.0" "mongodb/mongodb": "^1.0"
}, },
"require-dev": { "require-dev": {
"phpunit/phpunit": "^6.0|^7.0", "phpunit/phpunit": "^6.0|^7.0",
......
version: '3' version: '3'
services: services:
php: tests:
container_name: php container_name: tests
build: build:
context: . context: .
dockerfile: Dockerfile dockerfile: Dockerfile
volumes: volumes:
- .:/code - .:/code
working_dir: /code working_dir: /code
command: bash -c "composer install --prefer-source --no-interaction && php ./vendor/bin/phpunit"
depends_on: depends_on:
- mysql
- mongodb - mongodb
- mysql
mysql: mysql:
container_name: mysql container_name: mysql
...@@ -27,5 +26,7 @@ services: ...@@ -27,5 +26,7 @@ services:
mongodb: mongodb:
container_name: mongodb container_name: mongodb
image: mongo image: mongo
ports:
- 27017:27017
logging: logging:
driver: none driver: none
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment