-
Notifications
You must be signed in to change notification settings - Fork 187
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
web test pipelines are taking up to 1 hour #2356
Comments
|
Note: the "split into parts" thing is not smart at all. It counts the number of test suites that exist and splits them between pipelines without any analysis of their content. It is supposed to be a "reasonable rough way" to make a set of pipelines that finish in a similar time. The problem is that not every test suite has a similar number/length of scenarios. And in the case of testing with OCIS, a lot of sharing tests are skipped - all the scenarios that test with "sharing to the root folder" are not applicable to OCIS. That results in silly outcomes like: https://drone.owncloud.com/owncloud/ocis/6227/54/6
There were 3 test suites to run in that pipeline. But none of those test suites had any test scenarios relevant to OCIS. So that pipeline did nothing useful. We could think of ways to improve the balancing of the run-time of each pipeline. |
Even with my comment above, the test scenarios have got slower. We need to investigate why, and fix whatever waiting/wasted-time is happening. |
In oCIS, we used to have similar drone config as |
We can explicitly specify the web test suites to be run in each pipeline in oCIS, and organize those so that they almost equalize the run-time of each pipeline. The problem we had with that in the past is that when new test suites are added (or test suites are renamed...) then we have to remember to update the pipelines of web tests in oCIS. It is not such a big thing. Maybe it is worth going back to doing it that way, because the current 10 or 20 parts have big differences in run-time. But whatever we do about spreading the test suites between pipelines, we also have to work out why the tests are now a lot slower! |
The issue lies in a new implementation of |
PR in web is here owncloud/web#5635, but it looks like I tried to optimize too much. Definitely found the reason for the major CI time increases. |
PR in web owncloud/web#5635 is merged and brought down the CI time to 35 minutes. Should help in ocis as well. |
The run-time of many web pipelines in oCIS is very different. It would be good to think of a way to make this smarter, and each pipeline have a more similar number of test scenarios. |
We know that there are various web test suites that have zero scenarios for the oCIS case. Those are the "sharing to root" test suites. We could enhance the "run parts" logic That will remove the useless "zero scenario" suites from the oCIS test run and might be enough to balance out the pipelines. Maintainenance of the list of "do not run" test suites will be low. When we add new test suites in web, they will automatically get run in oCIS. |
The API test pipelines are finishing quickly (within 15 to 20 minutes). But some web test pipelines are taking up to 1 hour to finish.
The web
smokeTest
pipeline is taking about 1 hour. That is too long.smokeTest
scenarios there are. Either split that pipeline into 2 or 3 parts, or reduce the number ofsmokeTest
scenarios.The text was updated successfully, but these errors were encountered: