build(deps-dev): bump css-loader from 6.8.1 to 7.1.2 in /superset-frontend #62544
Workflow file for this run
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: "Frontend Build CI (unit tests, linting & sanity checks)" | |
on: | |
push: | |
branches: | |
- "master" | |
- "[0-9].[0-9]*" | |
pull_request: | |
types: [synchronize, opened, reopened, ready_for_review] | |
# cancel previous workflow jobs for PRs | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.run_id }} | |
cancel-in-progress: true | |
env: | |
TAG: apache/superset:GHA-${{ github.run_id }} | |
jobs: | |
frontend-build: | |
runs-on: ubuntu-24.04 | |
outputs: | |
should-run: ${{ steps.check.outputs.frontend }} | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
with: | |
persist-credentials: false | |
- name: Check for File Changes | |
id: check | |
uses: ./.github/actions/change-detector/ | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build Docker Image | |
if: steps.check.outputs.frontend | |
shell: bash | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
docker buildx build \ | |
-t $TAG \ | |
--cache-from=type=registry,ref=apache/superset-cache:3.10-slim-bookworm \ | |
--target superset-node-ci \ | |
. | |
- name: Save Docker Image as Artifact | |
if: steps.check.outputs.frontend | |
run: | | |
docker save $TAG | gzip > docker-image.tar.gz | |
- name: Upload Docker Image Artifact | |
if: steps.check.outputs.frontend | |
uses: actions/upload-artifact@v4 | |
with: | |
name: docker-image | |
path: docker-image.tar.gz | |
sharded-jest-tests: | |
needs: frontend-build | |
if: needs.frontend-build.outputs.should-run == 'true' | |
strategy: | |
matrix: | |
shard: [1, 2, 3, 4, 5, 6, 7, 8] | |
fail-fast: false | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Download Docker Image Artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: docker-image | |
- name: Load Docker Image | |
run: docker load < docker-image.tar.gz | |
- name: npm run test with coverage | |
run: | | |
mkdir -p ${{ github.workspace }}/superset-frontend/coverage | |
docker run \ | |
-v ${{ github.workspace }}/superset-frontend/coverage:/app/superset-frontend/coverage \ | |
--rm $TAG \ | |
bash -c \ | |
"npm run test -- --coverage --shard=${{ matrix.shard }}/8 --coverageReporters=json-summary" | |
- name: Upload Coverage Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-artifacts-${{ matrix.shard }} | |
path: superset-frontend/coverage | |
report-coverage: | |
needs: [sharded-jest-tests] | |
if: needs.frontend-build.outputs.should-run == 'true' | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Download Coverage Artifacts | |
uses: actions/download-artifact@v4 | |
with: | |
pattern: coverage-artifacts-* | |
path: coverage/ | |
- name: Show Files | |
run: find coverage/ | |
- name: Merge Code Coverage | |
run: npx nyc merge coverage/ merged-output/coverage-summary.json | |
- name: Upload Code Coverage | |
uses: codecov/codecov-action@v5 | |
with: | |
flags: javascript | |
token: ${{ secrets.CODECOV_TOKEN }} | |
verbose: true | |
files: merged-output/coverage-summary.json | |
slug: apache/superset | |
core-cover: | |
needs: frontend-build | |
if: needs.frontend-build.outputs.should-run == 'true' | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Download Docker Image Artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: docker-image | |
- name: Load Docker Image | |
run: docker load < docker-image.tar.gz | |
- name: superset-ui/core coverage | |
run: | | |
docker run --rm $TAG bash -c \ | |
"npm run core:cover" | |
lint-frontend: | |
needs: frontend-build | |
if: needs.frontend-build.outputs.should-run == 'true' | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Download Docker Image Artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: docker-image | |
- name: Load Docker Image | |
run: docker load < docker-image.tar.gz | |
- name: eslint | |
run: | | |
docker run --rm $TAG bash -c \ | |
"npm i && npm run eslint -- . --quiet" | |
- name: tsc | |
run: | | |
docker run --rm $TAG bash -c \ | |
"npm run type" | |
validate-frontend: | |
needs: frontend-build | |
if: needs.frontend-build.outputs.should-run == 'true' | |
runs-on: ubuntu-24.04 | |
steps: | |
- name: Download Docker Image Artifact | |
uses: actions/download-artifact@v4 | |
with: | |
name: docker-image | |
- name: Load Docker Image | |
run: docker load < docker-image.tar.gz | |
- name: Build Plugins Packages | |
run: | | |
docker run --rm $TAG bash -c \ | |
"npm run plugins:build" | |
- name: Build Plugins Storybook | |
run: | | |
docker run --rm $TAG bash -c \ | |
"npm run plugins:build-storybook" |