在CD中,未更改的Timestream表导致堆栈更新失败。

0

【以下的问题经过翻译处理】 我有一个CDK堆栈,其中包含一个Timestream数据库和一个Timestream表。自从它们最初部署以来,它们没有进行任何更改。

在本地运行部署时,对于我们在两个帐户中拥有此堆栈的情况,一切都顺利。

然而,CI/CD系统无法进行部署。它在两个帐户中都失败,出现以下错误:

UPDATE_FAILED | AWS::Timestream::Table | <表名> Resource handler returned message: "null" (RequestToken: 73f0b0b6-fee5-dba2-355f-d85a235942df, HandlerErrorCode: InternalFailure)

CloudTrail中没有错误。与此相关的唯一两个可见事件是CreateChangeSet和ExecuteChangeSet。其中没有显示任何错误。

我已经在S3中检查了部署模板。本地部署的模板包含RetentionProperties,而CI/CD部署的模板没有。CDK明确定义了这些。

CI/CD系统使用的角色在“*”上拥有以下权限:

                  'timestream:DescribeDatabase',
                  'timestream:DescribeEndpoints',
                  'timestream:DescribeScheduledQuery',
                  'timestream:DescribeTable',
                  'timestream:ListDatabases',
                  'timestream:ListMeasures',
                  'timestream:ListTables',
                  'timestream:UpdateDatabase',
                  'timestream:UpdateTable',
                  'timestream:UpdateDatabase',
                  'timestream:UpdateTable'

我已尝试授予部署角色所有“timestream:\ *”权限,结果相同。

profile picture
EXPERTE
gefragt vor 9 Monaten44 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 所以我找到了问题所在。这是由于RetetionProperties在CDK中存在一个bug。在本地我使用了早于2.55版本的cdk,而我们在CI/CD系统中总是尝试使用最新版本,即2.55.1。在这种情况下,问题也存在于2.55版本中。该bug已经被报道,希望不久的将来能够修复:https://github.com/aws/aws-cdk/issues/23404

profile picture
EXPERTE
beantwortet vor 9 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen