Book Image

Implementing Cloud Design Patterns for AWS - Second Edition

By : Sean Keery, Clive Harber, Marcus Young
Book Image

Implementing Cloud Design Patterns for AWS - Second Edition

By: Sean Keery, Clive Harber, Marcus Young

Overview of this book

Whether you're just getting your feet wet in cloud infrastructure or already creating complex systems, this book will guide you through using the patterns to fit your system needs. Starting with patterns that cover basic processes such as source control and infrastructure-as-code, the book goes on to introduce cloud security practices. You'll then cover patterns of availability and scalability and get acquainted with the ephemeral nature of cloud environments. You'll also explore advanced DevOps patterns in operations and maintenance, before focusing on virtualization patterns such as containerization and serverless computing. In the final leg of your journey, this book will delve into data persistence and visualization patterns. You'll get to grips with architectures for processing static and dynamic data, as well as practices for managing streaming data. By the end of this book, you will be able to design applications that are tolerant of underlying hardware failures, resilient against an unexpected influx of data, and easy to manage and replicate.
Table of Contents (20 chapters)
Title Page
Dedication
About Packt
Contributors
Preface
Free Chapter
1
Introduction to Amazon Web Services
Index

Chapter 5. Continuous Deployment - Introducing New Features with Minimal Risk

The aim of deploying your application in a cloud environment is to enable you to put your product in front of your clients quickly and in a reliable and reproducible way, whether this includes new product features, experiments, or configurations. In order to do this, and de-risk shipments, you need to automate the build process, and so you must use continuous deployment. Build processes can take a substantial amount of time, so by using automation, you reduce the amount of repetitive operational work that is required and free up engineering time, which then also allows you to leverage better agile software development practices. This chapter covers some of the practices that you can use to provide a continuous deployment pipeline.

In brief, this chapter will cover the following topics:

  • Source control
  • CodeBuild
  • Testing your code