Zum Hauptinhalt springen Zur Suche springen Zur Hauptnavigation springen

CI/CD Pipeline Using Jenkins Unleashed

56,99 €

Sofort verfügbar, Lieferzeit: Sofort lieferbar

Format auswählen

CI/CD Pipeline Using Jenkins Unleashed, Apress
Solutions While Setting Up CI/CD Processes
Von Pranoday Pramod Dingare, im heise Shop in digitaler Fassung erhältlich

Produktinformationen "CI/CD Pipeline Using Jenkins Unleashed"

Understand continuous integration (CI), continuous delivery, and continuous deployment (CD) with Jenkins. These processes allow users as well as administrators to catch problems as soon as they get injected into software systems.

This book starts with an introduction to Jenkins and covers its architecture and role in CI/CD. The basics are covered, including installing and configuring Jenkins. Tool configuration and plugins are discussed as well as available security measures such as credentials. You will learn what is meant by Job in Jenkins, its types, sections, and much more. You will look at Java API: projects, jobs, configuration. The concluding chapters take you through creating pipelines, their role in managing web apps, and distributed pipelines. The book also covers unit testing using TestNG as well as end-to-end testing using Selenium Python as a part of building a life cycle and setting up Jenkins on different physical and Docker environments as well as Jenkins integration with cloud environments such as AWS. And you will learn how to create reusable libraries for use in Jenkins Pipeline and control Jenkins servers using Jenkins CLI and REST APIs. The new Jenkins Blue Ocean also is covered.

The book helps you understand CI/CD implementation using Jenkins from scratch in your projects and prepare for end-to-end DevOps practices.

WHAT YOU WILL LEARN

* Apply Jenkins to create end-to-end pipelines
* Integrate Jenkins with AWS, Docker, Git, and many more tools
* Use Selenium automation for end-to-end testing
* Create distributed pipelines

WHO IS THIS BOOK FOR

Developers and test automation professionals who are involved in creating CI/CD pipelines as well as prospective DevOps aspirants who want to make their way ahead as professionals

PRANODAY PRAMOD DINGARE is a certified software testing professional with more than 15 years of experience in software testing, including more than 10 years in automation testing. Pranoday has been leading test automation of mobile applications for the last eight years and has been involved in test automation tools evangelism, R&D, proof of concept, and pilot projects. He has worked as a freelance test automation consultant for various startups and mid-sized IT companies from India and abroad. Pranoday's open-source test automation tools have successfully replaced licensed automation tools, leading to major savings. He is responsible for incorporating DevOps practices into test automation processes of organizations by implementing DevOps tools such as Jenkins, Gitlab, Nexus, Docker, etc. He has recently shifted into full-time DevOps profile and has been working as a Lead DevOps professional since last 1 year. He has implemented various DevOps tools like Dockers, Maven, Kubernetese, Git, Nexus, Azure DevOps, AWS, SonarQube, Jenkins etc. and has been instrumental in automating various applications’ build and deployment processes. Pranoday is a tutor who has been involved in software testing and DevOps training for more than nine years, including conducting more than 200 retail and corporate trainings on the latest test automation and DevOps tools. He is a blogger on the latest test automation tools and technologies. Pranoday is passionate about working as a test automation architect, teaching and sharing knowledge about the latest tools and technologies, and helping professionals achieve their dreams.

Chapter 1: Understanding CI/CD

Sub-Topics:

• History

• What is continuous integration, continuous delivery and deployment

• Need of CI/CD

Chapter 2: Introduction to Jenkins

Sub-Topics

• History of Jenkins

• Understanding concept of Jenkins

• Understanding architecture of Jenkins

• Understanding role of Jenkins in CI/CD

Chapter 3: Installation of Jenkins

Sub - Topics:

• Hardware/software requirements of Jenkins

• Problems and troubleshooting

• Installing Jenkins on Windows

• Installing Jenkins using .war file

• Installing Jenkins using .msi file

• Installing Jenkins as a service• Installing Jenkins on Linux environment

• Using Jenkins as a Docker Image

• Understanding directory structure and different configuration files

Chapter 4: Configuring Jenkins

Sub - Topics:

• Maven project configuration

o What is Maven

o Configuring Maven with Jenkins

• Jenkins location

• Gitlabsection

• Githubsection

• Global pipeline libraries

• Email notification

• Extended email notification

