Amplify-cli: UPDATE_FAILED UpdateRolesWithIDPFunctionOutputs Custom::LambdaCallout 'IdentityPoolId' not found in stack

Created on 20 Aug 2019  ·  28Comments  ·  Source: aws-amplify/amplify-cli

Describe the bug
I am using

amplify --version
1.12.0

At any create or update on any configuration, which is not the default configuration, the amplify update fail with:

UPDATE_FAILED UpdateRolesWithIDPFunctionOutputs Custom::LambdaCallout Tue Aug 20 2019 17:40:30 GMT+0200 (GMT+02:00) Output 'IdentityPoolId' not found in stack '...'

or

CREATE_FAILED UpdateRolesWithIDPFunctionOutputs Custom::LambdaCallout Tue Aug 20 2019 16:33:25 GMT+0200 (GMT+02:00) Output 'IdentityPoolId' not found in stack '...'

Although I chose

? Do you want to configure Lambda Triggers for Cognito? No

This behavior appears after update of amplify cli on version 1.12.0 comping from 1.11.0

To Reproduce
Steps to reproduce the behavior:

  1. Go to console in project directory
  2. amplify init
  3. amplify add auth
    `
    What do you want to do? Walkthrough all the auth configurations
    Select the authentication/authorization services that you want to use: User Sign-Up & Sign-In only (Best used with a cloud API only)
    Multifactor authentication (MFA) user login options: OFF
    Email based user registration/forgot password: Enabled (Requires per-user email entry at registration)
    Please specify an email verification subject: Your verification code
    Please specify an email verification message: Your verification code is {####}
    Do you want to override the default password policy for this User Pool? No
    Specify the app's refresh token expiration period (in days): 1
    Do you want to specify the user attributes this app can read and write? Yes
    Specify read attributes: (Press to select, to toggle all, to invert selection)Address, Birthdate, Email, Family Name, Middle Name, Gender, Locale, Given Name, Name, Nickname, Phone Number, Preferred Username, Picture, Prof
    ile, Updated At, Website, Zone Info, Email Verified?, Phone Number Verified?
    Specify write attributes: (Press to select,
    to toggle all, to invert selection)Address, Birthdate, Family Name, Middle Name, Gender, Locale, Given Name, Name, Nickname, Phone Number, Preferred Username, Picture, Profile, U
    pdated At, Website, Zone Info
    Do you want to enable any of the following capabilities? (Press to select,
    to toggle all, to invert selection)
    Do you want to use an OAuth flow? Yes
    What domain name prefix you want us to create for you? **
    Which redirect signin URIs do you want to edit? (Press to select,
    to toggle all, to invert selection)
    Do you want to add redirect signin URIs? Yes
    Enter your new redirect signin URI:
    http://localhost:5000/
    ? Do you want to add another redirect signin URI No
    Which redirect signout URIs do you want to edit? (Press to select, to toggle all, to invert selection)
    Do you want to add redirect signout URIs? No
    Select the OAuth flows enabled for this project. Authorization code grant
    Select the OAuth scopes enabled for this project. (Press to select,
    to toggle all, to invert selection)Phone, Email, OpenID, Profile, aws.cognito.signin.user.admin
    Select the identity providers you want to configure for your user pool: (Press to select,
    to toggle all, to invert selection)
    ? Do you want to configure Lambda Triggers for Cognito? Yes
    ? Which triggers do you want to enable for Cognito (Press to select,
    to toggle all, to invert selection)
    Successfully updated resource gbe01reactclient locally

Some next steps:
"amplify push" will build all your local backend resources and provision it in the cloud
"amplify publish" will build all your local backend and frontend resources (if you have hosting category added) and provision it in the cloud
`

  1. amplify push
  2. Cloudformation script fail with:
    CREATE_FAILED UpdateRolesWithIDPFunctionOutputs Custom::LambdaCallout Tue Aug 20 2019 16:33:25 GMT+0200 (GMT+02:00) Output 'IdentityPoolId' not found in stack '
    arn:aws:cloudformation:eu-central-1:**'

