Create AWS Secrets Manager secret using Terraform secure variables and GitHub Actions secrets

A little while back, I encountered an exciting use case requiring me to use GitHub Actions secrets. The use case was to create an AWS Secrets Manager secret resource using Terraform in a CI/CD pipeline. An AWS Secrets Manager secret is a resource to store secure credentials. In the past, I created an AWS Secrets … Continue reading Create AWS Secrets Manager secret using Terraform secure variables and GitHub Actions secrets

Automate Terraform configuration scan with Checkov and GitHub Actions

Terraform enables developers to create cloud resources via a few lines of code. Hence, these developers must write code that is easy to understand and follows security best practices. Moreover, following best practices becomes a habit if there is a system to keep that in check. Checkov is a proven static analysis tool that checks for standard best practices in your … Continue reading Automate Terraform configuration scan with Checkov and GitHub Actions

CI-CD with Terraform and GitHub Actions to deploy to AWS

GitHub Actions is a CI/CD tool that can automate the provisioning of AWS resources using Terraform. Previously, I wrote a detailed post explaining the concepts associated with using Terraform to create an application load balancer that you can read here -add an application load balancer to Amazon EC2 using Terraform. In this note, I further … Continue reading CI-CD with Terraform and GitHub Actions to deploy to AWS

A detailed guide to securely integrating Amazon Managed Grafana with Terraform

Over the last couple of months, I worked extensively on Amazon Managed Grafana to create dashboards for observability. In the course of automating the deployment using Terraform and a CI-CD system, I learned about a few challenges and identified solutions. I'm sharing my learnings in this note so that you do not make the same … Continue reading A detailed guide to securely integrating Amazon Managed Grafana with Terraform

Create an Amazon Managed Grafana dashboard using Terraform and Azure Pipelines

Recently I came across a use case where I was required to create Grafana dashboards using the Terraform Grafana provider. Although it did not sound too complex, it soon became once I started automating the process using Azure Pipelines. In this note, I documented the challenge and the solution. Before diving deeper, an Amazon Managed … Continue reading Create an Amazon Managed Grafana dashboard using Terraform and Azure Pipelines

Create an Amazon Managed Grafana workspace using Terraform

In this note, I describe the steps to provision a new Amazon Managed Grafana workspace using the AWS Terraform provider. Grafana is an open-source observability tool to visualize data. It provides charts, graphs, and alerts for the web when connected to supported data sources. Per AWS-Docs, Amazon Managed Grafana is a fully managed and secure … Continue reading Create an Amazon Managed Grafana workspace using Terraform

Add an application load balancer to Amazon EC2 using Terraform

A highly available application has higher chances of attracting customers because they are assured of consistency in service. Load balancing is a cost-effective way to increase an application's availability. In this note, I describe the steps to add an application load balancer to three EC2 instances hosted in three different availability zones in a region … Continue reading Add an application load balancer to Amazon EC2 using Terraform

Create a web-server on Amazon EC2 instance using Terraform and user data

In this note, I detail all the steps required to create a bare-bone web server on Amazon EC2. I discuss creating the Amazon Virtual Private Cloud, subnets, internet gateway, security group, and Amazon EC2 instances to finally automate the process via Terraform and user data. Note: I did not include the concepts of load balancing, … Continue reading Create a web-server on Amazon EC2 instance using Terraform and user data

Download Amazon S3 bucket into an Amazon EC2 instance in 5 steps using user data and Terraform

I required a few files and folders on an Amazon EC2 instance as part of the provisioning process. So, the objective was to upload these files and folders into an Amazon S3 bucket and download them from the Amazon EC2 instance with the assistance of the user data script and Terraform. Note: As a reader … Continue reading Download Amazon S3 bucket into an Amazon EC2 instance in 5 steps using user data and Terraform

Install AWS CLI on a Windows Amazon EC2 instance using Terraform and user data

In the last post, I discussed the steps involved in installing AWS.Tools module for PowerShell on Amazon EC2 using user data and Terraform. This post lists the steps to install the AWS CLI on an Windows Amazon EC2 instance. I used Amazon EC2 user data and Terraform to automate AWS CLI installation as part of … Continue reading Install AWS CLI on a Windows Amazon EC2 instance using Terraform and user data