Excessive tests in Ruqola / dependencies not built as part of the Craft caches

Justin Zobel justin at 1707.io
Fri Jul 17 03:31:16 BST 2026


On 17/7/26 00:11, Thomas Baumgart wrote:
> On Donnerstag, 16. Juli 2026 14:48:57 Mitteleuropäische Sommerzeit laurent Montel wrote:
>
>> Le jeudi 16 juillet 2026, 14:38:57 heure d’été d’Europe centrale Vlad Zahorodnii a écrit :
>>> Hi,
>>>
>>> On 7/16/26 3:00 PM, laurent Montel wrote:
>>>> Le jeudi 16 juillet 2026, 13:35:05 heure d’été d’Europe centrale Ben Cooksley a écrit :
>>>>> Hi Laurent, all,
>>>> Hi,
>>>>
>>>>> Over the past week or two Sysadmin has received a number of complaints
>>>>> regarding a lack of CI builder availability, primarily from those who work
>>>>> on Plasma. Investigation has revealed that Ruqola appears to use a
>>>>> disproportionately high amount of CI time compared to the size of the
>>>>> project and it's activity.
>>>>>
>>>>> This appears to be driven by the fact that Ruqola has a large number of
>>>>> tests that do not take very long to execute (700 or so tests, yet done in 6
>>>>> minutes - with many of these being less than 1 second to run). Given that
>>>>> every single one of these unit tests needs to have automoc / compiler /
>>>>> linker run on it i'd suggest that similar tests be merged into the same
>>>>> compilation unit (you can run the individual tests, but keep similar tests
>>>>> together in the same unit test).
>>>> In ruqola each autotest depends against a specific class.
>>>> So merging them in one autotest seems not logical.
>>>> It's the same idea that merging autotests from kio in one autotest.
>>>>
>>>> After that I am not against to execute autotests only on linux-qt6-next
>>>> It's the main target. but I need to know how to told to CI to exclude other platforms.
>>> If you're looking for a way to run tests only on a specific platform,
>>> there is `run-tests-on: []` option in `.kde-ci.yml`. If you're looking
>>> for a way to also disable building those tests, I'm not sure.
>> ok => we can exclude all autotests from windows/freebsd
>> => we will reduce timeout.
>>
>> We don't have a environment variable which informs that we are on CI ?
>> => I can exclude building on CI + specific platform.
> I just added that logic to my work project (catching Gitlab and Azure DevOps):
>
> # -------------------------------
> # Detect environment: developer or pipeline
> # -------------------------------
> if(DEFINED ENV{CI} OR DEFINED ENV{GITLAB_CI} OR DEFINED ENV{TF_BUILD})
>      set(IS_PIPELINE TRUE)
> else()
>      set(IS_PIPELINE FALSE)
> endif()
I wonder if this logic could be expanded to check the day of the week 
and only run the tests if it is Sunday for example and only then run the 
full test suite?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-devel/attachments/20260717/3f7e7fb0/attachment.htm>


More information about the kde-devel mailing list