Jenkins Flashcards

1
Q

What is Jenkins?

A

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

Jenkins will continuously test your project builds and shows you the errors in the early stages of your development.

The principle functionality of Jenkins is to keep track of the version control system and to initiate and monitor the build system if changes occur.

It monitors the whole process and provides reports and notifications to alert.

It is a server-based application and requires a web server like Apache Tomcat. Jenkins monitors the repeated tasks, which arise during the development of a project. For example, if your team is developing a project,

In Continuous Integration after a code commit, the software is built and tested immediately. In a large project with many developers, commits are made many times during a day.

With each commit, code is built and tested. If the test is passed, build is tested for deployment. If the deployment is a success, the code is pushed to Production.

This commit, build, test, and deploy is a continuous process, and hence the name continuous integration/deployment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is Continuous Integration?

A

Continuous Integration is building software and testing it thoroughly as much as possible with every change. It is a development practice in which developers integrate code into a shared repository multiple times and each check-in is tested for build and if there any problems detected, it is resolved immediately.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What are the benefits of Continuous Integration?

A
  • Defects could be found early and it takes less cost less to fix
  • Reduced Time to Market as software is already tested and is always ready to move to further environments.
  • Increased Productivity
  • Improved Quality Lowered Costs
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are the programming languages supported by Jenkins?

A

Jenkins is an open source automation server written in Java. It supports version control tools like CVS, Subversion, Git and Perforce. It is a free software used for there are multiple plugins for Jenkins that could be used for projects written in languages other than java.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is a Continuous delivery pipeline?

A

In Continuous Delivery pipeline is an automated build workflow of a set of steps for making changes in application in test, dev, and finally in the production environment.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Explain in brief about “Continuous Integration with Jenkins?

A
  • Software developer commits code to the Source Code Repository like Github.
  • Jenkins server will check the repository on regular intervals for changes.
  • As soon as changes are committed, Jenkins will pull those changes and starts the build process instantly.
  • If the build is not successful then the developer team will be notified.
  • If the build is successful then the build will be deployed to the test server.
  • Once the testing is complete, Jenkins will send the feedback and developers are notified for the new build or test results.
  • Jenkins server monitors the repository regularly and the above process will be repeated.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What are the two components Jenkins is mainly integrated with?

A
  • Version Control system like Git,SVN

* Build tools like Apache Maven.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Why do we use Jenkins?

A

It enables developers to find and solve defects in a code base rapidly and to automate testing of their builds. It is a software that allows Continuous Integration where developers integrate code into a shared repository at regular intervals to remove the problem of issues in the build cycle later.

Jenkins is an open-source continuous integration software tool written in the Java programming language for building and testing changes in a larger code base in real-time.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the requirement for using Jenkins?

A

To use Jenkins you require

I. A source code repository which is accessible, for instance, a Git repository

II. A working build script, e.g., a Maven script, checked into the repository

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are the two components Jenkins is mainly integrated with?

A

Jenkins is mainly integrated with two components
I. Version Control system like GIT, SVN

II. And build tools like Apache Maven.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly