我有一个用于创建 DynamoDB 表的 Cloudformation 模板。
在同一个 Jenkins 管道中,我有一个具有多个阶段的管道脚本。对于其中一个阶段,我实际上部署了相同的 CloudFormation 模板。我尝试在 Jenkins 中执行的操作是删除 DynamoDB 表的 1 个阶段:
stage('Delete DynamoDB Table'){
sh "aws dynamodb delete-table --table-name ThisTable --region us-east-1"
}
然后我部署 CFT
stage('Deploy CloudFormation Template'){
然后我将数据上传到 DynamoDB
stage('Upload Data to Dynamo'){
我的问题是,当我完全删除 DynamoDB 表时,我的 Deploy CFT 阶段无法运行,因为它不喜欢那样。因此,在我到达上传阶段之前,Jenkins 管道实际上失败了。
有人知道从 DynamoDB 中删除项目的更好方法吗?有人告诉我,您无法截断 DynamoDB 表,最好的方法是删除该表并重新创建它。
最佳答案
delete-table 不会自动删除表,而仅启动删除操作,该操作将由 AWS 执行。在进行下一步之前,您应该使用describe-table 检查表是否已删除。
关于amazon-web-services - 从 DynamoDB 表中删除内容的最佳方法(使用 Jenkins + CloudFormation),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40872300/