@jaypie/constructs 1.1.29 → 1.1.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -25,6 +25,7 @@ export interface JaypieLambdaProps {
25
25
  parameterStoreTtl?: number;
26
26
  secretsManagerTtl?: number;
27
27
  };
28
+ provisionedConcurrentExecutions?: number;
28
29
  reservedConcurrentExecutions?: number;
29
30
  roleTag?: string;
30
31
  runtime?: lambda.Runtime;
@@ -305,7 +305,7 @@ class JaypieAppStack extends JaypieStack {
305
305
  class JaypieLambda extends constructs.Construct {
306
306
  constructor(scope, id, props) {
307
307
  super(scope, id);
308
- const { code, datadogApiKeyArn, environment: initialEnvironment = {}, envSecrets = {}, handler = "index.handler", layers = [], logRetention = cdk.CDK.LAMBDA.LOG_RETENTION, memorySize = cdk.CDK.LAMBDA.MEMORY_SIZE, paramsAndSecrets, paramsAndSecretsOptions, reservedConcurrentExecutions, roleTag = cdk.CDK.ROLE.PROCESSING, runtime = lambda__namespace.Runtime.NODEJS_22_X, secrets = [], timeout = cdk$1.Duration.seconds(cdk.CDK.DURATION.LAMBDA_WORKER), vendorTag, } = props;
308
+ const { code, datadogApiKeyArn, environment: initialEnvironment = {}, envSecrets = {}, handler = "index.handler", layers = [], logRetention = cdk.CDK.LAMBDA.LOG_RETENTION, memorySize = cdk.CDK.LAMBDA.MEMORY_SIZE, paramsAndSecrets, paramsAndSecretsOptions, provisionedConcurrentExecutions, reservedConcurrentExecutions, roleTag = cdk.CDK.ROLE.PROCESSING, runtime = lambda__namespace.Runtime.NODEJS_22_X, secrets = [], timeout = cdk$1.Duration.seconds(cdk.CDK.DURATION.LAMBDA_WORKER), vendorTag, } = props;
309
309
  // Create a mutable copy of the environment variables
310
310
  let environment = { ...initialEnvironment };
311
311
  // Default environment variables from process.env if present
@@ -421,6 +421,14 @@ class JaypieLambda extends constructs.Construct {
421
421
  const datadogApiKey = secretsmanager__namespace.Secret.fromSecretCompleteArn(this, "DatadogApiKeyGrant", resolvedDatadogApiKeyArn);
422
422
  datadogApiKey.grantRead(this._lambda);
423
423
  }
424
+ // Configure provisioned concurrency if specified
425
+ if (provisionedConcurrentExecutions !== undefined) {
426
+ new lambda__namespace.Alias(this, "ProvisionedAlias", {
427
+ aliasName: "provisioned",
428
+ version: this._lambda.currentVersion,
429
+ provisionedConcurrentExecutions,
430
+ });
431
+ }
424
432
  if (roleTag) {
425
433
  cdk$1.Tags.of(this._lambda).add(cdk.CDK.TAG.ROLE, roleTag);
426
434
  }