Wenn Sie mit CloudFormation verschiedene Versuche und Fehler durchführen, ist es schwierig, auf das Mannequin zu klicken, und Sie möchten einen Stapel mit CLI erstellen oder löschen. Es ist jedoch mühsam, den Befehl einzeln zu drücken, um den JSON zu lesen, und es ist auch mühsam, nur auf die Schaufensterpuppe zu schauen und die Ladetaste zu drücken, sodass ich ihn schnell erstellt habe. Mir gefällt, wie einfach es für Python ist, dies innerhalb von 30 Schritten zu schreiben ...
Da boto3 und tabulate nicht standardmäßig enthalten sind, sollte `` `pip install``` durchgeführt werden. Informationen zu boto3 finden Sie auf der Website Around.
import os
import sys
import time
import boto3
import pprint
from tabulate import tabulate
args = sys.argv
client = boto3.client('cloudformation')
stackstatus = ""
while stackstatus != 'CREATE_COMPLETE':
os.system('clear')
response = client.describe_stacks(StackName=args[1])
stacks = response['Stacks']
stackstatus = stacks[0]['StackStatus']
response = client.describe_stack_events(StackName=args[1])
events = response['StackEvents']
events.sort(key=lambda x:x['Timestamp'])
rows = []
for keys in events:
cols = []
cols.append(keys['Timestamp'])
cols.append(keys['LogicalResourceId'])
cols.append(keys['ResourceStatus'])
rows.append(cols)
headers = ['Timestamp', 'LogicalResourceId', 'Status']
table = tabulate(rows, headers)
print(table)
if stackstatus != 'CREATE_COMPLETE':
time.sleep(10)
Wenn ich es starte, ↓ Dieser Bildschirm ist ...
Das ist es! Wenn auf der Konsole ein neuer Datensatz angezeigt wird, fließt dieser, sodass die Anzeige umgekehrt wird.
Timestamp LogicalResourceId Status
-------------------------------- -------------------------- ------------------
2020-05-10 10:47:57.928000+00:00 ApigwTest-issue01-Pipeline CREATE_IN_PROGRESS
2020-05-10 10:48:02.269000+00:00 CODEBUILDLOGGROUP CREATE_IN_PROGRESS
2020-05-10 10:48:02.699000+00:00 S3BUCKET CREATE_IN_PROGRESS
2020-05-10 10:48:02.789000+00:00 CODEBUILDLOGGROUP CREATE_IN_PROGRESS
2020-05-10 10:48:03.178000+00:00 CODEBUILDLOGGROUP CREATE_COMPLETE
2020-05-10 10:48:04.363000+00:00 S3BUCKET CREATE_IN_PROGRESS
2020-05-10 10:48:25.539000+00:00 S3BUCKET CREATE_COMPLETE
2020-05-10 10:48:27.772000+00:00 CODEBUILDIAMROLE CREATE_IN_PROGRESS
2020-05-10 10:48:29.158000+00:00 CODEBUILDIAMROLE CREATE_IN_PROGRESS
2020-05-10 10:48:45.746000+00:00 CODEBUILDIAMROLE CREATE_COMPLETE
2020-05-10 10:48:49.115000+00:00 CODEBUILD CREATE_IN_PROGRESS
2020-05-10 10:48:51.445000+00:00 CODEBUILD CREATE_IN_PROGRESS
2020-05-10 10:48:52.222000+00:00 CODEBUILD CREATE_COMPLETE
2020-05-10 10:48:54.622000+00:00 PIPELINE CREATE_IN_PROGRESS
2020-05-10 10:48:55.360000+00:00 PIPELINE CREATE_IN_PROGRESS
2020-05-10 10:48:55.853000+00:00 PIPELINE CREATE_COMPLETE
2020-05-10 10:48:57.646000+00:00 ApigwTest-issue01-Pipeline CREATE_COMPLETE
Recommended Posts