ASK CLI 无法加载 AWS_ACCESS_KEY_ID 变量

ASK CLI fails to load AWS_ACCESS_KEY_ID variable

我正在尝试使用 Ask CLI 部署 Alexa 技能,但每当我 运行 ask deploy 时,我都会收到此错误:

[Error]: Cannot find the environment variable: AWS_ACCESS_KEY_ID

我 100% 确定 AWS_ACCESS_KEY_ID 环境变量设置为有效的访问密钥。这就是我在 ~/.zshrc 文件中设置它的方式:

export AWS_ACCESS_KEY_ID=AKIBJRSRMxxxxxxxxx
export AWS_SECRET_ACCESS_KEY=fS0A6MS9Q9V1OIxKQjKwwaO2fxxxxxxxxxxxx

它也在我的默认 AWS 凭证中设置在 ~/.aws/credentials:

[default]
aws_access_key_id=AKIBJRSRMxxxxxxxxx
aws_secret_access_key=fS0A6MS9Q9V1OIxKQjKwwaO2fxxxxxxxxxxxx

我重新运行ask init多次,选择"load from env variables",通过浏览器登录成功。

我仔细检查了我的 .zshrc 是否加载了 source ~/.zshrc。我也成功回应了$AWS_ACCESS_KEY_ID

echo $AWS_ACCESS_KEY_ID
AKIBJRSRMxxxxxxxxx

而且我已经尝试 运行ning ask deploy 直接使用访问密钥变量:

AWS_ACCESS_KEY_ID=AKIBJRSRMxxxxxxxxx ask deploy
[Error]: Cannot find the environment variable: AWS_ACCESS_KEY_ID

我知道这些凭据是有效的,因为我在一小时前创建了它们。

ask init 提示甚至说 We have detected you have AWS environment variables. Would you like to setup your profile using those? 我回答是:

我在 alexa 技能工具包 sdk 回购中创建了一个问题:

https://github.com/alexa/alexa-skills-kit-sdk-for-nodejs/issues/531

但维护者将其他问题作者指向 SO 和亚马逊开发论坛。

版本:

编辑:

我可以通过降级到 ask-cli@1.6.1 来成功部署。看来这个错误是在 ask-cli@1.6.2.

中引入的

看起来像是该版本 CLI 中的错误。当前的解决方法是在您的 ~/.aws 配置文件中使用 AWS 凭证,而不是环境变量。

我将这个问题转发给了相应的团队@Alexa。