|
|
@ -1,4 +1,4 @@
|
|
|
|
name: Laravel
|
|
|
|
name: Laravel test via MySQL
|
|
|
|
|
|
|
|
|
|
|
|
on:
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
push:
|
|
|
@ -11,32 +11,45 @@ jobs:
|
|
|
|
|
|
|
|
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
services:
|
|
|
|
|
|
|
|
mysql:
|
|
|
|
|
|
|
|
image: mysql:5.7
|
|
|
|
|
|
|
|
env:
|
|
|
|
|
|
|
|
MYSQL_DATABASE: test_db
|
|
|
|
|
|
|
|
MYSQL_USER: user
|
|
|
|
|
|
|
|
MYSQL_PASSWORD: secret
|
|
|
|
|
|
|
|
MYSQL_ROOT_PASSWORD: secretroot
|
|
|
|
|
|
|
|
ports:
|
|
|
|
|
|
|
|
- 3306
|
|
|
|
|
|
|
|
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
|
|
|
|
|
|
|
|
|
|
|
|
steps:
|
|
|
|
steps:
|
|
|
|
- uses: shivammathur/setup-php@15c43e89cdef867065b0213be354c2841860869e
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
with:
|
|
|
|
|
|
|
|
php-version: '8.1'
|
|
|
|
- name: Verify MySQL connection
|
|
|
|
- uses: actions/checkout@v3
|
|
|
|
run: |
|
|
|
|
|
|
|
|
mysql --version
|
|
|
|
|
|
|
|
sudo apt-get install -y mysql-client
|
|
|
|
|
|
|
|
mysql --host 127.0.0.1 --port ${{ job.services.mysql.ports['3306'] }} -uuser -psecret -e "SHOW DATABASES"
|
|
|
|
- name: Copy .env
|
|
|
|
- name: Copy .env
|
|
|
|
run: php -r "file_exists('.env') || copy('.env.example', '.env');"
|
|
|
|
run: php -r "file_exists('.env') || copy('.env.github', '.env');"
|
|
|
|
|
|
|
|
|
|
|
|
- name: Install Dependencies
|
|
|
|
- name: Install Dependencies
|
|
|
|
# run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
|
|
|
|
run: composer install -q --no-ansi --no-interaction --no-scripts --no-suggest --no-progress --prefer-dist
|
|
|
|
run: composer update -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
|
|
|
|
|
|
|
|
# - name: Compser dump
|
|
|
|
|
|
|
|
# run: composer dump-autoload --no-ansi --no-interaction --no-scripts
|
|
|
|
|
|
|
|
- name: Directory Permissions
|
|
|
|
- name: Directory Permissions
|
|
|
|
run: chmod -R 777 storage bootstrap/cache
|
|
|
|
run: chmod -R 777 storage bootstrap/cache
|
|
|
|
- name: Create Database
|
|
|
|
|
|
|
|
run: |
|
|
|
|
|
|
|
|
mkdir -p database
|
|
|
|
|
|
|
|
touch database/database.sqlite
|
|
|
|
|
|
|
|
- name: Execute tests (Unit and Feature tests) via PHPUnit
|
|
|
|
- name: Execute tests (Unit and Feature tests) via PHPUnit
|
|
|
|
env:
|
|
|
|
env:
|
|
|
|
DB_CONNECTION: sqlite
|
|
|
|
MYSQL_DATABASE: test_db
|
|
|
|
DB_DATABASE: database/database.sqlite
|
|
|
|
DB_USERNAME: user
|
|
|
|
run: vendor/bin/phpunit
|
|
|
|
DB_PASSWORD: secret
|
|
|
|
- name: Generate key
|
|
|
|
DB_PORT: ${{ job.services.mysql.ports[3306] }}
|
|
|
|
run: php artisan key:generate
|
|
|
|
run: php artisan key:generate
|
|
|
|
|
|
|
|
|
|
|
|
- name: Database seeder test
|
|
|
|
- name: Database seeder test
|
|
|
|
run: php artisan migrate:fresh --seed
|
|
|
|
run: php artisan migrate:fresh --seed
|
|
|
|
|
|
|
|
|
|
|
|
- name : Developer test
|
|
|
|
- name : Developer test
|
|
|
|
run: php artisan test
|
|
|
|
run: php artisan tes
|
|
|
|