Aws-cli: 无法识别的资源类型:CognitoUserPool、CognitoUserPoolClient

创建于 2017-06-28  ·  3评论  ·  资料来源: aws/aws-cli

我想通过无服务器框架部署我的 CF 堆栈,但我收到了异常。 所以我通过 aws-cli 验证了 CF 配置,它以 ValidationError 响应。

Resources:
  CognitoUserPool:
    Type: AWS::Cognito::UserPool
    Properties:
      UserPoolName: test-pool
  CognitoUserPoolClient:
    Type: AWS::Cognito::UserPoolClient
    Properties:
      ClientName: test-client
      ExplicitAuthFlows:
        - ADMIN_NO_SRP_AUTH
      GenerateSecret: false
      UserPoolId:
        Ref: CognitoUserPool
aws cloudformation validate-template --template-body file://test-template.yml



md5-0884b744ef7ebb7d442c0f51b32b4a9f



An error occurred (ValidationError) when calling the ValidateTemplate operation: Template format error: Unrecognized resource types: [AWS::Cognito::UserPool, AWS::Cognito::UserPoolClient]

这很奇怪,因为我确信 CF 配置是正确的,而且我之前能够在我的旧机器上部署它。 我认为它可能是新的 1.11.113 版本中的错误,所以我在我的旧机器上尝试了它,它在 1.11.84 上工作得很好。 但是,当我将 1.11.113 重新安装到较旧的 1.11.84 时,错误消息仍然存在。 拜托,你能告诉我我做错了什么吗? 谢谢你。

closing-soon guidance service-api

最有用的评论

嗯,我想通了。 我已经配置了AWS_DEFAULT_REGION=us-west-1并且亚马逊在该地区不支持 Cognito。 当我将其更改为us-east-1它可以工作。 这种行为在两个版本中都是一样的,我只是碰巧在旧机器上有一个不同的区域。 谢谢你的协助!

所有3条评论

有趣的是我无法复制这个。 你给定的模板在1.11.113下对我来说很好用。 您能否将--debug到您的通话中并在此处发布日志,这可能会提供更多关于正在发生的事情的指示。

一般来说,CLI 的版本不应该影响这一点,因为这是我们从服务获得的响应。 我们所做的就是将您的模板发送给他们并打印出我们得到的回复。 除了 CLI 版本之外,这两次调用之间还有什么不同吗?

嗯,我想通了。 我已经配置了AWS_DEFAULT_REGION=us-west-1并且亚马逊在该地区不支持 Cognito。 当我将其更改为us-east-1它可以工作。 这种行为在两个版本中都是一样的,我只是碰巧在旧机器上有一个不同的区域。 谢谢你的协助!

真棒很高兴你想通了!

此页面是否有帮助?
0 / 5 - 0 等级