Quería implementar mi pila CF a través de un marco sin servidor, pero recibí una excepción. Así que validé la configuración de CF a través de aws-cli y respondió con 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]
Fue extraño porque estaba seguro de que la configuración de CF era correcta y pude implementarla antes en mi máquina anterior. Luché porque podía ser un error en la nueva versión 1.11.113, así que lo probé en mi vieja máquina y funcionó a las mil maravillas en la 1.11.84. Sin embargo, cuando reinstalé 1.11.113 a 1.11.84 anterior, el mensaje de error permaneció. Por favor, ¿puedes decirme qué estoy haciendo mal ?. Gracias.
Interesante, no puedo replicar esto. Su plantilla dada funciona bien para mí por debajo de 1.11.113
. ¿Puede agregar --debug
a su llamada y publicar los registros aquí, eso puede dar más indicaciones de lo que está sucediendo?
En general, la versión de la CLI no debería afectar esto, ya que es una respuesta que obtenemos del servicio. todo lo que hacemos es enviarles tu plantilla e imprimir la respuesta que recibimos. ¿Hay algo más que varíe entre esas dos invocaciones además de la versión CLI?
Bueno, me di cuenta de eso. Había configurado AWS_DEFAULT_REGION=us-west-1
y Amazon no es compatible con Cognito en esa región. Cuando lo cambio a digamos us-east-1
, funciona. Este comportamiento es el mismo en ambas versiones, simplemente tenía una región diferente en la máquina anterior. ¡Gracias por ayudarme!
¡Me alegro de que lo hayas descubierto!
Comentario más útil
Bueno, me di cuenta de eso. Había configurado
AWS_DEFAULT_REGION=us-west-1
y Amazon no es compatible con Cognito en esa región. Cuando lo cambio a digamosus-east-1
, funciona. Este comportamiento es el mismo en ambas versiones, simplemente tenía una región diferente en la máquina anterior. ¡Gracias por ayudarme!