Dan Marsden
4 years ago
1 changed files with 109 additions and 0 deletions
@ -0,0 +1,109 @@ |
|||
name: Moodle Plugin CI |
|||
|
|||
# Run this workflow every time a new commit pushed to your repository |
|||
on: push |
|||
|
|||
jobs: |
|||
selftest: |
|||
name: CI test (make validate) |
|||
runs-on: ubuntu-18.04 |
|||
|
|||
steps: |
|||
- name: Check out repository code |
|||
uses: actions/checkout@v2 |
|||
|
|||
- name: Setup PHP 7.3 |
|||
uses: shivammathur/setup-php@v2 |
|||
with: |
|||
php-version: 7.3 |
|||
|
|||
- name: Initialise |
|||
run: make init |
|||
|
|||
- name: Validate |
|||
run: make validate |
|||
|
|||
citest: |
|||
name: CI test |
|||
needs: selftest |
|||
runs-on: ubuntu-18.04 |
|||
|
|||
services: |
|||
postgres: |
|||
image: postgres:9.6 |
|||
env: |
|||
POSTGRES_USER: 'postgres' |
|||
POSTGRES_HOST_AUTH_METHOD: 'trust' |
|||
# Health check to wait for postgres to start. |
|||
ports: |
|||
- 5432:5432 |
|||
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 3 |
|||
|
|||
strategy: |
|||
fail-fast: false |
|||
matrix: |
|||
include: |
|||
- php: '7.4' |
|||
moodle-branch: 'master' |
|||
- php: '7.4' |
|||
moodle-branch: 'MOODLE_311_STABLE' |
|||
- php: '7.4' |
|||
moodle-branch: 'MOODLE_310_STABLE' |
|||
- php: '7.4' |
|||
moodle-branch: 'MOODLE_39_STABLE' |
|||
- php: '7.4' |
|||
|
|||
steps: |
|||
- name: Check out repository code |
|||
uses: actions/checkout@v2 |
|||
|
|||
- name: Install node |
|||
uses: actions/setup-node@v1 |
|||
with: |
|||
node-version: '14.15.0' |
|||
|
|||
- name: Setup PHP ${{ matrix.php }} |
|||
uses: shivammathur/setup-php@v2 |
|||
with: |
|||
php-version: ${{ matrix.php }} |
|||
extensions: pgsql, zip, gd, xmlrpc, soap |
|||
coverage: none |
|||
|
|||
- name: Initialise moodle-plugin-ci |
|||
run: | |
|||
make init |
|||
cp -R tests/Fixture/moodle-local_travis ../moodle-local_travis |
|||
echo $(cd bin; pwd) >> $GITHUB_PATH |
|||
echo $(cd vendor/bin; pwd) >> $GITHUB_PATH |
|||
echo "TRAVIS_BUILD_DIR="$(cd ../moodle-local_travis; pwd) >> $GITHUB_ENV |
|||
# PHPUnit depends on en_AU.UTF-8 locale |
|||
sudo locale-gen en_AU.UTF-8 |
|||
- name: Install moodle-plugin-ci |
|||
run: moodle-plugin-ci install -vvv |
|||
env: |
|||
DB: 'pgsql' |
|||
MOODLE_BRANCH: ${{ matrix.moodle-branch }} |
|||
IGNORE_PATHS: 'ignore' |
|||
IGNORE_NAMES: 'ignore_name.php' |
|||
MUSTACHE_IGNORE_NAMES: 'broken.mustache' |
|||
|
|||
- name: Run Integration tests |
|||
env: |
|||
MOODLE_BRANCH: ${{ matrix.moodle-branch }} |
|||
run: | |
|||
make test-phpunit |
|||
moodle-plugin-ci phplint |
|||
moodle-plugin-ci phpcpd |
|||
moodle-plugin-ci phpmd |
|||
moodle-plugin-ci codechecker |
|||
moodle-plugin-ci validate |
|||
moodle-plugin-ci savepoints |
|||
moodle-plugin-ci mustache |
|||
moodle-plugin-ci grunt || [ \ |
|||
"$MOODLE_BRANCH" != 'master' -a \ |
|||
"$MOODLE_BRANCH" != 'MOODLE_310_STABLE' -a \ |
|||
"$MOODLE_BRANCH" != 'MOODLE_39_STABLE' ] |
|||
moodle-plugin-ci phpdoc |
|||
moodle-plugin-ci phpunit --coverage-text |
|||
moodle-plugin-ci behat --profile default |
|||
moodle-plugin-ci behat --profile chrome |
Loading…
Reference in new issue