Grids: screenshot tests stabilization #32050
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Themebuilder and Styles tests | |
concurrency: | |
group: wf-${{github.event.pull_request.number || github.sha}}-${{github.workflow}} | |
cancel-in-progress: true | |
on: | |
pull_request: | |
paths-ignore: | |
- 'apps/**/*.md' | |
push: | |
branches: [24_2] | |
env: | |
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_TOKEN }} | |
NX_SKIP_NX_CACHE: ${{ (github.event_name != 'pull_request' || contains( github.event.pull_request.labels.*.name, 'skip-cache')) && 'true' || 'false' }} | |
jobs: | |
test: | |
runs-on: devextreme-shr2 | |
timeout-minutes: 30 | |
steps: | |
- name: Get sources | |
uses: actions/checkout@v4 | |
- name: Use Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
- uses: pnpm/action-setup@v3 | |
with: | |
version: 9 | |
run_install: false | |
- name: Get pnpm store directory | |
shell: bash | |
run: | | |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV | |
- uses: actions/cache@v4 | |
name: Setup pnpm cache | |
with: | |
path: | | |
${{ env.STORE_PATH }} | |
.nx/cache | |
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: | | |
${{ runner.os }}-pnpm-store | |
- name: Install dependencies | |
run: | | |
corepack enable | |
pnpm install | |
- name: Build etalon bundles | |
working-directory: ./packages/devextreme-scss | |
run: pnpx gulp style-compiler-themes-ci | |
- name: Build | |
working-directory: ./packages/devextreme-themebuilder | |
run: pnpx nx build | |
- name: Run themebuilder tests (full set, node) | |
working-directory: ./packages/devextreme-themebuilder | |
run: pnpx nx test | |
- name: Check styles for duplicate rules (generic) | |
working-directory: ./packages/devextreme-scss | |
run: pnpx stylelint --config tests/bundles-stylelint-config.json "../devextreme/artifacts/**/dx.light.css" | |
- name: Check styles for duplicate rules (material) | |
working-directory: ./packages/devextreme-scss | |
run: pnpx stylelint --config tests/bundles-stylelint-config.json "../devextreme/artifacts/**/dx.material.blue.light.css" | |
notify: | |
runs-on: devextreme-shr2 | |
name: Send notifications | |
needs: [test] | |
if: github.event_name != 'pull_request' && contains(needs.*.result, 'failure') | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: DevExpress/github-actions/send-teams-notification@v1 | |
with: | |
hook_url: ${{secrets.TEAMS_ALERT}} | |
bearer_token: ${{secrets.GITHUB_TOKEN}} | |
specific_repo: DevExpress/DevExtreme |