Skip to content

Commit 77671ad

Browse files
nmussymergify[bot]
authored andcommitted
fix(kms): append aliasName only after first (#3659)
1 parent d0beab1 commit 77671ad

File tree

3 files changed

+18
-6
lines changed

3 files changed

+18
-6
lines changed

packages/@aws-cdk/aws-kms/lib/key.ts

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,23 @@ abstract class KeyBase extends Resource implements IKey {
6464
*/
6565
protected abstract readonly policy?: PolicyDocument;
6666

67+
/**
68+
* Collection of aliases added to the key
69+
*
70+
* Tracked to determine whether or not the aliasName should be added to the end of its ID
71+
*/
72+
private readonly aliases: Alias[] = [];
73+
6774
/**
6875
* Defines a new alias for the key.
6976
*/
70-
public addAlias(alias: string): Alias {
71-
return new Alias(this, `Alias${alias}`, { aliasName: alias, targetKey: this });
77+
public addAlias(aliasName: string): Alias {
78+
const aliasId = this.aliases.length > 0 ? `Alias${aliasName}` : 'Alias';
79+
80+
const alias = new Alias(this, aliasId, { aliasName, targetKey: this });
81+
this.aliases.push(alias);
82+
83+
return alias;
7284
}
7385

7486
/**

packages/@aws-cdk/aws-kms/test/integ.key.expected.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959
"UpdateReplacePolicy": "Delete",
6060
"DeletionPolicy": "Delete"
6161
},
62-
"MyKeyAliasaliasbarD0D50DB8": {
62+
"MyKeyAlias1B45D9DA": {
6363
"Type": "AWS::KMS::Alias",
6464
"Properties": {
6565
"AliasName": "alias/bar",

packages/@aws-cdk/aws-kms/test/test.key.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -311,7 +311,7 @@ export = {
311311
DeletionPolicy: "Retain",
312312
UpdateReplacePolicy: "Retain",
313313
},
314-
MyKeyAliasaliasxoo9464EB1C: {
314+
MyKeyAlias1B45D9DA: {
315315
Type: "AWS::KMS::Alias",
316316
Properties: {
317317
AliasName: "alias/xoo",
@@ -396,7 +396,7 @@ export = {
396396
DeletionPolicy: "Retain",
397397
UpdateReplacePolicy: "Retain",
398398
},
399-
MyKeyAliasaliasalias1668D31D7: {
399+
MyKeyAlias1B45D9DA: {
400400
Type: "AWS::KMS::Alias",
401401
Properties: {
402402
AliasName: "alias/alias1",
@@ -484,7 +484,7 @@ export = {
484484

485485
expect(stack2).toMatch({
486486
Resources: {
487-
MyKeyImportedAliasaliashelloD41FEB6C: {
487+
MyKeyImportedAliasB1C5269F: {
488488
Type: "AWS::KMS::Alias",
489489
Properties: {
490490
AliasName: "alias/hello",

0 commit comments

Comments
 (0)