Skip to content

Commit 9db9beb

Browse files
authored
Merge pull request #190 from aws-solutions/feature/v3.3.24
release v3.3.24
2 parents 5af09a4 + 2a53a53 commit 9db9beb

26 files changed

Lines changed: 12052 additions & 28037 deletions

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,21 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [3.3.24] - 2026-03-25
9+
10+
### Changed
11+
12+
- Migrated `source/ui` from Create React App (`react-scripts`) to Vite + Vitest
13+
14+
### Fixed
15+
16+
- Fixed VPC CIDR display showing only the primary CIDR block. Now captures all associated CIDRs (primary + secondary) and automatically updates on CIDR changes
17+
18+
### Security
19+
20+
- Removed deprecated `react-scripts` and its transitive dependency tree, eliminating associated CVEs
21+
- Removed dead security overrides (`svgo`, `node-forge`, `qs`, `@isaacs/brace-expansion`, `lodash`) that no longer apply
22+
823
## [3.3.23] - 2026-02-24
924

1025
### Security

NOTICE.txt

Lines changed: 898 additions & 1546 deletions
Large diffs are not rendered by default.

deployment/network-orchestration-hub.template

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -696,6 +696,60 @@ Resources:
696696
Principal: "events.amazonaws.com"
697697
SourceArn: !Sub ${LambdaEventRuleHubAccount.Arn}
698698

699+
# For hub account VPC CIDR changes:
700+
LambdaEventRuleOnVpcCidrChangeHubAccount:
701+
Type: AWS::Events::Rule
702+
Properties:
703+
Description: Serverless Transit Network Orchestrator - Invokes StateMachineLambda on VPC CIDR changes in the hub account
704+
EventPattern:
705+
{
706+
"account": [
707+
!Ref "AWS::AccountId"
708+
],
709+
"source": [
710+
"aws.ec2"
711+
],
712+
"detail-type": [
713+
"AWS API Call via CloudTrail"
714+
],
715+
"detail": {
716+
"eventSource": [
717+
"ec2.amazonaws.com"
718+
],
719+
"eventName": [
720+
"AssociateVpcCidrBlock",
721+
"DisassociateVpcCidrBlock"
722+
]
723+
}
724+
}
725+
State: ENABLED
726+
Targets:
727+
- Arn: !GetAtt StateMachineLambdaFunction.Arn
728+
Id: 'StateMachineLambdaOnCidrChangeHub'
729+
InputTransformer:
730+
InputPathsMap:
731+
"detail" : "$.detail"
732+
"account": "$.account"
733+
InputTemplate: |
734+
{
735+
"params": {
736+
"ClassName": "VPC",
737+
"FunctionName": "update_vpc_cidr"
738+
},
739+
"event": {
740+
"detail" : <detail>,
741+
"account" : <account>
742+
}
743+
}
744+
745+
PermissionForVpcCidrChangeHubAccountRule:
746+
Type: AWS::Lambda::Permission
747+
Properties:
748+
FunctionName: !Ref "StateMachineLambdaFunction"
749+
Action: "lambda:InvokeFunction"
750+
Principal: "events.amazonaws.com"
751+
SourceArn: !Sub ${LambdaEventRuleOnVpcCidrChangeHubAccount.Arn}
752+
699753
LambdaEventRuleOnSubnetDeletion:
700754
Type: AWS::Events::Rule
701755
Properties:
@@ -750,6 +804,59 @@ Resources:
750804
Principal: "events.amazonaws.com"
751805
SourceArn: !Sub ${LambdaEventRuleOnSubnetDeletion.Arn}
752806

