0

Ich habe eine Cloudformation-Vorlage, die eine DynamoDB-Tabelle erstellt.Die beste Methode zum Löschen von Inhalten aus der DynamoDB-Tabelle (mit Jenkins + CloudFormation)

Innerhalb derselben Jenkins-Pipeline habe ich ein Pipeline-Skript, das mehrere Stufen hat. Für eine dieser Phasen verwende ich dieselbe CloudFormation-Vorlage. Was ich versucht in Jenkins zu tun war, 1 Bühne, die die DynamoDB Tabelle löscht:

stage('Delete DynamoDB Table'){ 
     sh "aws dynamodb delete-table --table-name ThisTable --region us-east-1" 
    } 

Dann stelle ich die CFT

stage('Deploy CloudFormation Template'){ 

Und dann habe ich lade Daten in DynamoDB

stage('Upload Data to Dynamo'){ 

Mein Problem ist, wenn ich die DynamoDB-Tabelle direkt lösche, kann mein Deploy CFT-Stadium nicht ausgeführt werden, weil es das nicht mag. Die Jenkins-Pipeline schlägt also tatsächlich fehl, bevor ich die Upload-Phase erreiche.

Kennt jemand eine bessere Möglichkeit zum Löschen von Elementen aus DynamoDB? Mir wurde gesagt, dass Sie eine DynamoDB-Tabelle nicht abschneiden konnten und der beste Weg war, die Tabelle einfach zu löschen und neu zu erstellen.

Antwort

1

delete-table löscht die Tabelle nicht automatisch, sondern initiiert nur die Löschoperationen, die von AWS ausgeführt werden. Sie sollten die Tabelle describe verwenden, um zu überprüfen, ob die Tabelle gelöscht wurde, bevor Sie zum nächsten Schritt übergehen.

Verwandte Themen