🤢
Ruby On JetsでGithub PackagesのBundle Installに失敗する
現象
Ruby On Jets v6を使用したプロジェクトでbundle exec jets deploy
を実行し、codebuild上でbundle installが実行されるが以下のようなエラーが起きた。
ERROR: failed to solve: process "/bin/sh -c bundle install" did not complete successfully: exit code: 17
(以下省略)
プロジェクト内では複数プロジェクトで共通で使うコードをGithub PackagesにPrivate Gemとして公開している。bundle install時にこのgemをインストールするために、Dockefile内に環境変数BUNDLE_RUBYGEMS__PKG__GITHUB__COM
を設定しているが、bundle installできていないようだった。
解決方法
以下の手順を実行すると正常にbundle installされ、デプロイできた。
-
bundle exec jets set:env BUNDLE_RUBYGEMS__PKG__GITHUB__COM=hogehoge
を実行して、SSMに値を設定する。 -
config/jets/bootstrap.rb
内に以下のような記述を追加するconfig/jets/bootstrap.rbJets.bootstrap.configure do config.codebuild.project.env.vars = { BUNDLE_RUBYGEMS__PKG__GITHUB__COM: "SSM/project_name/#{ssm_env}/BUNDLE_RUBYGEMS__PKG__GITHUB__COM" } end
- 再度
bundle exec jets deploy
を実行する
参考
Discussion