I just want to say: great effort doing these investigations Krzysztof! On 8 Feb 2016 04:50, "Krzysztof Kosiński" <tweenk.pl@...400...> wrote:
Continuing the CI tools investigation, I took a stab at setting up lib2geom builds on Travis CI. This was totally trivial and took maybe 10 minutes. I only needed to figure out the correct APT commands to install the dependencies.
https://travis-ci.org/inkscape/lib2geom/jobs/107693602
GitLab does not have anything comparable. GitLab CI supports only Ruby, and for anything else you need to maintain your own runner that executes the builds. A downside is that Travis CI is tightly coupled to GitHub and we cannot use it to build projects from repositories that are not on GitHub.
I also looked at AppVeyor, which is a CI tool specifically for building on Windows. It's not tied to GitHub at all - it can pull sources from any public Git repository. It can run builds on multiple versions of Visual Studio, as well as under MinGW. It seems that it could work. However, I'll need a Windows machine to figure out the correct incantations for setting up lib2geom's dependencies, since figuring this out via test commits and the Web UI is very tedious.
AppVeyor integrates with NuGet, which is a bit like APT for Windows development packages. It has Boost 1.60, glib 2.32 and cairo 1.12, but it does not have GTK. It should be possible to push the rest of our dependencies to NuGet, but it's a fair amount of work.
Best regards, Krzysztof
2016-02-07 18:18 GMT-08:00 Krzysztof Kosiński <tweenk.pl@...400...>:
2016-02-07 15:17 GMT-08:00 Krzysztof Kosiński <tweenk.pl@...400...>:
First look: Gitlab has Windows builds in its CI system, which is very important. On GitHub we would need to use at least 2 different CI tools: Travis CI does not support Windows, and AppVeyor is Windows-only and uses the MS toolchain.
Correction: the runner software for Gitlab CI can be installed on those platforms, and you can easily add those runners to build projects on Gitlab, but there are no public Windows or OSX builders. In fact, Gitlab's public runners only support Ruby.
Best regards, Krzysztof