我是这里的新手,我需要任何可能的CDK代码管道帮助。我正试图使用管道部署一个模块,但由于某种原因,它停留在"资产"执行步骤。
错误:无法读取"assembly xxxPipelinexxxStack Deploy/xxxxPipeline xxxStackF5F6A16A.assets.json"处的资产清单:ENOENT:没有这样的文件或目录,stat'assembly xxx Pipelinexxx Stack Deploy.xxxxPipeline_xxxStackDeployxxxPipeline-xxxStackF5 F6A16A.essets.json'
我已经检查了cdk.out,它确实在程序集xxxPipelinexxxStack Deploy/xxxxPipeline3xxxStackDeployxxxPipeline xxxStackF5F6A16A.assets.json的位置包含所需的文件
自动创建的buildspec文件如下:
{
"version": "0.2",
"phases": {
"install": {
"commands": [
"npm install -g cdk-assets"
]
},
"build": {
"commands": [
"cdk-assets --path "assembly-xxxPipelinexxxStack-Deploy/xxxPipelinexxxStackDeployxxxPipelinexxxStackF5F6A16A.assets.json" --verbose publish "38341e9ef6b01cd2c7cc3b47cd0d2da98933b1121302bf0b03603950b8ff0bd4:current_account-current_region""
]
}
}
}
管道阶段为:
- 来源-成功
- 构建-成功
- 合成-成功
- 资产
- 文件资产1-失败
感谢您抽出时间并回复。
您没有指定,但我假设您使用的是CDK管道(而不是aws-cdk-lib.aws_codepipeline
(。
这是CDK管道的一个怪癖——构建规范必须更改以反映资产中的每一个更改。这在实践中意味着,当你使用资产时,你必须为管道启用自变异,这似乎是你禁用的。