mirror of
https://github.com/roundcube/roundcubemail.git
synced 2026-03-03 06:44:03 +01:00
84 lines
2.4 KiB
YAML
84 lines
2.4 KiB
YAML
name: CI
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
cs:
|
|
runs-on: ubuntu-latest
|
|
if: "!contains(github.event.head_commit.message, '[skip ci]') && !contains(github.event.head_commit.message, '[ci skip]')"
|
|
|
|
name: Coding Style
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
|
|
- name: Setup PHP
|
|
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2.32.0
|
|
with:
|
|
php-version: "8.3"
|
|
extensions: mbstring
|
|
tools: composer:v2
|
|
coverage: none
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
composer install --prefer-dist --no-interaction --no-progress
|
|
npm install --omit=optional
|
|
|
|
- name: Check Coding Style - PHP
|
|
run: vendor/bin/php-cs-fixer fix --dry-run --using-cache=no --diff --verbose
|
|
|
|
- name: Check composer.json format
|
|
run: composer validate --strict --no-check-lock && composer normalize --dry-run --no-check-lock
|
|
|
|
- name: Check Coding Style - JS
|
|
run: npx eslint --ext .js .
|
|
|
|
- name: Plugins - Check composer.json format
|
|
run: |
|
|
for plugin_dir in plugins/*/; do (
|
|
echo "========== $plugin_dir =========="
|
|
cd "$plugin_dir"
|
|
composer validate --strict --no-check-lock && composer normalize --dry-run --no-check-lock "$plugin_dir/composer.json"
|
|
echo " "
|
|
); done
|
|
|
|
phpstan:
|
|
runs-on: ubuntu-latest
|
|
if: "!contains(github.event.head_commit.message, '[skip ci]') && !contains(github.event.head_commit.message, '[ci skip]')"
|
|
|
|
name: Static Analysis
|
|
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
|
|
|
- name: Setup PHP
|
|
uses: shivammathur/setup-php@9e72090525849c5e82e596468b86eb55e9cc5401 # v2.32.0
|
|
with:
|
|
php-version: "8.4"
|
|
extensions: mbstring
|
|
tools: composer:v2
|
|
coverage: none
|
|
|
|
- name: Setup composer
|
|
run: |
|
|
composer require "kolab/net_ldap3:~1.1.1" --no-update
|
|
composer require "laravel/dusk:^8.3" --no-update
|
|
|
|
- name: Install dependencies
|
|
run: composer install --prefer-dist --no-interaction --no-progress
|
|
|
|
- name: Run Static Analysis
|
|
run: vendor/bin/phpstan analyse -v
|