So today I come to the experts to inquire about how/what I can use to setup a simple to manage CI/CD system for C/C++/C#. Currently development is carried out on Windows, so that would require running the builds on Windows of course, but the future may see a partial or complete move to web-based software.

I have briefly investigated Jenkins and Gitlab, currently running a Gitlab CE on dockers in a VM. Gitlab seems nicer than Jenkins, also it has Git integrated, which is a great benefit in my case.

What I find incredibly hard, is I can't really find much info about setting up toolsets and/or runners for CI/CD for C/C++/C#. Possibly including unit tests, code coverage and reporting. Gitlab for example has tons of documentation for Java, Ruby and other web languages but not for the ones I'm interested in. See here https://gitlab.com/help/ci/examples/README.md

I also read around quite a bit, and found the following StackOverflow questions:

But these haven't given any light on my next steps.

Since the project is a greenfield (no unit testing, no CI/CD, no real modern software development methods) I have to try and look for extremely simple to setup and maintain systems. I can't propose having 2 or 3 devops engs devoted to maintaining a building and testing cluster up and running together with a gazillion web hacks to show data, million bash scripts to move artifacts, etc.

Of course I can accept that some work has to be done to set it up, but the client is not ready for a full "Linux dev experience". Even so, their desire is to have automated builds and automated testing and reporting as much as possible.

What/where can I take a look at?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.