AWS CodeBuild失败

时间:2018-06-27 11:06:07

标签: amazon-web-services amazon-cloudformation aws-codepipeline aws-codebuild aws-codecommit

我创建了存储库,并通过使用aws代码提交推送了代码。每当我进行更改并将其推送到存储库时,它都已更新。但是当我以前使用aws代码构建进行构建时,由于无法找到buildspec.yml和pom.xml而失败。

请在根目录中找到我的yaml文件(buildspec.yml)和pom.xml文件作为附件。

我在awscodebuild中尝试了2种情况。

    我的代码中的
  1. buildspec.yml,但是在下载源中失败,并指示以下错误 CODEBUILD_SRC_DIR = / codebuild / output / src408069893 / src / awsgitrepo CODEBUILD_SRC_DIR = / codebuild / output / src408069893 / src / awsgitrepo / buildspec.yml-没有此类文件或目录。

  2. 当我尝试在awscodebuild中插入插入构建命令时,它失败并说明这一点

/ codebuild / output / src408069893 / src / awsgitrepo /-指定的目标需要一个项目,但是此目录中没有pom。

两个错误均表示相同的路径和丢失的文件。

所以,请您让我知道如何避免这种故障。有没有一种方法可以设置代码构建路径以提取源文件。想了解CODEBUILD_SRC_DIR的设置方法以及对CODEBUILD_SRC_DIR的需要。 enter image description here

2 个答案:

答案 0 :(得分:1)

aws管道测试项目遇到了完全相同的问题,结果发现我在github上的存储库的结构不好。

    You need to have (root directory name)
      -- my-web-app
           |-- src    
           |     `-- main
           |           |-- resources
           |           `-- webapp
           |                 |-- WEB-INF
           |                 |     `-- web.xml
           |                 `-- index.jsp
           |-- buildspec.yml
           `-- pom.xml

在这里说:

Create a file named buildspec.yml with the following contents. Store the file in the (root directory name)/my-web-app directory

总而言之,为了进行aws代码构建,找到您的pom和buildspec,您需要具有正确的git repo结构,例如:repository_name> [src,pom.xml,buildspec.yml ...],而不是:repository name> root_repo_dir> [src,pom.xml,buildspec.yml ...]

希望它有所帮助!

答案 1 :(得分:0)

从错误日志来看,似乎pom.xml和buildspec.yml不在根文件夹中。尝试在场景2中插入此命令find . -name pom.xml,以找到pom.xml。