CI/CD Pipeline Using Jenkins Unleashed
56,99 €
Sofort verfügbar, Lieferzeit: Sofort lieferbar
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
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