laravel5.yml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  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. # sudo Xvfb -ac :99 -screen 0 1280x1024x24 > /dev/null 2>&1 & # optional
  22. - uses: actions/checkout@v2
  23. - name: Validate composer.json and composer.lock
  24. run:
  25. composer self-update --2
  26. composer validate --strict
  27. - name: Install dependencies
  28. run:
  29. travis_retry composer create-project --prefer-dist laravel/laravel laravel-tests 5.*
  30. cp -f ./tests/resources/stubs/artisan ./laravel-tests/
  31. cp -f ./tests/resources/stubs/ComposerConfigCommand.php ./laravel-tests/app/
  32. mkdir ./laravel-tests/dcat-admin
  33. cp -rf ./config ./laravel-tests/dcat-admin
  34. cp -rf ./database ./laravel-tests/dcat-admin
  35. cp -rf ./resources ./laravel-tests/dcat-admin
  36. cp -rf ./src ./laravel-tests/dcat-admin
  37. cp -rf ./tests ./laravel-tests/dcat-admin
  38. cp -rf ./composer.json ./laravel-tests/dcat-admin
  39. rm -rf ./laravel-tests/tests
  40. cp -rf ./tests ./laravel-tests/tests
  41. cp -f ./phpunit.dusk.xml ./laravel-tests
  42. cp -f ./.env.testing ./laravel-tests/.env
  43. cd ./laravel-tests
  44. php artisan admin:composer-config
  45. travis_retry composer require dcat/laravel-admin:*@dev
  46. travis_retry composer require laravel/dusk --dev # --ignore-platform-reqs
  47. # - travis_retry composer require --dev staudenmeir/dusk-updater:"^1.1"
  48. - name: Create Database
  49. run: |
  50. mkdir -p database
  51. touch database/database.sqlite
  52. - name: Execute tests (Unit and Feature tests) via PHPUnit
  53. env:
  54. DB_CONNECTION: sqlite
  55. DB_DATABASE: database/database.sqlite
  56. - name: Install Adminn
  57. run: php artisan admin:publish --force
  58. php artisan admin:install
  59. php artisan migrate:rollback
  60. php artisan dusk:chrome-driver 89
  61. cp -f ./tests/routes.php ./app/Admin/
  62. cp -rf ./tests/resources/config ./config/
  63. - name: Start Server
  64. run: export DISPLAY=:99.0
  65. sudo sh -e /etc/init.d/xvfb start
  66. ./vendor/laravel/dusk/bin/chromedriver-linux --headless --disable-gpu --remote-debugging-port=9515 http://localhost &
  67. php artisan serve &
  68. - name: Run test suite
  69. run: php artisan dusk