fixed roles table #10
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Laravel and React Test | |
on: | |
push: | |
branches: | |
- main | |
- develop | |
pull_request: | |
branches: | |
- main | |
- develop | |
jobs: | |
laravel-tests: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v3 | |
- name: Install Docker Compose | |
run: | | |
sudo curl -L "https://github.com/docker/compose/releases/download/v2.12.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | |
sudo chmod +x /usr/local/bin/docker-compose | |
docker-compose --version | |
- name: Set up Docker Compose | |
run: docker-compose up -d | |
- name: Generate Default .env File | |
run: | | |
cat <<EOT > backend/.env | |
APP_NAME=Laravel | |
APP_ENV=local | |
APP_KEY= | |
APP_DEBUG=true | |
APP_URL=http://localhost | |
DB_CONNECTION=sqlite | |
DB_DATABASE=/var/www/database/database.sqlite | |
TEST_DB_CONNECTION=sqlite | |
TEST_DB_DATABASE=/var/www/database/database_test.sqlite | |
EOT | |
- name: Create SQLite Databases | |
run: | | |
docker-compose exec backend mkdir -p /var/www/database | |
docker-compose exec backend touch /var/www/database/database.sqlite | |
- name: Install Backend Dependencies | |
run: | | |
docker-compose exec backend composer install | |
docker-compose exec backend php artisan key:generate | |
docker-compose exec backend php artisan migrate | |
- name: Run Laravel Tests | |
run: | | |
docker-compose exec backend php artisan tinker --execute "DB::table('roles')->insert(['role_id' => 1, 'role_type' => 'client']);" | |
docker-compose exec backend cp /var/www/database/database.sqlite /var/www/database/database_test.sqlite | |
docker-compose exec backend php artisan test | |
- name: Verify Frontend | |
run: | | |
docker-compose exec frontend npm install | |
docker-compose exec frontend npm test | |
docker-compose exec frontend npm run build | |
- name: Check Backend Logs (if failure) | |
if: failure() | |
run: docker-compose logs backend | |
- name: Tear Down Docker Compose | |
if: always() | |
run: docker-compose down |