Eu queria implantar minha pilha de CF por meio da estrutura sem servidor, mas recebi uma exceção. Portanto, validei a configuração do CF por meio de aws-cli e ele respondeu com 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]
Foi estranho porque eu tinha certeza de que a configuração do CF estava correta e eu era capaz de implantá-la antes em minha máquina antiga. Lutei que pode ser bug na nova versão 1.11.113, então tentei na minha máquina antiga e funcionou como um encanto na 1.11.84. No entanto, quando reinstalei o 1.11.113 para o antigo 1.11.84, a mensagem de erro permaneceu. Por favor, você pode me dizer o que estou fazendo de errado? Obrigada.
Interessante, não consigo replicar isso. Seu modelo fornecido funciona bem para mim em 1.11.113
. Você pode adicionar --debug
à sua ligação e postar os logs aqui, que podem dar mais indicações do que está acontecendo.
Em geral, a versão da CLI não deve afetar isso, pois é uma resposta que obtemos do serviço. tudo o que fazemos é enviar seu modelo e imprimir a resposta que recebemos. Existe algo mais que esteja variando entre essas duas invocações além da versão CLI?
Bem, eu descobri isso. Eu configurei AWS_DEFAULT_REGION=us-west-1
e a Amazon não oferece suporte ao Cognito nessa região. Quando eu mudar para, digamos, us-east-1
ele funciona. Este comportamento é o mesmo em ambas as versões, apenas aconteceu de eu ter uma região diferente na máquina mais antiga. Obrigado por me ajudar!
Incrivelmente feliz por você ter descoberto!
Comentários muito úteis
Bem, eu descobri isso. Eu configurei
AWS_DEFAULT_REGION=us-west-1
e a Amazon não oferece suporte ao Cognito nessa região. Quando eu mudar para, digamos,us-east-1
ele funciona. Este comportamento é o mesmo em ambas as versões, apenas aconteceu de eu ter uma região diferente na máquina mais antiga. Obrigado por me ajudar!