Akademy/2024/CI CD BoF

From KDE Community Wiki
< Akademy‎ | 2024

Akademy 2024 CI/CD BoF Notes

  • Release process as CI jobs: so far failed on the need for special permissions for uploads or signing
    • some parts nowadays doable via the Notary Service
    • we currently have no ways for the CI system to push changes to Git, which is needed here for version bumps and creating release notes pages
    • signing and uploading tarballs should be implementable with the Notary Service
    • policy question on whether we trust a machine signature more or less than a key under human control
  • Example projects and how to run tests - see e.g. KCalc
  • performance measurements of tests for noticing regressions
    • results aren't comparable with runs on other machines (different hardware, different software config with ASAN, coverage, full debug etc)
    • comparing to previous runs can work though, we have no infrastructure for retain and compare such results though
  • clang-format version pinning just landed, which might help with the stability of formatting CI jobs
  • Appium tests stability on the CI: seems to vary greatly between repos
    • Not working for Neochat or Kate on CI (but locally)
    • For Itinerary and KCalc they work perfectly fine
  • We need better/more documentation for others to help with CI maintenance or CI self-service, same for .craft.ini and .craftignore
  • CI for Craft
    • https://invent.kde.org/sysadmin/ci-utilities/-/merge_requests/369
    • Ingo has a prototype
    • two issues here: test a new or changed blueprint builds on all platforms; test whether dependent stuff breaks
    • the former can be fixed with Ingo's work, the latter with a production branch
    • how to structure caches for two branches? branch models?
  • how long to keep Craft blueprint versions around? - stable branch would help with users needing old blueprint versions as well
  • Gear release three branch problem
    • the magic branch stuff has a two branch assumption hardcoded basically