Amplify-cli: amplify init adding profile with quotes

Created on 4 Dec 2018  Â·  4Comments  Â·  Source: aws-amplify/amplify-cli

Describe the bug
When you run amplify init the cli is apparently adding to ~/.aws/config and ~/.aws/credentials with quotes, like so:

  • ~/.aws/config
["profile amplify-notes-eu-west-1 "]
region=eu-west-1
  • ~/.aws/credentials
["amplify-notes-eu-west-1 "]
aws_access_key_id=AKIAJ3KFAKEF7ZH6BNQ
aws_secret_access_key=m+somekey+GJOxVtSnA07/lvHqcd

To Reproduce
Steps to reproduce the behavior:

  1. run amplify init, accept all defaults.
    output
? Do you want to use an AWS profile? Yes
? Please choose the profile you want to use amplify-notes-eu-west-1
â ‹ Initializing project in the cloud...An error occurred when creating the CloudFormation stack
An error occurred when  creating the CloudFormation stack
✖ Root stack creation failed
init failed
{ ConfigError: Missing region in config
    at Request.VALIDATE_REGION (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/event_listeners.js:92:45)
    at Request.callListeners (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/sequential_executor.js:106:20)
    at callNextListener (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/sequential_executor.js:96:12)
    at /Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/event_listeners.js:86:9
    at finish (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/config.js:341:7)
    at /Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/config.js:359:9
    at /Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/credentials.js:123:23
    at SharedIniFileCredentials.callRefreshCallbacks (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/credentials/shared_ini_file_credentials.js:100:7)
    at SharedIniFileCredentials.refresh (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/credentials/shared_ini_file_credentials.js:182:12)
    at SharedIniFileCredentials.get (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/credentials.js:121:12)
  message: 'Missing region in config',
  code: 'ConfigError',
  time: 2018-12-04T12:02:57.569Z }
  • after fixing above, you get same error for credentials
? Do you want to use an AWS profile? Yes
? Please choose the profile you want to use amplify-notes-eu-west-1
â ‹ Initializing project in the cloud...An error occurred when creating the CloudFormation stack
An error occurred when  creating the CloudFormation stack
✖ Root stack creation failed
init failed
{ CredentialsError: Missing credentials in config
    at SharedIniFileCredentials.refresh (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/credentials/shared_ini_file_credentials.js:175:11)
    at SharedIniFileCredentials.get (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/credentials.js:121:12)
    at getAsyncCredentials (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/config.js:353:24)
    at Config.getCredentials (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/config.js:373:9)
    at Request.VALIDATE_CREDENTIALS (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/event_listeners.js:81:26)
    at Request.callListeners (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/sequential_executor.js:102:18)
    at Request.emit (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/sequential_executor.js:78:10)
    at Request.emit (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/request.js:683:14)
    at Request.transition (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/request.js:22:10)
    at AcceptorStateMachine.runTo (/Users/prisc_000/.npm-global/lib/node_modules/@aws-amplify/cli/node_modules/amplify-provider-awscloudformation/node_modules/aws-sdk/lib/state_machine.js:14:12)
  message: 'Missing credentials in config',
  code: 'CredentialsError',
  time: 2018-12-04T12:04:41.424Z,
  originalError:
   { message: 'Could not load credentials from SharedIniFileCredentials',
     code: 'CredentialsError',
     time: 2018-12-04T12:04:41.424Z,
     originalError:
      { message: 'Credentials not set for profile amplify-notes-eu-west-1',
        code: 'SharedIniFileCredentialsProviderFailure',
        time: 2018-12-04T12:04:41.424Z } } }
  • vim into ~/.aws/config and ~/.aws/credentials remove quotes, rerun and works.
    Expected behavior
    amplify configure should place the region and credentials into ~/.aws/config and ~/.aws/credentials in proper format without quotes.
bug

Most helpful comment

@idkjs Hopefully those are fake access and secret access keys? Otherwise you need to disable that keypair and rotate your credentials.

All 4 comments

Thanks for reporting this issue.
It looks like the profile name had an empty space at the end and that caused it to be save the profile name with quotes

@idkjs Hopefully those are fake access and secret access keys? Otherwise you need to disable that keypair and rotate your credentials.

Cool. Free free to close whenever. @jkeys-ecg-nmsu keys are bad. Thanks.

Fix has been released in 0.1.36

Was this page helpful?
0 / 5 - 0 ratings