2017-01-09 97 views
0

我想在AWS EB上完成部署後的幾件事情。我已經將我的.ebextensions添加到git存儲庫,並且我只有一個文件01_container_commands.config,但它在我尾部/var/log/eb-activity.log時似乎不運行。有一次,它正在運行,並且在下面列出的命令05上失敗,所以我刪除了05但現在它根本不運行。AWS ElasticBeanstalk .ebextensions未被執行

container_commands: 
    01_user_permission: 
    command: /usr/sbin/usermod -a -G webapp ec2-user 
    02_remove_storage_directory: 
    command: rm -rf /var/app/current/storage 
    03_create_storage_directories: 
    command: mkdir /var/app/current/storage /var/app/current/storage/framework /var/app/current/storage/framework/session /var/app/current/storage/framework/views /var/app/current/storage/framework/cache 
    04_set_storage_permissions: 
    command: chmod -fR 755 /var/app/current/storage 
    05_copy_env_file 
    command: cp /var/app/current/.aws.env /var/app/current/.env 

這似乎是它沒有運行我的ebextensions,任何想法我可以檢查以找出原因?

作爲一個側面說明,我嘗試用雙引號包裝我的命令,這似乎也沒有幫助。

正如你可以在下面看到它只是沒有執行我的腳本。

[2017-01-09T19:59:09.615Z] INFO [26612] - [Application update [email protected]/AppDeployStage0/AppDeployPreHook/12_update_permissions.sh] : Starting activity... 
[2017-01-09T19:59:20.431Z] INFO [26612] - [Application update [email protected]/AppDeployStage0/AppDeployPreHook/12_update_permissions.sh] : Completed activity. Result: 
    ++ /opt/elasticbeanstalk/bin/get-config container -k app_user 
    + EB_APP_USER=webapp 
    ++ /opt/elasticbeanstalk/bin/get-config container -k app_base_dir 
    + EB_APP_BASE_DIR=/var/app 
    ++ /opt/elasticbeanstalk/bin/get-config container -k app_staging_dir 
    + EB_APP_STAGING_DIR=/var/app/ondeck 
    ++ /opt/elasticbeanstalk/bin/get-config container -k app_logs_dir 
    + EB_APP_LOGS_DIR=/var/app/support/logs 
    + cd /var/app/ondeck 
    + chown -R webapp:webapp /var/app 
    + chown -R webapp:webapp /var/log/httpd 
    + '[' -f app/SymfonyRequirements.php ']' 
[2017-01-09T19:59:20.431Z] INFO [26612] - [Application update [email protected]/AppDeployStage0/AppDeployPreHook] : Completed activity. Result: 
    Successfully execute hooks in directory /opt/elasticbeanstalk/hooks/appdeploy/pre. 
[2017-01-09T19:59:20.432Z] INFO [26612] - [Application update [email protected]/AppDeployStage0/EbExtensionPostBuild] : Starting activity... 
[2017-01-09T19:59:21.040Z] INFO [26612] - [Application update [email protected]/AppDeployStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild] : Starting activity... 
[2017-01-09T19:59:21.040Z] INFO [26612] - [Application update [email protected]/AppDeployStage0/EbExtensionPostBuild/Infra-EmbeddedPostBuild] : Completed activity. 
[2017-01-09T19:59:21.075Z] INFO [26612] - [Application update [email protected]/AppDeployStage0/EbExtensionPostBuild] : Completed activity. 
[2017-01-09T19:59:21.076Z] INFO [26612] - [Application update [email protected]/AppDeployStage0/InfraCleanEbextension] : Starting activity... 
[2017-01-09T19:59:21.157Z] INFO [26612] - [Application update [email protected]/AppDeployStage0/InfraCleanEbextension] : Completed activity. Result: 
    Cleaned ebextensions subdirectories from /var/app/ondeck. 
[2017-01-09T19:59:21.157Z] INFO [26612] - [Application update [email protected]/AppDeployStage0] : Completed activity. Result: 
    Application update - Command CMD-AppDeploy stage 0 completed 
[2017-01-09T19:59:21.158Z] INFO [26612] - [Application update [email protected]/AppDeployStage1] : Starting activity... 
[2017-01-09T19:59:21.158Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployEnactHook] : Starting activity... 
[2017-01-09T19:59:21.158Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployEnactHook/01_flip.sh] : Starting activity... 
[2017-01-09T19:59:21.535Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployEnactHook/01_flip.sh] : Completed activity. Result: 
    ++ /opt/elasticbeanstalk/bin/get-config container -k app_staging_dir 
    + EB_APP_STAGING_DIR=/var/app/ondeck 
    ++ /opt/elasticbeanstalk/bin/get-config container -k app_deploy_dir 
    + EB_APP_DEPLOY_DIR=/var/app/current 
    + '[' -d /var/app/current ']' 
    + mv /var/app/current /var/app/current.old 
    + mv /var/app/ondeck /var/app/current 
    + nohup rm -rf /var/app/current.old 
[2017-01-09T19:59:21.535Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployEnactHook/99_reload_app_server.sh] : Starting activity... 
[2017-01-09T19:59:21.677Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployEnactHook/99_reload_app_server.sh] : Completed activity. Result: 
    Equivalent Upstart operations: start httpd, stop httpd, restart httpd, status httpd 
    Gracefully restarting httpd 
    [OK] 
