@friggframework/devtools 2.0.0--canary.461.c53515a.0 → 2.0.0--canary.461.27d4ea2.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.
@@ -490,6 +490,40 @@ describe('Resource Discovery', () => {
490
490
  // Should call AWS API discovery (shared mode finds resources across stages)
491
491
  expect(mockVpcDiscovery.discover).toHaveBeenCalled();
492
492
  });
493
+
494
+ it('should search for specific KMS alias in isolated mode to find orphaned keys', async () => {
495
+ const appDefinition = {
496
+ name: 'quo-integrations',
497
+ managementMode: 'managed',
498
+ vpcIsolation: 'isolated',
499
+ encryption: { fieldLevelEncryptionMethod: 'kms' },
500
+ };
501
+
502
+ process.env.SLS_STAGE = 'dev';
503
+
504
+ // Mock KMS discovery finding key via alias search
505
+ mockKmsDiscovery.discover.mockResolvedValue({
506
+ defaultKmsKeyId: 'arn:aws:kms:us-east-1:123:key/found-via-alias',
507
+ kmsKeyAlias: 'alias/quo-integrations-dev-frigg-kms',
508
+ });
509
+
510
+ const result = await gatherDiscoveredResources(appDefinition);
511
+
512
+ // Should pass keyAlias to discover orphaned KMS keys
513
+ expect(mockKmsDiscovery.discover).toHaveBeenCalledWith(
514
+ expect.objectContaining({
515
+ serviceName: 'quo-integrations',
516
+ stage: 'dev',
517
+ keyAlias: 'alias/quo-integrations-dev-frigg-kms',
518
+ })
519
+ );
520
+
521
+ // Should return discovered KMS key (even if orphaned from stack)
522
+ expect(result).toEqual({
523
+ defaultKmsKeyId: 'arn:aws:kms:us-east-1:123:key/found-via-alias',
524
+ kmsKeyAlias: 'alias/quo-integrations-dev-frigg-kms',
525
+ });
526
+ });
493
527
  });
494
528
  });
495
529
 
@@ -61,8 +61,9 @@ function findCorePackage(startDir) {
61
61
  function getGeneratedClientPackages(databaseConfig = {}) {
62
62
  const packages = [];
63
63
 
64
- // Check if MongoDB is enabled
65
- const mongoEnabled = databaseConfig?.mongodb?.enable === true;
64
+ // Check if MongoDB is enabled (via mongoDB or documentDB config)
65
+ const mongoEnabled = databaseConfig?.mongoDB?.enable === true ||
66
+ databaseConfig?.documentDB?.enable === true;
66
67
  if (mongoEnabled) {
67
68
  packages.push('generated/prisma-mongodb');
68
69
  log('Including MongoDB client (based on AppDefinition)', 'blue');
@@ -544,4 +545,4 @@ if (require.main === module) {
544
545
  .catch(() => process.exit(1));
545
546
  }
546
547
 
547
- module.exports = { buildPrismaLayer };
548
+ module.exports = { buildPrismaLayer, getGeneratedClientPackages };
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.c53515a.0",
4
+ "version": "2.0.0--canary.461.27d4ea2.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.c53515a.0",
15
- "@friggframework/test": "2.0.0--canary.461.c53515a.0",
14
+ "@friggframework/schemas": "2.0.0--canary.461.27d4ea2.0",
15
+ "@friggframework/test": "2.0.0--canary.461.27d4ea2.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.c53515a.0",
38
- "@friggframework/prettier-config": "2.0.0--canary.461.c53515a.0",
37
+ "@friggframework/eslint-config": "2.0.0--canary.461.27d4ea2.0",
38
+ "@friggframework/prettier-config": "2.0.0--canary.461.27d4ea2.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": "c53515a6014c114056ebde56a8b7c08007c53908"
73
+ "gitHead": "27d4ea22c26e1cc261affa921951355fc4109f46"
74
74
  }