Skip to content

Commit ad06200

Browse files
committed
Demos: enable check all generated demos
1 parent 348c1ca commit ad06200

File tree

1 file changed

+85
-5
lines changed

1 file changed

+85
-5
lines changed

.github/workflows/demos_visual_tests.yml

Lines changed: 85 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -416,19 +416,23 @@ jobs:
416416
pnpm run lint-demos
417417
fi
418418
419-
check-generated-demos:
420-
name: Check generated demos
419+
check-generated-demos-changed:
420+
name: Check generated demos (changed only)
421421
runs-on: devextreme-shr2
422422
timeout-minutes: 10
423423
needs: [check-should-run, get-changes, build-devextreme, determine-framework-tests-scope]
424-
if: needs.check-should-run.outputs.should-run == 'true' && needs.determine-framework-tests-scope.outputs.framework-tests-scope != 'none'
424+
if: |
425+
always() &&
426+
needs.check-should-run.outputs.should-run == 'true' &&
427+
needs.determine-framework-tests-scope.result == 'success' &&
428+
needs.determine-framework-tests-scope.outputs.framework-tests-scope == 'changed' &&
429+
needs.build-devextreme.result == 'success'
425430
426431
steps:
427432
- name: Get sources
428433
uses: actions/checkout@v4
429434

430-
- name: Download artifacts
431-
if: github.event_name == 'pull_request'
435+
- name: Download changed demos
432436
uses: actions/download-artifact@v4
433437
with:
434438
name: changed-demos
@@ -506,6 +510,82 @@ jobs:
506510
exit 1
507511
fi
508512
513+
check-generated-demos-all:
514+
name: Check generated demos (${{ matrix.CONSTEL }})
515+
runs-on: devextreme-shr2
516+
timeout-minutes: 10
517+
needs: [check-should-run, build-devextreme, determine-framework-tests-scope]
518+
if: |
519+
always() &&
520+
needs.check-should-run.outputs.should-run == 'true' &&
521+
needs.determine-framework-tests-scope.result == 'success' &&
522+
needs.determine-framework-tests-scope.outputs.framework-tests-scope == 'all' &&
523+
needs.build-devextreme.result == 'success'
524+
strategy:
525+
fail-fast: false
526+
matrix:
527+
CONSTEL: ['1/5', '2/5', '3/5', '4/5', '5/5']
528+
529+
steps:
530+
- name: Get sources
531+
uses: actions/checkout@v4
532+
533+
- uses: pnpm/action-setup@v4
534+
with:
535+
run_install: false
536+
537+
- name: Use Node.js
538+
uses: actions/setup-node@v4
539+
with:
540+
node-version: '20'
541+
542+
- name: Download devextreme sources
543+
uses: actions/download-artifact@v4
544+
with:
545+
name: devextreme-sources
546+
547+
- name: Get pnpm store directory
548+
shell: bash
549+
run: |
550+
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV
551+
552+
- uses: actions/cache/restore@v4
553+
name: Restore pnpm cache
554+
with:
555+
path: ${{ env.STORE_PATH }}
556+
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }}
557+
restore-keys: |
558+
${{ runner.os }}-pnpm-store
559+
560+
- name: Install dependencies
561+
run: pnpm install --frozen-lockfile
562+
563+
- name: Install tgz
564+
working-directory: apps/demos
565+
run: pnpm add ../../devextreme-installer.tgz ../../devextreme-dist-installer.tgz ../../devextreme-react-installer.tgz ../../devextreme-vue-installer.tgz ../../devextreme-angular-installer.tgz
566+
567+
- name: Prepare JS
568+
working-directory: apps/demos
569+
run: pnpm run prepare-js
570+
571+
- name: Check generated JS demos
572+
working-directory: apps/demos
573+
env:
574+
CONSTEL: ${{ matrix.CONSTEL }}
575+
run: |
576+
echo "Running convert-to-js for split $CONSTEL"
577+
pnpm run convert-to-js
578+
579+
git add ./Demos -N
580+
581+
if git diff --exit-code . ':!package.json' ; then
582+
echo "Generated JS demos are up-to-date for split $CONSTEL"
583+
else
584+
echo "Generated JS demos are outdated for split $CONSTEL. Execute 'pnpm run convert-to-js split' and commit changes."
585+
echo "If you see another diff, ensure that extra listed files have LF endings."
586+
exit 1
587+
fi
588+
509589
testcafe-jquery:
510590
needs: [check-should-run, build-devextreme]
511591
if: |

0 commit comments

Comments
 (0)