HTTP_PROXY
(would love suggestions on if I can achieve the latter through Claudia; my initial research shows that it hardcodes AWS_PROXY
making this not possible without forking or updating).
I get the same error as @ghost~58a7c5ded73408ce4f4b2a6b
packaging files
TypeError: Cannot read property 'replace' of undefined
at expectedArchiveName (/Users/admin/.nvm/versions/node/v14.17.0/lib/node_modules/claudia/src/util/expected-archive-name.js:3:28)
at runWithConfig (/Users/admin/.nvm/versions/node/v14.17.0/lib/node_modules/claudia/src/util/pack-project-to-tar.js:10:56)
Can someone pls help me debug this?
exports.handler = function (event, context) {
and then to reference the payload parameters sent to the function using event.parameterName
but when I do that and print the parameters to the console, they all say "undefined." Anyone know why?
Hello,
I wanted to explore callbackWaitsForEmptyEventLoop
parameter so I have created a lambda with the below code
var ApiBuilder = require('claudia-api-builder'),
api = new ApiBuilder();
module.exports = api;
api.any('/test', function (request) {
request.lambdaContext.callbackWaitsForEmptyEventLoop = true;
var prefix = request.proxyRequest.queryStringParameters.id;
console.log('hello: ' + prefix);
setTimeout(function () {
console.log('after timeout: ' + prefix);
}, 5000);
return new ApiBuilder.ApiResponse('OK ' + prefix, {'X-Version': '202', 'Content-Type': 'text/plain'}, 200);
});
The strange thing is I don't see the 'after timeout' message.
when I tried with callbackWaitsForEmptyEventLoop=false
,
var ApiBuilder = require('claudia-api-builder'),
api = new ApiBuilder();
module.exports = api;
api.any('/test', function (request) {
request.lambdaContext.callbackWaitsForEmptyEventLoop = false;
var prefix = request.proxyRequest.queryStringParameters.id;
console.log('hello: ' + prefix);
setTimeout(function () {
console.log('after timeout: ' + prefix);
}, 5000);
return new ApiBuilder.ApiResponse('OK ' + prefix, {'X-Version': '202', 'Content-Type': 'text/plain'}, 200);
});
I got 'after timeout' but only when I sent two request (19 sec between each)
ResourceConflictException: The operation cannot be performed at this time. An update is in progress for resource: arn:aws:lambda:…
, which suddenly started happening, after a 150 successful claudia update
s by CI? See claudiajs/claudia#226.
authorizationType: 'AWS_IAM'
equivalent with --deploy-proxy-api
Does anyone know if the lambda functions deployed using Claudia face any issues while updating due to the latest states rollout or is already taken care of?
Context:
All AWS CLIs and SDKs have supported monitoring Lambda function states transitions since the original announcement in 2019. Infrastructure as code tools such as AWS CloudFormation, AWS SAM, Serverless Framework, Hashicorp Terraform (>=2.40.0), and Cloud Custodian (>=0.9.14.0) also already support states. Customers using these tools do not need to take any action as part of this, except for one recommended service role policy change for AWS CloudFormation customers (see Updating CloudFormation’s service role below).
However, there are some customers using SDK-based automation workflows or calling Lambda’s service APIs directly, that must update those workflows for this change. To allow time for testing this change, we are rolling it out in a phased model, much like the initial rollout for VPC attached functions. We encourage all customers to take this opportunity to move to the latest SDKs and tools available.
Reference: https://aws.amazon.com/blogs/compute/coming-soon-expansion-of-aws-lambda-states-to-all-functions/