zkt25/sk1/terminate.sh
2025-04-13 00:40:37 +02:00

27 lines
1022 B
Bash

#!/bin/bash
# Найдём только running-инстансы
INSTANCE_ID=$(aws ec2 describe-instances \
--filters "Name=instance-state-name,Values=running" \
--query "Reservations[-1].Instances[-1].InstanceId" \
--output text)
if [ "$INSTANCE_ID" == "None" ] || [ -z "$INSTANCE_ID" ]; then
echo "❌ Нет работающих (running) EC2-инстансов для остановки и удаления."
exit 1
fi
echo "🟡 Останавливаем EC2-инстанс: $INSTANCE_ID..."
aws ec2 stop-instances --instance-ids "$INSTANCE_ID"
echo "⏳ Ждём полной остановки..."
aws ec2 wait instance-stopped --instance-ids "$INSTANCE_ID"
echo "🔴 Удаляем остановленный инстанс: $INSTANCE_ID..."
aws ec2 terminate-instances --instance-ids "$INSTANCE_ID"
echo "⏳ Ждём удаления..."
aws ec2 wait instance-terminated --instance-ids "$INSTANCE_ID"
echo "✅ Успешно остановлен и удалён инстанс: $INSTANCE_ID"