Transition to VM based CI

Ben Cooksley bcooksley at kde.org
Mon Jul 7 19:49:29 BST 2025


On Tue, Jul 8, 2025 at 4:18 AM Milian Wolff <mail at milianw.de> wrote:

> On Montag, 7. Juli 2025 13:49:14 Mitteleuropäische Sommerzeit Ben Cooksley
> wrote:
> > Hi all,
>
> great news, thanks a lot to you and anyone else working on this!
>

Thanks, it has been quite the adventure over the past couple of months
getting everything together.


>
> <snip>
>
> > As an additional benefit, the system will require significantly less work
> > to maintain. Currently each build node, along with the FreeBSD and
> Windows
> > VM thereon, have to be maintained by hand and disk space allocated
> between
> > them in a fixed fashion. This means that any cleanup from stale disk
> > images, over-filled caches, etc. has to be done 3 times on each build
> node
> > (being the Linux host as well as the FreeBSD and Windows guest VMs).
> > Currently provisioning new nodes is significantly labour intensive as
> well
> > (see
> >
> https://invent.kde.org/sysadmin/ci-utilities/-/blob/master/gitlab-templates/
> > README.md for the instructions).
> >
> > This is essentially completely eliminated with the transition to VM based
> > CI, with the majority of the deployment now being possible using Ansible
> > with the only manual step being the registration with Gitlab - which is a
> > fairly quick process taking less than 20 minutes per node. Maintenance is
> > significantly reduced as each node only needs one set of cleanup - not
> > three.
> >
> > Should there be any questions on the above please let me know.
>
> Are the base VM images built using Ansible or something and thus available
> to
> interested developers too as a means to get quickly into a dev setup?
> Especially for Windows that would be great to have, but it would also be
> cool
> if one could download a VM image, start it, maybe install some editor of
> choice, and start hacking right away.
>

The VM images themselves are built using some rather simplistic scripting
at invent.kde.org/sysadmin/ci-images.
Once built they're published to storage.kde.org/vm-images/ - so yes you
could definitely just download a CI VM image and start hacking right away.

There is tooling in sysadmin/ci-images (vm-runner folder) which automates
the process of downloading an image, setting up the VM, etc and makes
running a new one as easy as:
    vm-runner run --cpu 4 --ram 4G --disk 100G --image
storage.kde.org/vm-images/alpine-qt68 --mount ~/shared/ --ssh-keys
~/.ssh/id_rsa.pub mynewvm

(using our Alpine image as an example, but you could use the SUSE or
FreeBSD images as well)


> Cheers
>
> --
> Milian Wolff
> mail at milianw.de
> http://milianw.de


Thanks,
Ben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20250708/33d01866/attachment-0001.htm>


More information about the Plasma-devel mailing list