从 S3 复制文件时出现 AWS CodeBuild 错误 - COMMAND_EXECUTION_ERROR:原因:退出状态 1 (NodeJS)

Posted

技术标签:

【中文标题】从 S3 复制文件时出现 AWS CodeBuild 错误 - COMMAND_EXECUTION_ERROR:原因:退出状态 1 (NodeJS)【英文标题】:AWS CodeBuild Error while copying file from S3 - COMMAND_EXECUTION_ERROR: Reason: exit status 1 (NodeJS) 【发布时间】:2021-04-27 16:51:44 【问题描述】:

我在尝试将文件从 S3 存储桶复制到构建工件时遇到此错误,发布构建。

我的构建阶段错误日志说: COMMAND_EXECUTION_ERROR: 执行命令时出错: aws s3 cp "s3://bucket/config.json" "config.json". Reason: exit status 1

这是我的 BuildSpec:

version: 0.2

phases:
  install:
    commands:
    - npm install
  build:
    commands:
      - npm run build
  post_build:
    commands:
      - aws s3 cp "s3://bucket/config.json" "config.json"

【问题讨论】:

还有详细的日志吗?您是否为 CB 项目启用了 CloudWatch Logs? 我将启用 CloudWatch 日志,重新运行构建并在某个时间发布日志。现在,我想知道我们是否可以访问构建规范文件中的 aws cli? 是的,有 aws cli。立即想到的一件事情是,CB 角色是否有权访问您的 s3 存储桶和对象? 问题出在权限上!非常感谢,@Marcin。您可以将其发布为答案。 【参考方案1】:

基于 cmets。

该问题是由 CodeBuld 角色没有S3 权限引起的。因此,为了解决这个问题,需要向角色添加 S3 的权限。

【讨论】:

以上是关于从 S3 复制文件时出现 AWS CodeBuild 错误 - COMMAND_EXECUTION_ERROR:原因:退出状态 1 (NodeJS)的主要内容,如果未能解决你的问题,请参考以下文章

从 Nuxt 上传到 AWS S3 存储桶时出现 500 内部服务器错误

从 S3 复制镶木地板文件时出现 Vertica 性能问题

仅从浏览器使用预签名 URL 上传时出现 AWS S3 CORS 错误

从托管在 S3 存储桶上的站点访问 AWS API 时出现 CORS 问题 [关闭]

在 Geoserver 和 S3 AWS 之间建立连接时出现问题

将数据从本地复制到 S3 到 Redshift 表时出现问题