]> BookStack Code Mirror - bookstack/commitdiff
Add testing via GitHub actions (#1657)
authorDan Brown <redacted>
Thu, 12 Sep 2019 20:19:05 +0000 (21:19 +0100)
committerGitHub <redacted>
Thu, 12 Sep 2019 20:19:05 +0000 (21:19 +0100)
To replace Travis CI. Travis to be removed after migration to Laravel 6.

.github/workflows/phpunit.yml [new file with mode: 0644]
readme.md

diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml
new file mode 100644 (file)
index 0000000..d1b458b
--- /dev/null
@@ -0,0 +1,26 @@
+name: phpunit
+
+on: [push, pull_request]
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+    strategy:
+      matrix:
+        php: [7.2, 7.3]
+    steps:
+    - uses: actions/checkout@v1
+    - 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 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 & Test
+      run: composer install --prefer-dist --no-interaction
+    - 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
index 2efc6b160e853acd4fc6386d44ffe80f4af175b7..489fc33652827022f3775086cf1d30a5cbd00033 100644 (file)
--- a/readme.md
+++ b/readme.md
@@ -2,7 +2,7 @@
 
 [![GitHub release](https://img.shields.io/github/release/BookStackApp/BookStack.svg)](https://github.com/BookStackApp/BookStack/releases/latest)
 [![license](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/BookStackApp/BookStack/blob/master/LICENSE)
-[![Build Status](https://travis-ci.org/BookStackApp/BookStack.svg)](https://travis-ci.org/BookStackApp/BookStack)
+[![Build Status](https://github.com/BookStackApp/BookStack/workflows/phpunit/badge.svg)](https://github.com/BookStackApp/BookStack/actions)
 [![Discord](https://img.shields.io/static/v1?label=Chat&message=Discord&color=738adb&logo=discord)](https://discord.gg/ztkBqR2)
 
 A platform for storing and organising information and documentation. General information and documentation for BookStack can be found at https://www.bookstackapp.com/.