0

Aws codedeployが適用されています。 appspecファイルを以下に示します。aws codeseploy長期実行プロセス

version: 0.0 
os: linux 
files: 
    - source: script/install-file.sh 
    destination: /home/ 
hooks: 
    AfterInstall: 
    - location: script/install-file.sh 
     timeout: 120 
     runas: root 
    ApplicationStart: 
    - location: script/start-file.sh 
     timeout: 120 
     runas: root 

私はAfterInstallまで成功しました。 まだapplicationStartで保留中です。 AfterインストールされたJavaファイルをインストールし、アクセス許可を設定します。

chmod 755 ${file_HOME}/bin/install_api 
chmod 755 ${file_HOME}/bin/install_web 

自動実行を設定しました。

/bin/cp ${file_HOME}/bin/install_api /etc/init.d 
/bin/cp ${file_HOME}/bin/install_web /etc/init.d 

Chkconfig --add ib_api 
Chkconfig --add ib_web 

start-file.shは以下のとおりです。

#!/bin/bash 
# start InnerBeans 
sudo service install_api start & 
sleep 5 
sudo service install_web start & 
sleep 5 
+0

は、あなたがより多くの詳細を提供することができます: 私はここで解決策を見つけましたか?エラー/結果は何でしたか?デプロイメントログをチェックして、これまでに実行されたコード配布を確認できますか?それらを見つける方法は次のとおりです:https://docs.aws.amazon.com/codedeploy/latest/userguide/deployments-view-logs.html#deployments-view-logs-instance-unix – Asaf

答えて

0

(バージョンOFFICIAL_1.0-1.1106_rpm)LifeCycleEventスクリプトcodedeployエージェント内のバックグラウンド・プロセスまたはデーモンを呼び出して70分のタイムアウトまで保留のまま。 まず、このような&を削除してみてください:あなたは出力stdoutとstderrをリダイレクトする必要があるので、

#!/bin/bash 
# start InnerBeans 
sudo service install_api start 
#sleep 5 
sudo service install_web start 
#sleep 5 

それはまだ失敗した場合、あなたはおそらくinitスクリプト内の背景やデーモン化のプロセスを持っています。

試してみてください。

#!/bin/bash 
# start InnerBeans 
sudo service install_api start > /dev/null 2>&1 
#sleep 5 
sudo service install_web start > /dev/null 2>&1 
#sleep 5 

第二の方法は、私のために働いたこと。 https://forums.aws.amazon.com/thread.jspa?messageID=626766&#626766 、ここ http://docs.aws.amazon.com/codedeploy/latest/userguide/troubleshooting-deployments.html#troubleshooting-long-running-processes

関連する問題