Skip to content

Commit f091714

Browse files
chore(aspects): set priorities for existing aspects in CDK (#32333)
Follow-up to #32097 ### Checklist - [x] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md) ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
1 parent 20edc7f commit f091714

File tree

14 files changed

+32
-31
lines changed

14 files changed

+32
-31
lines changed

packages/@aws-cdk/aws-servicecatalogappregistry-alpha/lib/application-associator.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export class ApplicationAssociator extends Construct {
5050
this.associateCrossAccountStacks = targetBindResult.associateCrossAccountStacks;
5151
cdk.Aspects.of(scope).add(new CheckedStageStackAssociator(this, {
5252
associateCrossAccountStacks: this.associateCrossAccountStacks,
53-
}));
53+
}), { priority: cdk.AspectPriority.MUTATING });
5454
}
5555

5656
/**
@@ -61,7 +61,7 @@ export class ApplicationAssociator extends Construct {
6161
this.associatedStages.add(stage);
6262
cdk.Aspects.of(stage).add(new CheckedStageStackAssociator(this, {
6363
associateCrossAccountStacks: this.associateCrossAccountStacks,
64-
}));
64+
}), { priority: cdk.AspectPriority.MUTATING });
6565
return stage;
6666
}
6767

packages/@aws-cdk/integ-tests-alpha/lib/assertions/http-call.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Aspects, CfnOutput, CustomResource, Lazy, Token } from 'aws-cdk-lib';
1+
import { AspectPriority, Aspects, CfnOutput, CustomResource, Lazy, Token } from 'aws-cdk-lib';
22
import { Construct, IConstruct } from 'constructs';
33
import { ApiCallBase, IApiCall } from './api-call-base';
44
import { ExpectedResult } from './common';
@@ -51,7 +51,7 @@ export class HttpApiCall extends ApiCallBase {
5151
}
5252
}
5353
},
54-
});
54+
}, { priority: AspectPriority.MUTATING });
5555
}
5656

5757
public assertAtPath(_path: string, _expected: ExpectedResult): IApiCall {

packages/@aws-cdk/integ-tests-alpha/lib/assertions/sdk.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ArnFormat, CfnResource, CustomResource, Lazy, Stack, Aspects, CfnOutput } from 'aws-cdk-lib/core';
1+
import { ArnFormat, CfnResource, CustomResource, Lazy, Stack, Aspects, CfnOutput, AspectPriority } from 'aws-cdk-lib/core';
22
import { Construct, IConstruct } from 'constructs';
33
import { ApiCallBase, IApiCall } from './api-call-base';
44
import { ExpectedResult } from './common';
@@ -125,7 +125,7 @@ export class AwsApiCall extends ApiCallBase {
125125
}
126126
}
127127
},
128-
});
128+
}, { priority: AspectPriority.MUTATING });
129129
}
130130

131131
public assertAtPath(path: string, expected: ExpectedResult): IApiCall {
@@ -281,6 +281,6 @@ export class LambdaInvokeFunction extends AwsApiCall {
281281
})]);
282282
}
283283
},
284-
});
284+
}, { priority: AspectPriority.MUTATING });
285285
}
286286
}

packages/aws-cdk-lib/aws-autoscaling/lib/auto-scaling-group.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import * as iam from '../../aws-iam';
1717
import * as sns from '../../aws-sns';
1818
import {
1919
Annotations,
20+
AspectPriority,
2021
Aspects,
2122
Aws,
2223
CfnAutoScalingRollingUpdate, CfnCreationPolicy, CfnUpdatePolicy,
@@ -1573,7 +1574,7 @@ export class AutoScalingGroup extends AutoScalingGroupBase implements
15731574
this.spotPrice = props.spotPrice;
15741575

15751576
if (props.requireImdsv2) {
1576-
Aspects.of(this).add(new AutoScalingGroupRequireImdsv2Aspect());
1577+
Aspects.of(this).add(new AutoScalingGroupRequireImdsv2Aspect(), { priority: AspectPriority.MUTATING });
15771578
}
15781579

15791580
this.node.addValidation({ validate: () => this.validateTargetGroup() });

packages/aws-cdk-lib/aws-backup/lib/selection.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { BackupableResourcesCollector } from './backupable-resources-collector';
44
import { IBackupPlan } from './plan';
55
import { BackupResource, TagOperation } from './resource';
66
import * as iam from '../../aws-iam';
7-
import { Lazy, Resource, Aspects } from '../../core';
7+
import { Lazy, Resource, Aspects, AspectPriority } from '../../core';
88

99
/**
1010
* Options for a BackupSelection
@@ -140,7 +140,7 @@ export class BackupSelection extends Resource implements iam.IGrantable {
140140
}
141141

142142
if (resource.construct) {
143-
Aspects.of(resource.construct).add(this.backupableResourcesCollector);
143+
Aspects.of(resource.construct).add(this.backupableResourcesCollector, { priority: AspectPriority.MUTATING });
144144
// Cannot push `this.backupableResourcesCollector.resources` to
145145
// `this.resources` here because it has not been evaluated yet.
146146
// Will be concatenated to `this.resources` in a `Lazy.list`

packages/aws-cdk-lib/aws-ec2/lib/instance.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import { UserData } from './user-data';
1515
import { BlockDevice } from './volume';
1616
import { IVpc, Subnet, SubnetSelection } from './vpc';
1717
import * as iam from '../../aws-iam';
18-
import { Annotations, Aspects, Duration, FeatureFlags, Fn, IResource, Lazy, Resource, Stack, Tags, Token } from '../../core';
18+
import { Annotations, AspectPriority, Aspects, Duration, FeatureFlags, Fn, IResource, Lazy, Resource, Stack, Tags, Token } from '../../core';
1919
import { md5hash } from '../../core/lib/helpers-internal';
2020
import * as cxapi from '../../cx-api';
2121

@@ -669,7 +669,7 @@ export class Instance extends Resource implements IInstance {
669669
}));
670670

671671
if (props.requireImdsv2) {
672-
Aspects.of(this).add(new InstanceRequireImdsv2Aspect());
672+
Aspects.of(this).add(new InstanceRequireImdsv2Aspect(), { priority: AspectPriority.MUTATING });
673673
}
674674
}
675675

packages/aws-cdk-lib/aws-ecs/lib/cluster.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import { IKey } from '../../aws-kms';
1313
import * as logs from '../../aws-logs';
1414
import * as s3 from '../../aws-s3';
1515
import * as cloudmap from '../../aws-servicediscovery';
16-
import { Aws, Duration, IResource, Resource, Stack, Aspects, ArnFormat, IAspect, Token, Names } from '../../core';
16+
import { Aws, Duration, IResource, Resource, Stack, Aspects, ArnFormat, IAspect, Token, Names, AspectPriority } from '../../core';
1717

1818
const CLUSTER_SYMBOL = Symbol.for('@aws-cdk/aws-ecs/lib/cluster.Cluster');
1919

@@ -282,7 +282,7 @@ export class Cluster extends Resource implements ICluster {
282282
// since it's harmless, but we'd prefer not to add unexpected new
283283
// resources to the stack which could surprise users working with
284284
// brown-field CDK apps and stacks.
285-
Aspects.of(this).add(new MaybeCreateCapacityProviderAssociations(this, id));
285+
Aspects.of(this).add(new MaybeCreateCapacityProviderAssociations(this, id), { priority: AspectPriority.MUTATING });
286286
}
287287

288288
/**

packages/aws-cdk-lib/aws-iam/lib/permissions-boundary.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { IConstruct } from 'constructs';
22
import { CfnRole, CfnUser } from './iam.generated';
33
import { IManagedPolicy } from './managed-policy';
4-
import { Aspects, CfnResource } from '../../core';
4+
import { AspectPriority, Aspects, CfnResource } from '../../core';
55

66
/**
77
* Modify the Permissions Boundaries of Users and Roles in a construct tree
@@ -40,7 +40,7 @@ export class PermissionsBoundary {
4040
node.addPropertyOverride('PermissionsBoundary', boundaryPolicy.managedPolicyArn);
4141
}
4242
},
43-
});
43+
}, { priority: AspectPriority.MUTATING });
4444
}
4545

4646
/**
@@ -56,6 +56,6 @@ export class PermissionsBoundary {
5656
node.addPropertyDeletionOverride('PermissionsBoundary');
5757
}
5858
},
59-
});
59+
}, { priority: AspectPriority.MUTATING });
6060
}
6161
}

packages/aws-cdk-lib/aws-iam/lib/role.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import { ImportedRole } from './private/imported-role';
1313
import { MutatingPolicyDocumentAdapter } from './private/policydoc-adapter';
1414
import { PrecreatedRole } from './private/precreated-role';
1515
import { AttachedPolicies, UniqueStringSet } from './private/util';
16-
import { ArnFormat, Duration, Resource, Stack, Token, TokenComparison, Aspects, Annotations, RemovalPolicy } from '../../core';
16+
import { ArnFormat, Duration, Resource, Stack, Token, TokenComparison, Aspects, Annotations, RemovalPolicy, AspectPriority } from '../../core';
1717
import { getCustomizeRolesConfig, getPrecreatedRoleConfig, CUSTOMIZE_ROLES_CONTEXT_KEY, CustomizeRoleConfig } from '../../core/lib/helpers-internal';
1818

1919
const MAX_INLINE_SIZE = 10000;
@@ -493,7 +493,7 @@ export class Role extends Resource implements IRole {
493493
this.splitLargePolicy();
494494
}
495495
},
496-
});
496+
}, { priority: AspectPriority.MUTATING });
497497
}
498498

499499
this.policyFragment = new ArnPrincipal(this.roleArn).policyFragment;

packages/aws-cdk-lib/aws-servicecatalog/lib/portfolio.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -366,7 +366,7 @@ export class Portfolio extends PortfolioBase {
366366
(c as Portfolio).addBucketPermissionsToSharedAccounts();
367367
};
368368
},
369-
});
369+
}, { priority: cdk.AspectPriority.MUTATING });
370370
}
371371

372372
protected generateUniqueHash(value: string): string {

0 commit comments

Comments
 (0)