laravel5.yml 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. name: Dcat Admin Laravel v5
  2. on:
  3. push:
  4. branches: [ 2.0 ]
  5. pull_request:
  6. branches: [ 2.0 ]
  7. jobs:
  8. build:
  9. runs-on: ubuntu-latest
  10. steps:
  11. - uses: shivammathur/setup-php@b7d1d9c9a92d8d8463ce36d7f60da34d461724f8
  12. with:
  13. php-version: '7.1'
  14. - uses: nanasess/setup-chromedriver@master
  15. with:
  16. # Optional: do not specify to match Chrome's version
  17. chromedriver-version: '89.0.4389.82'
  18. - run: |
  19. export DISPLAY=:99
  20. chromedriver --url-base=/wd/hub &
  21. - uses: actions/checkout@v2
  22. - name: Validate composer.json and composer.lock
  23. run:
  24. composer self-update --2
  25. composer validate --strict
  26. - name: Install dependencies
  27. run:
  28. travis_retry composer create-project --prefer-dist laravel/laravel laravel-tests 5.*
  29. cp -f ./tests/resources/stubs/artisan ./laravel-tests/
  30. cp -f ./tests/resources/stubs/ComposerConfigCommand.php ./laravel-tests/app/
  31. mkdir ./laravel-tests/dcat-admin
  32. cp -rf ./config ./laravel-tests/dcat-admin
  33. cp -rf ./database ./laravel-tests/dcat-admin
  34. cp -rf ./resources ./laravel-tests/dcat-admin
  35. cp -rf ./src ./laravel-tests/dcat-admin
  36. cp -rf ./tests ./laravel-tests/dcat-admin
  37. cp -rf ./composer.json ./laravel-tests/dcat-admin
  38. rm -rf ./laravel-tests/tests
  39. cp -rf ./tests ./laravel-tests/tests
  40. cp -f ./phpunit.dusk.xml ./laravel-tests
  41. cp -f ./.env.testing ./laravel-tests/.env
  42. cd ./laravel-tests
  43. php artisan admin:composer-config
  44. travis_retry composer require dcat/laravel-admin:*@dev
  45. travis_retry composer require laravel/dusk --dev # --ignore-platform-reqs
  46. - name: Create Database
  47. run: |
  48. mkdir -p database
  49. touch database/database.sqlite
  50. - name: Execute tests (Unit and Feature tests) via PHPUnit
  51. env:
  52. DB_CONNECTION: sqlite
  53. DB_DATABASE: database/database.sqlite
  54. - name: Install Adminn
  55. run: php artisan admin:publish --force
  56. php artisan admin:install
  57. php artisan migrate:rollback
  58. php artisan dusk:chrome-driver 89
  59. cp -f ./tests/routes.php ./app/Admin/
  60. cp -rf ./tests/resources/config ./config/
  61. - name: Start Server
  62. run: export DISPLAY=:99.0
  63. sudo sh -e /etc/init.d/xvfb start
  64. ./vendor/laravel/dusk/bin/chromedriver-linux --headless --disable-gpu --remote-debugging-port=9515 http://localhost &
  65. php artisan serve &
  66. - name: Run test suite
  67. run: php artisan dusk