I see that Gitlab has a CI/CD feature and it’s popular. What is CI/CD? Can someone explain in simple terms? I have programming experience but I can’t know everything. All I know is that it stands for Continuous Integration and Continuous Deployment. I searched Google for the answer and I didn’t understand the articles. Does it have something to do with containers? So what is it and why should I use it?
Hi @desbest,
A CI script is usually run in a container, yes. Basically that script is created to automate all the tedious steps of running your project’s tests (linters, unit to integration tests, security analysis, etc.). Check out our CI-related videos and the docs to learn more.
Something that helped me personally gettting started with CI was this tutorial
Hi @desbest,
don’t mix general ideas, like ci and cd, and tools like docker
CI allows to securisate your code, and check that your modification don’t reduce the quality of your application, with test, sonar for exemple, security, …
CD allows to deploy automaticly your application when your push code on your repo.
With GitLabCI, you can make operation to cover those two CI and/or CD, and effectively, it use containers.
In the “real life”, i have application and when i push modification, my GitLab CI execute many operations. If my push break a unit test, GitLab CI stop the operations and my application will be not update my serveurs. So i don’t break my application in production Contrariwise if all is ok, my application is update without made one operation manually.