При работе с пакетом laravel 5.1+ у меня есть необходимость запуска автоматических тестов через travis-ci.org. Разница с регулярными автоматическими тестами - это требование включить этот пакет в структуру и задать конкретные параметры конфигурации для запуска тестов.Конфигурация Travis для композиционных пакетов
Так что требование было бы:
- установить Laravel
- добавить свой пакет в зависимости
- установить некоторый Travis специфических конфигураций, как доступ к базе данных Трэвиса
- прогоны миграции Laravel
- выполнение миграция, специфичная для пакета, или запуск команды ремесленника
- выполнение отдельных модульных тестов
Я искал везде; спросил по телефону laravel forums, спросил в чат-сообществе travis и увидел, что this topic закрыт как слишком локализованный (хотя ответ, безусловно, был бы полезен сейчас). Я надеюсь, что мой вопрос будет оставаться открытым.
В это время у меня следующая конфигурация:
language: php
php:
- 5.5
- 5.6
- hhvm
addons:
hosts:
- system.hyn.me
- tenant.hyn.me
before_install:
- sudo composer self-update
install:
- composer create-project laravel/laravel
- cd ./laravel
- composer require hyn-me/multi-tenant ~0.1.0
- composer update
before_script:
- cp .env.travis .env
- export APP_ENV="testing"
- php artisan migrate -q -n --path ./vendor/hyn-me/multi-tenant/src/migrations
- cd ./vendor/hyn-me/multi-tenant
script: phpunit
Но мое знание Travis (до сих пор) ограниченно и прежде чем отправить в ненужной количестве фиксаций, чтобы исправить свои проблемы, я бы предпочел ваше мнение о том, что было бы хорошим методом для проверки интеграции в рамки.
Ps. это касается пакета hyn/multi-tenant.
Посоветуйте, как сохранить этот вопрос как можно более общий, было бы полезно. Надеюсь, что без явного упоминания передовой практики и запроса интеграции в примеры структуры помогает определить объем ответов.