807+
# For spoke account VPC CIDR changes:
808+
LambdaEventRuleOnVpcCidrChangeSpokeAccounts:
809+
Type: AWS::Events::Rule
810+
Properties:
811+
Description: Serverless Transit Network Orchestrator - Invokes StateMachineLambda on VPC CIDR changes in spoke accounts
812+
EventBusName: !Ref STNOCustomEventBus
813+
EventPattern:
814+
{
815+
"account": !If [ IsNotMemberOfOrganization, !Ref Principals, !Ref "AWS::NoValue" ],
816+
"source": [
817+
"aws.ec2"
818+
],
819+
"detail-type": [
820+
"AWS API Call via CloudTrail"
821+
],
822+
"detail": {
823+
"eventSource": [
824+
"ec2.amazonaws.com"
825+
],
826+
"eventName": [
827+
"AssociateVpcCidrBlock",
828+
"DisassociateVpcCidrBlock"
829+
]
830+
}
831+
}
832+
State: ENABLED
833+
Targets:
834+
- Arn: !GetAtt StateMachineLambdaFunction.Arn
835+
Id: 'StateMachineLambdaOnCidrChange'
836+
InputTransformer:
837+
InputPathsMap:
838+
"detail" : "$.detail"
839+
"account": "$.account"
840+
InputTemplate: |
841+
{
842+
"params": {
843+
"ClassName": "VPC",
844+
"FunctionName": "update_vpc_cidr"
845+
},
846+
"event": {
847+
"detail" : <detail>,
848+
"account" : <account>
849+
}
850+
}
851+
852+
PermissionForVpcCidrChangeRule:
853+
Type: AWS::Lambda::Permission
854+
Properties:
855+
FunctionName: !Ref "StateMachineLambdaFunction"
856+
Action: "lambda:InvokeFunction"
857+
Principal: "events.amazonaws.com"
858+
SourceArn: !Sub ${LambdaEventRuleOnVpcCidrChangeSpokeAccounts.Arn}
859+
753860
STNOCustomEventBus:
754861
Type: AWS::Events::EventBus
755862
Properties:
@@ -1118,6 +1225,8 @@ Resources:
11181225
- Effect: Allow
11191226
Action:
11201227
- dynamodb:PutItem
1228+
- dynamodb:Scan
1229+
- dynamodb:UpdateItem
11211230
Resource: !GetAtt DynamoDbTable.Arn
11221231
- !If
11231232
- OrganizationManagementAccountRoleArn

deployment/network-orchestration-spoke.template

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,40 @@ Resources:
8080
RoleArn: !GetAtt TransitNetworkEventDeliveryRole.Arn
8181

8282

83+
VpcCidrChangeEventRule:
84+
Condition: "IsSpokeAccountOtherThanHubAccount"
85+
Type: AWS::Events::Rule
86+
Properties:
87+
Description: Serverless Transit Network Orchestrator - Spoke - Rule for VPC CIDR changes
88+
EventPattern:
89+
{
90+
"account": [
91+
!Ref "AWS::AccountId"
92+
],
93+
"source": [
94+
"aws.ec2"
95+
],
96+
"detail-type": [
97+
"AWS API Call via CloudTrail"
98+
],
99+
"detail": {
100+
"eventSource": [
101+
"ec2.amazonaws.com"
102+
],
103+
"eventName": [
104+
"AssociateVpcCidrBlock",
105+
"DisassociateVpcCidrBlock"
106+
]
107+
}
108+
}
109+
State: ENABLED
110+
Targets:
111+
- Arn: !Sub
112+
- arn:${AWS::Partition}:events:${AWS::Region}:${HubAccount}:event-bus/${EventBusName}
113+
- {EventBusName: !FindInMap [EventBridge, Bus, Name]}
114+
Id: SpokeVpcCidrChangeEvent
115+
RoleArn: !GetAtt TransitNetworkEventDeliveryRole.Arn
116+
83117
SubnetDeletionEventRule:
84118
Condition: "IsSpokeAccountOtherThanHubAccount" # Adding an EventBus as a target within an account is not allowed.
85119
Type: AWS::Events::Rule

sonar-project.properties

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ sonar.exclusions=\
3131
source/lambda/coverage/**, \
3232
source/ui/coverage/**, \
3333
source/cognito-trigger/jest.config.js, \
34-
source/ui/src/jest.config.js, \
3534
source/cognito-trigger/setJestEnvironmentVariables.ts, \
3635
source/ui/src/setupTests.ts
3736

0 commit comments

Comments
 (0)