Skip to content

refactor: move 3rd party Javascript and CSS code #1341

refactor: move 3rd party Javascript and CSS code

refactor: move 3rd party Javascript and CSS code #1341

name: Linters
# If a pull-request is pushed then cancel all previously running jobs related
# to that pull-request
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
on:
push:
branches:
- develop
pull_request:
types: [opened, synchronize, reopened]
branches:
- develop
permissions:
contents: read
jobs:
lint:
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: actions/setup-python@v6.2.0
with:
python-version: "3.13"
- run: pip install --upgrade tox
- name: Run commitizen (https://commitizen-tools.github.io/commitizen/)
run: tox -e cz
- name: Run config-check
run: tox -e config-check
- name: Run doc8
run: tox -e doc8
- name: Ensure no merge-commits in the Pull Request (PR)
if: github.event_name == 'pull_request'
run: |
HEAD_SHA="${{ github.event.pull_request.head.sha }}"
echo "GITHUB_BASE_REF: ${GITHUB_BASE_REF}"
echo "HEAD_SHA: ${HEAD_SHA}"
git fetch origin "${GITHUB_BASE_REF}"
MERGE_COMMITS=$(git rev-list --merges origin/${GITHUB_BASE_REF}..${HEAD_SHA})
if [[ -n "${MERGE_COMMITS}" ]]; then
echo "ERROR: The Pull Request (PR) contains a 'merge commit' which is not allowed: ${MERGE_COMMITS}"
exit 1
fi
markdownlint:
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: markdownlint-cli2-action
uses: DavidAnson/markdownlint-cli2-action@v22
with:
config: 'docs/.markdownlint.yml'
globs: |
*.md
lint-php-files:
runs-on: ubuntu-latest
strategy:
matrix:
php-version: ["8.2", "8.3", "8.4", "8.5"]
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Set up PHP ${{ matrix.php-version }}
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
- name: Install Composer dependencies
uses: ramsey/composer-install@v3
- name: Validate composer.json and composer.lock
run: composer validate --strict
- name: Lint PHP files
run: ./ci/ci-phplint
- name: Cache php-cs-fixer
if: matrix.php-version == '8.2'
uses: actions/cache@v5
with:
path: var/cache/.php-cs-fixer.cache
key: php-cs-fixer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('composer.lock', '.php-cs-fixer.dist.php') }}
restore-keys: |
php-cs-fixer-${{ runner.os }}-${{ matrix.php-version }}-
- name: Check coding-standard (php-cs-fixer)
if: matrix.php-version == '8.2'
run: composer phpcsfixer:lint
analyse-php:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- php-version: "8.5"
stan-label: "base"
composer-script: "phpstan"
stan-cache-dir: "base"
stan-config-file: "phpstan.neon"
- php-version: "8.5"
stan-label: "next"
composer-script: "phpstan_next"
stan-cache-dir: "next"
stan-config-file: "phpstan_next.neon"
name: analyse-php (${{ matrix.stan-label }})
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Set up PHP ${{ matrix.php-version }}
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
- name: Install Composer dependencies
uses: ramsey/composer-install@v3
with:
custom-cache-suffix: ${{ matrix.stan-label }}
- name: Cache PHPStan result cache
uses: actions/cache@v5
with:
path: var/cache/phpstan/${{ matrix.stan-cache-dir }}
key: phpstan-${{ runner.os }}-${{ matrix.php-version }}-${{ matrix.stan-cache-dir }}-${{ hashFiles('composer.lock', matrix.stan-config-file) }}
restore-keys: |
phpstan-${{ runner.os }}-${{ matrix.php-version }}-${{ matrix.stan-cache-dir }}-
- name: Analyse files with PHPStan
run: |
if ! composer ${{ matrix.composer-script }} -- --error-format=github --no-progress --memory-limit 2G; then
echo "Primary PHPStan run failed. Running debug fallback..."
composer ${{ matrix.composer-script }} -- --debug -vvv --error-format=table --memory-limit 2G || true
exit 1
fi
# - name: Analyse files with Psalm
# # Allow the previous check to fail but not abort
# if: always()
# run: composer psalm -- --shepherd