-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy path.travis.yml
54 lines (48 loc) · 2.8 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
---
language: generic
# Use the new container infrastructure
sudo: required
env:
- PHP_VERSION=7.1 SYMFONY_VERSION=3
- PHP_VERSION=7.1 SYMFONY_VERSION=4
- PHP_VERSION=7.2 SYMFONY_VERSION=3
- PHP_VERSION=7.2 SYMFONY_VERSION=4
- PHP_VERSION=7.3 SYMFONY_VERSION=4
- PHP_VERSION=7.4 SYMFONY_VERSION=5
- PHP_VERSION=8.0 SYMFONY_VERSION=5
- PHP_VERSION=8.1 SYMFONY_VERSION=5
- PHP_VERSION=8.5 SYMFONY_VERSION=5
services:
- docker
cache:
directories:
- $HOME/.composer
install:
- cd $PHP_VERSION
- echo ${DOCKER_PASSWORD} | docker login --username ${DOCKER_USERNAME} --password-stdin
# Build image
- sudo docker build . -t kibatic/symfony:$PHP_VERSION
# Check installed php version
- sudo docker run -it kibatic/symfony:$PHP_VERSION php --version | grep "PHP $PHP_VERSION"
- sudo docker build -f tests/Dockerfile . -t kibatic/symfony-demo:$PHP_VERSION
- export SYMFONY_DEMO_VERSION="v1.0.5"
- if [ "$SYMFONY_VERSION" = "4" ]; then export SYMFONY_DEMO_VERSION="v1.4.4"; fi
- if [ "$SYMFONY_VERSION" = "5" ]; then export SYMFONY_DEMO_VERSION="v1.6.4"; fi
- if [ "$SYMFONY_VERSION" = "5" -a "$PHP_VERSION" = "8.0" ]; then export SYMFONY_DEMO_VERSION="main"; fi
- if [ "$SYMFONY_VERSION" = "5" -a "$PHP_VERSION" = "8.1" ]; then export SYMFONY_DEMO_VERSION="main"; fi
- if [ "$SYMFONY_VERSION" = "5" -a "$PHP_VERSION" = "8.2" ]; then export SYMFONY_DEMO_VERSION="main"; fi
script:
- git clone https://github.com/symfony/symfony-demo symfony; cd symfony; git checkout $SYMFONY_DEMO_VERSION
- sudo docker run --rm -v $(pwd):/var/www -v $HOME/.composer:/root/.composer kibatic/symfony-demo:$PHP_VERSION composer install --no-progress || true
- sudo docker run --rm --name symfony -d -p 8001:80 -e SYMFONY_VERSION=$SYMFONY_VERSION -v $(pwd):/var/www kibatic/symfony-demo:$PHP_VERSION
- sleep 10
- sudo docker run --rm $( if [ "$SYMFONY_DEMO_VERSION" == "v1.0.5" ]; then printf %s "-e SYMFONY_PHPUNIT_VERSION=5.7.27"; fi; ) -e SYMFONY_DEPRECATIONS_HELPER=disabled -v $(pwd):/var/www kibatic/symfony-demo:$PHP_VERSION vendor/bin/simple-phpunit
- curl -s localhost:8001 | grep -q "Symfony Demo application"
- if [ "$SYMFONY_VERSION" = "4" ] || [ "$SYMFONY_VERSION" = "5" ]; then curl -s localhost:8001/_profiler/phpinfo | grep 'opcache.validate_timestamps</td><td class="v">On</td><td class="v">On</td>'; fi;
- docker kill symfony
- sudo docker run -e PERFORMANCE_OPTIM=true --rm --name symfony -d -p 8001:80 -e SYMFONY_VERSION=$SYMFONY_VERSION -v $(pwd):/var/www kibatic/symfony-demo:$PHP_VERSION
- sleep 10
- curl -s localhost:8001 | grep -q "Symfony Demo application"
- if [ "$SYMFONY_VERSION" = "4" ] || [ "$SYMFONY_VERSION" = "5" ]; then curl -s localhost:8001/_profiler/phpinfo | grep 'opcache.validate_timestamps</td><td class="v">Off</td><td class="v">Off</td>'; fi
notifications:
email: true