@friggframework/devtools 2.0.0--canary.461.27d4ea2.0 → 2.0.0--canary.461.55dbac3.0
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.
|
@@ -732,7 +732,7 @@ class VpcBuilder extends InfrastructureBuilder {
|
|
|
732
732
|
};
|
|
733
733
|
|
|
734
734
|
// Create public routing (public subnets → Internet Gateway)
|
|
735
|
-
this.createPublicRouting(appDefinition, result);
|
|
735
|
+
this.createPublicRouting(appDefinition, discoveredResources, result);
|
|
736
736
|
|
|
737
737
|
// Create routing for the new NAT Gateway (private subnets → NAT → IGW)
|
|
738
738
|
this.createNatGatewayRouting(appDefinition, discoveredResources, result, { Ref: 'FriggNATGateway' });
|
|
@@ -744,7 +744,7 @@ class VpcBuilder extends InfrastructureBuilder {
|
|
|
744
744
|
* Create public route table with Internet Gateway route
|
|
745
745
|
* Required for NAT Gateway to have internet access
|
|
746
746
|
*/
|
|
747
|
-
createPublicRouting(appDefinition, result) {
|
|
747
|
+
createPublicRouting(appDefinition, discoveredResources, result) {
|
|
748
748
|
// Public route table with Internet Gateway route
|
|
749
749
|
result.resources.FriggPublicRouteTable = {
|
|
750
750
|
Type: 'AWS::EC2::RouteTable',
|
|
@@ -768,11 +768,15 @@ class VpcBuilder extends InfrastructureBuilder {
|
|
|
768
768
|
},
|
|
769
769
|
};
|
|
770
770
|
|
|
771
|
+
// Use discovered public subnets or created ones
|
|
772
|
+
const publicSubnet1 = discoveredResources.publicSubnetId1 || { Ref: 'FriggPublicSubnet' };
|
|
773
|
+
const publicSubnet2 = discoveredResources.publicSubnetId2 || { Ref: 'FriggPublicSubnet2' };
|
|
774
|
+
|
|
771
775
|
// Associate public subnets with public route table
|
|
772
776
|
result.resources.FriggPublicSubnet1RouteTableAssociation = {
|
|
773
777
|
Type: 'AWS::EC2::SubnetRouteTableAssociation',
|
|
774
778
|
Properties: {
|
|
775
|
-
SubnetId:
|
|
779
|
+
SubnetId: publicSubnet1,
|
|
776
780
|
RouteTableId: { Ref: 'FriggPublicRouteTable' },
|
|
777
781
|
},
|
|
778
782
|
};
|
|
@@ -780,7 +784,7 @@ class VpcBuilder extends InfrastructureBuilder {
|
|
|
780
784
|
result.resources.FriggPublicSubnet2RouteTableAssociation = {
|
|
781
785
|
Type: 'AWS::EC2::SubnetRouteTableAssociation',
|
|
782
786
|
Properties: {
|
|
783
|
-
SubnetId:
|
|
787
|
+
SubnetId: publicSubnet2,
|
|
784
788
|
RouteTableId: { Ref: 'FriggPublicRouteTable' },
|
|
785
789
|
},
|
|
786
790
|
};
|
|
@@ -62,8 +62,8 @@ function getGeneratedClientPackages(databaseConfig = {}) {
|
|
|
62
62
|
const packages = [];
|
|
63
63
|
|
|
64
64
|
// Check if MongoDB is enabled (via mongoDB or documentDB config)
|
|
65
|
-
const mongoEnabled = databaseConfig?.mongoDB?.enable === true ||
|
|
66
|
-
|
|
65
|
+
const mongoEnabled = databaseConfig?.mongoDB?.enable === true ||
|
|
66
|
+
databaseConfig?.documentDB?.enable === true;
|
|
67
67
|
if (mongoEnabled) {
|
|
68
68
|
packages.push('generated/prisma-mongodb');
|
|
69
69
|
log('Including MongoDB client (based on AppDefinition)', 'blue');
|
|
@@ -411,16 +411,21 @@ async function verifyRhelBinaries(expectedClients) {
|
|
|
411
411
|
/**
|
|
412
412
|
* Verify required files exist
|
|
413
413
|
* Runtime layer should NOT have CLI files
|
|
414
|
+
* @param {Array} clientPackages - Generated client packages that were included
|
|
414
415
|
*/
|
|
415
|
-
async function verifyLayerStructure() {
|
|
416
|
+
async function verifyLayerStructure(clientPackages) {
|
|
416
417
|
logStep(8, 'Verifying layer structure (runtime only)');
|
|
417
418
|
|
|
418
419
|
const requiredPaths = [
|
|
419
420
|
'@prisma/client/runtime',
|
|
420
421
|
'@prisma/client/index.d.ts',
|
|
421
|
-
'generated/prisma-postgresql/schema.prisma', // PostgreSQL (default)
|
|
422
422
|
];
|
|
423
423
|
|
|
424
|
+
// Add schema.prisma for each included client
|
|
425
|
+
for (const pkg of clientPackages) {
|
|
426
|
+
requiredPaths.push(`${pkg}/schema.prisma`);
|
|
427
|
+
}
|
|
428
|
+
|
|
424
429
|
// Verify CLI is NOT present (keeps layer small)
|
|
425
430
|
const forbiddenPaths = [
|
|
426
431
|
'prisma/build',
|
|
@@ -512,7 +517,7 @@ async function buildPrismaLayer(databaseConfig = {}) {
|
|
|
512
517
|
await removeUnnecessaryFiles(); // Remove source maps, docs, tests (37MB+)
|
|
513
518
|
await removeNonRhelBinaries(); // Remove non-Linux binaries
|
|
514
519
|
await verifyRhelBinaries(clientPackages); // Verify query engines present
|
|
515
|
-
await verifyLayerStructure();
|
|
520
|
+
await verifyLayerStructure(clientPackages); // Verify minimal runtime structure
|
|
516
521
|
await displayLayerSummary();
|
|
517
522
|
|
|
518
523
|
const duration = ((Date.now() - startTime) / 1000).toFixed(2);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@friggframework/devtools",
|
|
3
3
|
"prettier": "@friggframework/prettier-config",
|
|
4
|
-
"version": "2.0.0--canary.461.
|
|
4
|
+
"version": "2.0.0--canary.461.55dbac3.0",
|
|
5
5
|
"dependencies": {
|
|
6
6
|
"@aws-sdk/client-ec2": "^3.835.0",
|
|
7
7
|
"@aws-sdk/client-kms": "^3.835.0",
|
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
"@babel/eslint-parser": "^7.18.9",
|
|
12
12
|
"@babel/parser": "^7.25.3",
|
|
13
13
|
"@babel/traverse": "^7.25.3",
|
|
14
|
-
"@friggframework/schemas": "2.0.0--canary.461.
|
|
15
|
-
"@friggframework/test": "2.0.0--canary.461.
|
|
14
|
+
"@friggframework/schemas": "2.0.0--canary.461.55dbac3.0",
|
|
15
|
+
"@friggframework/test": "2.0.0--canary.461.55dbac3.0",
|
|
16
16
|
"@hapi/boom": "^10.0.1",
|
|
17
17
|
"@inquirer/prompts": "^5.3.8",
|
|
18
18
|
"axios": "^1.7.2",
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
"serverless-http": "^2.7.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@friggframework/eslint-config": "2.0.0--canary.461.
|
|
38
|
-
"@friggframework/prettier-config": "2.0.0--canary.461.
|
|
37
|
+
"@friggframework/eslint-config": "2.0.0--canary.461.55dbac3.0",
|
|
38
|
+
"@friggframework/prettier-config": "2.0.0--canary.461.55dbac3.0",
|
|
39
39
|
"aws-sdk-client-mock": "^4.1.0",
|
|
40
40
|
"aws-sdk-client-mock-jest": "^4.1.0",
|
|
41
41
|
"jest": "^30.1.3",
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
"publishConfig": {
|
|
71
71
|
"access": "public"
|
|
72
72
|
},
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "55dbac3a1560176988b66b6244f14f0d1d2007c6"
|
|
74
74
|
}
|