Automated building and testing on all supported platforms
Linux
Could be done with GitLab CI and the shared runners on gitlab.com. See [4] for a good example.
Windows
Three options:
-
Use GitLab CI and register an own Windows runner
- Install runner on local virtual machine (disadvantage: have to start up manually whenever tests should be run)
- Use VirtualBox executor ([2]) (disadvantage: more stuff to set up, still only works as long as the host system is online. Overall probably the best solution for now.)
- Pay for a host machine and use that (disadvantage: $$$)
-
Use GitLab CI and do cross-compilation (disadvantage: probably tricky)
-
Use AppVeyor [3]. It supports GitLab, but would be separate from GitLab CI. Might also run the Linux build there in that case [5].
MacOS
Will be supported again after %Version 0.6. Only free CI service that seems to support MacOS is travis-ci.com. Only works with GitHub though. A solution would be to mirror the GitLab repo to a GitHub one and register that with travis.
Links
[1] http://ghostlyrics.net/building-and-deploying-a-c-library-with-gitlab.html
[2] https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/blob/master/docs/executors/virtualbox.md
[3] https://github.com/appveyor/ci/issues/219
[4] https://gitlab.com/probono/QtQuickApp/blob/master/.gitlab-ci.yml
[5] https://www.appveyor.com/docs/getting-started-with-appveyor-for-linux/