f8e6172582
Old branch filters did not seem to work since they are supposed to reference the target branch, not source branch. Instead used if statement to prevent run on crowdin branch.
52 lines
1.6 KiB
YAML
52 lines
1.6 KiB
YAML
name: phpunit
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build:
|
|
if: ${{ github.ref != 'refs/heads/l10n_development' }}
|
|
runs-on: ubuntu-20.04
|
|
strategy:
|
|
matrix:
|
|
php: ['7.4', '8.0', '8.1']
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
|
|
- name: Setup PHP
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: ${{ matrix.php }}
|
|
extensions: gd, mbstring, json, curl, xml, mysql, ldap
|
|
|
|
- name: Get Composer Cache Directory
|
|
id: composer-cache
|
|
run: |
|
|
echo "::set-output name=dir::$(composer config cache-files-dir)"
|
|
|
|
- name: Cache composer packages
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: ${{ steps.composer-cache.outputs.dir }}
|
|
key: ${{ runner.os }}-composer-${{ matrix.php }}
|
|
|
|
- name: Start Database
|
|
run: |
|
|
sudo systemctl start mysql
|
|
|
|
- name: Setup Database
|
|
run: |
|
|
mysql -uroot -proot -e 'CREATE DATABASE IF NOT EXISTS `bookstack-test`;'
|
|
mysql -uroot -proot -e "CREATE USER 'bookstack-test'@'localhost' IDENTIFIED WITH mysql_native_password BY 'bookstack-test';"
|
|
mysql -uroot -proot -e "GRANT ALL ON \`bookstack-test\`.* TO 'bookstack-test'@'localhost';"
|
|
mysql -uroot -proot -e 'FLUSH PRIVILEGES;'
|
|
|
|
- name: Install composer dependencies
|
|
run: composer install --prefer-dist --no-interaction --ansi
|
|
|
|
- name: Migrate and seed the database
|
|
run: |
|
|
php${{ matrix.php }} artisan migrate --force -n --database=mysql_testing
|
|
php${{ matrix.php }} artisan db:seed --force -n --class=DummyContentSeeder --database=mysql_testing
|
|
|
|
- name: phpunit
|
|
run: php${{ matrix.php }} ./vendor/bin/phpunit
|