#1: QS Workflow
This commit is contained in:
parent
37a63c29cc
commit
257d804f34
9 changed files with 61 additions and 11 deletions
|
@ -2,17 +2,67 @@ name: "Quality Check"
|
||||||
|
|
||||||
on: push
|
on: push
|
||||||
jobs:
|
jobs:
|
||||||
quality-controll:
|
qs_frontend:
|
||||||
name: "Check"
|
name: "QS Frontend"
|
||||||
runs-on: "ubuntu-latest"
|
runs-on: "ubuntu-latest"
|
||||||
container:
|
container:
|
||||||
image: "git.euph.dev/actions/runner-php-8.3:latest"
|
image: "git.euph.dev/actions/runner-php-8.3:latest"
|
||||||
steps:
|
steps:
|
||||||
- name: "Checkout"
|
- name: "Checkout"
|
||||||
uses: "https://git.euph.dev/actions/checkout@v3"
|
uses: "https://git.euph.dev/actions/checkout@v3"
|
||||||
- name: "composer install"
|
- name: "Install Dependencies"
|
||||||
|
working-directory: app
|
||||||
|
run: "npm install --no-fund"
|
||||||
|
- name: "TS Validation"
|
||||||
|
working-directory: app/frontend
|
||||||
|
run: "node ../node_modules/typescript/bin/tsc --noEmit"
|
||||||
|
- name: "Twig Validation"
|
||||||
|
working-directory: app
|
||||||
|
run: "bin/console lint:twig frontend/templates"
|
||||||
|
- 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: |
|
run: |
|
||||||
composer check-platform-reqs
|
composer check-platform-reqs
|
||||||
composer install --no-scripts --audit
|
composer install --no-scripts --audit
|
||||||
- name: "npm install"
|
- name: "PHP CS Fixer"
|
||||||
run: "npm install --no-fund"
|
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"
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
twig:
|
twig:
|
||||||
default_path: '%kernel.project_dir%/templates'
|
default_path: '%kernel.project_dir%/frontend/templates'
|
||||||
|
|
||||||
when@test:
|
when@test:
|
||||||
twig:
|
twig:
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
".*"
|
".*"
|
||||||
],
|
],
|
||||||
"@styles/*": [
|
"@styles/*": [
|
||||||
"../assets/styles/*"
|
"./styles/*"
|
||||||
],
|
],
|
||||||
"@controllers*": [
|
"@controllers*": [
|
||||||
"./controllers/*"
|
"./controllers/*"
|
||||||
|
|
2
app/package-lock.json
generated
2
app/package-lock.json
generated
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"name": "Website",
|
"name": "Euph Website",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
|
|
|
@ -8,8 +8,8 @@
|
||||||
"build": "encore production --progress",
|
"build": "encore production --progress",
|
||||||
"lint:ts": "cd frontend && eslint .",
|
"lint:ts": "cd frontend && eslint .",
|
||||||
"lint:ts:fix": "cd frontend && eslint . --fix",
|
"lint:ts:fix": "cd frontend && eslint . --fix",
|
||||||
"lint:scss": "cd assets/styles && stylelint .",
|
"lint:scss": "cd frontend/styles && stylelint .",
|
||||||
"lint:scss:fix": "cd assets/styles && stylelint . --fix"
|
"lint:scss:fix": "cd frontend/styles && stylelint . --fix"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"easymde": "^2.18.0"
|
"easymde": "^2.18.0"
|
||||||
|
|
|
@ -23,7 +23,7 @@ Encore
|
||||||
.addEntry('app', './frontend/app.ts')
|
.addEntry('app', './frontend/app.ts')
|
||||||
|
|
||||||
// Style Entries
|
// Style Entries
|
||||||
//.addStyleEntry('name', './assets/styles/name.scss')
|
//.addStyleEntry('name', './frontend/styles/name.scss')
|
||||||
|
|
||||||
// Webpack
|
// Webpack
|
||||||
.splitEntryChunks()
|
.splitEntryChunks()
|
||||||
|
|
Loading…
Reference in a new issue