private void CreateLambdas() { if (CdkOptions == null || CdkOptions.Lambdas?.Any() != true) { return; } foreach (var lambda in CdkOptions.Lambdas) { CheckLambdaParams(lambda); GetLambdaResources(lambda, out var role, out var securityGroup, out var vpc, out var subnets, out var bucket, out var environmentVariables); var runtime = new Runtime(lambda.Runtime); IFunctionProps lambdaProperties; if (bucket == null) { lambdaProperties = AwsCdkHandler.CreateLambdaProperties(lambda.SourceCode.CodeZipFilePath, lambda.FunctionHandler, role, runtime, lambda.FunctionName, vpc, securityGroup, subnets, environmentVariables: environmentVariables); } else { lambdaProperties = AwsCdkHandler.CreateLambdaProperties(bucket, lambda.SourceCode.CodeBucket.FilePath, lambda.FunctionHandler, role, runtime, lambda.FunctionName, vpc, securityGroup, subnets, environmentVariables: environmentVariables); } var lambdaFunction = AwsCdkHandler.AddLambda(lambda.FunctionName, lambdaProperties); StackResources.Lambdas.Add(lambda.Id, lambdaFunction); } }