mirror of
https://github.com/inventree/InvenTree.git
synced 2025-12-20 11:13:28 +00:00
feat(backend): add performance tests (#11017)
* feat(backend): add performance test ref #11002 * feat(backend): add performance test (#486) * chore(deps): bump the dependencies group across 1 directory with 2 updates (#11003) * chore(deps): bump the dependencies group across 1 directory with 2 updates Bumps the dependencies group with 2 updates in the /src/backend directory: [django-q2](https://github.com/GDay/django-q2) and [sentry-sdk](https://github.com/getsentry/sentry-python). Updates `django-q2` from 1.8.0 to 1.9.0 - [Release notes](https://github.com/GDay/django-q2/releases) - [Changelog](https://github.com/django-q2/django-q2/blob/master/CHANGELOG.md) - [Commits](https://github.com/GDay/django-q2/compare/v1.8.0...v1.9.0) Updates `sentry-sdk` from 2.46.0 to 2.47.0 - [Release notes](https://github.com/getsentry/sentry-python/releases) - [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md) - [Commits](https://github.com/getsentry/sentry-python/compare/2.46.0...2.47.0) --- updated-dependencies: - dependency-name: django-q2 dependency-version: 1.9.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies - dependency-name: sentry-sdk dependency-version: 2.47.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: dependencies ... Signed-off-by: dependabot[bot] <support@github.com> * fix style --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Matthias Mair <code@mjmair.com> * Rearrange python package installs in are metal setup (#11005) * Reorder pip installation steps in bare metal setup * Reorder pip installation steps in bare metal setup * remove unused lines * Fix docs formatting (#11008) * Remove prefetch_related from parametric data filter (#11007) - Not required as we do not process the parameter fields in python * [refactor] Generic status API (#11009) * Fix docs formatting * [refactor] cache custom states - Generic state API endpoint executed query for each state type - We can run a single database query and cache these in memory - Reduces query time by ~50% * [refactor] Build list (#11010) - Prefetch project_code - Annotate parameter data * Improve the documentation installation instructions. (#11011) Co-authored-by: Mitch Davis <mjd@afork.com> * [refactor] Improve primary_address annotation for Company API (#11006) * Refactor primary_address annotation - Remove SerializerMethodField - Better cache introspection * Allow address detail to be optional * Refactor address caching * Fix primary_address annotation * Remove "address_count" field - Pointless annotation which is not used anywhere * Update API version * Tweak docs page * Tweak unit tests * feat(backend): add performance test ref #11002 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Michael <michael@buchmann.ruhr> Co-authored-by: Oliver <oliver.henry.walters@gmail.com> Co-authored-by: Mitch Davis <mjd+github@afork.com> Co-authored-by: Mitch Davis <mjd@afork.com> * add oidc perm * fix run setup * add gitignore * pin action * enable DB for test * patch test detection * move test argument into tasks * seperate performance testing into own step * add automigration * update test * Increase MAX_QUERY_TIME to 60 seconds * use newer python for better prerformance / measurement options * skip plugin install step * add debug step * add debug stmt * make version import safe * fix command * more debugging * move import * rollback changes * do full install * rollback skip_plugins too * hide version * new debug try * add more debug * try 3.13 * try reinstalling the cffi * reinstall cffi? * reset debug * rollback debug steos * add initial tests --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Michael <michael@buchmann.ruhr> Co-authored-by: Oliver <oliver.henry.walters@gmail.com> Co-authored-by: Mitch Davis <mjd+github@afork.com> Co-authored-by: Mitch Davis <mjd@afork.com>
This commit is contained in:
33
.github/workflows/qc_checks.yaml
vendored
33
.github/workflows/qc_checks.yaml
vendored
@@ -377,6 +377,39 @@ jobs:
|
||||
slug: inventree/InvenTree
|
||||
flags: backend
|
||||
|
||||
performance:
|
||||
name: Tests - Performance
|
||||
runs-on: ubuntu-24.04
|
||||
|
||||
needs: ["pre-commit", "paths-filter"]
|
||||
if: needs.paths-filter.outputs.server == 'true' || needs.paths-filter.outputs.force == 'true'
|
||||
permissions:
|
||||
contents: read
|
||||
id-token: write
|
||||
|
||||
env:
|
||||
INVENTREE_DB_NAME: inventree_unit_test_db.sqlite
|
||||
INVENTREE_DB_ENGINE: sqlite3
|
||||
INVENTREE_PLUGINS_ENABLED: true
|
||||
INVENTREE_CONSOLE_LOG: false
|
||||
INVENTREE_AUTO_UPDATE: true
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # pin@v6.0.1
|
||||
with:
|
||||
persist-credentials: false
|
||||
- name: Environment Setup
|
||||
uses: ./.github/actions/setup
|
||||
with:
|
||||
apt-dependency: gettext poppler-utils
|
||||
dev-install: true
|
||||
update: true
|
||||
- name: Performance Reporting
|
||||
uses: CodSpeedHQ/action@346a2d8a8d9d38909abd0bc3d23f773110f076ad # pin@v4
|
||||
with:
|
||||
mode: simulation
|
||||
run: inv dev.test --pytest
|
||||
|
||||
postgres:
|
||||
name: Tests - DB [PostgreSQL]
|
||||
runs-on: ubuntu-24.04
|
||||
|
||||
Reference in New Issue
Block a user