Jekyll + AWS Codebuild - EventMachine Gem失败

时间:2017-05-28 17:49:23

标签: amazon-web-services jekyll gemfile aws-codebuild

我正在尝试在Codebuild上运行一个Jekyll博客。在本地没有问题,但是当尝试在Codebuild上运行它时,它一直困在这个:

  

您的软件包已锁定到eventmachine(1.2.3),但在Gemfile中列出的任何来源中找不到该版本。如果您没有更改源,则表示eventmachine(1.2.3)的作者已将其删除。您需要将捆绑软件更新为不同版本的eventmachine(1.2.3),该版本尚未被删除才能安装。

但是,源代码是普通的rubygems,我检查了版本是否存在而且确实存在。我认为这可能是AWS codebuild中的一个错误,但我认为在这里发布会很好。有没有人有类似的问题?欢迎任何帮助。我已尝试以下方法来解决它:

1)删除Gemfile Lock

2)在Gemfile上设置特定版本。

Bundle在本地工作正常

1 个答案:

答案 0 :(得分:2)

您可以在本地复制并解决问题,并找出CodeBuild映像中构建失败的原因。这可以使用CodeBuild的Docker镜像完成,可以使用https://github.com/aws/aws-codebuild-docker-images提供的Dockerfiles创建。该存储库中也提供了创建这些图像的说明。

创建映像后,您可以从容器中的主机安装代码,然后在容器内运行构建命令。例如:

docker run -it -v /your/project/location:/code aws/codebuild/ruby-2.3.1 bin/bash

然后在容器内部,您可以针对/code处提供的源代码执行构建命令。