diff --git a/README.md b/README.md index 3bf14f5d..c10339dd 100644 --- a/README.md +++ b/README.md @@ -129,6 +129,11 @@ jobs: ``` +### Examples + +- [Laravel](./example/laravel.yml) + + ## :scroll: License The scripts and documentation in this project are released under the [MIT License](LICENSE). This project has multiple [dependencies](https://github.com/shivammathur/setup-php/network/dependencies) and their licenses can be found in their respective repositories. diff --git a/example/laravel.yml b/example/laravel.yml new file mode 100644 index 00000000..38ff0d0b --- /dev/null +++ b/example/laravel.yml @@ -0,0 +1,58 @@ +name: Laravel + +on: [push, pull_request] + +jobs: + + phpunit: + name: PHPUnit (PHP ${{ matrix.php-versions }} on ${{ matrix.operating-system }}) + runs-on: ubuntu-latest + env: + DB_PASSWORD: password + BROADCAST_DRIVER: log + CACHE_DRIVER: redis + QUEUE_CONNECTION: redis + SESSION_DRIVER: redis + services: + mysql: + image: mysql:5.7 + env: + MYSQL_ALLOW_EMPTY_PASSWORD: false + MYSQL_ROOT_PASSWORD: password + MYSQL_DATABASE: laravel + ports: + - 3306 + options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 + redis: + image: redis + ports: + - 6379/tcp + options: --health-cmd="redis-cli ping" --health-interval=10s --health-timeout=5s --health-retries=3 + strategy: + fail-fast: false + max-parallel: 15 + matrix: + operating-system: [ubuntu-latest, windows-latest, macOS-latest] + php-versions: ['7.2', '7.3'] + steps: + - name: Checkout + uses: actions/checkout@v1 + - name: Install PHP + uses: shivammathur/setup-php@master #https://github.com/shivammathur/setup-php + with: + php-version: ${{ matrix.php-versions }} + extension-csv: mbstring, xdebug #optional + ini-values-csv: "post_max_size=256M, short_open_tag=On" #optional + coverage: xdebug #optional + - name: Install Composer dependencies + run: composer install --no-progress --no-suggest --prefer-dist --optimize-autoloader + - name: Prepare the application + run: | + cp .env.example .env + php artisan key:generate + - name: Clear Config + run: php artisan config:clear + - name: Run Migration + run: php artisan migrate -v + env: + DB_PORT: ${{ job.services.mysql.ports['3306'] }} \ No newline at end of file