Jenkins 2.x Continuous Integration Cookbook

Jenkins 2.x Continuous Integration Cookbook

Author: Mitesh Soni

Publisher: Packt Publishing Ltd

Published: 2017-10-30

Total Pages: 431

ISBN-13: 1788292618

DOWNLOAD EBOOK

Get a problem-solution approach enriched with code examples for practical and easy comprehension About This Book Explore the use of more than 40 best-of-breed plug-ins for improving efficiency Secure and maintain Jenkins 2.x by integrating it with LDAP and CAS, which is a Single Sign-on solution Efficiently build advanced pipelines with pipeline as code, thus increasing your team's productivity Who This Book Is For If you are a Java developer, a software architect, a technical project manager, a build manager, or a development or QA engineer, then this book is ideal for you. A basic understanding of the software development life cycle and Java development is needed, as well as a rudimentary understanding of Jenkins. What You Will Learn Install and Configure Jenkins 2.x on AWS and Azure Explore effective ways to manage and monitor Jenkins 2.x Secure Jenkins 2.x using Matrix-based Security Deploying a WAR file from Jenkins 2.x to Azure App Services and AWS Beanstalk Automate deployment of application on AWS and Azure PaaS Continuous Testing – Unit Test Execution, Functional Testing and Load Testing In Detail Jenkins 2.x is one of the most popular Continuous Integration servers in the market today. It was designed to maintain, secure, communicate, test, build, and improve the software development process. This book will begin by guiding you through steps for installing and configuring Jenkins 2.x on AWS and Azure. This is followed by steps that enable you to manage and monitor Jenkins 2.x. You will also explore the ways to enhance the overall security of Jenkins 2.x. You will then explore the steps involved in improving the code quality using SonarQube. Then, you will learn the ways to improve quality, followed by how to run performance and functional tests against a web application and web services. Finally, you will see what the available plugins are, concluding with best practices to improve quality. Style and approach This book provides a problem-solution approach to some common tasks and some uncommon tasks using Jenkins 2.x and is well-illustrated with practical code examples.


Jenkins Continuous Integration Cookbook

Jenkins Continuous Integration Cookbook

Author: Mitesh Soni

Publisher:

Published: 2017-10-30

Total Pages: 438

ISBN-13: 9781788297943

DOWNLOAD EBOOK

Get a problem-solution approach enriched with code examples for practical and easy comprehensionAbout This Book* Explore the use of more than 40 best-of-breed plug-ins for improving efficiency* Secure and maintain Jenkins 2.x by integrating it with LDAP and CAS, which is a Single Sign-on solution* Efficiently build advanced pipelines with pipeline as code, thus increasing your team's productivityWho This Book Is ForIf you are a Java developer, a software architect, a technical project manager, a build manager, or a development or QA engineer, then this book is ideal for you. A basic understanding of the software development life cycle and Java development is needed, as well as a rudimentary understanding of Jenkins.What You Will Learn* Install and Configure Jenkins 2.x on AWS and Azure* Explore effective ways to manage and monitor Jenkins 2.x* Secure Jenkins 2.x using Matrix-based Security* Deploying a WAR file from Jenkins 2.x to Azure App Services and AWS Beanstalk* Automate deployment of application on AWS and Azure PaaS* Continuous Testing - Unit Test Execution, Functional Testing and Load TestingIn DetailJenkins 2.x is one of the most popular Continuous Integration servers in the market today. It was designed to maintain, secure, communicate, test, build, and improve the software development process.This book will begin by guiding you through steps for installing and configuring Jenkins 2.x on AWS and Azure. This is followed by steps that enable you to manage and monitor Jenkins 2.x. You will also explore the ways to enhance the overall security of Jenkins 2.x. You will then explore the steps involved in improving the code quality using SonarQube. Then, you will learn the ways to improve quality, followed by how to run performance and functional tests against a web application and web services.Finally, you will see what the available plugins are, concluding with best practices to improve quality.Style and approachThis book provides a problem-solution approach to some common tasks and some uncommon tasks using Jenkins 2.x and is well-illustrated with practical code examples.


Learning Continuous Integration with Jenkins

Learning Continuous Integration with Jenkins

