Draft for mail about ci

Ingo Klöcker kloecker at kde.org
Thu Mar 9 15:14:43 GMT 2023


On Donnerstag, 9. März 2023 14:20:59 CET Halla Rempt wrote:
> Sorry for the delay... Here's my first draft, please reply with suggestions
> and corrections.

I may be misunderstanding your needs, but I think Craft solves the problem of 
dependencies in that it can (and does) rebuild most dependencies if needed. 
(Some, like the compilers, are taken from the distribution and baked in the 
the CI images.) Craft also features patching. And it features a build artifact 
cache which speeds up rebuilds with all dependencies. Craft isn't used for 
Linux or FreeBSD builds (as far as I know), but using it also for those builds 
is technically no problem (and it is used for AppImage builds which except for 
the packaging are Linux builds). Craft currently doesn't run unit tests (or 
does it for Windows builds?), but that can be added easily.

The upcoming switch from binary factory to GitLab CI for all Craft-based 
builds (which will hopefully be completed in the not-too-distant future; the 
signing of artifacts being one of the last missing things) will give you the 
possibility to build, package and publish any branch (main/master, release 
branches, work branches).

Regards,
Ingo

> -------------
> The situation: Krita has a lot of *complicated* and *new* dependencies. Some
> dependencies need to be patched if the result is to be a working Krita, and
> some aren't available on distributions yet. We're also moving quite fast
> when it comes to updating and fixing dependencies -- and even upstreaming
> fixes.
> 
> This gives the following problem:
> 
> * Jenkins CI depends, afaik, on distribution packages for dependencies.
> While it's important that Krita builds on distributions, that doesn't
> produce a version of Krita or a unittest run that works for Krita
> developers. * We need a CI that builds against our dependencies so we can
> have artefacts and unittest runs that represent our intention. * And we
> also still need release and nightly builds, not just builds after merging
> an MR
> 
> I'm not sure how we can solve the problem of missing or outdated
> dependencies on distribution CI: should we make an external cmake project
> that builds those as part of the main build system? -------------

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kimageshop/attachments/20230309/40c0ddc6/attachment.sig>


More information about the kimageshop mailing list