claudiajs / claudia

Deploy Node.js projects to AWS Lambda and API Gateway easily

Home Page:https://claudiajs.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Create lambda fails after creating apiGateway.setAcceptHeader

Lalithkx opened this issue · comments

I was trying out aws-serverless-express example but giving different name to the api.
Using Claudia 5.4.0.
lambda and gateway api are created but not deployed caudia.json created locally.

claudia create --name categoryapi --handler lambda.handler --deploy-proxy-api --region us-west-2
packaging files npm install -q --no-audit --production
npm WARN aws-lambda-postgres@1.0.0 No description
npm WARN aws-lambda-postgres@1.0.0 No repository field.

creating REST API apigateway.createResource parentId=a285qopabj pathPart={proxy+} restApiId=7f1nrkcreating REST API apigateway.setAcceptHeader
{ BadRequestException: Invalid request input
at Object.extractError (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\protocol\json.js:51:27)
at Request.extractError (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\protocol\rest_json.js:55:8)
at Request.callListeners (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\sequential_executor.js:106:20)
at Request.emit (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\sequential_executor.js:78:10)
at Request.emit (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\request.js:683:14)
at Request.transition (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\request.js:22:10)
at AcceptorStateMachine.runTo (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\state_machine.js:14:12)
at C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\state_machine.js:26:10
at Request. (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\request.js:38:9)
at Request. (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\request.js:685:12)
at Request.callListeners (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\sequential_executor.js:116:18)
at Request.emit (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\sequential_executor.js:78:10)
at Request.emit (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\request.js:683:14)
at Request.transition (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\request.js:22:10)
at AcceptorStateMachine.runTo (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\state_machine.js:14:12)
at C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\state_machine.js:26:10
at Request. (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\request.js:38:9)
at Request. (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\request.js:685:12)
at Request.callListeners (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\sequential_executor.js:116:18)
at callNextListener (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\sequential_executor.js:96:12)
at IncomingMessage.onEnd (C:\Users\lalit\AppData\Roaming\npm\node_modules\claudia\node_modules\aws-sdk\lib\event_listeners.js:299:13)
at emitNone (events.js:111:20)
message: 'Invalid request input',
code: 'BadRequestException',
time: 2019-03-22T01:24:39.197Z,
requestId: '43f95653-4c41-11e9-9936-15b2988b05b9',
statusCode: 400,
retryable: false,
retryDelay: 31.899308343311006 }

aws-sdk had a bug in a recent release, and this was caused by that. claudia 5.4.2 (on NPM now) fixes the version to use the version of aws-sdk with the fix.

Fantastic Mr.gojko. It worked. Thanks for doing this on a such short notice.