Bitbucket pipelines + php unit tests

Для сборки билда теперь можно использовать встроенный CI от Bitbucket. Для этого достаточно подключить Pipelines в настройках репозитория и создать примерно такой yml файл:

image: [ваш docker image]

pipelines:
  default:
    - step:
        script:
          - composer global require "fxp/composer-asset-plugin:^1.2.0"
          - composer install
          - php yii migrate --interactive=0
          - mysql -h 127.0.0.1 -u user --password=password db < config/dev.sql
          - php -S 127.0.0.1:5000 -t web >/dev/null 2>&1 &
          - cd tests && ../vendor/bin/codecept run
        services:
          - mysql
definitions:
  services:
    mysql:
      image: mysql
      environment:
        MYSQL_DATABASE: 'db'
        MYSQL_RANDOM_ROOT_PASSWORD: 'yes'
        MYSQL_USER: 'user'
        MYSQL_PASSWORD: 'password'

При помощи данного pipeline вы можете прогонять как просто unit так и интеграционные тесты с использованием базы данных. Для популяции базы данных сначала накатываются миграции проекта, а затем и дамп sql.

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *