Automated GitHub Self-Hosted Runner Cleanup: Lambda Functions and Auto Scaling Lifecycle Hooks

Running self-hosted GitHub runners on an Auto Scaling group enables organizations to have high availability during active development so that development teams do not have to compromise on runner availability. This allows development teams to have the same flexibility as that of a GitHub-hosted runner while also maintaining all the benefits of self-hosted runners, such … Continue reading Automated GitHub Self-Hosted Runner Cleanup: Lambda Functions and Auto Scaling Lifecycle Hooks

Build Secure GitHub Self-Hosted Runners on Amazon EC2 with Terraform

GitHub, in addition to being an excellent version control system, offers workflow automation capabilities (Actions) that enable testing, building, and deploying code based on triggers such as code commits, pull requests, or scheduled events. These workflows run on runners, which are virtual or physical machines that execute these workflow steps.While GitHub offers free hosted runners … Continue reading Build Secure GitHub Self-Hosted Runners on Amazon EC2 with Terraform

Automating AWS Infrastructure with CloudFormation and GitHub Actions: A Tutorial

This note aims to demonstrate how to deploy a couple of CloudFormation templates using GitHub Actions to create Amazon cloud resources. There are two tools we're discussing. The first one is AWS CloudFormation, an infrastructure as a code tool to provision AWS cloud resources declaratively. The AWS cloud resources and their relationships are declared in … Continue reading Automating AWS Infrastructure with CloudFormation and GitHub Actions: A Tutorial

Trigger instance refresh of Amazon EC2 Auto Scaling group with a launch template update using Terraform

This note continues my discussion on the Amazon EC2 Auto Scaling group that I started in my previous post, so please read that before this one. In that post, I explain the fundamentals of creating an Amazon EC2 Auto Scaling Group using Terraform. An Amazon Auto Scaling group consists of Amazon EC2 instances with specific … Continue reading Trigger instance refresh of Amazon EC2 Auto Scaling group with a launch template update using Terraform

Create an Amazon EC2 Auto Scaling group with metric scaling policies using Terraform

This note continues to explore the auto-scaling concept I discussed in my note  -create an ASG and load balancer with Terraform, so please read that note before this one. After creating the Amazon EC2 Auto Scaling group, the application development team would require the scaling policies to manage the correct number of Amazon EC2 instances. … Continue reading Create an Amazon EC2 Auto Scaling group with metric scaling policies using Terraform

Create Amazon EC2 Auto Scaling group and load balancer using Terraform and GitHub Actions

When project teams host an application or service on an Amazon EC2 instance, they have specific questions about the underlying infrastructure. A few of them could be: (a) Can the project team be assured that if some or all existing EC2 instances were terminated or unresponsive, new Amazon EC2 instances (with the application hosted) would … Continue reading Create Amazon EC2 Auto Scaling group and load balancer using Terraform and GitHub Actions