I'm a Systems Reliability and DevOps engineer for Netdata Inc. When not working, I enjoy studying linguistics and history, playing video games, and cooking all kinds of international cuisine.
At a high level, the purpose of CI is to provide two things:
A guarantee that the build works on each commit. This is important because it makes it significantly easier to figure out what commit actually introduced a bug (if the build works on every commit, then you can use a simple binary search starting with the last known good version to figure out where the bug got introduced).
Testable builds for each commit. This makes code review much easier, as well as simplifying things for your testing/QA team because they can always pull an up-to-date copy of the application to test (and, depending on how you have things configured, they can go back and pull a copy from any older commit as well).
Depending on the CI tool and the configuration, you may also get a number of other checks. For example, one of the FOSS projects I contribute too (Netdata) has TravisCI configured to run code checks, unit testing, and verify that it's deployable on more than a dozen different Linux distributions.
For further actions, you may consider blocking this person and/or reporting abuse
Top comments (1)
At a high level, the purpose of CI is to provide two things:
Depending on the CI tool and the configuration, you may also get a number of other checks. For example, one of the FOSS projects I contribute too (Netdata) has TravisCI configured to run code checks, unit testing, and verify that it's deployable on more than a dozen different Linux distributions.