Website/.gitea/workflows/qs.yml
Snoweuph 651df3b0f1
All checks were successful
Quality Check / QS Backend (push) Successful in 20s
Quality Check / QS Mixed (push) Successful in 32s
Quality Check / QS Frontend (push) Successful in 38s
#1: QS Workflow
2024-07-13 21:25:44 +02:00

68 lines
2.2 KiB
YAML

name: "Quality Check"
on: push
jobs:
qs_frontend:
name: "QS Frontend"
runs-on: "ubuntu-latest"
container:
image: "git.euph.dev/actions/runner-php-8.3:latest"
steps:
- name: "Checkout"
uses: "https://git.euph.dev/actions/checkout@v3"
- name: "Install Dependencies"
working-directory: app
run: |
parallel --halt soon,fail=1 ::: \
"composer check-platform-reqs && composer install --no-scripts --audit" \
"npm install --no-fund"
- name: "TS Validation"
working-directory: app/frontend
run: "node ../node_modules/typescript/bin/tsc --noEmit"
- name: "Stylelint"
working-directory: app/frontend/styles
run: "node ../../node_modules/stylelint/bin/stylelint.mjs ."
- name: "ESLint"
working-directory: app
run: "node node_modules/eslint/bin/eslint.js frontend"
- name: "Twig CS Fixer"
working-directory: app
run: "vendor/bin/twig-cs-fixer lint"
qs_backend:
name: "QS Backend"
runs-on: "ubuntu-latest"
container:
image: "git.euph.dev/actions/runner-php-8.3:latest"
steps:
- name: "Checkout"
uses: "https://git.euph.dev/actions/checkout@v3"
- name: "Install Dependencies"
working-directory: app
run: |
composer check-platform-reqs
composer install --no-scripts --audit
- name: "PHP CS Fixer"
working-directory: app
run: "vendor/bin/php-cs-fixer fix --dry-run --allow-risky=yes"
- name: "PHP Stan"
working-directory: app
run: "vendor/bin/phpstan analyze"
qs_mixed:
name: "QS Mixed"
runs-on: "ubuntu-latest"
container:
image: "git.euph.dev/actions/runner-php-8.3:latest"
steps:
- name: "Checkout"
uses: "https://git.euph.dev/actions/checkout@v3"
- name: "Install Dependencies"
working-directory: app
run: |
parallel --halt soon,fail=1 ::: \
"composer check-platform-reqs && composer install --no-scripts --audit" \
"npm install --no-fund"
- name: "Lint"
working-directory: app
run: "node node_modules/eslint/bin/eslint.js frontend"