Я хотел развернуть свой стек CF через бессерверную структуру, но получил исключение. Итак, я проверил конфигурацию CF через aws-cli, и он ответил 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, сообщение об ошибке осталось. Подскажите, пожалуйста, что я делаю не так? Спасибо.
Интересно, что я не могу повторить это. Ваш данный шаблон отлично работает для меня под 1.11.113
. Можете ли вы добавить --debug
к своему звонку и разместить здесь журналы, которые могут дать больше информации о том, что происходит.
В общем, версия интерфейса командной строки не должна влиять на это, поскольку это ответ, который мы получаем от службы. все, что мы делаем, это отправляем им ваш шаблон и распечатываем полученный ответ. Есть ли что-то еще, что различается между этими двумя вызовами, кроме версии CLI?
Ну, я понял это. Я настроил AWS_DEFAULT_REGION=us-west-1
и Amazon не поддерживает Cognito в этом регионе. Когда я меняю его на, скажем, us-east-1
он работает. Это поведение одинаково в обеих версиях, просто у меня был другой регион на старой машине. Спасибо, что помогли мне!
Потрясающе рад, что вы это поняли!
Самый полезный комментарий
Ну, я понял это. Я настроил
AWS_DEFAULT_REGION=us-west-1
и Amazon не поддерживает Cognito в этом регионе. Когда я меняю его на, скажем,us-east-1
он работает. Это поведение одинаково в обеих версиях, просто у меня был другой регион на старой машине. Спасибо, что помогли мне!