feat: bump MW requirement to 1.39.4 #158
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: MediaWiki CI | |
on: | |
push: | |
branches: | |
- "**" | |
pull_request: | |
branches: | |
- "**" | |
jobs: | |
test: | |
name: Lint | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-versions: ["8.2", "8.1", "8.0", "7.4"] | |
steps: | |
- name: Cancel Previous Runs | |
uses: styfle/[email protected] | |
with: | |
access_token: ${{ github.token }} | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 # OR "2" -> To retrieve the preceding commit. | |
- name: Cache dependencies | |
uses: actions/cache@v4 | |
with: | |
path: /home/runner/cache | |
key: ${{ runner.os }}-${{ hashFiles('**/*.lock') }} | |
- name: Install dependencies | |
run: | | |
composer validate | |
composer install --prefer-dist --no-progress | |
npm install --save-dev | |
# Check for changed files | |
- name: Check for PHP changes | |
id: changed-php | |
uses: tj-actions/changed-files@v44 | |
with: | |
since_last_remote_commit: "true" | |
files: | | |
includes/**/*.php | |
- name: Check for i18n changes | |
id: changed-i18n | |
uses: tj-actions/changed-files@v44 | |
with: | |
since_last_remote_commit: "true" | |
files: | | |
i18n/*.json | |
# Bypass the phpcbf non-standard exit code | |
- name: Lint PHP | |
if: steps.changed-php.outputs.any_changed == 'true' | |
continue-on-error: true | |
run: | | |
sh ./bin/phpcbf.sh | |
composer fix | |
composer test | |
# Only patch code when it is a push event | |
- name: Push the changes | |
if: github.event_name == 'push' | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
if ! git diff --exit-code --quiet; then | |
git config --global user.name "github-actions" | |
git config --global user.email "[email protected]" | |
git remote set-url origin "https://x-access-token:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" | |
git add . | |
git commit -am "ci: lint code to MediaWiki standards" -m "Check commit and GitHub actions for more details" | |
git pull --rebase | |
git push | |
else | |
echo "No changes to commit" | |
fi |