diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..b7a46e9 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,29 @@ +name: CI + +on: + push: + pull_request: + workflow_dispatch: + # Every day at 4:00pm UTC + schedule: + - cron: '0 16 * * *' + +jobs: + ci: + name: CI + # Only run cron on the silverstripe account + if: (github.event_name == 'schedule' && startsWith(github.repository, 'silverstripe/')) || (github.event_name != 'schedule') + uses: silverstripe/gha-ci/.github/workflows/ci.yml@v1 + with: + # installer contains a sample behat.yml file, though there are no behat tests to run + endtoend: false + extra_jobs: | + - endtoend: true + endtoend_suite: admin + endtoend_config: vendor/silverstripe/admin/behat.yml + - endtoend: true + endtoend_suite: asset-admin + endtoend_config: vendor/silverstripe/asset-admin/behat.yml + - endtoend: true + endtoend_suite: cms + endtoend_config: vendor/silverstripe/cms/behat.yml diff --git a/.github/workflows/keepalive.yml b/.github/workflows/keepalive.yml new file mode 100644 index 0000000..4164686 --- /dev/null +++ b/.github/workflows/keepalive.yml @@ -0,0 +1,17 @@ +name: Keepalive + +on: + workflow_dispatch: + # The 8th of every month at 4:50pm UTC + schedule: + - cron: '50 16 8 * *' + +jobs: + keepalive: + name: Keepalive + # Only run cron on the silverstripe account + if: (github.event_name == 'schedule' && startsWith(github.repository, 'silverstripe/')) || (github.event_name != 'schedule') + runs-on: ubuntu-latest + steps: + - name: Keepalive + uses: silverstripe/gha-keepalive@v1 diff --git a/README.md b/README.md index d46735d..c0473b8 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ ## Overview -[![Build Status](https://api.travis-ci.com/silverstripe/silverstripe-installer.svg?branch=4)](https://travis-ci.com/silverstripe/silverstripe-installer) +[![CI](https://github.com/silverstripe/silverstripe-installer/actions/workflows/ci.yml/badge.svg)](https://github.com/silverstripe/silverstripe-installer/actions/workflows/ci.yml) Base project folder for a Silverstripe ([http://silverstripe.org](http://silverstripe.org)) installation. Required modules are installed via [http://github.com/silverstripe/recipe-cms](http://github.com/silverstripe/recipe-cms). For information on how to change the dependencies in a recipe, please have a look at [https://github.com/silverstripe/recipe-plugin](https://github.com/silverstripe/recipe-plugin). In addition, installer includes [theme/simple](https://github.com/silverstripe-themes/silverstripe-simple) as a default theme. diff --git a/composer.json b/composer.json index 69f957a..15115cd 100644 --- a/composer.json +++ b/composer.json @@ -10,7 +10,9 @@ "silverstripe/login-forms": "4.x-dev" }, "require-dev": { - "phpunit/phpunit": "^9.5" + "silverstripe/recipe-testing": "^2", + "silverstripe/frameworktest": "^0.4.2", + "mikey179/vfsstream": "^1.6.10" }, "extra": { "project-files": [