Elastic Beanstalk部署:UndefinedModelAttributeError

问题描述 投票:8回答:2

我正在尝试部署到Elastic Beanstalk,特别是使用CircleCI,我遇到了这个错误:

ERROR: UndefinedModelAttributeError - "serviceId" not defined in the metadata of the model: <botocore.model.ServiceModel object at 0x7fdc908efc10>

从我的谷歌搜索中,我发现它是一个Python错误,这是有道理的,因为这是Elastic Beanstalk使用的。但是没有针对这个具体案例的信息。有谁知道为什么会这样?

amazon-web-services elastic-beanstalk circleci
2个回答
12
投票

更新

EBCLI 3.14.6与当前最新的AWS CLI兼容(> 1.16.10)。


以前......

要解决这个问题:

  1. 将awsebcli升级到3.14.5:将awsebcli升级到3.14.6 pip install awsebcli --upgrade

要么

  1. 如果必须继续使用awsebcli <3.14.5,请执行: pip install 'botocore<1.12'

该问题的核心是botocore上的开放依赖范围,允许awsebcli <3.14.5,以便用户始终可以访问最新的AWS CLI命令/ AWS API(botocore manages AWS服务模型)。

botocore发布1.12版本时,它在EBCLI中产生了不兼容性。 EBCLI 3.14.5将对botocore的依赖性限制为<1.12。

编辑:另外,请注意EBCLI 3.14.5与AWS CLI 1.16.10不兼容。而是使用AWS CLI 1.16.9。


2
投票

我在awsebcli之后安装awscli后遇到了同样的错误。 botocore依赖项不匹配。因此,如果您想使用awsebcli命令,请确保不要覆盖其依赖项:

  1. 要么降级awscli
  2. 或者在awsebcli之前安装它(适用于我的用例但可能会随机中断)
© www.soinside.com 2019 - 2024. All rights reserved.