Taking the lessons learned in agile development movement and applying them to IT operations.
A lot has been said about DevOps in the past few years, so there is no need to regurgitate. If you are
unclear what practices you should be implementing, I recommend the following literature.
Java is one of the most popular language in use today. However, I have not run across a lot of people using Java with
AWS Lambda or CDK. In this post, I will demonstrate how to deploy Java to AWS Lambda using AWS CDK and provide a sample
repo structure to copy for your own purposes.
Kubernetes is an attractive option for many companies to deploy
their applications. However, managing it can be complicated. There are
many different tools and techniques to manage it. In this post, I will
discuss managing your Kubernetes cluster with Terraform, another tool
is widely used these days.
One of the limitations of CodePipeline currently is that there is not
a good way to use common components across multiple pipelines. You may
want to do this so you do not have to duplicate buildspecs or other files
to be used in different repositories. In this post, I will show a strategy
for reusing artifacts across multiple pipelines.
A tight feedback loop is important when developing code. Terraform is no
different. At times, it would be helpful to have a quick way to test function
calls. In this post, I introduce a tool I have created that does just that.
Terratest is a testing framework for Terraform code written by Gruntwork. In this post, I am going to discuss the usage of Terratest as well as my own personal experiences with testing Terraform code.
I have been on the ground in many different phases of cloud migrations and have witnessed the many perils associated. In this post, I will talk about the different issues I have experienced first hand with customers going through a cloud migration.
CDK, CloudFormation, and Terraform are frameworks for managing cloud infrastructure using code. In this post, we will look at these options, compare and contrast them, and discuss what types of organizations should use take which approach.
Modern, best of breed, continuous integration tools allow developers to
define their delivery pipeline as code and store it in the repository
alongside the application source code. Doing so allows you to manage
your pipeline much like you would your application source code. In this
post, we will go over how to accomplish this using AWS CodeCommit,
AWS Lambda, AWS CodePipeline, and AWS CloudFormation. This approach will
also enable branch-based builds for CodePipeline, a large gap in the
CodePipeline feature set currently.