You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS CDK S3Deploy.Source.asset未上传GitLab流水线中修改的网页文件

解决方案
  • 验证文件修改结果:在deploy阶段的脚本开头添加以下命令,确认build阶段的替换操作已生效,且文件路径正确:

    cat /builds/personal1741534/website/dist/index.html | grep $CI_COMMIT_SHORT_SHA
    ls -la /builds/personal1741534/website/dist
    

    如果没有输出目标SHA值,说明build阶段的sed命令执行有误,或者路径不正确,需要先排查build步骤。

  • 禁用CDK资产缓存:CDK默认会对Source.asset的内容做哈希缓存,若之前的dist目录内容被缓存,会导致新修改的文件不被上传。修改deploy命令为:

    cdk deploy --require-approval never --no-asset-cache
    
  • 确认CDK项目路径匹配:如果你的CDK代码位于仓库的子目录(比如cdk文件夹),则Source.asset的路径需要调整为相对CDK项目根目录的路径,例如:

    // 假设CDK项目在仓库根目录的cdk文件夹下,dist在仓库根目录
    new BucketDeployment(this, "BucketDeployment", {
      destinationBucket: bucket,
      sources: [Source.asset("../dist")],
      distribution,
      distributionPaths: ["/*"],
    });
    
  • 排查部署日志:查看GitLab流水线deploy阶段的CDK输出日志,搜索BucketDeployment相关内容,确认是否有文件上传记录,或是否存在S3权限不足、路径不存在等错误提示。

内容的提问来源于stack exchange,提问作者Ruwan Indika

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 18:52:35