Cloudformation template rollback is executed afterwards.

Interesting is, if I just use defaults and publish, everything works fine. If I start to add my callback URL's or the read/write attributes I always fail in this step.

This behavior appears after update of amplify cli on version 1.12.0 comping from 1.11.0

Expected behavior
Create/update succeed with

√ All resources are updated in the cloud

Desktop (please complete the following information):

  • OS: Win10 (although the error happens at AWS CloudFormation)
auth bug

Most helpful comment

@GuidoBeutlerHRS & @timhere The issue is tied to the selection of this option - Select the authentication/authorization services that you want to use: User Sign-Up & Sign-In only (Best used with a cloud API only) which creates just the UserPool and not the IdentityPool which the rootstack is looking for. It's a bug and we'll fix that.
To unblock, for just the first question, you could select - ❯ User Sign-Up, Sign-In, connected with AWS IAM controls (Enables per-user Storage features for images or other content, Analytics, and more) which would create a user pool as well as as the identity pool and then choose any of the other configurations that you've mentioned above.

All 28 comments

I've re- installed amplify, just to ensure that my npm update worked but it doesn't make a difference. Same issue, nothing but default configuration works, no matter what I change.

Yep, same issue here.

CREATE_FAILED               UpdateRolesWithIDPFunctionOutputs      Custom::LambdaCallout      
Wed Aug 21 2019 14:12:13 GMT+0100 (British Summer Time)
Output 'IdentityPoolId' not found in stack 'arn:aws:cloudformation:eu-west-1:...'

I also have npm up to date (6.11.1) and the lastest version of the amplify cli (1.12.0).

@GuidoBeutlerHRS & @timhere The issue is tied to the selection of this option - Select the authentication/authorization services that you want to use: User Sign-Up & Sign-In only (Best used with a cloud API only) which creates just the UserPool and not the IdentityPool which the rootstack is looking for. It's a bug and we'll fix that.
To unblock, for just the first question, you could select - ❯ User Sign-Up, Sign-In, connected with AWS IAM controls (Enables per-user Storage features for images or other content, Analytics, and more) which would create a user pool as well as as the identity pool and then choose any of the other configurations that you've mentioned above.

Thanks @kaustavghosh06

Same here... ran amplify auth update and did the trick.

Thanks for reporting this error, I thought I was going insane. Just adding to the chorus here to say that the amplify auth update worked, followed by, of course, amplify push.

Hello.
I am using 3.10.0. I also have same issue. it's driving me crazy. I already tried this command "amplify auth update" over 10 times.
but I have still same error following.

UPDATE_FAILED UpdateRolesWithIDPFunctionOutputs Custom::LambdaCallout Sat Oct 05 2019 02:53:22 GMT+0800 (Philippine Standard Time) Output 'IdentityPoolId' not found in stack 'arn:aws:cloudformation:ap-northeast-1:519243652007:stack/hellotest-helloenv-20191004230220-authhellotest99caeb3f-QAGUD3PIPKT0/91b0c7c0-e6bd-11e9-a1be-0e0baf7be9a4

How can I solve it? if I can't use amplify cli, How can I use cognito, I already asked to AWS customer service center. They also don't know how to do it. So I am asking here.
Please help me.

@ChoiJinYoung Did this workaround work for you?
https://github.com/aws-amplify/amplify-cli/issues/2096#issuecomment-523746110
Or are you walking through a different workflow?

@SwaySway That's working. Thank you.

Same issue, I added a new environment and this happened

This still isn't fixed in V 3.14.0 . I get the same issue when creating a custom pre-sign up trigger. The only way round it is to delete everything (rm -rf amplify/*) and recreate. When adding auth do not select select authentication/authorization services that you want to use: User Sign-Up & Sign-In only (Best used with a cloud API only). When you do recreate after you have done amplify push - you also need to do amplify env checkout otherwise it still uses your old environment

Tried multiple times by deleting resources and re-creating but the same error (Output 'IdentityPoolId' not found in stack) in Cloud Formation, even re-install was-amplify cli however no luck.

