More information about Official GitLab (and it's CI) and it's shared runners?

By Official, I mean

Most of documentation seems to be written only for Linux platform, or with assumption that I have my own GitLab instance and CI runners installed on machines that I own.

I’ve tested the basics of CI provided on, and it’s great, but my first impression is that it indeed is only for Linux platform. While the docker support is great and I’d love using GitLab as it is for development of server backends or anything else that was very reliant on it, I’m confused as to whether I could test my software on Windows too, as I’m more interested in command-line tools and desktop applications.

Is there any support for that besides setting up my own runner on my own machine In case I want to test things on Windows and possibly MacOS?

If not, what are my options? Could I, for example, use Appveyor CI while still using GitLab?

As I understand, this tool is oriented at companies and development teams in general that want to manage their entire stack, including git server and CI hosting all by themselves rather than depending on 3rd party, I am not one of those people, I am more of casual user that loves open source and it’s not something I do as my job, but so far GitLab has kept me interested despite that, and I’m wondering what are my options.

Hi @Sahsahae,

GitLab itself requires a Linux operating system. If not using, GitLab is provided as a software package that is installed and run on a Linux server.

CI/CD Jobs use GitLab runner which is written in go and able to run on Linux, MacOS, and Windows. You can find information on how to install a runner on all supported operating systems here. You’ll also need to register the runner (windows, macOS.

I encourage you to have a look at the CI/CD Pipeline configuration docs and GitLab CI/CD Examples as these resources should give you a better understanding of how jobs and tests are defined and set up.

I’m unfamiliar with Appveyor CI, but many users do have external CI pipelines that they use with GitLab.