株式会社ヴァンデミックシステム

Blog

<スポンサーリンク>

GithubのPrivateリポジトリ+CodePipeline+CodeDeploy

CodeDeploy実行時に、403 Forbiddenと出る

githubレポジトリの管理者にメールがいくので許可してもらう

CodeDeploy実行時に、「InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller: Error during perform: Psych::SyntaxError – (<unknown>): mapping val ues are not allowed in this context at line 9 column 14 – /usr/share/ruby/psych.rb:248:in `parse’」と出る

yamlファイルの形式がおかしいかもしれないのでチェック

CodeDeployでalready existesと出る

appspecのInstall処理部分で失敗していると思われる。
Install処理時には、appspecファイルで指定しているfilesセクションのファイルが指定したディレクトリにダウンロードされるが、それがすでにあるというのでエラーになっている。

次のように、たとえばInstall処理前のBeforeInstallセクションでリポジトリ内のファイルを参照するような動作はさせずに、Install処理後のAfterInstallなどで処理させることで、ここらへんのあべこべな状態は解消できる。

初回はデプロイ用ディレクトリは空が正しい。
そうすると、再度CIが走った時のInstall処理でまた、already existが発生すると思ってしまうが、CodeDeployではリビジョンを管理していて、最初の1回のみリポジトリの全ダウンロードが走る模様。
その後は、Gitよろしく差分のみがダウンロードされるということになっている。


https://docs.aws.amazon.com/ja_jp/codedeploy/latest/userguide/reference-appspec-file-structure-hooks.html

<スポンサーリンク>

コメントを残す

Allowed tags:  you may use these HTML tags and attributes: <a href="">, <strong>, <em>, <h1>, <h2>, <h3>
Please note:  all comments go through moderation.

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)