I had this issue but discovered that I was using an older version of the Amplify cli on this machine. After upgrading the error went away and I was able to push succesfully.

stucks at MFALambdaInputs
amplify --v 4.12.0

Getting this also, very frustrating. Lots of issues with Amplify. Thinking seriously about just using reliable LAMP stack instead! Amplify Version 4.13.2

Resource Name: 2020/02/12/[$LATEST]3f0c50c690d6472998f0e9dc5efc5ed5 (Custom::LambdaCallout)
Event Type: update
Reason: Output 'IdentityPoolId' not found in stack

Not absolutely sure but when I ran update auth and selected the default for:

What domain name prefix you want us to create for you?

Push works again

I just updated my @amplify/cli to version 4.13.2 and created a brand new Angular 9/Amplify application. Low and behold this issue is still NOT fixed. What are you guys doing closing an issue when you HAVEN'T fixed it? People are relying on your software. FIX IT!

I'm abandoning this framework. After almost a month trying to get it to work I am giving up. There are not enough helpfull error messages especially when it comes to syncing appsync with Datastore and using the appsync queries page. It doesn't sync and I have no idea why because there is no error message or notice. I have followed all the docs but it still doesn't work, I think there are a lot of bugs also. The generated code from my schema does not seem to be correct and has NONE datasources. Why? Goodbye!

@tomrum Abandoned one month back and moved to Hasura + Apollo Client, Check it out, it's pretty good.

Yup, abandoning Amplify too for the time being :(

If amplify fails in fixing an issue like this within a short period of time (and basically ignoring customers without huge support plans, as is AWS policy), how can we possibly have enough confidence to base our products (which are our families bread earners) on it?

I really hope that one day AWS adopts a more open, honest and inclusive relationship with their customers, developers and users of their services.

@BerndWessels Sorry to hear about your experience with Amplify. As we deep dive into this issue and fix it (I have this prioritized), didn't this workaround mentioned out here - https://github.com/aws-amplify/amplify-cli/issues/2096#issuecomment-523746110 work for you since it looked like it worked for a lot of the folks on this thread.

Hey guys, I've provided a fix for this issue in #3662 and will be part of the consequent release after this PR is merged.

@tomrum Would it be possible for you to open up another GitHub issue tied to your Datastore issues. We would like to know the issues more in detail and fix them.

This is still happening for me:

  • First I get the IdentityPoolId error
  • Second, I do amplify init
  • Third, amplify push, but it says the _current env_ already exists
  • Fourth, I do amplify init again, change the env name
  • Six, I get the IdentityPoolId error again, falling into a loop that get's you nowhere

@Rolando-Barbella Which CLI version are you using?

4.13.4

We released fix for this in v4.17.2.

It works now, my bad not checking the vs, thank you @kaustavghosh06

I am using amplify 4.18.1 and having the same issue.
Originally I was using "User Sign-Up & Sign-In only (Best used with a cloud API only)" and everything working fine. I have a few groups defined.
After I added a S3 storage and have restriction on Individual Groups, then nightmare starts. I think adding S3 will force the auth using "User Sign-Up, Sign-In, connected with AWS IAM controls (Enables per-user Storage features for images or other content, Analytics, and more)". I got the IdentityPoolId not exist error when I run amplify push, even I walkthrough the auth update and selected the "User Sign-Up, Sign-In, connected with AWS IAM controls (Enables per-user Storage features for images or other content, Analytics, and more)" option:
UPDATE_FAILED authuserPoolGroups AWS::CloudFormation::Stack Sat May 16 2020 13:21:52 GMT-0700 (Pacific Daylight Time) Parameters: [authproceptgql5d4b5c6dIdentityPoolId] do not exist in the template
I have tried all combinations of update auth options and update storage, it is no luck. Please help.

Update: I solved the problem by adding a new user group. It seems simply walkthrough the auth update does not correctly update the authuserPoolGroups setting. Adding a new user group forces amplify cli tool to generate the correct template or parameter files.

Was this page helpful?
0 / 5 - 0 ratings