2017-05-28 14 views
0

私はCodebuildでJekyllブログを実行しようとしています。ローカルそこには問題はありませんが、Codebuild上でそれを実行しようとすると、それはこの上で立ち往生し続ける:Jekyll + AWS Codebuild - EventMachine Gemが失敗する

あなたのバンドルはeventmachine(1.2.3)にロックされていますが、そのバージョンのいずれかで見つけることができませんでしたあなたのGemfileにリストされているソース。ソースを変更していない場合は、eventmachine(1.2.3)の作成者が削除したことを意味します。バンドルをインストールするために削除されていない別のバージョンのイベントマシン(1.2.3)にアップデートする必要があります。

しかし、ソースは普通のルビー宝石で、バージョンがあるかどうかを確認しました。 AWSコードビルドのバグかもしれないが、ここに投稿すると良いと思った。誰も似たような問題がありましたか?どんな助けも歓迎です。私はそれを解決するには、次を試してみました:

1)はGemfileにGemfileロック

2)を設定し、特定のバージョンを削除します。

バンドルは罰金ローカルで作業している

+0

ビルドに 'bundle install -binstubs'が含まれていますか? – Unsigned

答えて

2

あなたが複製し、ローカルで問題を解決し、ビルドがCodeBuildイメージの内側に失敗した理由を把握することができます。これは、CodeBuildのDockerイメージを使用して行うことができます.Dockerfilesは、Dockerfilesを使用して作成できます(https://github.com/aws/aws-codebuild-docker-images)。これらのイメージを作成する手順は、そのリポジトリでも利用できます。

イメージが作成されたら、コンテナ内のホストマシンからコードをマウントし、コンテナ内でビルドコマンドを実行できます。たとえば:

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

は、次に容器の内部には、/codeで入手可能なソースコードに対して、ビルドコマンドを実行することができます。

関連する問題