Gerrit and CI plans: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(Mentioned that this page related to CS 2023)
 
(2 intermediate revisions by 2 users not shown)
Line 3: Line 3:
==Session Summary==
==Session Summary==


Presentation of Gerrit and CI plans at Contributors Summit 2023
* Gerrit version update to 3.8.x coming. No rush to update, but be we don’t want to fall too far behind on the releases
* New Gerrit labels under study: “API-Review”, “Failing-CI”, “Verified
* Also studying how to show CI queue in Gerrit UI
* CI HW capacity increase planned for next year is ~20%
* Top flaky test are listed weekly in <nowiki>https://testresults.qt.io/grafana/d/000000007/flaky-summary-ci-test-info-overview</nowiki>
* Automatic bug creations for top 5 flaky items per week


==Session Owners==
==Session Owners==
Alexandru Croitor


==Notes==
==Notes==
Discussion:


Work done
* There was some concerns about AI determining the score for “API-Review”, but as it is in proof of concept phase, it is ok for now
* synqt  in CC++
* It was discussed if Jira bot should close the ticket when first commit is merged or when the last cherry-pick is done. There were opinions on both sides, so change to the current way.
* cmake- generate project
* There was a request to have link to the top flaky board in Gerrit UI
* run tests standalone
* Precheck documentation should be improved, like how to exclude MacOS builds (Note: there actually is link in the precheck dialog to the precheck documentation, but people seem not to find it)
* Improved translations
* Automatic restaging of failed changes was requested. There were mixed opinions about it as it might just increase the load on CI and actually increase the flakiness if changes are just “forced” in. Maybe later if fails can be categorized between test and infra structure related, the infra ones could be automatically restaged.
* Linux deploy
* Staging (or restaging)  whole dependency chain or topic would be useful.
* configure -redo with different options
* The COIN mirror site testresults.qt.io/coin seems to update the build status properly only after the build has finished. Can this be improved?
* Unity builds for faster builds
* Documentation fixes, qmake fixes
* Creator features: Cmake Editing/Debugging
 
Current work:


* VCPKG package
* IOS xcframekwork
* QML API public for QML libraries
* Upstream: Better AUTOMOC
* Thanks to many external contributors
* Wiki page about internal API


Discussion
Discussions outside of the presentation slot:


* Enable loading single libraries to speed  up Creator Clang parsing : Will consider / Check box in project to not have it parse the entire tree as a workaround
* Multiple discussion about having new bots in CI. There is some infra for it, let’s just do it. Bots can be project specific.
* Dependency creep (rebuilding too many files): Most likely touched a file that is in bootstrap build causing rebuild of moc, consider building tools separately
* QML API CMake/ Design Studio: Still under Discussion, QML modules, CMake vs .qmlproject, Qt for Python
* CMake Multiconfig issues: Ninja. VSCode/macOS, not supported in Creator
* Distributed builds (Fast build) upstream rejected, out of scope
* No customer interest in Distributed builds
* Minimal Cmake version: Distros are the limiting factor

Latest revision as of 12:47, 4 December 2023


Session Summary

Presentation of Gerrit and CI plans at Contributors Summit 2023

  • Gerrit version update to 3.8.x coming. No rush to update, but be we don’t want to fall too far behind on the releases
  • New Gerrit labels under study: “API-Review”, “Failing-CI”, “Verified
  • Also studying how to show CI queue in Gerrit UI
  • CI HW capacity increase planned for next year is ~20%
  • Top flaky test are listed weekly in https://testresults.qt.io/grafana/d/000000007/flaky-summary-ci-test-info-overview
  • Automatic bug creations for top 5 flaky items per week

Session Owners

Notes

Discussion:

  • There was some concerns about AI determining the score for “API-Review”, but as it is in proof of concept phase, it is ok for now
  • It was discussed if Jira bot should close the ticket when first commit is merged or when the last cherry-pick is done. There were opinions on both sides, so change to the current way.
  • There was a request to have link to the top flaky board in Gerrit UI
  • Precheck documentation should be improved, like how to exclude MacOS builds (Note: there actually is link in the precheck dialog to the precheck documentation, but people seem not to find it)
  • Automatic restaging of failed changes was requested. There were mixed opinions about it as it might just increase the load on CI and actually increase the flakiness if changes are just “forced” in. Maybe later if fails can be categorized between test and infra structure related, the infra ones could be automatically restaged.
  • Staging (or restaging)  whole dependency chain or topic would be useful.
  • The COIN mirror site testresults.qt.io/coin seems to update the build status properly only after the build has finished. Can this be improved?


Discussions outside of the presentation slot:

  • Multiple discussion about having new bots in CI. There is some infra for it, let’s just do it. Bots can be project specific.