2015-10-23 8 views
10

AWSコード配備でAfterInstallスクリプトを実行しようとしていますが、アプリケーションディレクトリではなく/ opt/codedeploy-agent/dirから実行されています。あなたはそれが基本的な例です見ることができるようにAWS CodeDeploy AfterInstallスクリプトをコード配布エージェントディレクトリから実行しています

version: 0.0 

os: linux 

files: 
    - source:/
    destination: /tmp/epub 

hooks: 
    AfterInstall: 
    - location: server/install-packages.sh 
     runas: root 

これはappspec.ymlファイルはどのように見えるかです。

は今、bashスクリプトは次のようになります。

#!/bin/bash 
npm install 

は、私はちょうどインストールNPMにしたいと、それはそれです。

残念ながら、私はエラーを取得しています:

LifecycleEvent - AfterInstall 
Script - server/install-packages.sh 
[stderr]npm ERR! install Couldn't read dependencies 
[stderr]npm ERR! Linux 3.13.0-48-generic 
[stderr]npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" 
[stderr]npm ERR! node v4.2.1 
[stderr]npm ERR! npm v2.14.7 
[stderr]npm ERR! path /opt/codedeploy-agent/package.json 
[stderr]npm ERR! code ENOPACKAGEJSON 
[stderr]npm ERR! errno -2 
[stderr]npm ERR! syscall open 
[stderr] 
[stderr]npm ERR! package.json ENOENT: no such file or directory, open '/opt/codedeploy-agent/package.json' 
[stderr]npm ERR! package.json This is most likely not a problem with npm itself. 
[stderr]npm ERR! package.json npm can't find a package.json file in your current directory. 
[stderr] 
[stderr]npm ERR! Please include the following file with any support request: 
[stderr]npm ERR!  /opt/codedeploy-agent/npm-debug.log 

私はrunasコマンドを追加したり、ロケーション・パスの先頭に「/」を加えるような異なるappspec.ymlのconfigsをしようとしていました。いつでも/ opt/codedeoploy-agent /ディレクトリから実行しようとしています。必死で

は、私は、スクリプトの絶対パスを設定したが、その後、私が得た:

Script does not exist at specified location: /tmp/epub/server/install-packages.sh 

それは私がドキュメントによると、すべてをやっている、おそらく、私は非常に何かが欠けていると、本当に迷惑なんです非常に少ない !だから私は出て見つけた

おかげ

答えて

20

[OK]を、

は、そのcodedeoloyエージェントはそう、インスタンスを展開上のエージェントによって作成された一時ディレクトリからAfterInstallを(そしておそらく他のすべてのステップ)が実行されています私の場合は、適切なディレクトリにcdしてbashスクリプトを修正する必要がありました。

#!/bin/bash 
cd /tmp/epub/server/ 
npm install 
+0

あなたはこれをどこから見つけましたか? – artburkart

+2

ここから結論を出すのは覚えていません。http://docs.aws.amazon.com/codedeploy/latest/userguide/app-spec-ref.html#app-spec-ref-hooks - おそらくあります1つの文章 - 私はそれがかなり長い間、あるいは試行錯誤、または両方の組み合わせによって起こったことを覚えています:) – matewilk

+0

@matewilk - super helpful! – Ben

関連する問題