Hello friends. If you are working in a professional software development environment and follow Agile methodology, you must have heard the keyword Continuous Integration (CI). So what is it and how is it done? In this series I will:Lesson 1: Introduction to CI and Jenkins1. Basic introduction to CI, advantages and disadvantages of implementing CI in software development2. Introduction to Jenkins – an open source for CI server, roles and benefits
Lesson 2: Install and configure CI1. Installation instructions2. Configuration3. Combined with a real project: to see how Jenkins really works and the practical benefits it brings
Lesson 3: (Updated later)
I. Continuous Integration (CI) – Continuous Integration
Continuous Integration (CI) is a software development methodology that requires team members to integrate work on a regular basis. Every day, members must monitor and develop their work at least once. This will be automatically checked by another team, which will conduct backtesting to detect errors as quickly as possible. The team found that this approach reduced integration problems more and allowed for faster cohesive software development.
Developers issue tickets and push the code to the directory where the project’s code will be stored. The CI system will listen and pull the code back (CI server), build and then test the code. In case of build, test fails. , team members will immediately see the error that has arisen and the developers will be responsible for fixing the error and pushing the fix code to the repo.
You are viewing: What is Jenkins?
3. Practical features of CI
Version control (source control and version control).Automatic build including test.Development team regularly move (commit) the source to the main repository (mainline).Whenever the code changes, it will build again (mainline). ). see what happened (changes, errors…) for review and timely resolution.
However, to implement continuous integration system, we will encounter the following difficulties:
It takes time to set up the initial system. Requires project managers, programmers, testers to understand the Agile software development model, CI integration system, how to use support tools for the project. Agile and CI. Hardware equipment costs (servers for CI).
4. Benefits of Continuous Integration
To answer the question why we should use Continuous Integration Systems, we will give some key benefits as follows:
Reduce the risk of bugs being discovered early.Reduce repeatability of processesCreate valuable software as early as possible and ready to be deployed anytime, anywhere.Provides an overview and specifics possible for each stage.Improve the skills of software development staff.Improve software quality…
See also: What is Content – Writing How to Build Attractive Content
5. Tools used
As an open source web application (developed by the community under the MIT license) that acts as the build & test server of the continuous integration system. Jenkins is written in Java, so Jenkins can be combined with most most of the other tools of the system integrate continuously with many different platforms and especially the mobile application platform (android). The predecessor Hudson was written by Kosuke Kawaguchi at Sun, since Sun was acquired by Oracle in 2005. In 2010, a Hudson development division spun off its own development and named it Jenkins. Widely used and continuously improved by the open source community Multi-award winning :InfoWorld Bossies Award, 2011 O” Reilly Open-Source Award, 2011ALM&SCM, SDTimes 100, 2010, 2011 ,GlassFish Community Innovation Award 2008, Duke’sChoice Award 2008 Trusted by major organizations: Ebay, Apache, NASA,Boeing,Mozilla, Linked in,…
Easy to install and use.Multi-platform.Support for many software development technologies.Widely used.Easy to extend.Easy to link with other tools of continuous integration system through continuous integration. via plug-ins.…Free.
3. Jenkins Role in Continuous Integration Systems
Is the heart of CI – Is the CI server (build & test server) that holds the central position of the “heart” for all system activities.
-CI helps to close the software development process automatically
Thanks to cross-platform support, Jenkins technology helps to automatically close the software development process according to the Agile model in general and the continuous integration system in particular. With more than 400 plugins and continuous development, Jenkins has become an effective assistant for the CI system.
See also: What is a deal – Meaning of the word Deal
4. Benefits that Jenkins brings
All with Jenkins almost automatically. => Reduce time and cost.Improve staff capacity The benefits of Jenkins can be summed up as FESS.* Faster.* Easier.* Safer.* Smarter.
Part one of this series I will only give a brief introduction to CI and Jenkins. You can read more in the book Jenkins – The Definitive Guide at the link below. http://www.bogotobogo.com/DevOps/Jenkins/images/Intro_install/jenkins-the-definitive-guide.pdf
In lesson 2, I will go a little deeper into installing and configuring Jenkins, combined with a real project to see how Jenkins really works and the practical benefits it brings. Please pay attention to read. Thank you for watching