AWS CodeBuild跳过无效的工件路径 - 不是有效的标识符

时间:2018-02-12 19:16:44

标签: amazon-web-services yaml aws-codebuild

我有一个处理两个项目的AWS CodeBuild,在构建过程中,源代码将构建并捆绑在zip文件中并放在bundles/*中。

以下是目录树的外观,其中bundle包含要部署的生成的zip文件:

Directory tree

它使用以下buildspec.yml

version: 0.2

phases:
  install:
    commands:
      - ./manager.sh install
  build:
    commands:
      - ./manager.sh build
      - ./manager.sh package
      - ./manager.sh test
      - ./manager.sh test:functional
      - ./manager.sh test:deploy
  post_build:
    commands:
      - ls -l bundles # I see the artifacts on the console using this

artifacts:
  files: 
    - 'bundles/*'

测试结束后,构建通过后部署失败。 CodeBuild

这会返回Skipping invalid artifact path [edited] not a valid identifier .(它应该是捆绑包的地方)

我尝试过多种以下组合:

这个返回Skipping invalid artifact path [edited] not a valid identifier bundles

artifacts:
  base-directory: bundles
  files: 
    - '**/*'

或者这一个Skipping invalid artifact path [edited] not a valid identifier .

artifacts:
  files: 
    - bundles

这是完整的错误:

[Container] 2018/02/12 19:13:05 Expanding /codebuild/output/tmp/env.sh: line 69: export: `npm_config_unsafe-perm': not a valid identifier
.
[Container] 2018/02/12 19:13:05 Skipping invalid artifact path /codebuild/output/tmp/env.sh: line 69: export: `npm_config_unsafe-perm': not a valid identifier
.
[Container] 2018/02/12 19:13:05 Phase complete: UPLOAD_ARTIFACTS Success: false
[Container] 2018/02/12 19:13:05 Phase context status code: CLIENT_ERROR Message: No matching base directory path found for /codebuild/output/tmp/env.sh: line 69: export: `npm_config_unsafe-perm': not a valid identifier
.
[Container] 2018/02/12 19:13:07 Runtime error (*errors.errorString: No matching base directory path found for /codebuild/output/tmp/env.sh: line 69: export: `npm_config_unsafe-perm': not a valid identifier
.)

可能是我的docker container吗?

1 个答案:

答案 0 :(得分:2)

我尝试了多件事,他们都失败了,所以我唯一的领导就是:

line 69: export: `npm_config_unsafe-perm'

多次出现。那条线来自我的码头图像。所以我认为可能 aws codebuild由于某种原因在该错误上做了误报。

我将图片从lambci/lambda:build-nodejs6.10 更改为 roelofr/node-zip:latest进行快速测试,并且看到它没有任何问题。< / p>

Successful Build

所以,是的,即使休息是好的,也可以打破你的建筑物,但是请小心

因此,我会将图片更改为使用node 6.10.3仅用于验证目的的个人图片。