Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(core): introduce cached lazies #11253

Merged
merged 7 commits into from
Nov 23, 2020
Merged
Show file tree
Hide file tree
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions packages/@aws-cdk/aws-amplify/lib/app.ts
Original file line number Diff line number Diff line change
Expand Up @@ -219,17 +219,17 @@ export class App extends Resource implements IApp, iam.IGrantable {
buildSpec: props.autoBranchCreation.buildSpec && props.autoBranchCreation.buildSpec.toBuildSpec(),
enableAutoBranchCreation: true,
enableAutoBuild: props.autoBranchCreation.autoBuild === undefined ? true : props.autoBranchCreation.autoBuild,
environmentVariables: Lazy.anyValue({ produce: () => renderEnvironmentVariables(this.autoBranchEnvironmentVariables ) }, { omitEmptyArray: true }), // eslint-disable-line max-len
environmentVariables: Lazy.any({ produce: () => renderEnvironmentVariables(this.autoBranchEnvironmentVariables ) }, { omitEmptyArray: true }), // eslint-disable-line max-len
enablePullRequestPreview: props.autoBranchCreation.pullRequestPreview === undefined ? true : props.autoBranchCreation.pullRequestPreview,
pullRequestEnvironmentName: props.autoBranchCreation.pullRequestEnvironmentName,
stage: props.autoBranchCreation.stage,
},
enableBranchAutoDeletion: props.autoBranchDeletion,
basicAuthConfig: props.basicAuth && props.basicAuth.bind(this, 'AppBasicAuth'),
buildSpec: props.buildSpec && props.buildSpec.toBuildSpec(),
customRules: Lazy.anyValue({ produce: () => this.customRules }, { omitEmptyArray: true }),
customRules: Lazy.any({ produce: () => this.customRules }, { omitEmptyArray: true }),
description: props.description,
environmentVariables: Lazy.anyValue({ produce: () => renderEnvironmentVariables(this.environmentVariables) }, { omitEmptyArray: true }),
environmentVariables: Lazy.any({ produce: () => renderEnvironmentVariables(this.environmentVariables) }, { omitEmptyArray: true }),
iamServiceRole: role.roleArn,
name: props.appName || this.node.id,
oauthToken: sourceCodeProviderOptions?.oauthToken?.toString(),
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-amplify/lib/branch.ts
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ export class Branch extends Resource implements IBranch {
description: props.description,
enableAutoBuild: props.autoBuild === undefined ? true : props.autoBuild,
enablePullRequestPreview: props.pullRequestPreview === undefined ? true : props.pullRequestPreview,
environmentVariables: Lazy.anyValue({ produce: () => renderEnvironmentVariables(this.environmentVariables) }, { omitEmptyArray: true }),
environmentVariables: Lazy.any({ produce: () => renderEnvironmentVariables(this.environmentVariables) }, { omitEmptyArray: true }),
pullRequestEnvironmentName: props.pullRequestEnvironmentName,
stage: props.stage,
});
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-amplify/lib/domain.ts
Original file line number Diff line number Diff line change
Expand Up @@ -105,7 +105,7 @@ export class Domain extends Resource {
const domain = new CfnDomain(this, 'Resource', {
appId: props.app.appId,
domainName,
subDomainSettings: Lazy.anyValue({ produce: () => this.renderSubDomainSettings() }, { omitEmptyArray: true }),
subDomainSettings: Lazy.any({ produce: () => this.renderSubDomainSettings() }, { omitEmptyArray: true }),
});

this.arn = domain.attrArn;
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-apigateway/lib/authorizers/lambda.ts
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ abstract class LambdaAuthorizer extends Authorizer implements IAuthorizer {
* Throws an error, during token resolution, if no RestApi is attached to this authorizer.
*/
protected lazyRestApiId() {
return Lazy.stringValue({
return Lazy.string({
produce: () => {
if (!this.restApiId) {
throw new Error(`Authorizer (${this.node.path}) must be attached to a RestApi`);
Expand Down
4 changes: 2 additions & 2 deletions packages/@aws-cdk/aws-apigateway/lib/deployment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ export class Deployment extends Resource {
}

this.api = props.api;
this.deploymentId = Lazy.stringValue({ produce: () => this.resource.ref });
this.deploymentId = Lazy.string({ produce: () => this.resource.ref });

if (props.api instanceof RestApiBase) {
props.api._attachDeployment(this);
Expand Down Expand Up @@ -141,7 +141,7 @@ class LatestDeploymentResource extends CfnDeployment {

this.api = props.restApi;
this.originalLogicalId = this.stack.getLogicalId(this);
this.overrideLogicalId(Lazy.stringValue({ produce: () => this.calculateLogicalId() }));
this.overrideLogicalId(Lazy.uncachedString({ produce: () => this.calculateLogicalId() }));
}

/**
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-apigateway/lib/integration.ts
Original file line number Diff line number Diff line change
Expand Up @@ -204,7 +204,7 @@ export class Integration {
const options = this.props.options;

if (options?.connectionType === ConnectionType.VPC_LINK && uri === undefined) {
uri = Lazy.stringValue({
uri = Lazy.string({
// needs to be a lazy since the targets can be added to the VpcLink construct after initialization.
produce: () => {
const vpcLink = options.vpcLink;
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-apigateway/lib/integrations/aws.ts
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ export class AwsIntegration extends Integration {
super({
type,
integrationHttpMethod: props.integrationHttpMethod || 'POST',
uri: cdk.Lazy.stringValue({
uri: cdk.Lazy.string({
produce: () => {
if (!this.scope) { throw new Error('AwsIntegration must be used in API'); }
return cdk.Stack.of(this.scope).formatArn({
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ export class LambdaIntegration extends AwsIntegration {
this.handler.addPermission(`ApiPermission.${desc}`, {
principal,
scope: method,
sourceArn: Lazy.stringValue({ produce: () => method.methodArn }),
sourceArn: Lazy.string({ produce: () => method.methodArn }),
});

// add permission to invoke from the console
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-apigateway/lib/usage-plan.ts
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ export class UsagePlan extends Resource {
let resource: CfnUsagePlan;

resource = new CfnUsagePlan(this, 'Resource', {
apiStages: Lazy.anyValue({ produce: () => this.renderApiStages(this.apiStages) }),
apiStages: Lazy.any({ produce: () => this.renderApiStages(this.apiStages) }),
description: props.description,
quota: this.renderQuota(props),
throttle: this.renderThrottle(props.throttle),
Expand Down
4 changes: 2 additions & 2 deletions packages/@aws-cdk/aws-apigateway/lib/vpc-link.ts
Original file line number Diff line number Diff line change
Expand Up @@ -66,13 +66,13 @@ export class VpcLink extends Resource implements IVpcLink {
constructor(scope: Construct, id: string, props: VpcLinkProps = {}) {
super(scope, id, {
physicalName: props.vpcLinkName ||
Lazy.stringValue({ produce: () => Names.nodeUniqueId(this.node) }),
Lazy.string({ produce: () => Names.nodeUniqueId(this.node) }),
});

const cfnResource = new CfnVpcLink(this, 'Resource', {
name: this.physicalName,
description: props.description,
targetArns: Lazy.listValue({ produce: () => this.renderTargets() }),
targetArns: Lazy.list({ produce: () => this.renderTargets() }),
});

this.vpcLinkId = cfnResource.ref;
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-apigateway/test/deployment.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ describe('deployment', () => {

// tokens supported, and are resolved upon synthesis
const value = 'hello hello';
deployment.addToLogicalId({ foo: Lazy.stringValue({ produce: () => value }) });
deployment.addToLogicalId({ foo: Lazy.string({ produce: () => value }) });

const template2 = synthesize();
expect(template2.Resources.deployment333819758d91bed959c6bd6268ba84f6d33e888e).toBeDefined();
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-apigateway/test/stage.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -319,7 +319,7 @@ describe('stage', () => {

// WHEN
const testLogGroup = new logs.LogGroup(stack, 'LogGroup');
const testFormat = apigateway.AccessLogFormat.custom(cdk.Lazy.stringValue({ produce: () => 'test' }));
const testFormat = apigateway.AccessLogFormat.custom(cdk.Lazy.string({ produce: () => 'test' }));

// THEN
expect(() => new apigateway.Stage(stack, 'my-stage', {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ export class ScalableTarget extends Resource implements IScalableTarget {
resourceId: props.resourceId,
roleArn: this.role.roleArn,
scalableDimension: props.scalableDimension,
scheduledActions: Lazy.anyValue({ produce: () => this.actions }, { omitEmptyArray: true }),
scheduledActions: Lazy.any({ produce: () => this.actions }, { omitEmptyArray: true }),
serviceNamespace: props.serviceNamespace,
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ export class StepScalingAction extends cdk.Construct {
cooldown: props.cooldown && props.cooldown.toSeconds(),
minAdjustmentMagnitude: props.minAdjustmentMagnitude,
metricAggregationType: props.metricAggregationType,
stepAdjustments: cdk.Lazy.anyValue({ produce: () => this.adjustments }),
stepAdjustments: cdk.Lazy.any({ produce: () => this.adjustments }),
} as CfnScalingPolicy.StepScalingPolicyConfigurationProperty,
});

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@ export = {
serviceNamespace: appscaling.ServiceNamespace.DYNAMODB,
scalableDimension: 'test:TestCount',
resourceId: 'test:this/test',
minCapacity: cdk.Lazy.numberValue({ produce: () => 10 }),
maxCapacity: cdk.Lazy.numberValue({ produce: () => 1 }),
minCapacity: cdk.Lazy.number({ produce: () => 10 }),
maxCapacity: cdk.Lazy.number({ produce: () => 1 }),
});

// THEN: no exception
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-appmesh/lib/mesh.ts
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,7 @@ export class Mesh extends MeshBase {

constructor(scope: Construct, id: string, props: MeshProps = {}) {
super(scope, id, {
physicalName: props.meshName || cdk.Lazy.stringValue({ produce: () => cdk.Names.uniqueId(this) }),
physicalName: props.meshName || cdk.Lazy.string({ produce: () => cdk.Names.uniqueId(this) }),
});

const mesh = new CfnMesh(this, 'Resource', {
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-appmesh/lib/route.ts
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ export class Route extends cdk.Resource implements IRoute {

constructor(scope: Construct, id: string, props: RouteProps) {
super(scope, id, {
physicalName: props.routeName || cdk.Lazy.stringValue({ produce: () => cdk.Names.uniqueId(this) }),
physicalName: props.routeName || cdk.Lazy.string({ produce: () => cdk.Names.uniqueId(this) }),
});

this.virtualRouter = props.virtualRouter;
Expand Down
6 changes: 3 additions & 3 deletions packages/@aws-cdk/aws-appmesh/lib/virtual-node.ts
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ export class VirtualNode extends VirtualNodeBase {

constructor(scope: Construct, id: string, props: VirtualNodeProps) {
super(scope, id, {
physicalName: props.virtualNodeName || cdk.Lazy.stringValue({ produce: () => cdk.Names.uniqueId(this) }),
physicalName: props.virtualNodeName || cdk.Lazy.string({ produce: () => cdk.Names.uniqueId(this) }),
});

this.mesh = props.mesh;
Expand All @@ -193,8 +193,8 @@ export class VirtualNode extends VirtualNodeBase {
virtualNodeName: this.physicalName,
meshName: this.mesh.meshName,
spec: {
backends: cdk.Lazy.anyValue({ produce: () => this.backends }, { omitEmptyArray: true }),
listeners: cdk.Lazy.anyValue({ produce: () => this.listeners.map(listener => listener.listener) }, { omitEmptyArray: true }),
backends: cdk.Lazy.any({ produce: () => this.backends }, { omitEmptyArray: true }),
listeners: cdk.Lazy.any({ produce: () => this.listeners.map(listener => listener.listener) }, { omitEmptyArray: true }),
serviceDiscovery: {
dns: props.dnsHostName !== undefined ? { hostname: props.dnsHostName } : undefined,
awsCloudMap: props.cloudMapService !== undefined ? {
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-appmesh/lib/virtual-router.ts
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ export class VirtualRouter extends VirtualRouterBase {

constructor(scope: Construct, id: string, props: VirtualRouterProps) {
super(scope, id, {
physicalName: props.virtualRouterName || cdk.Lazy.stringValue({ produce: () => cdk.Names.uniqueId(this) }),
physicalName: props.virtualRouterName || cdk.Lazy.string({ produce: () => cdk.Names.uniqueId(this) }),
});

this.mesh = props.mesh;
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-appmesh/lib/virtual-service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,7 @@ export class VirtualService extends cdk.Resource implements IVirtualService {

constructor(scope: Construct, id: string, props: VirtualServiceProps) {
super(scope, id, {
physicalName: props.virtualServiceName || cdk.Lazy.stringValue({ produce: () => cdk.Names.uniqueId(this) }),
physicalName: props.virtualServiceName || cdk.Lazy.string({ produce: () => cdk.Names.uniqueId(this) }),
});

if (props.virtualNode && props.virtualRouter) {
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-appsync/lib/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ export class Schema {
this.schema = new CfnGraphQLSchema(api, 'Schema', {
apiId: api.apiId,
definition: this.mode === SchemaMode.CODE ?
Lazy.stringValue({
Lazy.string({
produce: () => this.types.reduce((acc, type) => { return `${acc}${type._bindToGraphqlApi(api).toString()}\n`; },
`${this.declareSchema()}${this.definition}`),
})
Expand Down
10 changes: 5 additions & 5 deletions packages/@aws-cdk/aws-autoscaling/lib/auto-scaling-group.ts
Original file line number Diff line number Diff line change
Expand Up @@ -921,8 +921,8 @@ export class AutoScalingGroup extends AutoScalingGroupBase implements
// use delayed evaluation
const imageConfig = props.machineImage.getImage(this);
this.userData = props.userData ?? imageConfig.userData;
const userDataToken = Lazy.stringValue({ produce: () => Fn.base64(this.userData.render()) });
const securityGroupsToken = Lazy.listValue({ produce: () => this.securityGroups.map(sg => sg.securityGroupId) });
const userDataToken = Lazy.string({ produce: () => Fn.base64(this.userData.render()) });
const securityGroupsToken = Lazy.list({ produce: () => this.securityGroups.map(sg => sg.securityGroupId) });

const launchConfig = new CfnLaunchConfiguration(this, 'LaunchConfig', {
imageId: imageConfig.imageId,
Expand Down Expand Up @@ -999,10 +999,10 @@ export class AutoScalingGroup extends AutoScalingGroupBase implements
maxSize: Tokenization.stringifyNumber(maxCapacity),
desiredCapacity: desiredCapacity !== undefined ? Tokenization.stringifyNumber(desiredCapacity) : undefined,
launchConfigurationName: launchConfig.ref,
loadBalancerNames: Lazy.listValue({ produce: () => this.loadBalancerNames }, { omitEmpty: true }),
targetGroupArns: Lazy.listValue({ produce: () => this.targetGroupArns }, { omitEmpty: true }),
loadBalancerNames: Lazy.list({ produce: () => this.loadBalancerNames }, { omitEmpty: true }),
targetGroupArns: Lazy.list({ produce: () => this.targetGroupArns }, { omitEmpty: true }),
notificationConfigurations: this.renderNotificationConfiguration(),
metricsCollection: Lazy.anyValue({ produce: () => this.renderMetricsCollection() }),
metricsCollection: Lazy.any({ produce: () => this.renderMetricsCollection() }),
vpcZoneIdentifier: subnetIds,
healthCheckType: props.healthCheck && props.healthCheck.type,
healthCheckGracePeriod: props.healthCheck && props.healthCheck.gracePeriod && props.healthCheck.gracePeriod.toSeconds(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ export class StepScalingAction extends CoreConstruct {
adjustmentType: props.adjustmentType,
minAdjustmentMagnitude: props.minAdjustmentMagnitude,
metricAggregationType: props.metricAggregationType,
stepAdjustments: Lazy.anyValue({ produce: () => this.adjustments }),
stepAdjustments: Lazy.any({ produce: () => this.adjustments }),
});

this.scalingPolicyArn = resource.ref;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -170,9 +170,9 @@ nodeunitShim({
instanceType: ec2.InstanceType.of(ec2.InstanceClass.M4, ec2.InstanceSize.MICRO),
machineImage: new ec2.AmazonLinuxImage(),
vpc,
minCapacity: cdk.Lazy.numberValue({ produce: () => 5 }),
maxCapacity: cdk.Lazy.numberValue({ produce: () => 1 }),
desiredCapacity: cdk.Lazy.numberValue({ produce: () => 20 }),
minCapacity: cdk.Lazy.number({ produce: () => 5 }),
maxCapacity: cdk.Lazy.number({ produce: () => 1 }),
desiredCapacity: cdk.Lazy.number({ produce: () => 20 }),
});

// THEN: no exception
Expand Down
2 changes: 1 addition & 1 deletion packages/@aws-cdk/aws-backup/lib/plan.ts
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ export class BackupPlan extends Resource implements IBackupPlan {
const plan = new CfnBackupPlan(this, 'Resource', {
backupPlan: {
backupPlanName: props.backupPlanName || id,
backupPlanRule: Lazy.anyValue({ produce: () => this.rules }, { omitEmptyArray: true }),
backupPlanRule: Lazy.any({ produce: () => this.rules }, { omitEmptyArray: true }),
},
});

Expand Down
6 changes: 3 additions & 3 deletions packages/@aws-cdk/aws-backup/lib/selection.ts
Original file line number Diff line number Diff line change
Expand Up @@ -96,10 +96,10 @@ export class BackupSelection extends Resource implements iam.IGrantable {
backupSelection: {
iamRoleArn: role.roleArn,
selectionName: props.backupSelectionName || this.node.id,
listOfTags: Lazy.anyValue({
listOfTags: Lazy.any({
produce: () => this.listOfTags,
}, { omitEmptyArray: true }),
resources: Lazy.listValue({
resources: Lazy.list({
produce: () => [...this.resources, ...this.backupableResourcesCollector.resources],
}, { omitEmpty: true }),
},
Expand Down Expand Up @@ -130,7 +130,7 @@ export class BackupSelection extends Resource implements iam.IGrantable {
Aspects.of(resource.construct).add(this.backupableResourcesCollector);
// Cannot push `this.backupableResourcesCollector.resources` to
// `this.resources` here because it has not been evaluated yet.
// Will be concatenated to `this.resources` in a `Lazy.listValue`
// Will be concatenated to `this.resources` in a `Lazy.list`
// in the constructor instead.
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ export class DnsValidatedCertificate extends cdk.Resource implements ICertificat
serviceToken: requestorFunction.functionArn,
properties: {
DomainName: props.domainName,
SubjectAlternativeNames: cdk.Lazy.listValue({ produce: () => props.subjectAlternativeNames }, { omitEmpty: true }),
SubjectAlternativeNames: cdk.Lazy.list({ produce: () => props.subjectAlternativeNames }, { omitEmpty: true }),
HostedZoneId: this.hostedZoneId,
Region: props.region,
Route53Endpoint: props.route53Endpoint,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ test('needs validation domain supplied if domain contains a token', () => {
const stack = new Stack();

expect(() => {
const domainName = Lazy.stringValue({ produce: () => 'example.com' });
const domainName = Lazy.string({ produce: () => 'example.com' });
new Certificate(stack, 'Certificate', {
domainName,
});
Expand All @@ -76,7 +76,7 @@ test('needs validation domain supplied if domain contains a token', () => {
test('validationdomains can be given for a Token', () => {
const stack = new Stack();

const domainName = Lazy.stringValue({ produce: () => 'my.example.com' });
const domainName = Lazy.string({ produce: () => 'my.example.com' });
new Certificate(stack, 'Certificate', {
domainName,
validationDomains: {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,7 @@ export class CustomResource extends core.CustomResource {
properties: props.properties,
removalPolicy: props.removalPolicy,
resourceType: props.resourceType,
serviceToken: core.Lazy.stringValue({ produce: () => props.provider.bind(this).serviceToken }),
serviceToken: core.Lazy.string({ produce: () => props.provider.bind(this).serviceToken }),
});
}
}
6 changes: 3 additions & 3 deletions packages/@aws-cdk/aws-cloudfront/lib/distribution.ts
Original file line number Diff line number Diff line change
Expand Up @@ -277,11 +277,11 @@ export class Distribution extends Resource implements IDistribution {
const distribution = new CfnDistribution(this, 'Resource', {
distributionConfig: {
enabled: props.enabled ?? true,
origins: Lazy.anyValue({ produce: () => this.renderOrigins() }),
originGroups: Lazy.anyValue({ produce: () => this.renderOriginGroups() }),
origins: Lazy.any({ produce: () => this.renderOrigins() }),
originGroups: Lazy.any({ produce: () => this.renderOriginGroups() }),
defaultCacheBehavior: this.defaultBehavior._renderBehavior(),
aliases: props.domainNames,
cacheBehaviors: Lazy.anyValue({ produce: () => this.renderCacheBehaviors() }),
cacheBehaviors: Lazy.any({ produce: () => this.renderCacheBehaviors() }),
comment: props.comment,
customErrorResponses: this.renderErrorResponses(),
defaultRootObject: props.defaultRootObject,
Expand Down
6 changes: 3 additions & 3 deletions packages/@aws-cdk/aws-cloudwatch/lib/alarm.ts
Original file line number Diff line number Diff line change
Expand Up @@ -179,9 +179,9 @@ export class Alarm extends AlarmBase {

// Actions
actionsEnabled: props.actionsEnabled,
alarmActions: Lazy.listValue({ produce: () => this.alarmActionArns }),
insufficientDataActions: Lazy.listValue({ produce: (() => this.insufficientDataActionArns) }),
okActions: Lazy.listValue({ produce: () => this.okActionArns }),
alarmActions: Lazy.list({ produce: () => this.alarmActionArns }),
insufficientDataActions: Lazy.list({ produce: (() => this.insufficientDataActionArns) }),
okActions: Lazy.list({ produce: () => this.okActionArns }),

// Metric
...metricProps,
Expand Down
Loading