Skip to content

Conversation

@deyankiteworks
Copy link
Member

@deyankiteworks deyankiteworks commented Jul 28, 2025

Description

The Implementation: each test suite includes web-packages.txt file where the dependent web packages are listed.
Example:

# web-packages.txt
web-app-search
web-app-ocm

This list is then used to determine the affected test suite based on the file changes in the web packages.

Behaviour:

  • The test suite will run if the changes are in the web packages listed in web-packages.txt
  • If a test suite doesn't contain web-packages.txt file, then the suite is marked dependent on all web-packages
  • Changes in design-system, web-client, web-runtime and web-pkg packages affect all test suites
  • Similarly, changes in tests/e2e/, tests/drone/, .drone.star, .drone.env and package.json also affect all test suites

Example CI build: https://drone.owncloud.com/owncloud/web/56071

Related Issue

Motivation and Context

How Has This Been Tested?

  • test environment: 🤖

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Technical debt
  • Tests
  • Documentation
  • Maintenance (e.g. dependency updates or tooling)

@deyankiteworks deyankiteworks self-assigned this Jul 28, 2025
@update-docs
Copy link

update-docs bot commented Jul 28, 2025

Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes.

@nirajacharya2 nirajacharya2 force-pushed the tests/OCISDEV-220/run-e2e-tests-only-related-to-changed-packages branch 6 times, most recently from b945c0b to 3cce412 Compare October 30, 2025 10:58
@nirajacharya2 nirajacharya2 force-pushed the tests/OCISDEV-220/run-e2e-tests-only-related-to-changed-packages branch 3 times, most recently from 5d30d0c to 613f5ad Compare October 31, 2025 04:13
@CLAassistant
Copy link

CLAassistant commented Oct 31, 2025

CLA assistant check
All committers have signed the CLA.

@nirajacharya2 nirajacharya2 force-pushed the tests/OCISDEV-220/run-e2e-tests-only-related-to-changed-packages branch 15 times, most recently from e93453e to 9cee5f0 Compare October 31, 2025 07:17
@nirajacharya2 nirajacharya2 force-pushed the tests/OCISDEV-220/run-e2e-tests-only-related-to-changed-packages branch 2 times, most recently from 43a4370 to 4972ebc Compare November 6, 2025 10:13
@saw-jan saw-jan self-assigned this Nov 7, 2025
@saw-jan saw-jan force-pushed the tests/OCISDEV-220/run-e2e-tests-only-related-to-changed-packages branch 6 times, most recently from efaf82e to 6f0a98b Compare November 12, 2025 07:12
@saw-jan saw-jan force-pushed the tests/OCISDEV-220/run-e2e-tests-only-related-to-changed-packages branch from 6f0a98b to bd46766 Compare November 12, 2025 09:02
@LukasHirt
Copy link
Collaborator

@saw-jan here's a diagram for the dependencies:

