.gitlab-ci.yml 2.63 KB
Newer Older
Erick Hitter's avatar
Erick Hitter committed
1 2 3 4
variables:
  # Configure mysql service (https://hub.docker.com/_/mysql/)
  MYSQL_DATABASE: wordpress_tests
  MYSQL_ROOT_PASSWORD: mysql
5
  WP_VERSION: latest
Erick Hitter's avatar
Erick Hitter committed
6 7 8 9 10 11 12 13

cache:
  paths:
    - $HOME/.composer
    - /root/.composer

before_script:
  # Set up WordPress tests
14
  - bash bin/install-wp-tests.sh $MYSQL_DATABASE root $MYSQL_ROOT_PASSWORD mysql $WP_VERSION true
Erick Hitter's avatar
Erick Hitter committed
15 16 17 18 19 20 21 22 23

  # PHPUnit
  - |
    if [[ $(php -v) =~ "PHP 7." ]]; then
      composer global require "phpunit/phpunit=6.1.*"
    else
      composer global require "phpunit/phpunit=4.8.*"
    fi

24 25 26
PHPunit:PHP5.3:MySQL:
  stage: test
  variables:
27
    WP_VERSION: '5.1'
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 55 56 57 58 59 60
  image: containers.ethitter.com:443/docker/images/php:5.3
  services:
    - mysql:5.6
  script:
    - find . -type "f" -iname "*.php" | xargs -L "1" php -l
    - phpunit

PHPunit:PHP5.6:MySQL:
  stage: test
  image: containers.ethitter.com:443/docker/images/php:5.6
  services:
    - mysql:5.6
  script:
    - find . -type "f" -iname "*.php" | xargs -L "1" php -l
    - phpunit

PHPunit:PHP7.0:MySQL:
  stage: test
  image: containers.ethitter.com:443/docker/images/php:7.0
  services:
    - mysql:5.6
  script:
    - find . -type "f" -iname "*.php" | xargs -L "1" php -l
    - phpunit

PHPunit:PHP7.1:MySQL:
  stage: test
  image: containers.ethitter.com:443/docker/images/php:7.1
  services:
    - mysql:5.6
  script:
    - find . -type "f" -iname "*.php" | xargs -L "1" php -l
    - phpunit
Erick Hitter's avatar
Erick Hitter committed
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78

PHPunit:PHP7.2:MySQL:
  stage: test
  image: containers.ethitter.com:443/docker/images/php:7.2
  services:
    - mysql:5.6
  script:
    - find . -type "f" -iname "*.php" | xargs -L "1" php -l
    - phpunit

PHPunit:PHP7.3:MySQL:
  stage: test
  image: containers.ethitter.com:443/docker/images/php:7.3
  services:
    - mysql:5.6
  script:
    - find . -type "f" -iname "*.php" | xargs -L "1" php -l
    - phpunit
79 80 81 82 83 84 85 86 87 88

PHPCS:
  stage: test
  image: containers.ethitter.com:443/docker/images/php:7.3
  before_script:
    - composer global require automattic/vipwpcs
    - composer global require phpcompatibility/phpcompatibility-wp
    - phpcs --config-set installed_paths $HOME/.composer/vendor/wp-coding-standards/wpcs,$HOME/.composer/vendor/automattic/vipwpcs,$HOME/.composer/vendor/phpcompatibility/php-compatibility,$HOME/.composer/vendor/phpcompatibility/phpcompatibility-paragonie,$HOME/.composer/vendor/phpcompatibility/phpcompatibility-wp
  script:
    - phpcs -n
Erick Hitter's avatar
Erick Hitter committed
89 90 91

PluginSVN:
  stage: deploy
92
  image: containers.ethitter.com:443/docker/wp-org-plugin-deploy:latest
Erick Hitter's avatar
Erick Hitter committed
93 94 95 96 97
  before_script:
    - curl -o ./bin/deploy.sh https://git-cdn.e15r.co/open-source/wp-org-plugin-deploy/raw/master/scripts/deploy.sh
    - chmod +x ./bin/deploy.sh
  script: ./bin/deploy.sh
  when: on_success