Skip to content

version update

version update #182

Workflow file for this run

name: Tests
on: [push, pull_request]
jobs:
ci:
name: ci
runs-on: ubuntu-latest
services:
postgres:
image: postgres
env:
POSTGRES_USER: 'postgres'
POSTGRES_HOST_AUTH_METHOD: 'trust'
options: --health-cmd="pg_isready" --health-interval 10s --health-timeout 5s --health-retries 5
ports:
- 5432:5432
mariadb:
image: mariadb:10
env:
MYSQL_USER: 'root'
MYSQL_ALLOW_EMPTY_PASSWORD: "true"
MYSQL_CHARACTER_SET_SERVER: "utf8mb4"
MYSQL_COLLATION_SERVER: "utf8mb4_unicode_ci"
options: --health-cmd="mysqladmin ping" --health-interval 10s --health-timeout 5s --health-retries 3
ports:
- 3306:3306
strategy:
fail-fast: false
matrix:
moodle-branch: ['MOODLE_403_STABLE', 'MOODLE_404_STABLE', 'MOODLE_405_STABLE']
php: ['8.2']
database: ['mariadb', 'pgsql']
include:
- php: '8.3'
moodle-branch: 'main'
database: 'pgsql'
steps:
- name: checkout plugin
uses: actions/checkout@v4
with:
path: this-plugin
- name: setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
ini-values: max_input_vars=5000
coverage: pcov
- name: composer
run: |
composer create-project -n --no-dev --prefer-dist moodlehq/moodle-plugin-ci ci
echo $(cd ci/bin; pwd) >> $GITHUB_PATH
echo $(cd ci/vendor/bin; pwd) >> $GITHUB_PATH
sudo locale-gen en_AU.UTF-8
- name: install Moodle
run: moodle-plugin-ci --ansi install --db-host=127.0.0.1 --plugin this-plugin
env:
DB: ${{ matrix.database }}
MOODLE_BRANCH: ${{ matrix.moodle-branch }}
- name: phplint
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi phplint
- name: phpmd
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi phpmd
- name: phpdoc
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi phpdoc
- name: codechecker
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi codechecker || true
- name: validate
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi validate
- name: savepoints
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi savepoints
- name: grunt
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi grunt
- name: mustache
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi mustache
- name: phpunit
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi phpunit --testdox --coverage-text --coverage-clover
- name: privacy
if: ${{ !cancelled() }}
run: vendor/bin/phpunit --colors --no-coverage --testsuite tool_dataprivacy_testsuite,tool_policy_testsuite,core_privacy_testsuite
working-directory: moodle
- name: other
if: ${{ !cancelled() }}
run: vendor/bin/phpunit --colors --no-coverage --testsuite core_availability_testsuite
working-directory: moodle
- name: coveralls
if: ${{ !cancelled() }}
run: moodle-plugin-ci coveralls-upload || true
env:
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: chrome
id: behat
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi behat --profile chrome
- name: Upload Behat Faildump
if: ${{ failure() && steps.behat.outcome == 'failure' }}
uses: actions/upload-artifact@v4
with:
name: Behat Faildump (${{ join(matrix.*, ', ') }})
path: ${{ github.workspace }}/moodledata/behat_dump
retention-days: 7
if-no-files-found: ignore
- name: chrome classic
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi behat --suite classic --profile chrome
- name: firefox
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi behat
- name: firefox classic
if: ${{ !cancelled() }}
run: moodle-plugin-ci --ansi behat --suite classic