Hands-on Pipeline as Code with Jenkins: CI/CD Implementation for Mobile, Web, and Hybrid Applications Using Declarative Pipeline in Jenkins
- Length: 514 pages
- Edition: 1
- Language: English
- Publisher: BPB Publications
- Publication Date: 2021-02-11
- ISBN-10: 9389898609
- ISBN-13: 9789389898606
- Sales Rank: #1342596 (See Top 100 Books)
A step-by-step guide to implementing Continuous Integration and Continuous Delivery (CICD) for Mobile, Hybrid, and Web applications
Key Features
- Understand how and when Continuous Integration makes a difference
- Learn how to create Declarative Pipeline for Continuous Integration and Continuous Delivery
- Understand the importance of Continuous Code Inspection and Code Quality
- Learn to publish Unit Test and Code Coverage in Declarative Pipeline
- Understand the importance of Quality Gates and Build Quality
Description
The main objective of the book is to create Declarative Pipeline for programming languages such as Java, Android, iOS, AngularJS, NodeJS, Flutter, Ionic Cordova, and .Net. The book starts by introducing all the areas which encompass the field of DevOps Practices. It covers definition of DevOps, DevOps history, benefits of DevOps culture, DevOps and Value Streams, DevOps practices, different Pipeline types such as Build Pipeline, Scripted Pipeline, Declarative Pipeline, and Blue Ocean. Each chapter focuses on Pipeline that includes Static Code Analysis using SonarQube or Lint tools, Unit tests, calculating code coverage, publishing unit tests and coverage reports, verifying the threshold of code coverage, creating build/package, and distributing package to a specific environment based on the type of programming language. The book will also teach you how to use different deployment distribution environments such as Azure App Services, Docker, Azure Container Services, Azure Kubernetes Service, and App Center.
By the end, you will be able to implement DevOps Practices using Jenkins effectively and efficiently.
What you will learn
- Use Multi-Stage Pipeline (Pipeline as a Code) to implement Continuous Integration and Continuous Delivery.
- Create and configure Cloud resources using Platform as a Service Model
- Deploy apps to Azure App Services, Azure Kubernetes and containers
- Understand how to distribute Mobile Apps (APK and IPA) to App Center
- Improve Code Quality and Standards using Continuous Code Inspection
Who this book is for
This book is for DevOps Consultants, DevOps Evangelists, DevOps Engineers, Technical Specialists, Technical Architects, Cloud Experts, and Beginners. Having a basics knowledge of Application development and deployment, Cloud Computing, and DevOps Practices would be an added advantage.
About the Author
Mitesh is a DevOps engineer. He is in love with the DevOps culture and concept. Continuous improvement is his motto in life with existing imperfection. His primary focus is on the improvement of the existing culture of an organization or a project using Continuous Integration and Continuous Delivery.
Ankita is a DevOps evangelist. She is a continuous learner and practitioner of Agile and DevOps. As a change agent, she always tries to bring change in an organization to get maximum benefits of DevOps. So, she wants to share her knowledge and make sure IT professionals are trained and empowered to make those changes.
Cover Page Title Page Copyright Page Foreword Dedication Page About the Authors About the Reviewers Acknowledgements Preface Errata Table of Contents 1. Introducing DevOps Structure Objectives What is DevOps? DevOps history People People and processes Tools Benefits of DevOps DevOps and Value Streams DevOps assessment and maturity model Assessment framework Maturity model DevOps practices implementation Continuous Code Inspection Continuous Integration (CI) Cloud computing and containers Artifact management Continuous delivery Continuous testing Continuous deployment Continuous feedback and continuous improvement Culture change and its effects Conclusion Points to remember Multiple choice questions Answer Questions 2. Introducing Jenkins 2.0 and Blue Ocean Structure Objectives Introducing Jenkins 2.X History Overview of Jenkins Prerequisites How to run Jenkins? Pipelines Build pipeline Scripted pipeline Declarative pipeline Blue Ocean Conclusion Points to remember Multiple choice questions Answer Questions 3. Building CI/CD Pipeline for a Java Web Application Structure Objectives Introduction Blue Ocean multi-stage pipeline for a Java app Continuous Integration – Java application Create a project in the Blue Ocean pipeline Import repository from GitHub SonarQube connection in Jenkins Create Azure app services – Platform as a service to host Azure App Services to host Java web application Unit tests and code coverage Static code analysis using SonarQube Create WAR or package file Upload a package file to Artifactory Continuous Delivery – Java application Download a package from Artifactory Deploy to the Azure app services dev environment Promotion (approval) request to deploy to the QA environment Release management for the Maven application Rollback Conclusion Multiple-choice questions Answer Questions 4. Building CI/CD Pipeline for an Android App Structure Objectives Introduction Multi-stage pipeline for an Android app using Blue Ocean Continuous Integration – Android app Understand how to perform Lint Analysis for an Android application Execute Unit tests and Calculate Code coverage Verify Build Quality Create an APK file Continuous Delivery – Android app Deploy Package/APK to App Center Conclusion Points to remember Multiple choice questions Answer Questions 5. Building CI/CD Pipeline for an iOS App Structure Objectives Introduction Multi-stage pipeline for an iOS app using Blue Ocean Continuous integration – iOS app Prerequisites Create a Jenkins connection with the MAC Agent Configure signing certificates and provisioning profiles to Jenkins Understand how to perform Lint Analysis for an iOS application Execute unit tests Calculate the code coverage Verify Build quality Create an IPA file Continuous delivery – iOS app Deploy IPA to the App Center Conclusion Multiple choice questions Answer Questions 6. Building CI/CD Pipeline for an Angular Application Structure Objectives Introduction Multi-stage pipeline for an Angular app using Blue Ocean Continuous Integration – Angular Application Junit and the Cobertura configuration in karma.conf.js Lint, Unit tests, and Code coverage configuration in package.json Configure unit tests and code coverage in a multi-stage pipeline End-to-end test execution NPM audit Continuous Delivery – Angular App Deploy Angular App to Azure Kubernetes Services (AKS) Conclusion Multiple choice questions Answer Questions 7. Building CI/CD Pipeline for a NodeJS Application Structure Objectives Introduction Multi-stage pipeline for a NodeJS Express App using Blue Ocean Continuous Integration – Express application Lint, unit tests, and code coverage configuration in package.json Continuous Delivery – Express Application Multi-stage pipeline for a NodeJS application using Blue Ocean Continuous integration – NodeJS application Lint, unit tests, and code coverage configuration in Package.json Build Quality Check Continuous Delivery – NodeJS application Conclusion Multiple-choice questions Answer Questions 8. Building CI/CD Pipeline for Hybrid Mobile Apps Structure Objectives Introduction Multi-stage pipeline for an Ionic app using Blue Ocean Continuous Integration for the Ionic – Android app Verify build quality Continuous Delivery for the Ionic – Android app Deploy package / APK to app center Multi-stage pipeline for the Flutter app using Blue Ocean Continuous Integration for Flutter – Android app Conclusion Multiple choice questions Answer Questions 9. Building CI/CD Pipeline for a Python Application Structure Objectives Introduction Multi-stage pipeline for the Python app using Blue Ocean Continuous Integration – Python application Static code analysis using SonarQube Unit test execution and code coverage Build quality check Continuous Delivery – Python application Conclusion Multiple choice questions Answer Questions 10. Building CI/CD Pipeline for a DotNet Application Structure Objectives Introduction Multi-stage pipeline for a DotNet app using Blue Ocean Create Azure App Service – Platform as a Service to host a DotNet web application Configure Octopus Deploy for deployment to Azure App Service Create Environment in Infrastructure (Test and PROD) Add Azure account to Octopus Deploy Create Deployment targets (Azure App Service) specific to the environment Create a lifecycle in Octopus Deploy Create a project in Octopus Deploy Create the Deployment process for Azure App Service in the project Integration of Jenkins and Octopus Deploy Continuous Integration – DotNet application Restore NuGet packages Begin SonarQube analysis Build a DotNet application Unit test execution and code coverage End static code analysis using SonarQube Create Publish Directory Continuous Delivery - DotNet application Publish the DotNet application to Azure App Service Deploy to Azure App Service using Octopus Code Deploy from the Jenkins pipeline Conclusion Multiple choice questions Answer Questions 11. Best Practices Structure Objectives Best practices Easy installation with fault tolerance Install Jenkins using Docker Install Jenkins on Azure Kubernetes Services (AKS) Controller Agent Architecture Load balancing Dockerfile agent in the declarative pipeline Always secure Jenkins Jenkins integration with Azure Active Directory (Azure AD) Project-based security Backup and restore Monitoring Tools configuration Environment variables Pipeline Conclusion Points to remember Multiple choice questions Answers Questions Index
Donate to keep this site alive
1. Disable the AdBlock plugin. Otherwise, you may not get any links.
2. Solve the CAPTCHA.
3. Click download link.
4. Lead to download server to download.