Rollout of Gitlab CI

Ben Cooksley bcooksley at kde.org
Wed Sep 29 10:27:08 BST 2021


Hi all,

As those of you who watch and work on Frameworks repositories will be
aware, we've just rolled out the first set of native Gitlab CI builds.

These builds are at this time Linux only, but do include support for both
regular branch builds as well as for Merge Requests. It is anticipated that
Windows, FreeBSD and Android builds will follow in the near future - there
are a few extra things we need to get completed first before they can be
rolled out. As part of carrying out the build the scripts will also gather
Code Coverage and Code Quality information using gcovr and cppcheck
respectively, and this will be made available to you within the Gitlab
interface.

With regards to availability to projects outside Frameworks, projects that
depend only on Frameworks (and no other KDE project) may enable CI for
their project by adding the necessary .kde-ci.yml and .gitlab-ci.yml files
to their repositories. I anticipate that once the necessary changes have
been made to the "seed" jobs used to provision the initial artifacts it
should be possible for all projects to rollout support (although i'd like
to add ccache support to the system to ensure larger project builds
complete promptly first).

If anyone would like to help out with getting the seed jobs ready please
let me know as this is definitely something that the community can assist
with (and will also help with easing the rollout of Windows, FreeBSD and
Android builds).

For those projects that do go ahead with enabling Gitlab CI support please
ensure you add the necessary .kde-ci.yml file beforehand, specifying in it
the necessary Dependencies, as well as the necessary Options your project
needs to customise for their build. A list of all the possible values in a
.kde-ci.yml file can be found at
https://invent.kde.org/sysadmin/ci-utilities/-/blob/master/config-template.yml#L10

For those projects that are not yet able to enable the system, it is
strongly encouraged that you go ahead and get the .kde-ci.yml files ready
in your repository now - especially if other projects depend on your
project. This will allow the rollout of the CI system to those projects to
proceed much more smoothly (otherwise we will need to get them added to
those projects which have other projects depending on them).

Please note that this new infrastructure replaces all existing Gitlab CI
jobs we provided in the initial testing phase, and those should be removed
(much like how I did for Frameworks) when switching to the new setup.

Thanks,
Ben
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-devel/attachments/20210929/d9d7b641/attachment.htm>


More information about the kde-devel mailing list