Remove mention of PHP 7.4 #741
Workflow file for this run
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: CI tests | |
on: [push, pull_request] | |
jobs: | |
phpunit: | |
strategy: | |
matrix: | |
cfg: | |
- { os: 'ubuntu-22.04', php: '8.1' } | |
- { os: 'ubuntu-22.04', php: '8.3' } | |
runs-on: ${{ matrix.cfg.os }} | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Setup PHP, composer | |
uses: ./.github/actions/setup-php | |
with: | |
php-version: ${{ matrix.cfg.php }} | |
- name: Setup MySQL, install schema | |
uses: ./.github/actions/setup-mysql-db | |
- name: Install aspell dependencies for WordCheck tests | |
run: sudo apt --fix-broken install aspell aspell-en | |
- name: Run phpunit tests | |
run: cd SETUP/tests/unittests && ../../../vendor/bin/phpunit | |
jsunit: | |
strategy: | |
matrix: | |
cfg: | |
- { os: 'ubuntu-22.04', php: '8.3' } | |
runs-on: ${{ matrix.cfg.os }} | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Setup Node, NPM | |
uses: ./.github/actions/setup-node | |
- name: Run js unit tests | |
run: npm run test | |
linting: | |
strategy: | |
matrix: | |
cfg: | |
- { os: 'ubuntu-22.04', php: '8.1' } | |
- { os: 'ubuntu-22.04', php: '8.3' } | |
runs-on: ${{ matrix.cfg.os }} | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Setup PHP, composer | |
uses: ./.github/actions/setup-php | |
with: | |
php-version: ${{ matrix.cfg.php }} | |
- name: Setup Node, NPM | |
uses: ./.github/actions/setup-node | |
- name: Lint PHP code | |
run: make -C SETUP/ci lint_code | |
- name: Run JS lint | |
run: npm run lint | |
- name: Run JS format check | |
run: npm run format-check | |
- name: Run PHP-CS-Fixer and confirm no changes | |
run: ./vendor/bin/php-cs-fixer fix --show-progress=none --dry-run --diff | |
phpstan: | |
# Only run on a single version of Ubuntu/PHP to save GitHub CPU time. | |
# PHPStan will perform the same checks irrespective of the platform. | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Setup PHP, composer | |
uses: ./.github/actions/setup-php | |
with: | |
php-version: '8.3' | |
# We don't install MySQL, but we do need pinc/site_vars.php & co. | |
# so the static analysis doesn't fail trying to include_once those files. | |
- name: Configure site setup | |
run: SETUP/configure SETUP/tests/ci_configuration.sh . | |
- name: Run PHPStan | |
run: ./vendor/bin/phpstan --no-ansi --no-progress --memory-limit=512M | |
misc_checks: | |
# Only run on a single version of Ubuntu/PHP to save GitHub CPU time. | |
# The CSS tests don't use PHP, and the other tests either just check | |
# the source code for regexps, or check for data consistency in the | |
# character tables. | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Setup PHP, composer | |
uses: ./.github/actions/setup-php | |
with: | |
php-version: '8.3' | |
- name: Setup Node, NPM | |
uses: ./.github/actions/setup-node | |
- name: Run security checks | |
run: make -C SETUP/ci security_checks | |
- name: Run charsuite checks | |
run: make -C SETUP/ci lint_charsuites | |
- name: Run less/CSS checks | |
run: make -C SETUP/ci lint_css | |
- name: Run best practice checks | |
run: make -C SETUP/ci best_practice_checks | |
- name: Run shellcheck on shell scripts | |
run: make -C SETUP/ci shellcheck | |
pageload-smoketest: | |
strategy: | |
matrix: | |
cfg: | |
- { os: 'ubuntu-22.04', php: '8.1' } | |
- { os: 'ubuntu-22.04', php: '8.3' } | |
runs-on: ${{ matrix.cfg.os }} | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Setup PHP, composer | |
uses: ./.github/actions/setup-php | |
with: | |
php-version: ${{ matrix.cfg.php }} | |
- name: Setup MySQL, install schema | |
uses: ./.github/actions/setup-mysql-db | |
- name: Install aspell dependencies for WordCheck tests | |
run: sudo apt --fix-broken install aspell aspell-en | |
- name: Setup smoke test environment | |
run: SETUP/tests/smoketests/smoketest_setup.sh | |
- name: Run pageload smoketest | |
run: | | |
SETUP/tests/smoketests/pageload_smoketest.py \ | |
-u admin -p admin_pass -k admin_key |