[2017-01-09T19:59:21.677Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployEnactHook] : Completed activity. Result: 
    Successfully execute hooks in directory /opt/elasticbeanstalk/hooks/appdeploy/enact. 
[2017-01-09T19:59:21.678Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployPostHook] : Starting activity... 
[2017-01-09T19:59:21.678Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployPostHook/01_monitor_httpd_pid.sh] : Starting activity... 
[2017-01-09T19:59:22.168Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployPostHook/01_monitor_httpd_pid.sh] : Completed activity. Result: 
    + chmod 0755 /var/run/httpd 
    + /opt/elasticbeanstalk/bin/healthd-track-pidfile --proxy httpd 
[2017-01-09T19:59:22.168Z] INFO [26612] - [Application update [email protected]/AppDeployStage1/AppDeployPostHook] : Completed activity. Result: 
    Successfully execute hooks in directory /opt/elasticbeanstalk/hooks/appdeploy/post. 
[2017-01-09T19:59:22.169Z] INFO [26612] - [Application update [email protected]/AppDeployStage1] : Completed activity. Result: 
    Application version switch - Command CMD-AppDeploy stage 1 completed 
[2017-01-09T19:59:22.169Z] INFO [26612] - [Application update [email protected]/AddonsAfter] : Starting activity... 
[2017-01-09T19:59:22.169Z] INFO [26612] - [Application update [email protected]/AddonsAfter/ConfigLogRotation] : Starting activity... 
[2017-01-09T19:59:22.170Z] INFO [26612] - [Application update [email protected]/AddonsAfter/ConfigLogRotation/10-config.sh] : Starting activity... 
[2017-01-09T19:59:22.611Z] INFO [26612] - [Application update [email protected]/AddonsAfter/ConfigLogRotation/10-config.sh] :  Completed activity. Result: 
    Disabled forced hourly log rotation. 
[2017-01-09T19:59:22.612Z] INFO [26612] - [Application update [email protected]/AddonsAfter/ConfigLogRotation] : Completed activity. Result: 
    Successfully execute hooks in directory /opt/elasticbeanstalk/addons/logpublish/hooks/config. 
[2017-01-09T19:59:22.612Z] INFO [26612] - [Application update [email protected]/AddonsAfter/ConfigCWLAgent] : Starting activity... 
[2017-01-09T19:59:22.613Z] INFO [26612] - [Application update [email protected]/AddonsAfter/ConfigCWLAgent/10-config.sh] : Starting activity... 
[2017-01-09T19:59:22.923Z] INFO [26612] - [Application update [email protected]/AddonsAfter/ConfigCWLAgent/10-config.sh] : Completed activity. Result: 
    Log streaming option setting is not specified, ignore cloudwatch logs setup. 

    Disabled log streaming. 
[2017-01-09T19:59:22.923Z] INFO [26612] - [Application update [email protected]/AddonsAfter/ConfigCWLAgent] : Completed activity. Result: 
    Successfully execute hooks in directory /opt/elasticbeanstalk/addons/logstreaming/hooks/config. 
[2017-01-09T19:59:22.923Z] INFO [26612] - [Application update [email protected]/AddonsAfter] : Completed activity. 
[2017-01-09T19:59:22.924Z] INFO [26612] - [Application update [email protected]] : Completed activity. Result: 
    Application update - Command CMD-AppDeploy succeeded 
+0

如何將它部署到EB? – pgratton

+0

我使用CLI工具'''eb deploy''',部署工作正常,但是配置文件只是有時候執行而不是每次部署時都執行。最近它似乎剛剛停止執行。 –

回答

0

根據the documentation,你的命令應該用雙引號,如下所示。您在05_copy_env_file後也錯過了冒號。

我知道你說你試過雙引號,但是你可以在修復引號和冒號後重試嗎?同時請用您的新01_container_commands.config文件和整個/var/log/eb-activity.log文件更新您的問題。謝謝!

container_commands: 
    01_user_permission: 
    command: "/usr/sbin/usermod -a -G webapp ec2-user" 
    02_remove_storage_directory: 
    command: "rm -rf /var/app/current/storage" 
    03_create_storage_directories: 
    command: "mkdir /var/app/current/storage /var/app/current/storage/framework /var/app/current/storage/framework/session /var/app/current/storage/framework/views /var/app/current/storage/framework/cache" 
    04_set_storage_permissions: 
    command: "chmod -fR 755 /var/app/current/storage" 
    05_copy_env_file: 
    command: "cp /var/app/current/.aws.env /var/app/current/.env" 
+0

我曾試過,沒有引號..這不是問題,即使在修復它不工作後。原因是因爲我需要做這些沒有真正記錄的「後期部署」,這篇文章是讓事情開始爲我工作的原因。 http://junkheap.net/blog/2013/05/20/elastic-beanstalk-post-deployment-scripts/ –

+1

很高興聽到你得到它的工作!我希望AWS能正式支持「後期部署」技術,但正如你發現它工作得很好。 也就是說,你的'01_user_permission'步驟應該像正常的'container_command'一樣運行,因爲它不影響'/ var/app/current'。 – Brian

相關問題