万本电子书0元读

万本电子书0元读

顶部广告

Continuous Integration, Delivery, and Deployment电子书

售       价:¥

3人正在读 | 0人评论 9.8

作       者:Sander Rossel

出  版  社:Packt Publishing

出版时间:2017-10-30

字       数:60.5万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
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.
目录展开

Title Page

Copyright

Continuous Integration, Delivery, and Deployment

Credits

About the Author

About the Reviewers

www.PacktPub.com

Why subscribe?

Customer Feedback

Preface

What this book covers

What you need for this book

Who this book is for

Conventions

Reader feedback

Customer support

Downloading the example code

Downloading the color images of this book

Errata

Piracy

Questions

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

Setting Up a CI Environment

Installing 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

Version Control with Git

The 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

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 page

Creating the Shopping cart page

Summary

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

Summary

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

Automation with Jenkins

Installing Node.js and npm

Creating a Jenkins project

Executing Gulp in Jenkins

Publishing test results

JUnit report

Cobertura report

HTML report

Build triggers

Build periodically

Poll SCM

On commit

Setting up email notifications

Setting up SonarQube

Setting up email

HTML and CSS analysis

Including code coverage

Leak periods

Artifacts

Running on Windows with Jenkins Slaves

Running our tests

Triggering a project pipeline

Summary

A NodeJS and MongoDB Web App

Installing MongoDB

Installing MongoDB on Ubuntu

Installing MongoDB on Windows

Creating the Node.js Back-end

Express

EJS

The Login Page

Connecting with AJAX

Saving to MongoDB

Moving our Products to MongoDB

Putting the Shopping Cart in MongoDB

Moving the Shopping Cart Module

Gulp

Jenkins

PM2

Summary

A C# .NET Core and PostgreSQL Web App

Installing .NET Core and Visual Studio Code

Creating the views

Running tasks

Adding the database

Entity Framework Core

Selecting the data

Fixing the login

Adding to the cart

Testing the database

Installing pgTap

Testing our C# code

Reporting

Adding Selenium tests

Jenkins

Building the project

Testing the project

Testing the database

Summary

Additional Jenkins Plugins

Views

Cleanup workspaces

Conditional build steps

Pipelines

Promoted builds

Parameterized builds

Triggering builds remotely

Blue ocean

Security

Jenkins on HTTPS

HTTPS on Linux

HTTPS on Windows

Jenkins security

Role-based authorization strategy

Summary

Jenkins Pipelines

Groovy

Pipeline projects

Declarative pipeline syntax

Scripted pipeline syntax

Pipeline stages

The snippet generator

Building the web shop

The Jenkinsfile

Multibranch pipeline

Branch scripts

Completing the script

Node.js tests

SonarQube

Selenium tests

Archiving artifacts

Build failure

Summary

Testing a Web API

Building a REST service

Postman

Writing tests

Testing XML

Collections

Environments

Newman

Summary

Continuous Delivery

Branching

Manual deployment

Installing NGINX

Node.js web shop

PM2

MongoDB

Run

E2E testing

C# .NET Core web shop

Run

PostgreSQL

Summary

Continuous Deployment

JavaScript Deployment using SSH

E2E testing

C# .NET Core Deployment using SSH

E2E testing

Database

Summary

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部