Book Image

Practical DevOps

By : joakim verona
Book Image

Practical DevOps

By: joakim verona

Overview of this book

DevOps is a practical field that focuses on delivering business value as efficiently as possible. DevOps encompasses all the flows from code through testing environments to production environments. It stresses the cooperation between different roles, and how they can work together more closely, as the roots of the word imply—Development and Operations. After a quick refresher to DevOps and continuous delivery, we quickly move on to looking at how DevOps affects architecture. You'll create a sample enterprise Java application that you’ll continue to work with through the remaining chapters. Following this, we explore various code storage and build server options. You will then learn how to perform code testing with a few tools and deploy your test successfully. Next, you will learn how to monitor code for any anomalies and make sure it’s running properly. Finally, you will discover how to handle logs and keep track of the issues that affect processes
Table of Contents (17 chapters)
Practical DevOps
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Branching problem areas


There is a source of contention between Continuous Delivery practices and branching strategies. Some Continuous Delivery methods advocate a single master branch and all releases being made from the master branch. Git flow is one such model.

This simplifies some aspects of deployment, primarily because the branching graph becomes simpler. This in turn leads to simplified testing, because there is only one branch that leads to the production servers.

On the other hand, what if we need to perform a bug fix on released code, and the master has new features we don't want to release yet? This happens when the installation cadence in production is slower than the release cadence of the development teams. It is an undesirable state of affairs, but not uncommon.

There are two basic methods of handling this issue:

  • Make a bug fix branch and deploy to production from it: This is simpler in the sense that we don't disrupt the development flow. On the other hand, this method might...