Industry use cases on Jenkins

Industry use cases on Jenkins


What is Jenkins?

No alt text provided for this image


Jenkins is an open source Continuous Integration server capable of orchestrating a chain of actions that help to achieve the Continuous Integration process (and not only) in an automated fashion.

Jenkins is free and is entirely written in Java. Jenkins is a widely used application around the world that has around 300k installations and growing day by day.

It is a server-based application and requires a web server like Apache Tomcat. The reason Jenkins became so popular is that of its monitoring of repeated tasks which arise during the development of a project. For example, if your team is developing a project, Jenkins will continuously test your project builds and show you the errors in early stages of your development.

Jenkin History

  • Kohsuke Kawaguchi, a Java developer, working at SUN Microsystems, was tired of building the code and fixing errors repetitively. In 2004, created an automation server called Hudson that automates build and test task.
  • In 2011, Oracle who owned Sun Microsystems had a dispute with Hudson open source community, so they forked Hudson and renamed it as Jenkins.
  • Both Hudson and Jenkins continued to operate independently. But in short span of time, Jenkins acquired a lot of projects and contributors while Hudson remained with only 32 projects. With time, Jenkins became more popular, and Hudson is not maintained anymore.

USE OF JENKINS

No alt text provided for this image

With Jenkins, organizations can accelerate the software development process through automation. Jenkins integrates development life-cycle processes of all kinds, including build, document, test, package, stage, deploy, static analysis, and much more.

Jenkins achieves Continuous Integration with the help of plugins. Plugins allow the integration of Various DevOps stages. If you want to integrate a particular tool, you need to install the plugins for that tool. For example Git, Maven 2 project, Amazon EC2, HTML publisher etc.

No alt text provided for this image


System Requirements for Jenkins

No alt text provided for this image

Continuous integration

Developers practicing continuous integration merge their changes back to the main branch as often as possible. The developer's changes are validated by creating a build and running automated tests against the build. By doing so, you avoid integration challenges that can happen when waiting for release day to merge changes into the release branch. Continuous integration puts a great emphasis on testing automation to check that the application is not broken whenever new commits are integrated into the main branch.


Continuous delivery

Continuous delivery is an extension of continuous integration since it automatically deploys all code changes to a testing and/or production environment after the build stage. This means that on top of automated testing, you have an automated release process and you can deploy your application any time by clicking a button. In theory, with continuous delivery, you can decide to release daily, weekly, fortnightly, or whatever suits your business requirements. However, if you truly want to get the benefits of continuous delivery, you should deploy to production as early as possible to make sure that you release small batches that are easy to troubleshoot in case of a problem.


Continuous deployment

Continuous deployment goes one step further than continuous delivery. With this practice, every change that passes all stages of your production pipeline is released to your customers. There's no human intervention, and only a failed test will prevent a new change to be deployed to production. Continuous deployment is an excellent way to accelerate the feedback loop with your customers and take pressure off the team as there isn't a Release Day anymore. Developers can focus on building software, and they see their work go live minutes after they've finished working on it.

Top Industries that use Jenkins

No alt text provided for this image


How does it work with GitHub?

Jenkins scans your entire GitHub organization and creates Pipeline jobs for each repository containing a Jenkinsfile — a text file that defines the process of building, testing, and deploying your project using Jenkins. Immediately after code is checked in or a new pull request is created, Jenkins will execute the Pipeline job and return the status to GitHub indicating whether it failed or succeeded. This process allows you to run a build and subsequent automated tests at every check in so only the best code gets merged. Catching bugs early and automatically reduces the number of problems introduced into production, so your team can build better, more efficient software.

No alt text provided for this image

Deployments that occur in Jenkins can also be recorded back into GitHub to audit the entire lifecycle.





要查看或添加评论,请登录

Tejas Gupta的更多文章

  • Ace AWS Cloud Practitioner Certification

    Ace AWS Cloud Practitioner Certification

    Hello Everyone , I recently cleared AWS cloud Practitioner exam and would like to share some learning strategies and…

    6 条评论
  • <script>...</script>

    <script>...</script>

    JavaScript is a dynamic programming language that's used for web development, in web applications, for game…

    1 条评论
  • Confusion Matrix - IDS

    Confusion Matrix - IDS

    A confusion matrix is a summarized table of the number of correct and incorrect predictions (or actual and predicted…

    3 条评论
  • Cisco using MongoDB

    Cisco using MongoDB

    What is MongoDB? MongoDB is a document-oriented NoSQL database used for high volume data storage. Instead of using…

  • Do you know all about vi Editor?

    Do you know all about vi Editor?

    Vi or the Visual Editor is the default text editor that comes with most Linux systems. It is a Terminal-based text…

    9 条评论
  • CISCO WITH OPENSHIFT

    CISCO WITH OPENSHIFT

    Red Hat OpenShift is a multifaceted, open source container application platform from Red Hat Inc. for the development…

  • CASE STUDY OF AWS SQS

    CASE STUDY OF AWS SQS

    What is Amazon SQS? Amazon Simple Queue Service (SQS) is a fully managed message queuing service that enables you to…

  • SIEMENS Healthineers With Azure Kubernetes Service (

    SIEMENS Healthineers With Azure Kubernetes Service (

    Lets start with a statistics This itself explain why do we need to have knowledge of Azure Kubernetes Service What is…

  • Facebook with a surprise

    Facebook with a surprise

    The basic idea behind a neural network is to simulate (copy in a simplified but reasonably faithful way) lots of…

  • Ansible session with experts of Redhat

    Ansible session with experts of Redhat

    ??Hello Connection?? Yesterday on 28th December 2020 I attended an "Ansible Industry Experts Practical Demo " arranged…

社区洞察

其他会员也浏览了