无法使用Git部署到AWS Elastic Beanstalk

时间:2014-06-03 19:40:55

标签: php node.js git amazon-web-services elastic-beanstalk

我遵循Elastic Beanstalk文档(http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_nodejs_express.html),但我无法使用git部署node.js或PHP应用程序。

$ eb push
Error: Failed to create the AWS Elastic Beanstalk application version
Cannot run aws.push for local repository HEAD: 

如果我尝试从git推送

,也会发生同样的情况
$ git aws.push
Updating the AWS Elastic Beanstalk environment phpapp-env...
Error: Failed to create the AWS Elastic Beanstalk application version

当您调用eb init时,AWS工具会设置一些git快捷方式。失败的呼叫是......

$.git/AWSDevTools/aws.elasticbeanstalk.createapplicationversion
Error: Failed to create the AWS Elastic Beanstalk application version

该python模块的代码是......

from aws.dev_tools import *

if __name__ == "__main__":
  dev_tools = DevTools()
  dev_tools.create_application_version(None, None)

我已经尝试过这个全新的php和node.js项目了。我正在运行Python 2.7.2,Ruby 2.1.2p95(2014-05-08修订版45877)[x86_64-darwin12.0]。有什么想法吗?

6 个答案:

答案 0 :(得分:10)

我们遇到了相同的错误消息但原因不同。我们的git提交的提交消息要么太长,要么包含特殊字符。使用更简单的git提交消息将其清除。希望这有助于某人!

答案 1 :(得分:5)

此错误只会影响使用多个AWS账户的人。似乎如果您在环境变量中声明了AWS_CREDENTIAL_FILE,那么AWS工具将选择该工具而不是获取我为Beanstalk项目建立的本地凭据。您可以通过发出以下命令来检查正在使用的配置。

git aws.config

告诉我,凭证来自......

/Users/a12345/.ec2/CLI_Access_User.iam

...而不是本地环境。我希望错误消息表明这是权限问题。

答案 2 :(得分:2)

当我用完应用程序版本时,发生了这种情况,限制为500

答案 3 :(得分:0)

我有另一个可能的原因导致此错误,调试我得到了这个:

{"Error":
    {"Code":"TooManyApplicationVersionsException",
     "Message":"You cannot have more than 500 Application Versions. Either remove some Application Versions or request a limit increase.",
     "Type":"Sender"},
"RequestId":"xxxxxxxx-8184-11e4-xxxx-d5d8eef7a812"}

肯定是AWSDevTools,应该使这些错误比Error: Failed to create the AWS Elastic Beanstalk application version提供更多信息,甚至提供--verbose选项。

答案 4 :(得分:0)

解决方案在这里: Amazon Elastick BeanStalk error: Failed to create the AWS Elastic Beanstalk application version

Genrelly太多版本已上传到亚马逊。

答案 5 :(得分:0)

以上内容适用于某人,但如果您仍然发现问题,请检查您的git aws.config,因为如果您正在处理多个帐户的多个Beanstalk,请尝试检查这是否正确。