whatisgithub

What is lizard?

bradleygamimarques/lizard — explained in plain English

Analysis updated 2026-05-18

0HCLAudience · ops devopsComplexity · 4/5Setup · hard

In one sentence

A Terraform project that auto-stops tagged AWS EC2 instances when your billing alarm shows spending has crossed a threshold.

Mindmap

mindmap
  root((Lizard))
    What it does
      Watches AWS billing alarms
      Stops tagged EC2 instances
      Acts as a spend circuit breaker
    Tech stack
      Terraform
      AWS CloudWatch
      EventBridge
    Use cases
      Stop runaway AWS spending
      Protect only tagged instances
      Enforce stop via IAM
    Audience
      DevOps engineers
      AWS account owners

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Automatically stop tagged EC2 instances when AWS billing crosses a set threshold.

USE CASE 2

Add a spending circuit breaker as a safety net against runaway AWS costs.

USE CASE 3

Limit blast radius by requiring instances to be explicitly tagged as stoppable.

USE CASE 4

Enforce the stop permission at the IAM level so untagged instances are protected.

What is it built with?

TerraformAWSCloudWatchEventBridgeSSM

How does it compare?

bradleygamimarques/lizardanas727189/devsecops-pipelineedwinjdevops/damolak-challenge
Stars000
LanguageHCLHCLHCL
Setup difficultyhardhard
Complexity4/53/5
Audienceops devopsops devopsops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires enabling billing alerts in the payer account and deploying in us-east-1, since billing metrics only exist there.

So what is it?

Lizard is an infrastructure-as-code project for AWS that acts as a spending circuit breaker. It watches your AWS billing through CloudWatch Alarms, and when your estimated charges cross a threshold you set, it automatically stops EC2 instances that you have tagged as expendable, so a billing spike does not keep growing unattended. The idea came from a real AWS billing bug on July 17, 2026 that showed some accounts estimated charges in the billions of dollars. Lizard was built so people could have a safety net running in the background: if spend crosses a line, the resources marked as stoppable get shut down. The readme is upfront about what this tool can and cannot do. It cannot figure out which specific instance is causing a cost spike, because a billing alarm only reports that spending went over a limit, not which resource caused it. Instead, you tag the instances you are willing to sacrifice with a specific tag, and when the alarm fires, every instance carrying that tag gets stopped, not just the one responsible for the extra cost. Instances are stopped rather than deleted, and the permission to stop them is enforced through AWS identity and access management rules, not just through the automation script, so an untagged instance cannot be stopped even if something in the automation goes wrong. Setting it up requires knowing that AWS billing metrics are only available in the us-east-1 region, and that the payer account must have billing alerts enabled before Lizard can see spending data at all. The project uses Terraform for its infrastructure code and Yarn plus a tool called lefthook for contributor tooling, and it is currently a small, early project with a single author.

Copy-paste prompts

Prompt 1
Walk me through deploying Lizard following docs/deploying.md and its IAM policy.
Prompt 2
Explain how to tag an EC2 instance with StoppableBy=Lizard so it gets stopped by the alarm.
Prompt 3
Help me enable Receive CloudWatch Billing Alerts in my AWS payer account for Lizard.
Prompt 4
Show me how the CloudWatch alarm triggers the SSM Automation runbook in this project.

Frequently asked questions

What is lizard?

A Terraform project that auto-stops tagged AWS EC2 instances when your billing alarm shows spending has crossed a threshold.

What language is lizard written in?

Mainly HCL. The stack also includes Terraform, AWS, CloudWatch.

How hard is lizard to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is lizard for?

Mainly ops devops.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.