Author: Nikhil Pathania

Publisher: Packt Publishing Ltd

Published: 2016-05-31

Total Pages: 542

ISBN-13: 1785285033

DOWNLOAD EBOOK

A beginner's guide to implementing Continuous Integration and Continuous Delivery using Jenkins About This Book Speed up and increase software productivity and software delivery using Jenkins Automate your build, integration, release, and deployment processes with Jenkins—and learn how continuous integration (CI) can save you time and money Explore the power of continuous delivery using Jenkins through powerful real-life examples Who This Book Is For This book is for anyone who wants to exploit the power of Jenkins. This book servers a great starting point for those who are in the field DevOps and would like to leverage the benefits of CI and continuous delivery in order to increase productivity and reduce delivery time. What You Will Learn Take advantage of a continuous delivery solution to achieve faster software delivery Speed up productivity using a continuous Integration solution through Jenkins Understand the concepts of CI and continuous delivery Orchestrate many DevOps tools using Jenkins to automate builds, releases, deployment, and testing Explore the various features of Jenkins that make DevOps activities a piece of cake Configure multiple build machines in Jenkins to maintain load balancing Manage users, projects, and permissions in Jenkins to ensure better security Leverage the power of plugins in Jenkins In Detail In past few years, Agile software development has seen tremendous growth across the world. There is huge demand for software delivery solutions that are fast yet flexible to frequent amendments. As a result, CI and continuous delivery methodologies are gaining popularity. Jenkins' core functionality and flexibility allows it to fit in a variety of environments and can help streamline the development process for all stakeholders. This book starts off by explaining the concepts of CI and its significance in the Agile world with a whole chapter dedicated to it. Next, you'll learn to configure and set up Jenkins. You'll gain a foothold in implementing CI and continuous delivery methods. We dive into the various features offered by Jenkins one by one exploiting them for CI. After that, you'll find out how to use the built-in pipeline feature of Jenkins. You'll see how to integrate Jenkins with code analysis tools and test automation tools in order to achieve continuous delivery. Next, you'll be introduced to continuous deployment and learn to achieve it using Jenkins. Through this book's wealth of best practices and real-world tips, you'll discover how easy it is to implement a CI service with Jenkins. Style and approach This is a step-by-step guide to setting up a CI and continuous delivery system loaded with hands-on examples


Learning Continuous Integration with Jenkins

Learning Continuous Integration with Jenkins

Author: Nikhil Pathania

Publisher: Packt Publishing Ltd

Published: 2017-12-20

Total Pages: 353

ISBN-13: 1788475194

DOWNLOAD EBOOK

Speed up the software delivery process and software productivity using the latest features of Jenkins Key Features Take advantage of a Continuous Integration and Continuous Delivery solution to speed up productivity and achieve faster software delivery See all the new features introduced in Jenkins 2.x, such as Pipeline as code, Multibranch pipeline, Docker Plugin, and more Learn to implement Continuous Integration and Continuous Delivery by orchestrating multiple DevOps tools using Jenkins Book Description In past few years, agile software development has seen tremendous growth. There is a huge demand for software delivery solutions that are fast yet flexible to numerous amendments. As a result, Continuous Integration (CI) and Continuous Delivery (CD) methodologies are gaining popularity. This book starts off by explaining the concepts of CI and its significance in the Agile. Next, you'll learn how to configure and set up Jenkins in many different ways. The book exploits the concept of "pipeline as code" and various other features introduced in the Jenkins 2.x release to their full potential. We also talk in detail about the new Jenkins Blue Ocean interface and the features that help to quickly and easily create a CI pipeline. Then we dive into the various features offered by Jenkins one by one, exploiting them for CI and CD. Jenkins' core functionality and flexibility allows it to fit in a variety of environments and can help streamline the development process for all stakeholders. Next, you'll be introduced to CD and will learn how to achieve it using Jenkins. Through this book's wealth of best practices and real-world tips, you'll discover how easy it is to implement CI and CD using Jenkins. What you will learn Get to know some of the most popular ways to set up Jenkins See all the new features introduced in the latest Jenkins, such as pipeline as code, Multibranch pipeline, and more Manage users, projects, and permissions in Jenkins to ensure better security Leverage the power of plugins in Jenkins Learn how to create a CI pipeline using Jenkins Blue Ocean Create a distributed build farm using Docker and use it with Jenkins Implement CI and CD using Jenkins See the difference between CD and Continuous Deployment Understand the concepts of CI Who this book is for The book is for those with little or no previous experience with Agile or CI and CD. It’s a good starting point for anyone new to this field who wants to leverage the benefits of CI and CD to increase productivity and reduce delivery time. It’s ideal for Build and Release engineers, DevOps engineers, SCM (Software Configuration Management) engineers, developers, testers, and project managers. If you’re already using Jenkins for CI, you can take your project to the next level—CD.


