what is jenkins

1 year ago 64
Nature

Jenkins is an open-source automation server that helps automate the parts of software development related to building, testing, and deploying, facilitating continuous integration and continuous delivery. It is a self-contained Java-based program that can be used as a simple CI server or turned into the continuous delivery hub for any project. Jenkins can be easily set up and configured via its web interface, which includes on-the-fly error checks and built-in help. It supports version control tools, including AccuRev, CVS, Subversion, Git, Mercurial, Perforce, ClearCase, and RTC, and can execute Apache Ant, Apache Maven, and sbt based projects as well as arbitrary shell scripts and Windows batch commands. Jenkins can easily distribute work across multiple machines, helping drive builds, tests, and deployments across multiple platforms faster. Jenkins is used to implement CI/CD workflows, called pipelines, which automate testing and reporting on isolated changes in a larger code base in real-time and facilitate the integration of disparate branches of the code into a main branch. Jenkins can be extended via its plugin architecture, providing nearly infinite possibilities for what Jenkins can do.