Ich versuche, ein Skript zu schreiben, in dem wir ein Backup eines AMI (Amazon Machine Image) erstellen und sobald es abgeschlossen ist und sein Status „Verfügbar" anzeigt, sendet es uns eine E-Mail mit der gleichen Information.
Ich habe den ersten Teil abgedeckt, aber ich habe Probleme mit dem zweiten Teil, dh ständig zu prüfen, wann das Bild verfügbar ist, und uns eine E-Mail zu senden. Um den Status als verfügbar zu überprüfen, verwende ich den folgenden Befehl:
/usr/bin/aws ec2 describe-images --image-ids=$AMI_ID --query "Images[*].{st:State}" | grep -e "available" | wc -l'
Dadurch wird die Ausgabe als 1 zurückgegeben, wenn AMI verfügbar ist, aber Probleme beim Erstellen einer Schleife auftreten, die den obigen Befehl kontinuierlich ausführt, um zu überprüfen, ob die Ausgabe gleich 1 ist oder nicht.
Bitte helfen Sie, diese Schleife herauszufinden.
Die PS-IMAGE-Erstellung dauert zwischen 10 und 30 Minuten oder in einigen Fällen sogar noch länger.
Lösung des Problems
Sie könnten eine Endlosschleife verwenden
while true
do
if /usr/bin/aws ec2 describe-images --image-ids=$AMI_ID --query "Images[*].{st:State}" | grep -e "available" | wc -l'; then
break
fi
esac
done
Keine Kommentare:
Kommentar veröffentlichen