Chapter 5:Understanding Global Tool Configuration

Sub - Topics:

• Maven configuration

• JDK configuration

• Gitconfiguration

• Ant configuration

• Gradle configuration

Chapter 6: Manage Plugins

Sub - Topics:

• What is plugin

• List of widely used Jenkins plugin

• How to install new plugin

• Commonly faced problems and troubleshooting

Chapter 7: Managing Security with Jenkins

Sub - Topics:

• Configure global security

o Configure LDAP

- What is LDAP

- Understanding need of LDAP configuration with Jenkins - How to configure LDAP with Jenkins

• Setting up authorization

o Creating different groups

o Assigning rights

• API Token

• What is API token

• How to generate API token

• SSHserver

Chapter 8: Manage Credentials

Sub - Topics:

• What is credentials

• Need of creating credentials

• How to create different types of credentials:

o Basic authentiication

o SSHauthentication

o API token

Chapter 9: Manage Users

Sub - Topics:

• Creating users

o Assigning different rights to the users

Chapter 10: Understanding Jobs in Jenkins

Sub - Topics:

• What is job

• Understanding Jenkins dashboard

• Different types of Jenkins job

• Different sections of job

o Trigger o Build step

o Post job

• Creating first freestyle job

• Checking result of job

Chapter 11: Preparing Java API Project

Sub - Topics:

• Implementing a JAVA library project

• Understanding unit testing

• Integrating TestNG unit testing framework

• Understanding different build lifecycle phases of API project

• Implementing build lifecycle using Maven

Chapter 12: Creating Freestyle Job to Manage Java API Project

Sub - Topics:

• Introduction to Git

• Creating Java API code repository on Gitlab

• Pushing JAVA API project on Git

• Understanding Nexus

o What is Nexus

o Configuring Nexus

o Creating artifact repository on Nexus

• Integrating Git and Nexus with Jenkins

• Creating self-executed freestyle job to manage releases of Java API

o Configuring SCM

o Create a build Step

o Configure post build phase

Chapter 13: Creating an Auto-trigger Free Style Job To Manage JAVA API Releases

Sub - Topics:

• Configuring SCM

• Setting Jenkins to poll SCM

• Configuring build step

• Configuring JAVA API release notifications

Chapter 14: Creating a Pipeline JobSub - Topics:

• Understanding pipeline

• Understanding declarative pipeline

• Understanding scripted pipeline

• Understanding basics of Groovy

• String interpolation in Groovy

Chapter 15: Creating Pipeline Job to Manage Web Application Project

Sub - Topics:

• Creating sample calculator web application using html, CSS

• Introducing UI automation using Selenium Wbdriver

• Creating Selenium script to test addition, subtraction operations of calculator web app

• Creating regression, smoke test suites

• Creating a scripted pipeline to automate build lifecycle of calculator web app

• Configuring email notifications to send Selenium script email at the end of job

• Creating parameterized pipeline job to run specific Selenium script suites (regression, smoke, etc.)

Chapter 16: Triggering Pipeline as Code from Gitlab

Sub - Topics:

• Installing Gitlab Jenkins plugin

• Creating API token in Gitlab

• Configuring Gitlab API token in Jenkins

• Creating pipeline as a code (Jenkins file)

• Configuring Gitlab project to integrate with Jenkins

• Understanding web hook

• Creating Jenkins web hook in Gitlab project

• Pushing created Jenkins file in Gitlab project

• Triggering pipeline on pushing changes in Gitlab project

Chapter 17: Understanding Distributed Pipeline

Sub - Topics:

• Introduction of distributed pipeline

• Understanding architecture of distributed pipeline (master/slave)

• Configuring master/slave for distributed pipeline

• Creating web app build using distributed pipeline

Chapter 18: Integrating Jenkins with AWS

Sub - Topics:

• Creating EC2 instance

• Pushing web application code in EC2 Code Commit

• Writing a pipeline to deploy calculator web app in EC2 instance

• Triggering Selenium E2E tests on deployed calculator web app

Chapter 19: Miscellaneous Topics

Sub - Topics:

• Jenkins Blue Ocean

• Jenkins API

Artikel-Details

Anbieter:
Apress
Autor:
Pranoday Pramod Dingare
Artikelnummer:
9781484275085
Veröffentlicht:
12.07.22
Seitenanzahl:
240