Continuous Integration, Delivery, and Deployment

Continuous Integration, Delivery, and Deployment

Author: Sander Rossel

Publisher: Packt Publishing Ltd

Published: 2017-10-30

Total Pages: 451

ISBN-13: 1787284182

DOWNLOAD EBOOK

Getting started with the processes and the tools to continuously deliver high-quality software About This Book Incorporate popular development practices to prevent messy code Automate your build, integration, release, and deployment processes with Jenkins, Git, and Gulp?and learn how continuous integration (CI) can save you time and money Gain an end-to-end overview of Continuous Integration using different languages (JavaScript and C#) and tools (Gulp and Jenkins) Who This Book Is For This book is for developers who want to understand and implement Continuous Integration and Delivery in their daily work. A basic knowledge of at least JavaScript and HTML/CSS is required. Knowing C# and SQL will come in handy. Most programmers who have programmed in a (compiled) C-like language will be able to follow along. What You Will Learn Get to know all the aspects of Continuous Integration, Deployment, and Delivery Find out how Git can be used in a CI environment Set up browser tests using Karma and Selenium and unit tests using Jasmine Use Node.js, npm, and Gulp to automate tasks such as linting, testing, and minification Explore different Jenkins jobs to integrate with Node.js and C# projects Perform Continuous Delivery and Deployment using Jenkins Test and deliver a web API In Detail The challenge faced by many teams while implementing Continuous Deployment is that it requires the use of many tools and processes that all work together. Learning and implementing all these tools (correctly) takes a lot of time and effort, leading people to wonder whether it's really worth it. This book sets up a project to show you the different steps, processes, and tools in Continuous Deployment and the actual problems they solve. We start by introducing Continuous Integration (CI), deployment, and delivery as well as providing an overview of the tools used in CI. You'll then create a web app and see how Git can be used in a CI environment. Moving on, you'll explore unit testing using Jasmine and browser testing using Karma and Selenium for your app. You'll also find out how to automate tasks using Gulp and Jenkins. Next, you'll get acquainted with database integration for different platforms, such as MongoDB and PostgreSQL. Finally, you'll set up different Jenkins jobs to integrate with Node.js and C# projects, and Jenkins pipelines to make branching easier. By the end of the book, you'll have implemented Continuous Delivery and deployment from scratch. Style and approach This practical book takes a step-by-step approach to explaining all the concepts of Continuous Integration and delivery, and how it can help you deliver a high-quality product.


Jenkins Continuous Integration Cookbook - Second Edition

Jenkins Continuous Integration Cookbook - Second Edition

Author: Alan Berg

Publisher:

Published: 2015

Total Pages: 408

ISBN-13:

DOWNLOAD EBOOK

Over 90 recipes to produce great results from Jenkins using pro-level practices, techniques, and solutions In Detail Jenkins is an award-wining and one of the most popular Continuous Integration servers in the market today. It was designed to maintain, secure, communicate, test, build, and improve the software development process. This book starts by examining the most common maintenance tasks. This is followed by steps that enable you to enhance the overall security of Jenkins. You will then explore the relationship between Jenkins builds and Maven pom.xml. Then, you will learn how to use plugins to display code metrics and fail builds to improve quality, followed by how to run performance and functional tests against a web application and web services. Finally, you will see what the available plugins are, concluding with best practices to improve quality. What You Will Learn Integrate Jenkins with LDAP and SSO solutions Maintain and secure Jenkins Run an integration server firing automatic functional and performance tests Communicate through social media and by plotting custom data Skin Jenkins to your corporate look and feel Refine the use of code metrics to improve quality Write your first custom Jenkins plugin Apply tweaks to optimize your use of Jenkins Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.


Modern Software Engineering

Modern Software Engineering

Author: David Farley

Publisher: Addison-Wesley Professional

Published: 2021-11-16

Total Pages: 479

ISBN-13: 0137314868

DOWNLOAD EBOOK

Improve Your Creativity, Effectiveness, and Ultimately, Your Code In Modern Software Engineering, continuous delivery pioneer David Farley helps software professionals think about their work more effectively, manage it more successfully, and genuinely improve the quality of their applications, their lives, and the lives of their colleagues. Writing for programmers, managers, and technical leads at all levels of experience, Farley illuminates durable principles at the heart of effective software development. He distills the discipline into two core exercises: learning and exploration and managing complexity. For each, he defines principles that can help you improve everything from your mindset to the quality of your code, and describes approaches proven to promote success. Farley's ideas and techniques cohere into a unified, scientific, and foundational approach to solving practical software development problems within realistic economic constraints. This general, durable, and pervasive approach to software engineering can help you solve problems you haven't encountered yet, using today's technologies and tomorrow's. It offers you deeper insight into what you do every day, helping you create better software, faster, with more pleasure and personal fulfillment. Clarify what you're trying to accomplish Choose your tools based on sensible criteria Organize work and systems to facilitate continuing incremental progress Evaluate your progress toward thriving systems, not just more "legacy code" Gain more value from experimentation and empiricism Stay in control as systems grow more complex Achieve rigor without too much rigidity Learn from history and experience Distinguish "good" new software development ideas from "bad" ones Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.


DevOps with OpenShift

DevOps with OpenShift

Author: Stefano Picozzi

Publisher: "O'Reilly Media, Inc."

Published: 2017-07-10

Total Pages: 148

ISBN-13: 1491976616

DOWNLOAD EBOOK

For many organizations, a big part of DevOps’ appeal is software automation using infrastructure-as-code techniques. This book presents developers, architects, and infra-ops engineers with a more practical option. You’ll learn how a container-centric approach from OpenShift, Red Hat’s cloud-based PaaS, can help your team deliver quality software through a self-service view of IT infrastructure. Three OpenShift experts at Red Hat explain how to configure Docker application containers and the Kubernetes cluster manager with OpenShift’s developer- and operational-centric tools. Discover how this infrastructure-agnostic container management platform can help companies navigate the murky area where infrastructure-as-code ends and application automation begins. Get an application-centric view of automation—and understand why it’s important Learn patterns and practical examples for managing continuous deployments such as rolling, A/B, blue-green, and canary Implement continuous integration pipelines with OpenShift’s Jenkins capability Explore mechanisms for separating and managing configuration from static runtime software Learn how to use and customize OpenShift’s source-to-image capability Delve into management and operational considerations when working with OpenShift-based application workloads Install a self-contained local version of the OpenShift environment on your computer


DevOps Bootcamp

DevOps Bootcamp

Author: Mitesh Soni

Publisher: Packt Publishing Ltd

Published: 2017-05-30

Total Pages: 309

ISBN-13: 1787282236

DOWNLOAD EBOOK

Sharpen your DevOps knowledge with DevOps Bootcamp About This Book Improve your organization's performance to ensure smooth production of software and services. Learn how Continuous Integration and Continuous Delivery practices can be utilized to cultivate the DevOps culture. A fast-paced guide filled with illustrations and best practices to help you consistently ship quality software. Who This Book Is For The book is aimed at IT Developers and Operations—administrators who want to quickly learn and implement the DevOps culture in their organization. What You Will Learn Static Code Analysis using SOnarqube Configure a Maven-based JEE Web Application Perform Continuous Integration using Jenkins and VSTS Install and configure Docker Converge a Chef node using a Chef workstation Accomplish Continuous Delivery in Microsoft Azure VM and Microsoft Azure App Services (Azure Web Apps) using Jenkins Perform Load Testing using Apache JMeter Build and Release Automation using Visual Studio Team Services Monitor Cloud-based resources In Detail DevOps Bootcamp delivers practical learning modules in manageable chunks. Each chunk is delivered in a day, and each day is a productive one. Each day builds your competency in DevOps. You will be able to take the task you learn every day and apply it to cultivate the DevOps culture. Each chapter presents core concepts and key takeaways about a topic in DevOps and provides a series of hands-on exercises. You will not only learn the importance of basic concepts or practices of DevOps but also how to use different tools to automate application lifecycle management. We will start off by building the foundation of the DevOps concepts. On day two, we will perform Continuous Integration using Jenkins and VSTS both by configuring Maven-based JEE Web Application?. We will also integrate Jenkins and Sonar qube for Static Code Analysis. Further, on day three, we will focus on Docker containers where we will install and configure Docker and also create a Tomcat Container to deploy our Java based web application. On day four, we will create and configure the environment for application deployment in AWS and Microsoft Azure Cloud for which we will use Infrastructure as a Service and Open Source Configuration Management tool Chef. For day five, our focus would be on Continuous Delivery. We will automate application deployment in Docker container using Jenkins Plugin, AWS EC2 using Script, AWS Elastic Beanstalk using Jenkins Plugin, Microsoft Azure VM using script, and Microsoft Azure App Services Using Jenkins. We will also configure Continuous Delivery using VSTS. We will then learn the concept of Automated Testing on day six using Apache JMeter and URL-based tests in VSTS. Further, on day seven, we will explore various ways to automate application lifecycle management using orchestration. We will see how Pipeline can be created in Jenkins and VSTS, so the moment Continuous? Integration is completed successfully, Continuous Delivery will start and application will be deployed. On the final day, our focus would be on Security access to Jenkins and Monitoring of CI resources, and cloud-based resources in AWS and Microsoft Azure Platform as a Service. Style and Approach This book is all about fast and intensive learning. This means we don't waste time in helping readers get started. The new content is basically about filling in with highly-effective examples to build new things, solving problems in newer and unseen ways, and solving real-world examples.


Mastering GitLab 12

Mastering GitLab 12

Author: Joost Evertse

Publisher: Packt Publishing Ltd

Published: 2019-08-02

Total Pages: 586

ISBN-13: 1789534062

DOWNLOAD EBOOK

An expert guide to helping you use DevOps techniques with the latest GitLab version to optimize and manage your software workflow Key FeaturesDelve into GitLab's architecture, and install and configure it to fit your environmentLearn about the underlying principles of Agile software development and DevOpsExplore Gitlab's features to manage enterprise cloud-native applications and servicesBook Description GitLab is an open source repository management and version control toolkit with functions for enterprises and personal software projects. It offers configurability options, extensions, and APIs that make it an ideal tool for enterprises to manage the software development life cycle. This book begins by explaining GitLab options and the components of the GitLab architecture. You will learn how to install and set up GitLab on-premises and in the cloud, along with understanding how to migrate code bases from different systems, such as GitHub, Concurrent Versions System, Team Foundation Version Control, and Subversion. Later chapters will help you implement DevOps culture by introducing the workflow management tools in GitLab and continuous integration/continuous deployment (CI/CD). In addition to this, the book will guide you through installing GitLab on a range of cloud platforms, monitoring with Prometheus, and deploying an environment with GitLab. You'll also focus on the GitLab CI component to assist you with creating development pipelines and jobs, along with helping you set up GitLab runners for your own project. Finally, you will be able to choose a high availability setup that fits your needs and helps you monitor and act on results obtained after testing. By the end of this book, you will have gained the expertise you need to use GitLab features effectively, and be able to integrate all phases in the development process. What you will learnInstall GitLab on premises and in the cloud using a variety of configurationsConduct data migration from the SVN, TFS, CVS, and GitHub platforms to GitLabUse GitLab runners to develop different types of configurations in software developmentPlan and perform CI/CD by using GitLab featuresMonitor and secure your software architecture using Prometheus and GrafanaImplement DevOps culture by introducing workflow management tools in GitLabWho this book is for If you are a software developer, DevOps professional, or any developer who wants to master GitLab for productive repository management in your day-to-day tasks, this book is for you. Basic understanding of the software development workflow is assumed.