AWS 和 Ruby 堆栈 - 弹性 beantalk 部署时出现错误
AWS and Ruby Stack - Error appears on elastic beanstalk deployment
我有一个 Ruby 配置了 AWS Elastic Beanstalk 的堆栈。上周,我的所有部署都正常,但由于我试图将我的 MySQL RDS 数据库更改为使用 UTF-8,每次 运行 和 eb deploy
时我都会遇到这个问题:
INFO: Environment update is starting.
INFO: Deploying new version to instance(s).
ERROR: UnicodeEncodeError :: 'ascii' codec can't encode character u'\u2018' in position 90: ordinal not in range(128)
当我检查 AWS EB 接口时,我收到了这条错误消息:
[Instance: i-2a4575cc] Command failed on instance. Return code: 1 Output: cp: cannot stat ‘/var/tmp/backup/10_bundle_install.sh’: No such file or directory. Hook /opt/elasticbeanstalk/hooks/appdeploy/post/05_revert_bundle_install_local.sh failed. For more detail, check /var/log/eb-activity.log using console or EB CLI.
最后,我检查了上面提到的/var/log/eb-activity.log,最后几行如下:
[2015-06-16T09:03:39.079Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployEnactHook] : Completed activity. Result:
Successfully execute hooks in directory /opt/elasticbeanstalk/hooks/appdeploy/enact.
[2015-06-16T09:03:39.079Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployPostHook] : Starting activity...
[2015-06-16T09:03:39.079Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployPostHook/05_revert_bundle_install_local.sh] : Starting activity...
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployPostHook/05_revert_bundle_install_local.sh] : Activity execution failed, because: cp: cannot stat ‘/var/tmp/backup/10_bundle_install.sh’: No such file or directory (ElasticBeanstalk::ExternalInvocationError)
caused by: cp: cannot stat ‘/var/tmp/backup/10_bundle_install.sh’: No such file or directory (Executor::NonZeroExitStatus)
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployPostHook/05_revert_bundle_install_local.sh] : Activity failed.
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD AppDeploy/AppDeployStage1/AppDeployPostHook] : Activity failed.
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1] : Activity failed.
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD-AppDeploy] : Completed activity. Result:
Command CMD-AppDeploy failed.
问题似乎来自 05_revert_bundle_install_local.sh 脚本中请求的 cp
命令:
cp -a /var/tmp/backup/10_bundle_install.sh /opt/elasticbeanstalk/hooks/appdeploy/pre/10_bundle_install.sh
/var/tmp/backup/10_bundle_install.sh 不存在。
你知道会发生什么吗?我该如何解决它以避免错误消息并进行干净的部署?
谢谢!
看看here。
显然在安装默认示例应用程序时,beanstalk 也会安装此文件并"forgets" 将其删除。所以解决方法就是手动删除。
我有一个 Ruby 配置了 AWS Elastic Beanstalk 的堆栈。上周,我的所有部署都正常,但由于我试图将我的 MySQL RDS 数据库更改为使用 UTF-8,每次 运行 和 eb deploy
时我都会遇到这个问题:
INFO: Environment update is starting.
INFO: Deploying new version to instance(s).
ERROR: UnicodeEncodeError :: 'ascii' codec can't encode character u'\u2018' in position 90: ordinal not in range(128)
当我检查 AWS EB 接口时,我收到了这条错误消息:
[Instance: i-2a4575cc] Command failed on instance. Return code: 1 Output: cp: cannot stat ‘/var/tmp/backup/10_bundle_install.sh’: No such file or directory. Hook /opt/elasticbeanstalk/hooks/appdeploy/post/05_revert_bundle_install_local.sh failed. For more detail, check /var/log/eb-activity.log using console or EB CLI.
最后,我检查了上面提到的/var/log/eb-activity.log,最后几行如下:
[2015-06-16T09:03:39.079Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployEnactHook] : Completed activity. Result:
Successfully execute hooks in directory /opt/elasticbeanstalk/hooks/appdeploy/enact.
[2015-06-16T09:03:39.079Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployPostHook] : Starting activity...
[2015-06-16T09:03:39.079Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployPostHook/05_revert_bundle_install_local.sh] : Starting activity...
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployPostHook/05_revert_bundle_install_local.sh] : Activity execution failed, because: cp: cannot stat ‘/var/tmp/backup/10_bundle_install.sh’: No such file or directory (ElasticBeanstalk::ExternalInvocationError)
caused by: cp: cannot stat ‘/var/tmp/backup/10_bundle_install.sh’: No such file or directory (Executor::NonZeroExitStatus)
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1/AppDeployPostHook/05_revert_bundle_install_local.sh] : Activity failed.
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD AppDeploy/AppDeployStage1/AppDeployPostHook] : Activity failed.
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD-AppDeploy/AppDeployStage1] : Activity failed.
[2015-06-16T09:03:39.088Z] INFO [23525] - [CMD-AppDeploy] : Completed activity. Result:
Command CMD-AppDeploy failed.
问题似乎来自 05_revert_bundle_install_local.sh 脚本中请求的 cp
命令:
cp -a /var/tmp/backup/10_bundle_install.sh /opt/elasticbeanstalk/hooks/appdeploy/pre/10_bundle_install.sh
/var/tmp/backup/10_bundle_install.sh 不存在。
你知道会发生什么吗?我该如何解决它以避免错误消息并进行干净的部署?
谢谢!
看看here。
显然在安装默认示例应用程序时,beanstalk 也会安装此文件并"forgets" 将其删除。所以解决方法就是手动删除。