Skip to content

Instantly share code, notes, and snippets.

@shiv122
Created October 18, 2023 07:14
Show Gist options
  • Save shiv122/fa7f48d7ca850eb0ac72495d2eb6c2d2 to your computer and use it in GitHub Desktop.
Save shiv122/fa7f48d7ca850eb0ac72495d2eb6c2d2 to your computer and use it in GitHub Desktop.
Laravel CI (GH Action)
name: CI
on:
pull_request:
branches:
- main
push:
branches:
- main
jobs:
tests:
runs-on: ubuntu-latest
services:
mysql:
image: mysql:8.0
env:
MYSQL_ALLOW_EMPTY_PASSWORD: yes
MYSQL_DATABASE: test
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 1
- name: Cache composer dependencies
uses: actions/cache@v2
with:
path: vendor
key: composer-${{ hashFiles('**/composer.lock') }}
restore-keys: |
composer-
- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.1
- name: Install composer dependencies
run: |
composer install --no-scripts
- name: Prepare Laravel Application
run: |
cp .env.ci .env
php artisan key:generate
- name: Run Test suite
run: php artisan test
- name: Install NPM dependencies
run: npm install
- name: Compile assets
run: npm run build
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment