Release v4.5-r1 #159
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Moodle Plugin CI | |
on: [push, pull_request] | |
jobs: | |
test: | |
runs-on: ubuntu-latest | |
services: | |
postgres: | |
image: postgres:13 | |
env: | |
POSTGRES_USER: 'postgres' | |
POSTGRES_HOST_AUTH_METHOD: 'trust' | |
ports: | |
- 5432:5432 | |
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 3 | |
mariadb: | |
image: mariadb:10.6 | |
env: | |
MYSQL_USER: 'root' | |
MYSQL_ALLOW_EMPTY_PASSWORD: "true" | |
MYSQL_CHARACTER_SET_SERVER: "utf8mb4" | |
MYSQL_COLLATION_SERVER: "utf8mb4_unicode_ci" | |
ports: | |
- 3306:3306 | |
options: --health-cmd="mysqladmin ping" --health-interval 10s --health-timeout 5s --health-retries 3 | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- php: 8.3 | |
moodle-branch: MOODLE_405_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.3 | |
moodle-branch: MOODLE_405_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.2 | |
moodle-branch: MOODLE_405_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.2 | |
moodle-branch: MOODLE_405_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_405_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_405_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.3 | |
moodle-branch: MOODLE_404_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.3 | |
moodle-branch: MOODLE_404_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.2 | |
moodle-branch: MOODLE_404_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.2 | |
moodle-branch: MOODLE_404_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_404_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_404_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.2 | |
moodle-branch: MOODLE_403_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.2 | |
moodle-branch: MOODLE_403_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_403_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_403_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.0 | |
moodle-branch: MOODLE_403_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.0 | |
moodle-branch: MOODLE_403_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.2 | |
moodle-branch: MOODLE_402_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.2 | |
moodle-branch: MOODLE_402_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_402_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_402_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.0 | |
moodle-branch: MOODLE_402_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.0 | |
moodle-branch: MOODLE_402_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_401_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.1 | |
moodle-branch: MOODLE_401_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.0 | |
moodle-branch: MOODLE_401_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.0 | |
moodle-branch: MOODLE_401_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 7.4 | |
moodle-branch: MOODLE_401_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 7.4 | |
moodle-branch: MOODLE_401_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 8.0 | |
moodle-branch: MOODLE_400_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 8.0 | |
moodle-branch: MOODLE_400_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 7.4 | |
moodle-branch: MOODLE_400_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 7.4 | |
moodle-branch: MOODLE_400_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 7.4 | |
moodle-branch: MOODLE_311_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 7.4 | |
moodle-branch: MOODLE_311_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 7.4 | |
moodle-branch: MOODLE_39_STABLE | |
database: pgsql | |
plugin-ci: ^4 | |
- php: 7.4 | |
moodle-branch: MOODLE_39_STABLE | |
database: mariadb | |
plugin-ci: ^4 | |
- php: 7.3 | |
moodle-branch: MOODLE_311_STABLE | |
database: pgsql | |
plugin-ci: ^3 | |
- php: 7.3 | |
moodle-branch: MOODLE_311_STABLE | |
database: mariadb | |
plugin-ci: ^3 | |
- php: 7.3 | |
moodle-branch: MOODLE_39_STABLE | |
database: pgsql | |
plugin-ci: ^3 | |
- php: 7.3 | |
moodle-branch: MOODLE_39_STABLE | |
database: mariadb | |
plugin-ci: ^3 | |
- php: 7.2 | |
moodle-branch: MOODLE_39_STABLE | |
database: pgsql | |
plugin-ci: ^3 | |
- php: 7.2 | |
moodle-branch: MOODLE_39_STABLE | |
database: mariadb | |
plugin-ci: ^3 | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v3 | |
with: | |
path: plugin | |
- name: Setup PHP ${{ matrix.php }} | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.php }} | |
extensions: ${{ matrix.extensions }} | |
ini-values: max_input_vars=5000 | |
coverage: none | |
- name: Initialise moodle-plugin-ci | |
run: | | |
composer create-project -n --no-dev --prefer-dist moodlehq/moodle-plugin-ci ci ${{ matrix.plugin-ci }} | |
echo $(cd ci/bin; pwd) >> $GITHUB_PATH | |
echo $(cd ci/vendor/bin; pwd) >> $GITHUB_PATH | |
sudo locale-gen en_AU.UTF-8 | |
echo "NVM_DIR=$HOME/.nvm" >> $GITHUB_ENV | |
- name: Install moodle-plugin-ci | |
run: | | |
moodle-plugin-ci install --plugin ./plugin --db-host=127.0.0.1 | |
env: | |
DB: ${{ matrix.database }} | |
MOODLE_BRANCH: ${{ matrix.moodle-branch }} | |
IGNORE_PATHS: moodle/tests/fixtures,moodle/Sniffs | |
- name: PHP Lint | |
if: ${{ always() }} | |
run: moodle-plugin-ci phplint | |
- name: PHP Mess Detector | |
continue-on-error: true # This step will show errors but will not fail | |
if: ${{ always() }} | |
run: moodle-plugin-ci phpmd | |
- name: Moodle Code Checker | |
if: ${{ always() }} | |
run: moodle-plugin-ci codechecker --max-warnings 0 | |
- name: Moodle PHPDoc Checker | |
if: ${{ always() }} | |
run: moodle-plugin-ci phpdoc | |
- name: Validating | |
if: ${{ always() }} | |
run: moodle-plugin-ci validate | |
- name: Check upgrade savepoints | |
if: ${{ always() }} | |
run: moodle-plugin-ci savepoints | |
- name: Mustache Lint | |
if: ${{ always() }} | |
run: moodle-plugin-ci mustache | |
- name: Grunt | |
if: ${{ always() }} | |
run: moodle-plugin-ci grunt --max-lint-warnings 0 | |
- name: PHPUnit tests | |
if: ${{ always() }} | |
run: moodle-plugin-ci phpunit --coverage-text | |
- name: Behat features | |
if: ${{ always() }} | |
run: moodle-plugin-ci behat --profile chrome |