#!/bin/bash #set -x TAG_FILTER="Name=tag:project,Values=zdt-alpine" #for r in $(aws ec2 describe-regions --query "Regions[].{Name:RegionName}" --output text); do for r in eu-central-1 us-west-2; do amis=$(aws ec2 describe-images --region $r --owners self --output json --filters $TAG_FILTER | jq -r '.Images[].ImageId') for a in $amis; do aws ec2 deregister-image --region $r --image-id $a && echo "Deleted AMI $a in $r" done amis=$(aws ec2 describe-images --region $r --owners self --output json --filters Name=state,Values=failed | jq -r '.Images[].ImageId') for a in $amis; do aws ec2 deregister-image --region $r --image-id $a && echo "Deleted AMI $a in $r" done snapshots=$(aws ec2 describe-snapshots --region $r --owner-ids self --output json --filters $TAG_FILTER | jq -r '.Snapshots[].SnapshotId') for s in $snapshots; do aws ec2 delete-snapshot --snapshot-id $s --region $r && echo "Deleted snapshot $s in $r" done done