Limit search to available items
Book Cover
E-book
Author Rossel, Sander

Title Continuous Integration, Delivery, and Deployment
Published Birmingham : Packt Publishing, 2017

Copies

Description 1 online resource (451 pages)
Contents Cover -- Title Page -- Copyright -- Credits -- About the Author -- About the Reviewers -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Chapter 1: Continuous Integration, Delivery, and Deployment Foundations -- Continuous Integration -- Source control -- CI server -- Software quality -- Unit tests -- Integration tests -- Big bang testing -- Incremental testing -- Acceptance tests -- Smoke tests -- Other quality gates -- Automation -- Teamwork -- Continuous Delivery -- Continuous Deployment -- Summary
Chapter 2: Setting Up a CI EnvironmentInstalling a Virtual Machine -- Installing Ubuntu -- Installing Git -- Installing GitLab -- Configuring GitLab -- Using Git -- Installing Jenkins -- Installing Jenkins on Ubuntu -- Installing Jenkins on Windows -- Configuring Jenkins -- Installing PostgreSQL -- Installing PostgreSQL on Ubuntu -- Installing PostgreSQL on Windows -- Installing pgAdmin -- Installing SonarQube -- Configuring PostgreSQL -- Installing SonarQube on Ubuntu -- Installing SonarQube on Windows -- Trigger SonarQube from Jenkins -- Summary
Chapter 3: Version Control with GitThe basics -- Centralized Source Control Management -- Distributed Source Control Management -- The working directory -- The staging area -- Committing and pushing -- Reviewing commits -- Pulling and stashing -- Branching -- Merging -- Cherry picking -- Rebasing -- Reverting changes -- The branching model -- Tagging -- Summary -- Chapter 4: Creating a Simple JavaScript App -- The web shop specs -- Installing Node.js and npm -- Creating the project -- Creating the Home page -- Creating the Product page
Creating the Search pageCreating the Shopping cart page -- Summary -- Chapter 5: Testing Your JavaScript -- Unit testing with Jasmine -- The Yeoman shortcut -- Why Jasmine? -- Testing the web shop -- Running tests with Karma -- Installation -- Karma plugins -- Browser launchers -- Code coverage -- JUnit reporter -- Running Mocha and Chai with Karma -- End-To-End testing with Selenium -- Running Selenium tests with Protractor -- Testing our website -- Customizing reporters -- Testing with Mocha -- Headless browser testing -- PhantomJS
SummaryChapter 6: Automation with Gulp -- Gulp basics -- The Gulp API -- Gulp plugins -- Minification -- Cleaning your build -- Checking file sizes -- Linting with JSHint -- Running your Karma tests -- Getting our site production ready -- Minifying HTML -- Minifying CSS -- Bundling JavaScript with Browserify -- Karma and Browserify -- Concatenating CSS -- Replacing HTML references -- Putting it all together -- Summary -- Chapter 7: Automation with Jenkins -- Installing Node.js and npm -- Creating a Jenkins project -- Executing Gulp in Jenkins
Summary 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 app ..
Notes ""Publishing test results""
Print version record
SUBJECT Jenkins (Software development tool) http://id.loc.gov/authorities/names/n2013055464
Jenkins (Software development tool) fast
Subject Computer software -- Quality control.
Computer software -- Testing
Computer software -- Reliability
Computer software -- Quality control
Computer software -- Reliability
Computer software -- Testing
Form Electronic book
ISBN 9781787284180
1787284182
9781787286610
1787286614