mirror of
https://github.com/paperless-ngx/paperless-ngx.git
synced 2025-07-26 18:14:37 -05:00
Compare commits
No commits in common. "4c1c4a7130c3605aea167cb3cd9b8aa595dcacc8" and "cae38a151ed1f4e1e80a37797bcad18b58211b18" have entirely different histories.
4c1c4a7130
...
cae38a151e
16
.codecov.yml
16
.codecov.yml
@ -1,18 +1,18 @@
|
|||||||
codecov:
|
codecov:
|
||||||
require_ci_to_pass: true
|
require_ci_to_pass: true
|
||||||
# https://docs.codecov.com/docs/components
|
# https://docs.codecov.com/docs/flags#recommended-automatic-flag-management
|
||||||
component_management:
|
# Require each flag to have 1 upload before notification
|
||||||
individual_components:
|
flag_management:
|
||||||
- component_id: backend
|
individual_flags:
|
||||||
|
- name: backend
|
||||||
paths:
|
paths:
|
||||||
- src/**
|
- src/
|
||||||
- component_id: frontend
|
- name: frontend
|
||||||
paths:
|
paths:
|
||||||
- src-ui/**
|
- src-ui/
|
||||||
# https://docs.codecov.com/docs/pull-request-comments
|
# https://docs.codecov.com/docs/pull-request-comments
|
||||||
# codecov will only comment if coverage changes
|
# codecov will only comment if coverage changes
|
||||||
comment:
|
comment:
|
||||||
layout: "header, diff, components, flags, files"
|
|
||||||
require_changes: true
|
require_changes: true
|
||||||
# https://docs.codecov.com/docs/javascript-bundle-analysis
|
# https://docs.codecov.com/docs/javascript-bundle-analysis
|
||||||
require_bundle_changes: true
|
require_bundle_changes: true
|
||||||
|
132
.github/workflows/ci.yml
vendored
132
.github/workflows/ci.yml
vendored
@ -162,20 +162,16 @@ jobs:
|
|||||||
--frozen \
|
--frozen \
|
||||||
pytest
|
pytest
|
||||||
-
|
-
|
||||||
name: Upload backend test results to Codecov
|
name: Upload coverage
|
||||||
if: always()
|
if: ${{ matrix.python-version == env.DEFAULT_PYTHON_VERSION }}
|
||||||
uses: codecov/test-results-action@v1
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
token: ${{ secrets.CODECOV_TOKEN }}
|
name: backend-coverage-report
|
||||||
flags: python-${{ matrix.python-version }}
|
path: |
|
||||||
files: junit.xml
|
coverage.xml
|
||||||
-
|
junit.xml
|
||||||
name: Upload backend coverage to Codecov
|
retention-days: 7
|
||||||
uses: codecov/codecov-action@v5
|
if-no-files-found: error
|
||||||
with:
|
|
||||||
token: ${{ secrets.CODECOV_TOKEN }}
|
|
||||||
flags: python-${{ matrix.python-version }}
|
|
||||||
files: coverage.xml
|
|
||||||
-
|
-
|
||||||
name: Stop containers
|
name: Stop containers
|
||||||
if: always()
|
if: always()
|
||||||
@ -183,7 +179,7 @@ jobs:
|
|||||||
docker compose --file ${{ github.workspace }}/docker/compose/docker-compose.ci-test.yml logs
|
docker compose --file ${{ github.workspace }}/docker/compose/docker-compose.ci-test.yml logs
|
||||||
docker compose --file ${{ github.workspace }}/docker/compose/docker-compose.ci-test.yml down
|
docker compose --file ${{ github.workspace }}/docker/compose/docker-compose.ci-test.yml down
|
||||||
|
|
||||||
install-frontend-dependencies:
|
install-frontend-depedendencies:
|
||||||
name: "Install Frontend Dependencies"
|
name: "Install Frontend Dependencies"
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
needs:
|
needs:
|
||||||
@ -218,7 +214,7 @@ jobs:
|
|||||||
name: "Frontend Tests (Node ${{ matrix.node-version }} - ${{ matrix.shard-index }}/${{ matrix.shard-count }})"
|
name: "Frontend Tests (Node ${{ matrix.node-version }} - ${{ matrix.shard-index }}/${{ matrix.shard-count }})"
|
||||||
runs-on: ubuntu-24.04
|
runs-on: ubuntu-24.04
|
||||||
needs:
|
needs:
|
||||||
- install-frontend-dependencies
|
- install-frontend-depedendencies
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
@ -249,33 +245,111 @@ jobs:
|
|||||||
run: cd src-ui && npm run lint
|
run: cd src-ui && npm run lint
|
||||||
-
|
-
|
||||||
name: Run Jest unit tests
|
name: Run Jest unit tests
|
||||||
|
env:
|
||||||
|
JEST_JUNIT_OUTPUT_FILE: junit-report-${{ matrix.shard-index }}.xml
|
||||||
run: cd src-ui && npm run test -- --max-workers=2 --shard=${{ matrix.shard-index }}/${{ matrix.shard-count }}
|
run: cd src-ui && npm run test -- --max-workers=2 --shard=${{ matrix.shard-index }}/${{ matrix.shard-count }}
|
||||||
|
-
|
||||||
|
name: Upload Jest coverage
|
||||||
|
if: always()
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: jest-coverage-report-${{ matrix.shard-index }}
|
||||||
|
path: |
|
||||||
|
src-ui/coverage/coverage-final.json
|
||||||
|
src-ui/coverage/lcov.info
|
||||||
|
src-ui/coverage/clover.xml
|
||||||
|
retention-days: 7
|
||||||
|
if-no-files-found: error
|
||||||
-
|
-
|
||||||
name: Run Playwright e2e tests
|
name: Run Playwright e2e tests
|
||||||
run: cd src-ui && npx playwright test --shard ${{ matrix.shard-index }}/${{ matrix.shard-count }}
|
run: cd src-ui && npx playwright test --shard ${{ matrix.shard-index }}/${{ matrix.shard-count }}
|
||||||
-
|
-
|
||||||
name: Upload frontend test results to Codecov
|
name: Upload Playwright test results
|
||||||
uses: codecov/test-results-action@v1
|
|
||||||
if: always()
|
if: always()
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
token: ${{ secrets.CODECOV_TOKEN }}
|
name: playwright-report-${{ matrix.shard-index }}
|
||||||
flags: node-${{ matrix.node-version }}
|
path: src-ui/playwright-report
|
||||||
directory: src-ui/
|
retention-days: 7
|
||||||
|
-
|
||||||
|
name: Upload frontend test results
|
||||||
|
if: always()
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: junit-report-${{ matrix.shard-index }}
|
||||||
|
path: src-ui/junit-report-${{ matrix.shard-index }}.xml
|
||||||
|
retention-days: 7
|
||||||
|
|
||||||
|
tests-coverage-upload:
|
||||||
|
name: "Upload to Codecov"
|
||||||
|
runs-on: ubuntu-24.04
|
||||||
|
needs:
|
||||||
|
- tests-backend
|
||||||
|
- tests-frontend
|
||||||
|
steps:
|
||||||
|
-
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
-
|
||||||
|
name: Download frontend jest coverage
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
path: src-ui/coverage/
|
||||||
|
pattern: jest-coverage-report-*
|
||||||
|
-
|
||||||
|
name: Download frontend playwright coverage
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
path: src-ui/coverage/
|
||||||
|
pattern: playwright-report-*
|
||||||
|
merge-multiple: true
|
||||||
|
-
|
||||||
|
name: Download frontend test results
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
path: src-ui/junit/
|
||||||
|
pattern: junit-report-*
|
||||||
|
merge-multiple: true
|
||||||
-
|
-
|
||||||
name: Upload frontend coverage to Codecov
|
name: Upload frontend coverage to Codecov
|
||||||
uses: codecov/codecov-action@v5
|
uses: codecov/codecov-action@v5
|
||||||
with:
|
with:
|
||||||
|
# not required for public repos, but intermittently fails otherwise
|
||||||
token: ${{ secrets.CODECOV_TOKEN }}
|
token: ${{ secrets.CODECOV_TOKEN }}
|
||||||
flags: node-${{ matrix.node-version }}
|
flags: frontend
|
||||||
directory: src-ui/coverage/
|
directory: src-ui/coverage/
|
||||||
|
# dont include backend coverage files here
|
||||||
frontend-bundle-analysis:
|
files: '!coverage.xml'
|
||||||
name: "Frontend Bundle Analysis"
|
-
|
||||||
runs-on: ubuntu-24.04
|
name: Upload frontend test results to Codecov
|
||||||
needs:
|
if: ${{ !cancelled() }}
|
||||||
- tests-frontend
|
uses: codecov/test-results-action@v1
|
||||||
steps:
|
with:
|
||||||
- uses: actions/checkout@v4
|
token: ${{ secrets.CODECOV_TOKEN }}
|
||||||
|
flags: frontend
|
||||||
|
directory: src-ui/junit/
|
||||||
|
-
|
||||||
|
name: Download backend coverage
|
||||||
|
uses: actions/download-artifact@v4
|
||||||
|
with:
|
||||||
|
name: backend-coverage-report
|
||||||
|
path: src/
|
||||||
|
-
|
||||||
|
name: Upload coverage to Codecov
|
||||||
|
uses: codecov/codecov-action@v5
|
||||||
|
with:
|
||||||
|
# not required for public repos, but intermittently fails otherwise
|
||||||
|
token: ${{ secrets.CODECOV_TOKEN }}
|
||||||
|
# future expansion
|
||||||
|
flags: backend
|
||||||
|
directory: src/
|
||||||
|
-
|
||||||
|
name: Upload backend test results to Codecov
|
||||||
|
if: ${{ !cancelled() }}
|
||||||
|
uses: codecov/test-results-action@v1
|
||||||
|
with:
|
||||||
|
token: ${{ secrets.CODECOV_TOKEN }}
|
||||||
|
flags: backend
|
||||||
|
directory: src/
|
||||||
-
|
-
|
||||||
name: Use Node.js 20
|
name: Use Node.js 20
|
||||||
uses: actions/setup-node@v4
|
uses: actions/setup-node@v4
|
||||||
|
Loading…
x
Reference in New Issue
Block a user