graph TD
    %% Core Packages
    web-client[web-client]
    design-system[design-system]
    
    %% Infrastructure Packages
    web-pkg[web-pkg]
    web-runtime[web-runtime]
    
    %% Application Packages
    web-app-activities[web-app-activities]
    web-app-admin-settings[web-app-admin-settings]
    web-app-app-store[web-app-app-store]
    web-app-epub-reader[web-app-epub-reader]
    web-app-external[web-app-external]
    web-app-files[web-app-files]
    web-app-ocm[web-app-ocm]
    web-app-password-protected-folders[web-app-password-protected-folders]
    web-app-pdf-viewer[web-app-pdf-viewer]
    web-app-preview[web-app-preview]
    web-app-search[web-app-search]
    web-app-text-editor[web-app-text-editor]
    web-app-webfinger[web-app-webfinger]
    
    %% Infrastructure Dependencies
    web-pkg --> web-client
    web-pkg --> design-system
    web-runtime --> web-client
    web-runtime --> web-pkg
    web-runtime --> design-system
    
    %% App Dependencies (with design-system)
    web-app-activities --> web-client
    web-app-activities --> web-pkg
    web-app-activities --> web-runtime
    web-app-activities --> design-system
    
    web-app-admin-settings --> web-client
    web-app-admin-settings --> web-pkg
    web-app-admin-settings --> web-runtime
    web-app-admin-settings --> design-system
    
    web-app-app-store --> web-client
    web-app-app-store --> web-pkg
    web-app-app-store --> web-runtime
    web-app-app-store --> design-system
    
    web-app-files --> web-client
    web-app-files --> web-pkg
    web-app-files --> web-runtime
    web-app-files --> design-system
    
    web-app-ocm --> web-client
    web-app-ocm --> web-pkg
    web-app-ocm --> web-runtime
    web-app-ocm --> design-system
    
    web-app-search --> web-client
    web-app-search --> web-pkg
    web-app-search --> web-runtime
    web-app-search --> design-system
    
    web-app-webfinger --> web-client
    web-app-webfinger --> web-pkg
    web-app-webfinger --> web-runtime
    web-app-webfinger --> design-system
    
    %% App Dependencies (without design-system)
    web-app-epub-reader --> web-client
    web-app-epub-reader --> web-pkg
    web-app-epub-reader --> web-runtime
    
    web-app-external --> web-client
    web-app-external --> web-pkg
    web-app-external --> web-runtime
    
    web-app-password-protected-folders --> web-client
    web-app-password-protected-folders --> web-pkg
    web-app-password-protected-folders --> web-runtime
    
    web-app-preview --> web-client
    web-app-preview --> web-pkg
    web-app-preview --> web-runtime
    
    web-app-text-editor --> web-client
    web-app-text-editor --> web-pkg
    web-app-text-editor --> web-runtime
    
    %% Special case: pdf-viewer doesn't use web-client
    web-app-pdf-viewer --> web-pkg
    web-app-pdf-viewer --> web-runtime
    
    %% Styling
    classDef corePackage fill:#e1f5ff,stroke:#0288d1,stroke-width:3px
    classDef infraPackage fill:#fff9c4,stroke:#f57c00,stroke-width:2px
    classDef appPackage fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
    
    class web-client,design-system corePackage
    class web-pkg,web-runtime infraPackage
    class web-app-activities,web-app-admin-settings,web-app-app-store,web-app-epub-reader,web-app-external,web-app-files,web-app-ocm,web-app-password-protected-folders,web-app-pdf-viewer,web-app-preview,web-app-search,web-app-text-editor,web-app-webfinger appPackage
Loading

@saw-jan saw-jan force-pushed the tests/OCISDEV-220/run-e2e-tests-only-related-to-changed-packages branch 2 times, most recently from eafbc35 to bb60d88 Compare November 18, 2025 08:10
@saw-jan saw-jan changed the title OCISDEV-220: Check how to fail e2e tests in web-app-ocm OCISDEV-220: run e2e test suites based on the changes in web packages Nov 18, 2025
@saw-jan saw-jan marked this pull request as ready for review November 18, 2025 08:22
Copy link
Collaborator

@LukasHirt LukasHirt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@saw-jan do you think we should add some information about this into the dev docs?

@saw-jan
Copy link
Member

saw-jan commented Nov 19, 2025

@saw-jan do you think we should add some information about this into the dev docs?

yeah, would be great. I will add it

@saw-jan saw-jan force-pushed the tests/OCISDEV-220/run-e2e-tests-only-related-to-changed-packages branch from bb60d88 to bf42a7d Compare November 19, 2025 11:05
@saw-jan saw-jan requested a review from LukasHirt November 19, 2025 11:06
@sonarqubecloud
Copy link

@saw-jan saw-jan merged commit d165261 into master Nov 20, 2025
4 checks passed
@saw-jan saw-jan deleted the tests/OCISDEV-220/run-e2e-tests-only-related-to-changed-packages branch November 20, 2025 04:48
ownclouders pushed a commit that referenced this pull request Nov 20, 2025
…#12865)

* ci: filter test suites to run based on file changes

Signed-off-by: Saw-jan <[email protected]>

* feat: add package dependency file to each test suite

Signed-off-by: Saw-jan <[email protected]>

* docs: add docs on using web-packages.txt

Signed-off-by: Saw-jan <[email protected]>

---------

Signed-off-by: Saw-jan <[email protected]>
Co-authored-by: Saw-jan <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[QA] Run E2E tests only related to changed packages

6 participants