@friggframework/devtools 2.0.0-next.39 → 2.0.0-next.40
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.
- package/infrastructure/README.md +19 -8
- package/infrastructure/aws-discovery.js +951 -345
- package/infrastructure/aws-discovery.test.js +1031 -184
- package/infrastructure/build-time-discovery.test.js +3 -0
- package/infrastructure/iam-generator.js +46 -0
- package/infrastructure/iam-generator.test.js +7 -4
- package/infrastructure/serverless-template.js +1096 -813
- package/infrastructure/serverless-template.test.js +1036 -21
- package/package.json +8 -6
- package/infrastructure/AWS-DISCOVERY-TROUBLESHOOTING.md +0 -245
- package/infrastructure/AWS-IAM-CREDENTIAL-NEEDS.md +0 -627
- package/infrastructure/README-TESTING.md +0 -332
package/infrastructure/README.md
CHANGED
|
@@ -61,7 +61,8 @@ infrastructure/
|
|
|
61
61
|
|
|
62
62
|
Generates complete serverless.yml configurations with:
|
|
63
63
|
|
|
64
|
-
- VPC configuration and resource discovery
|
|
64
|
+
- VPC configuration and resource discovery (with optional self-healing)
|
|
65
|
+
- NAT/EIP management strategies (`discover`, `createAndManage`, `useExisting`)
|
|
65
66
|
- KMS encryption for field-level encryption
|
|
66
67
|
- SSM Parameter Store integration
|
|
67
68
|
- Integration-specific functions and queues
|
|
@@ -69,12 +70,13 @@ Generates complete serverless.yml configurations with:
|
|
|
69
70
|
|
|
70
71
|
#### 2. AWS Discovery (`aws-discovery.js`)
|
|
71
72
|
|
|
72
|
-
Automatically discovers existing AWS resources:
|
|
73
|
+
Automatically discovers existing AWS resources and highlights misconfigurations:
|
|
73
74
|
|
|
74
75
|
- Default VPC and security groups
|
|
75
|
-
- Private subnets for Lambda functions
|
|
76
|
+
- Private subnets for Lambda functions (with routing validation)
|
|
76
77
|
- Customer-managed KMS keys
|
|
77
78
|
- Route tables for VPC endpoints
|
|
79
|
+
- NAT gateways / Elastic IPs and whether remediation is required
|
|
78
80
|
|
|
79
81
|
#### 3. Build-Time Discovery (`build-time-discovery.js`)
|
|
80
82
|
|
|
@@ -147,10 +149,18 @@ const appDefinition = {
|
|
|
147
149
|
// VPC configuration
|
|
148
150
|
vpc: {
|
|
149
151
|
enable: true,
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
152
|
+
management: 'discover', // 'discover' | 'create-new' | 'use-existing'
|
|
153
|
+
selfHeal: true, // Let the template repair routing/NAT issues
|
|
154
|
+
securityGroupIds: [...], // Optional: custom security groups or CFN Refs
|
|
155
|
+
subnets: {
|
|
156
|
+
management: 'discover', // 'discover' | 'create' | 'use-existing'
|
|
157
|
+
ids: [...], // Required when management is 'use-existing'
|
|
158
|
+
},
|
|
159
|
+
natGateway: {
|
|
160
|
+
management: 'discover', // 'discover' | 'createAndManage' | 'useExisting'
|
|
161
|
+
id: 'nat-xxxxxxxx', // Required when management is 'useExisting'
|
|
162
|
+
},
|
|
163
|
+
enableVPCEndpoints: true // Optional: create VPC endpoints
|
|
154
164
|
},
|
|
155
165
|
|
|
156
166
|
// KMS encryption
|
|
@@ -164,7 +174,7 @@ const appDefinition = {
|
|
|
164
174
|
enable: true
|
|
165
175
|
},
|
|
166
176
|
|
|
167
|
-
// WebSocket support (
|
|
177
|
+
// WebSocket support (optional)
|
|
168
178
|
websockets: {
|
|
169
179
|
enable: true
|
|
170
180
|
},
|
|
@@ -187,6 +197,7 @@ AWS_DISCOVERY_VPC_ID=vpc-12345678
|
|
|
187
197
|
AWS_DISCOVERY_SECURITY_GROUP_ID=sg-12345678
|
|
188
198
|
AWS_DISCOVERY_SUBNET_ID_1=subnet-12345678
|
|
189
199
|
AWS_DISCOVERY_SUBNET_ID_2=subnet-87654321
|
|
200
|
+
AWS_DISCOVERY_PUBLIC_SUBNET_ID=subnet-abcdef12
|
|
190
201
|
AWS_DISCOVERY_ROUTE_TABLE_ID=rtb-12345678
|
|
191
202
|
AWS_DISCOVERY_KMS_KEY_ID=arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012
|
|
192
203
|
|