-
Notifications
You must be signed in to change notification settings - Fork 2
/
.gitlab-ci.yml
53 lines (44 loc) · 1.98 KB
/
.gitlab-ci.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
# Configuration file for Gitlab's Continuous Integration
# https://docs.gitlab.com/ee/ci/yaml/
test:
# Use a generic docker image (see https://docs.gitlab.com/ee/ci/docker/using_docker_images.html)
# Note: with the php:xxx image we don't use debian's 'php' packages. Installing them won't work as expected.
# It would also be nice to assert support of 5.x and 7.x and 8.x series as well.
# Patch number is 14 right now and may grow; check
# https://hub.docker.com/_/php?tab=tags&page=1&ordering=last_updated&name=7.4
# for updates.
image: php:7.4.14
cache:
paths:
- vendor/
variables:
GIT_SUBMODULE_STRATEGY: recursive
before_script:
- apt-get update
# We show a fortune cookie when the feature suite passes
- apt-get install -y fortunes cowsay
# Install xdebug for code coverage
# We cannot use docker-php-ext-install here
- pecl install xdebug
- echo "zend_extension=xdebug.so" >> /usr/local/etc/php/php.ini
- echo "xdebug.coverage_enable=1" >> /usr/local/etc/php/php.ini
# Install Composer
# Remember, we can't use the php packages from debian repos in this image
# - apt-get install -y composer
- php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
- php composer-setup.php
- php -r "unlink('composer-setup.php');"
# Install PHP Vendors and autoloading goodies
- COMPOSER_MEMORY_LIMIT=4G php composer.phar install --no-interaction
# - docker-php-ext-install pdo_sqlite
# These scripts are also run as root
script:
# Configure the feature suite with the defaults
- cp behat.yml.dist behat.yml
# Configure JWT with dummy keys
- cp config/jwt/private.pem.dist config/jwt/private.pem
- cp config/jwt/public.pem.dist config/jwt/public.pem
# Run the feature suite, ignore Works in Progress and Not Continuous Integration
- vendor/bin/behat -vv --tags='~wip&&~noci'
# Remember to also set this using gitlab's CI Settings UI
# coverage: '/^\s*Lines:\s*(\d+\.\d+)%/'