@aws/nx-plugin 0.45.1 → 0.46.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.
- package/package.json +1 -1
- package/src/py/fast-api/__snapshots__/generator.spec.ts.snap +3669 -0
- package/src/py/fast-api/generator.js +57 -50
- package/src/py/fast-api/generator.js.map +1 -1
- package/src/py/fast-api/schema.d.ts +1 -0
- package/src/py/fast-api/schema.json +8 -0
- package/src/py/mcp-server/__snapshots__/generator.spec.ts.snap +590 -0
- package/src/py/mcp-server/generator.js +4 -18
- package/src/py/mcp-server/generator.js.map +1 -1
- package/src/py/mcp-server/schema.d.ts +1 -0
- package/src/py/mcp-server/schema.json +8 -0
- package/src/py/strands-agent/__snapshots__/generator.spec.ts.snap +590 -0
- package/src/py/strands-agent/generator.js +4 -18
- package/src/py/strands-agent/generator.js.map +1 -1
- package/src/py/strands-agent/schema.d.ts +1 -0
- package/src/py/strands-agent/schema.json +8 -0
- package/src/terraform/project/generator.js +23 -7
- package/src/terraform/project/generator.js.map +1 -1
- package/src/trpc/backend/__snapshots__/generator.spec.ts.snap +3669 -0
- package/src/trpc/backend/generator.js +6 -17
- package/src/trpc/backend/generator.js.map +1 -1
- package/src/trpc/backend/schema.d.ts +1 -0
- package/src/trpc/backend/schema.json +8 -0
- package/src/ts/mcp-server/__snapshots__/generator.spec.ts.snap +590 -0
- package/src/ts/mcp-server/generator.js +4 -18
- package/src/ts/mcp-server/generator.js.map +1 -1
- package/src/ts/mcp-server/schema.d.ts +1 -0
- package/src/ts/mcp-server/schema.json +8 -0
- package/src/ts/nx-plugin/generator.js +1 -0
- package/src/ts/nx-plugin/generator.js.map +1 -1
- package/src/utils/agent-core-constructs/agent-core-constructs.d.ts +11 -5
- package/src/utils/agent-core-constructs/agent-core-constructs.js +51 -10
- package/src/utils/agent-core-constructs/agent-core-constructs.js.map +1 -1
- package/src/utils/agent-core-constructs/files/terraform/app/agent-core/__nameKebabCase__/__nameKebabCase__.tf.template +46 -0
- package/src/utils/agent-core-constructs/files/terraform/core/agent-core/runtime.tf.template +536 -0
- package/src/utils/api-constructs/api-constructs.d.ts +4 -4
- package/src/utils/api-constructs/api-constructs.js +45 -5
- package/src/utils/api-constructs/api-constructs.js.map +1 -1
- package/src/utils/api-constructs/files/terraform/app/apis/http/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +382 -0
- package/src/utils/api-constructs/files/terraform/app/apis/rest/__apiNameKebabCase__/__apiNameKebabCase__.tf.template +508 -0
- package/src/utils/api-constructs/files/terraform/core/api/http/http-api/http-api.tf.template +250 -0
- package/src/utils/api-constructs/files/terraform/core/api/rest/rest-api/rest-api.tf.template +150 -0
- package/src/utils/files/terraform/src/metrics/metrics.tf.template +3 -2
- package/src/utils/py.d.ts +5 -0
- package/src/utils/py.js +9 -1
- package/src/utils/py.js.map +1 -1
- package/src/utils/shared-constructs-constants.d.ts +2 -0
- package/src/utils/shared-constructs-constants.js +3 -1
- package/src/utils/shared-constructs-constants.js.map +1 -1
- package/src/utils/shared-constructs.js +2 -2
- package/src/utils/shared-constructs.js.map +1 -1
- package/src/utils/versions.d.ts +3 -1
- package/src/utils/versions.js +2 -0
- package/src/utils/versions.js.map +1 -1
- /package/src/utils/agent-core-constructs/files/{app → cdk/app}/agent-core/__nameKebabCase__/Dockerfile.template +0 -0
- /package/src/utils/agent-core-constructs/files/{app → cdk/app}/agent-core/__nameKebabCase__/__nameKebabCase__.ts.template +0 -0
- /package/src/utils/agent-core-constructs/files/{core → cdk/core}/agent-core/runtime.ts.template +0 -0
- /package/src/utils/api-constructs/files/{app → cdk/app}/apis/http/__apiNameKebabCase__.ts.template +0 -0
- /package/src/utils/api-constructs/files/{app → cdk/app}/apis/rest/__apiNameKebabCase__.ts.template +0 -0
- /package/src/utils/api-constructs/files/{core → cdk/core}/api/http/http-api.ts.template +0 -0
- /package/src/utils/api-constructs/files/{core → cdk/core}/api/rest/rest-api.ts.template +0 -0
- /package/src/utils/api-constructs/files/{core → cdk/core}/api/trpc/trpc-utils.ts.template +0 -0
- /package/src/utils/api-constructs/files/{core → cdk/core}/api/utils/utils.ts.template +0 -0
|
@@ -14,7 +14,6 @@ const versions_1 = require("../../utils/versions");
|
|
|
14
14
|
const names_1 = require("../../utils/names");
|
|
15
15
|
const shared_constructs_1 = require("../../utils/shared-constructs");
|
|
16
16
|
const agent_core_constructs_1 = require("../../utils/agent-core-constructs/agent-core-constructs");
|
|
17
|
-
const shared_constructs_constants_1 = require("../../utils/shared-constructs-constants");
|
|
18
17
|
const npm_scope_1 = require("../../utils/npm-scope");
|
|
19
18
|
const esbuild_1 = require("../../utils/esbuild");
|
|
20
19
|
exports.TS_MCP_SERVER_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
@@ -81,27 +80,14 @@ const tsMcpServerGenerator = (tree, options) => tslib_1.__awaiter(void 0, void 0
|
|
|
81
80
|
],
|
|
82
81
|
});
|
|
83
82
|
// Add shared constructs
|
|
84
|
-
yield (0, shared_constructs_1.sharedConstructsGenerator)(tree);
|
|
85
|
-
// Ensure common constructs builds after our mcp server project
|
|
86
|
-
(0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR, 'project.json'), (config) => {
|
|
87
|
-
var _a;
|
|
88
|
-
if (!config.targets) {
|
|
89
|
-
config.targets = {};
|
|
90
|
-
}
|
|
91
|
-
if (!config.targets.build) {
|
|
92
|
-
config.targets.build = {};
|
|
93
|
-
}
|
|
94
|
-
config.targets.build.dependsOn = [
|
|
95
|
-
...((_a = config.targets.build.dependsOn) !== null && _a !== void 0 ? _a : []).filter((t) => t !== `${project.name}:build`),
|
|
96
|
-
`${project.name}:build`,
|
|
97
|
-
];
|
|
98
|
-
return config;
|
|
99
|
-
});
|
|
83
|
+
yield (0, shared_constructs_1.sharedConstructsGenerator)(tree, { iacProvider: options.iacProvider });
|
|
100
84
|
// Add the construct to deploy the mcp server
|
|
101
|
-
(0, agent_core_constructs_1.
|
|
85
|
+
(0, agent_core_constructs_1.addMcpServerInfra)(tree, {
|
|
102
86
|
mcpServerNameKebabCase: name,
|
|
103
87
|
mcpServerNameClassName: (0, names_1.toClassName)(name),
|
|
88
|
+
projectName: project.name,
|
|
104
89
|
dockerImageTag,
|
|
90
|
+
iacProvider: options.iacProvider,
|
|
105
91
|
});
|
|
106
92
|
// Add additional dependencies
|
|
107
93
|
devDeps = Object.assign(Object.assign({}, devDeps), (0, versions_1.withVersions)(['esbuild']));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/mcp-server/generator.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/mcp-server/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,14 @@
|
|
|
27
27
|
"type": "string",
|
|
28
28
|
"description": "The name of your MCP server (default: mcp-server)",
|
|
29
29
|
"x-prompt": "What would you like to call your MCP server? (default: mcp-server)"
|
|
30
|
+
},
|
|
31
|
+
"iacProvider": {
|
|
32
|
+
"type": "string",
|
|
33
|
+
"description": "The preferred IaC provider",
|
|
34
|
+
"enum": ["CDK", "Terraform"],
|
|
35
|
+
"x-priority": "important",
|
|
36
|
+
"default": "CDK",
|
|
37
|
+
"x-prompt": "Which provider would you like to manage your infrastructure? (default: CDK)"
|
|
30
38
|
}
|
|
31
39
|
},
|
|
32
40
|
"required": ["project"]
|
|
@@ -69,6 +69,7 @@ const tsNxPluginGenerator = (tree, options) => tslib_1.__awaiter(void 0, void 0,
|
|
|
69
69
|
yield (0, generator_2.default)(tree, {
|
|
70
70
|
project: fullyQualifiedName,
|
|
71
71
|
computeType: 'None',
|
|
72
|
+
iacProvider: 'CDK', // not used
|
|
72
73
|
});
|
|
73
74
|
const mcpPath = (0, devkit_1.joinPathFragments)(project.sourceRoot, 'mcp-server');
|
|
74
75
|
const mcpServerPath = (0, devkit_1.joinPathFragments)(mcpPath, 'server.ts');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/nx-plugin/generator.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCASoB;AAEpB,uCAIwB;AACxB,iDAAsE;AACtE,+CAA0D;AAC1D,sEAAuE;AACvE,mCAAuD;AACvD,gFAA2D;AAE9C,QAAA,2BAA2B,GACtC,IAAA,qBAAgB,EAAC,UAAU,CAAC,CAAC;AAExB,MAAM,mBAAmB,GAAG,CACjC,IAAU,EACV,OAAkC,EACN,EAAE;;IAC9B,4CAA4C;IAC5C,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,GAAG,IAAA,2BAAe,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACnE,MAAM,IAAA,mBAAkB,EAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAExC,mDAAmD;IACnD,IAAA,oCAA4B,EAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IAEvD,+EAA+E;IAC/E,MAAM,OAAO,GAAG,IAAA,wCAAmC,EAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;IAC9E,OAAO,CAAC,OAAO,mCACV,OAAO,CAAC,OAAO,KAClB,OAAO,EAAE;YACP,QAAQ,EAAE,YAAY;YACtB,OAAO,EAAE,CAAC,sBAAsB,CAAC;YACjC,OAAO,EAAE;gBACP,UAAU,EAAE,QAAQ,GAAG,UAAU;gBACjC,IAAI,EAAE,GAAG,GAAG,eAAe;gBAC3B,QAAQ,EAAE,GAAG,GAAG,oBAAoB;gBACpC,MAAM,EAAE;oBACN,GAAG,GAAG,OAAO;oBACb,GAAG,GAAG,WAAW;oBACjB,GAAG,GAAG,SAAS;oBACf;wBACE,KAAK,EAAE,KAAK,GAAG,MAAM;wBACrB,IAAI,EAAE,YAAY;wBAClB,MAAM,EAAE,OAAO;qBAChB;oBACD;wBACE,KAAK,EAAE,KAAK,GAAG,MAAM;wBACrB,IAAI,EAAE,WAAW;wBACjB,MAAM,EAAE,OAAO;qBAChB;oBACD;wBACE,KAAK,EAAE,KAAK,GAAG,EAAE;wBACjB,IAAI,EAAE,iBAAiB;wBACvB,MAAM,EAAE,GAAG;qBACZ;oBACD;wBACE,KAAK,EAAE,KAAK,GAAG,EAAE;wBACjB,IAAI,EAAE,gBAAgB;wBACtB,MAAM,EAAE,GAAG;qBACZ;iBACF;aACF;SACF,EACD,KAAK,EAAE;YACL,SAAS,EAAE;gBACT,GAAG,CAAC,MAAA,MAAA,MAAA,OAAO,CAAC,OAAO,0CAAE,KAAK,0CAAE,SAAS,mCAAI,EAAE,CAAC,CAAC,MAAM,CACjD,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,SAAS,CAChD;gBACD,SAAS;aACV;SACF,GACF,CAAC;IACF,IAAA,mCAA0B,EAAC,IAAI,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;IAE9D,+CAA+C;IAC/C,IAAI,CAAC,KAAK,CAAC,IAAA,0BAAiB,EAAC,OAAO,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;IAElE,oBAAoB;IACpB,MAAM,IAAA,mBAAoB,EAAC,IAAI,EAAE;QAC/B,OAAO,EAAE,kBAAkB;QAC3B,WAAW,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/nx-plugin/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,28 +3,34 @@
|
|
|
3
3
|
* SPDX-License-Identifier: Apache-2.0
|
|
4
4
|
*/
|
|
5
5
|
import { Tree } from '@nx/devkit';
|
|
6
|
-
export
|
|
6
|
+
export type IACProvider = {
|
|
7
|
+
iacProvider: 'CDK' | 'Terraform';
|
|
8
|
+
};
|
|
9
|
+
export interface AddAgentCoreInfraProps {
|
|
7
10
|
nameClassName: string;
|
|
8
11
|
nameKebabCase: string;
|
|
12
|
+
projectName: string;
|
|
9
13
|
dockerImageTag: string;
|
|
10
14
|
appDirectory: string;
|
|
11
15
|
serverProtocol: 'MCP' | 'HTTP';
|
|
12
16
|
}
|
|
13
|
-
export interface
|
|
17
|
+
export interface AddMcpServerInfraProps {
|
|
14
18
|
mcpServerNameClassName: string;
|
|
15
19
|
mcpServerNameKebabCase: string;
|
|
20
|
+
projectName: string;
|
|
16
21
|
dockerImageTag: string;
|
|
17
22
|
}
|
|
18
23
|
/**
|
|
19
24
|
* Add an MCP server CDK construct
|
|
20
25
|
*/
|
|
21
|
-
export declare const
|
|
22
|
-
export interface
|
|
26
|
+
export declare const addMcpServerInfra: (tree: Tree, options: AddMcpServerInfraProps & IACProvider) => void;
|
|
27
|
+
export interface AddAgentInfraProps {
|
|
23
28
|
agentNameClassName: string;
|
|
24
29
|
agentNameKebabCase: string;
|
|
30
|
+
projectName: string;
|
|
25
31
|
dockerImageTag: string;
|
|
26
32
|
}
|
|
27
33
|
/**
|
|
28
34
|
* Add an MCP server CDK construct
|
|
29
35
|
*/
|
|
30
|
-
export declare const
|
|
36
|
+
export declare const addAgentInfra: (tree: Tree, options: AddAgentInfraProps & IACProvider) => void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.addAgentInfra = exports.addMcpServerInfra = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
6
6
|
* SPDX-License-Identifier: Apache-2.0
|
|
@@ -9,45 +9,86 @@ const devkit_1 = require("@nx/devkit");
|
|
|
9
9
|
const shared_constructs_constants_1 = require("../shared-constructs-constants");
|
|
10
10
|
const ast_1 = require("../ast");
|
|
11
11
|
const versions_1 = require("../versions");
|
|
12
|
-
const
|
|
12
|
+
const addAgentCoreInfra = (tree, options) => {
|
|
13
|
+
switch (options.iacProvider) {
|
|
14
|
+
case 'CDK':
|
|
15
|
+
addAgentCoreCDKInfra(tree, options);
|
|
16
|
+
break;
|
|
17
|
+
case 'Terraform':
|
|
18
|
+
addAgentCoreTerraformInfra(tree, options);
|
|
19
|
+
break;
|
|
20
|
+
}
|
|
21
|
+
// Update shared constructs/terraform project configuration to depend on this project
|
|
22
|
+
(0, devkit_1.updateJson)(tree, (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, options.iacProvider === 'CDK'
|
|
23
|
+
? shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR
|
|
24
|
+
: shared_constructs_constants_1.SHARED_TERRAFORM_DIR, 'project.json'), (config) => {
|
|
25
|
+
var _a;
|
|
26
|
+
if (!config.targets) {
|
|
27
|
+
config.targets = {};
|
|
28
|
+
}
|
|
29
|
+
if (!config.targets.build) {
|
|
30
|
+
config.targets.build = {};
|
|
31
|
+
}
|
|
32
|
+
config.targets.build.dependsOn = [
|
|
33
|
+
...((_a = config.targets.build.dependsOn) !== null && _a !== void 0 ? _a : []).filter((t) => t !== `${options.projectName}:build`),
|
|
34
|
+
`${options.projectName}:build`,
|
|
35
|
+
];
|
|
36
|
+
return config;
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
const addAgentCoreCDKInfra = (tree, options) => {
|
|
13
40
|
// Construct uses bedrock agentcore types
|
|
14
41
|
(0, devkit_1.addDependenciesToPackageJson)(tree, {}, (0, versions_1.withVersions)(['@aws-sdk/client-bedrock-agentcore-control']));
|
|
15
42
|
// Add the AgentCore runtime construct
|
|
16
|
-
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'core', 'agent-core'), (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR, 'src', 'core', 'agent-core'), {}, {
|
|
43
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'cdk', 'core', 'agent-core'), (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR, 'src', 'core', 'agent-core'), {}, {
|
|
17
44
|
overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting,
|
|
18
45
|
});
|
|
19
46
|
// Generate app specific CDK construct
|
|
20
|
-
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'app', 'agent-core'), (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR, 'src', 'app', options.appDirectory), options, {
|
|
47
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'cdk', 'app', 'agent-core'), (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR, 'src', 'app', options.appDirectory), options, {
|
|
21
48
|
overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting,
|
|
22
49
|
});
|
|
23
50
|
// Export app specific CDK construct
|
|
24
51
|
(0, ast_1.addStarExport)(tree, (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR, 'src', 'app', options.appDirectory, 'index.ts'), `./${options.nameKebabCase}/${options.nameKebabCase}.js`);
|
|
25
52
|
(0, ast_1.addStarExport)(tree, (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_CONSTRUCTS_DIR, 'src', 'app', 'index.ts'), `./${options.appDirectory}/index.js`);
|
|
26
53
|
};
|
|
54
|
+
const addAgentCoreTerraformInfra = (tree, options) => {
|
|
55
|
+
// Add the AgentCore shared module
|
|
56
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'terraform', 'core', 'agent-core'), (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_TERRAFORM_DIR, 'src', 'core', 'agent-core'), {}, {
|
|
57
|
+
overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting,
|
|
58
|
+
});
|
|
59
|
+
// Generate app specific agent core configuration
|
|
60
|
+
(0, devkit_1.generateFiles)(tree, (0, devkit_1.joinPathFragments)(__dirname, 'files', 'terraform', 'app', 'agent-core'), (0, devkit_1.joinPathFragments)(shared_constructs_constants_1.PACKAGES_DIR, shared_constructs_constants_1.SHARED_TERRAFORM_DIR, 'src', 'app', options.appDirectory), options, {
|
|
61
|
+
overwriteStrategy: devkit_1.OverwriteStrategy.KeepExisting,
|
|
62
|
+
});
|
|
63
|
+
};
|
|
27
64
|
/**
|
|
28
65
|
* Add an MCP server CDK construct
|
|
29
66
|
*/
|
|
30
|
-
const
|
|
31
|
-
|
|
67
|
+
const addMcpServerInfra = (tree, options) => {
|
|
68
|
+
addAgentCoreInfra(tree, {
|
|
32
69
|
nameClassName: options.mcpServerNameClassName,
|
|
33
70
|
nameKebabCase: options.mcpServerNameKebabCase,
|
|
34
71
|
dockerImageTag: options.dockerImageTag,
|
|
72
|
+
projectName: options.projectName,
|
|
35
73
|
appDirectory: 'mcp-servers',
|
|
36
74
|
serverProtocol: 'MCP',
|
|
75
|
+
iacProvider: options.iacProvider,
|
|
37
76
|
});
|
|
38
77
|
};
|
|
39
|
-
exports.
|
|
78
|
+
exports.addMcpServerInfra = addMcpServerInfra;
|
|
40
79
|
/**
|
|
41
80
|
* Add an MCP server CDK construct
|
|
42
81
|
*/
|
|
43
|
-
const
|
|
44
|
-
|
|
82
|
+
const addAgentInfra = (tree, options) => {
|
|
83
|
+
addAgentCoreInfra(tree, {
|
|
45
84
|
nameClassName: options.agentNameClassName,
|
|
46
85
|
nameKebabCase: options.agentNameKebabCase,
|
|
86
|
+
projectName: options.projectName,
|
|
47
87
|
dockerImageTag: options.dockerImageTag,
|
|
48
88
|
appDirectory: 'agents',
|
|
49
89
|
serverProtocol: 'HTTP',
|
|
90
|
+
iacProvider: options.iacProvider,
|
|
50
91
|
});
|
|
51
92
|
};
|
|
52
|
-
exports.
|
|
93
|
+
exports.addAgentInfra = addAgentInfra;
|
|
53
94
|
//# sourceMappingURL=agent-core-constructs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-core-constructs.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/utils/agent-core-constructs/agent-core-constructs.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,
|
|
1
|
+
{"version":3,"file":"agent-core-constructs.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/utils/agent-core-constructs/agent-core-constructs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
variable "env" {
|
|
2
|
+
description = "Environment variables to pass to the agent core runtime"
|
|
3
|
+
type = map(string)
|
|
4
|
+
default = {}
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
variable "additional_iam_policy_statements" {
|
|
8
|
+
description = "Additional IAM policy statements to attach to the agent core runtime role"
|
|
9
|
+
type = list(object({
|
|
10
|
+
Effect = string
|
|
11
|
+
Action = list(string)
|
|
12
|
+
Resource = list(string)
|
|
13
|
+
}))
|
|
14
|
+
default = []
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
variable "tags" {
|
|
18
|
+
description = "Tags to apply to resources"
|
|
19
|
+
type = map(string)
|
|
20
|
+
default = {}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
module "agent_core_runtime" {
|
|
24
|
+
source = "../../../core/agent-core"
|
|
25
|
+
agent_runtime_name = "<%= nameClassName %>"
|
|
26
|
+
docker_image_tag = "<%= dockerImageTag %>"
|
|
27
|
+
server_protocol = "<%= serverProtocol %>"
|
|
28
|
+
# customJWTAuthorizer = {
|
|
29
|
+
# discoveryUrl = "https://xxx/.well-known/openid-configuration",
|
|
30
|
+
# allowedClients = [ "xxx" ]
|
|
31
|
+
# }
|
|
32
|
+
|
|
33
|
+
env = var.env
|
|
34
|
+
additional_iam_policy_statements = var.additional_iam_policy_statements
|
|
35
|
+
tags = var.tags
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
output "agent_core_runtime_role_arn" {
|
|
39
|
+
description = "ARN of the agent core runtime role"
|
|
40
|
+
value = module.agent_core_runtime.agent_core_runtime_role_arn
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
output "agent_core_runtime_arn" {
|
|
44
|
+
description = "ARN of the Bedrock Agent Core runtime"
|
|
45
|
+
value = module.agent_core_runtime.agent_core_runtime_arn
|
|
46
|
+
}
|