@aws/nx-plugin 0.114.2 → 0.114.3
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/ts/rdb/__snapshots__/generator.spec.ts.snap +10 -4
- package/src/ts/rdb/files/src/prisma.ts.template +10 -4
- package/src/ts/rdb/mcp-server-connection/__snapshots__/generator.spec.ts.snap +42 -0
- package/src/ts/rdb/mcp-server-connection/generator.js +4 -0
- package/src/ts/rdb/mcp-server-connection/generator.js.map +1 -1
- package/src/ts/rdb/strands-agent-connection/__snapshots__/generator.spec.ts.snap +63 -0
- package/src/ts/rdb/strands-agent-connection/generator.js +4 -0
- package/src/ts/rdb/strands-agent-connection/generator.js.map +1 -1
- package/src/ts/rdb/utils.d.ts +6 -0
- package/src/ts/rdb/utils.js +20 -0
- package/src/ts/rdb/utils.js.map +1 -0
- package/src/ts/react-website/cognito-auth/__snapshots__/generator.spec.ts.snap +7 -5
- package/src/utils/identity-constructs/files/cdk/core/user-identity.ts.template +7 -6
package/package.json
CHANGED
|
@@ -4099,9 +4099,13 @@ import {
|
|
|
4099
4099
|
} from './constants.js';
|
|
4100
4100
|
import { getDatabaseConfig } from './utils.js';
|
|
4101
4101
|
|
|
4102
|
+
let prismaClient: PrismaClient<Prisma.LogLevel> | undefined;
|
|
4103
|
+
|
|
4102
4104
|
export const getPrisma = async <LogOpts extends Prisma.LogLevel>(
|
|
4103
4105
|
log: LogOpts[] = ['warn', 'error'] as LogOpts[],
|
|
4104
4106
|
): Promise<PrismaClient<LogOpts>> => {
|
|
4107
|
+
if (prismaClient) return prismaClient;
|
|
4108
|
+
|
|
4105
4109
|
if (process.env.SERVE_LOCAL === 'true') {
|
|
4106
4110
|
const adapter = new PrismaPg(
|
|
4107
4111
|
new Pool({
|
|
@@ -4113,10 +4117,11 @@ export const getPrisma = async <LogOpts extends Prisma.LogLevel>(
|
|
|
4113
4117
|
allowExitOnIdle: true,
|
|
4114
4118
|
}),
|
|
4115
4119
|
);
|
|
4116
|
-
|
|
4120
|
+
prismaClient = new PrismaClient({
|
|
4117
4121
|
adapter,
|
|
4118
4122
|
log,
|
|
4119
|
-
}) as unknown as PrismaClient<
|
|
4123
|
+
}) as unknown as PrismaClient<Prisma.LogLevel>;
|
|
4124
|
+
return prismaClient;
|
|
4120
4125
|
}
|
|
4121
4126
|
|
|
4122
4127
|
const { hostname, port, database, dbUser, region } =
|
|
@@ -4143,10 +4148,11 @@ export const getPrisma = async <LogOpts extends Prisma.LogLevel>(
|
|
|
4143
4148
|
}),
|
|
4144
4149
|
);
|
|
4145
4150
|
|
|
4146
|
-
|
|
4151
|
+
prismaClient = new PrismaClient({
|
|
4147
4152
|
adapter,
|
|
4148
4153
|
log,
|
|
4149
|
-
}) as unknown as PrismaClient<
|
|
4154
|
+
}) as unknown as PrismaClient<Prisma.LogLevel>;
|
|
4155
|
+
return prismaClient;
|
|
4150
4156
|
};
|
|
4151
4157
|
"
|
|
4152
4158
|
`;
|
|
@@ -60,9 +60,13 @@ export const getPrisma = async <LogOpts extends Prisma.LogLevel>(
|
|
|
60
60
|
};
|
|
61
61
|
<%_ } else { _%>
|
|
62
62
|
|
|
63
|
+
let prismaClient: PrismaClient<Prisma.LogLevel> | undefined;
|
|
64
|
+
|
|
63
65
|
export const getPrisma = async <LogOpts extends Prisma.LogLevel>(
|
|
64
66
|
log: LogOpts[] = ['warn', 'error'] as LogOpts[],
|
|
65
67
|
): Promise<PrismaClient<LogOpts>> => {
|
|
68
|
+
if (prismaClient) return prismaClient;
|
|
69
|
+
|
|
66
70
|
if (process.env.SERVE_LOCAL === 'true') {
|
|
67
71
|
const adapter = new PrismaPg(
|
|
68
72
|
new Pool({
|
|
@@ -74,10 +78,11 @@ export const getPrisma = async <LogOpts extends Prisma.LogLevel>(
|
|
|
74
78
|
allowExitOnIdle: true,
|
|
75
79
|
}),
|
|
76
80
|
);
|
|
77
|
-
|
|
81
|
+
prismaClient = new PrismaClient({
|
|
78
82
|
adapter,
|
|
79
83
|
log,
|
|
80
|
-
}) as unknown as PrismaClient<
|
|
84
|
+
}) as unknown as PrismaClient<Prisma.LogLevel>;
|
|
85
|
+
return prismaClient;
|
|
81
86
|
}
|
|
82
87
|
|
|
83
88
|
const { hostname, port, database, dbUser, region } =
|
|
@@ -104,9 +109,10 @@ export const getPrisma = async <LogOpts extends Prisma.LogLevel>(
|
|
|
104
109
|
}),
|
|
105
110
|
);
|
|
106
111
|
|
|
107
|
-
|
|
112
|
+
prismaClient = new PrismaClient({
|
|
108
113
|
adapter,
|
|
109
114
|
log,
|
|
110
|
-
}) as unknown as PrismaClient<
|
|
115
|
+
}) as unknown as PrismaClient<Prisma.LogLevel>;
|
|
116
|
+
return prismaClient;
|
|
111
117
|
};
|
|
112
118
|
<%_ } _%>
|
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
2
|
|
|
3
|
+
exports[`ts#rdb mcp-server-connection generator > should add RDS CA bundle to Dockerfile 1`] = `
|
|
4
|
+
"FROM public.ecr.aws/docker/library/node:lts-jod
|
|
5
|
+
|
|
6
|
+
WORKDIR /app
|
|
7
|
+
|
|
8
|
+
RUN npm install @aws/aws-distro-opentelemetry-node-autoinstrumentation@0.7.0
|
|
9
|
+
|
|
10
|
+
COPY index.js /app
|
|
11
|
+
|
|
12
|
+
RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates && \\
|
|
13
|
+
rm -rf /var/lib/apt/lists/* && \\
|
|
14
|
+
curl -fsSL "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" \\
|
|
15
|
+
-o /usr/local/share/ca-certificates/rds-bundle.crt && \\
|
|
16
|
+
update-ca-certificates
|
|
17
|
+
|
|
18
|
+
EXPOSE 8000
|
|
19
|
+
|
|
20
|
+
CMD [ "node", "--require", "@aws/aws-distro-opentelemetry-node-autoinstrumentation/register", "index.js" ]
|
|
21
|
+
"
|
|
22
|
+
`;
|
|
23
|
+
|
|
3
24
|
exports[`ts#rdb mcp-server-connection generator > should add rdb serve-local dependency to the mcp-server prefixed serve-local 1`] = `
|
|
4
25
|
{
|
|
5
26
|
"$schema": "../../node_modules/nx/schemas/project-schema.json",
|
|
@@ -31,6 +52,27 @@ exports[`ts#rdb mcp-server-connection generator > should add rdb serve-local dep
|
|
|
31
52
|
}
|
|
32
53
|
`;
|
|
33
54
|
|
|
55
|
+
exports[`ts#rdb mcp-server-connection generator > should be idempotent for Dockerfile 1`] = `
|
|
56
|
+
"FROM public.ecr.aws/docker/library/node:lts-jod
|
|
57
|
+
|
|
58
|
+
WORKDIR /app
|
|
59
|
+
|
|
60
|
+
RUN npm install @aws/aws-distro-opentelemetry-node-autoinstrumentation@0.7.0
|
|
61
|
+
|
|
62
|
+
COPY index.js /app
|
|
63
|
+
|
|
64
|
+
RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates && \\
|
|
65
|
+
rm -rf /var/lib/apt/lists/* && \\
|
|
66
|
+
curl -fsSL "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" \\
|
|
67
|
+
-o /usr/local/share/ca-certificates/rds-bundle.crt && \\
|
|
68
|
+
update-ca-certificates
|
|
69
|
+
|
|
70
|
+
EXPOSE 8000
|
|
71
|
+
|
|
72
|
+
CMD [ "node", "--require", "@aws/aws-distro-opentelemetry-node-autoinstrumentation/register", "index.js" ]
|
|
73
|
+
"
|
|
74
|
+
`;
|
|
75
|
+
|
|
34
76
|
exports[`ts#rdb mcp-server-connection generator > should be idempotent for server.ts 1`] = `
|
|
35
77
|
"import { getPrisma as getDb } from 'db';
|
|
36
78
|
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
@@ -14,6 +14,7 @@ const names_1 = require("../../../utils/names");
|
|
|
14
14
|
const lodash_camelcase_1 = tslib_1.__importDefault(require("lodash.camelcase"));
|
|
15
15
|
const npm_scope_1 = require("../../../utils/npm-scope");
|
|
16
16
|
const ast_1 = require("../../../utils/ast");
|
|
17
|
+
const utils_1 = require("../utils");
|
|
17
18
|
exports.TS_RDB_MCP_SERVER_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
18
19
|
const tsRdbMcpServerConnectionGenerator = async (tree, options) => {
|
|
19
20
|
const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
@@ -33,6 +34,9 @@ const tsRdbMcpServerConnectionGenerator = async (tree, options) => {
|
|
|
33
34
|
const rdbPackageAlias = (0, npm_scope_1.toScopeAlias)(targetProject.name);
|
|
34
35
|
const getterAlias = `getPrisma as get${rdbNamePascal}`;
|
|
35
36
|
const serverPath = (0, devkit_1.joinPathFragments)(sourceProject.root, 'src', mcpServerName, 'server.ts');
|
|
37
|
+
// Dockerfile: install RDS CA bundle for direct Aurora SSL connections
|
|
38
|
+
const dockerfilePath = (0, devkit_1.joinPathFragments)(sourceProject.root, 'src', mcpServerName, 'Dockerfile');
|
|
39
|
+
(0, utils_1.injectRdsCaBundleIntoDockerfile)(tree, dockerfilePath);
|
|
36
40
|
// server.ts: inject db inside createServer body
|
|
37
41
|
if (tree.exists(serverPath)) {
|
|
38
42
|
await (0, ast_1.addDestructuredImport)(tree, serverPath, [getterAlias], rdbPackageAlias);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/rdb/mcp-server-connection/generator.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAIoB;AAEpB,0CAK2B;AAC3B,oDAAyE;AACzE,kDAA6D;AAC7D,gDAAkD;AAClD,gFAAyC;AACzC,wDAAwD;AACxD,4CAAwE;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/rdb/mcp-server-connection/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,47 @@
|
|
|
1
1
|
// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html
|
|
2
2
|
|
|
3
|
+
exports[`ts#rdb strands-agent-connection generator > should add RDS CA bundle to Dockerfile (A2A) 1`] = `
|
|
4
|
+
"FROM public.ecr.aws/docker/library/node:lts-jod
|
|
5
|
+
|
|
6
|
+
WORKDIR /app
|
|
7
|
+
|
|
8
|
+
RUN npm install @aws/aws-distro-opentelemetry-node-autoinstrumentation@0.7.0
|
|
9
|
+
|
|
10
|
+
COPY index.js /app
|
|
11
|
+
|
|
12
|
+
RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates && \\
|
|
13
|
+
rm -rf /var/lib/apt/lists/* && \\
|
|
14
|
+
curl -fsSL "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" \\
|
|
15
|
+
-o /usr/local/share/ca-certificates/rds-bundle.crt && \\
|
|
16
|
+
update-ca-certificates
|
|
17
|
+
|
|
18
|
+
EXPOSE 9000
|
|
19
|
+
|
|
20
|
+
CMD [ "node", "--require", "@aws/aws-distro-opentelemetry-node-autoinstrumentation/register", "index.js" ]
|
|
21
|
+
"
|
|
22
|
+
`;
|
|
23
|
+
|
|
24
|
+
exports[`ts#rdb strands-agent-connection generator > should add RDS CA bundle to Dockerfile (HTTP) 1`] = `
|
|
25
|
+
"FROM public.ecr.aws/docker/library/node:lts-jod
|
|
26
|
+
|
|
27
|
+
WORKDIR /app
|
|
28
|
+
|
|
29
|
+
RUN npm install @aws/aws-distro-opentelemetry-node-autoinstrumentation@0.7.0
|
|
30
|
+
|
|
31
|
+
COPY index.js /app
|
|
32
|
+
|
|
33
|
+
RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates && \\
|
|
34
|
+
rm -rf /var/lib/apt/lists/* && \\
|
|
35
|
+
curl -fsSL "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" \\
|
|
36
|
+
-o /usr/local/share/ca-certificates/rds-bundle.crt && \\
|
|
37
|
+
update-ca-certificates
|
|
38
|
+
|
|
39
|
+
EXPOSE 8080
|
|
40
|
+
|
|
41
|
+
CMD [ "node", "--require", "@aws/aws-distro-opentelemetry-node-autoinstrumentation/register", "index.js" ]
|
|
42
|
+
"
|
|
43
|
+
`;
|
|
44
|
+
|
|
3
45
|
exports[`ts#rdb strands-agent-connection generator > should add rdb serve-local dependency to the agent prefixed serve-local 1`] = `
|
|
4
46
|
{
|
|
5
47
|
"$schema": "../../node_modules/nx/schemas/project-schema.json",
|
|
@@ -55,6 +97,27 @@ export const getAgent = async () => {
|
|
|
55
97
|
"
|
|
56
98
|
`;
|
|
57
99
|
|
|
100
|
+
exports[`ts#rdb strands-agent-connection generator > should be idempotent for Dockerfile 1`] = `
|
|
101
|
+
"FROM public.ecr.aws/docker/library/node:lts-jod
|
|
102
|
+
|
|
103
|
+
WORKDIR /app
|
|
104
|
+
|
|
105
|
+
RUN npm install @aws/aws-distro-opentelemetry-node-autoinstrumentation@0.7.0
|
|
106
|
+
|
|
107
|
+
COPY index.js /app
|
|
108
|
+
|
|
109
|
+
RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates && \\
|
|
110
|
+
rm -rf /var/lib/apt/lists/* && \\
|
|
111
|
+
curl -fsSL "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" \\
|
|
112
|
+
-o /usr/local/share/ca-certificates/rds-bundle.crt && \\
|
|
113
|
+
update-ca-certificates
|
|
114
|
+
|
|
115
|
+
EXPOSE 8080
|
|
116
|
+
|
|
117
|
+
CMD [ "node", "--require", "@aws/aws-distro-opentelemetry-node-autoinstrumentation/register", "index.js" ]
|
|
118
|
+
"
|
|
119
|
+
`;
|
|
120
|
+
|
|
58
121
|
exports[`ts#rdb strands-agent-connection generator > should be idempotent for agent.ts injection 1`] = `
|
|
59
122
|
"import { getPrisma as getDb } from 'db';
|
|
60
123
|
import { Agent, tool } from '@strands-agents/sdk';
|
|
@@ -14,6 +14,7 @@ const names_1 = require("../../../utils/names");
|
|
|
14
14
|
const lodash_camelcase_1 = tslib_1.__importDefault(require("lodash.camelcase"));
|
|
15
15
|
const npm_scope_1 = require("../../../utils/npm-scope");
|
|
16
16
|
const ast_1 = require("../../../utils/ast");
|
|
17
|
+
const utils_1 = require("../utils");
|
|
17
18
|
exports.TS_RDB_STRANDS_AGENT_CONNECTION_GENERATOR_INFO = (0, nx_1.getGeneratorInfo)(__filename);
|
|
18
19
|
const tsRdbStrandsAgentConnectionGenerator = async (tree, options) => {
|
|
19
20
|
const sourceProject = (0, nx_1.readProjectConfigurationUnqualified)(tree, options.sourceProject);
|
|
@@ -34,6 +35,9 @@ const tsRdbStrandsAgentConnectionGenerator = async (tree, options) => {
|
|
|
34
35
|
const getterAlias = `getPrisma as get${rdbNamePascal}`;
|
|
35
36
|
const agentSourceDir = (0, devkit_1.joinPathFragments)(sourceProject.root, 'src', agentName);
|
|
36
37
|
const agentPath = (0, devkit_1.joinPathFragments)(agentSourceDir, 'agent.ts');
|
|
38
|
+
// Dockerfile: install RDS CA bundle for direct Aurora SSL connections
|
|
39
|
+
const dockerfilePath = (0, devkit_1.joinPathFragments)(agentSourceDir, 'Dockerfile');
|
|
40
|
+
(0, utils_1.injectRdsCaBundleIntoDockerfile)(tree, dockerfilePath);
|
|
37
41
|
if (tree.exists(agentPath)) {
|
|
38
42
|
await (0, ast_1.addDestructuredImport)(tree, agentPath, [getterAlias], rdbPackageAlias);
|
|
39
43
|
// Block body form: export const getAgent = async () => { ... }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/rdb/strands-agent-connection/generator.ts"],"names":[],"mappings":";;;;AAAA;;;GAGG;AACH,uCAIoB;AAEpB,0CAK2B;AAC3B,oDAAyE;AACzE,kDAA6D;AAC7D,gDAAkD;AAClD,gFAAyC;AACzC,wDAAwD;AACxD,4CAAwE;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../../../../../packages/nx-plugin/src/ts/rdb/strands-agent-connection/generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.injectRdsCaBundleIntoDockerfile = void 0;
|
|
4
|
+
const RDS_CA_RUN = [
|
|
5
|
+
'RUN apt-get update && apt-get install -y --no-install-recommends curl ca-certificates && \\',
|
|
6
|
+
' rm -rf /var/lib/apt/lists/* && \\',
|
|
7
|
+
' curl -fsSL "https://truststore.pki.rds.amazonaws.com/global/global-bundle.pem" \\',
|
|
8
|
+
' -o /usr/local/share/ca-certificates/rds-bundle.crt && \\',
|
|
9
|
+
' update-ca-certificates',
|
|
10
|
+
].join('\n');
|
|
11
|
+
const injectRdsCaBundleIntoDockerfile = (tree, dockerfilePath) => {
|
|
12
|
+
if (!tree.exists(dockerfilePath))
|
|
13
|
+
return;
|
|
14
|
+
const content = tree.read(dockerfilePath, 'utf-8');
|
|
15
|
+
if (content.includes('rds-bundle.crt'))
|
|
16
|
+
return;
|
|
17
|
+
tree.write(dockerfilePath, content.replace(/^(EXPOSE \d+)/m, `${RDS_CA_RUN}\n\n$1`));
|
|
18
|
+
};
|
|
19
|
+
exports.injectRdsCaBundleIntoDockerfile = injectRdsCaBundleIntoDockerfile;
|
|
20
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../packages/nx-plugin/src/ts/rdb/utils.ts"],"names":[],"mappings":";;;AAMA,MAAM,UAAU,GAAG;IACjB,6FAA6F;IAC7F,uCAAuC;IACvC,uFAAuF;IACvF,8DAA8D;IAC9D,4BAA4B;CAC7B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEN,MAAM,+BAA+B,GAAG,CAC7C,IAAU,EACV,cAAsB,EAChB,EAAE;IACR,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;QAAE,OAAO;IACzC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,CAAE,CAAC;IACpD,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAAE,OAAO;IAC/C,IAAI,CAAC,KAAK,CACR,cAAc,EACd,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,GAAG,UAAU,QAAQ,CAAC,CACzD,CAAC;AACJ,CAAC,CAAC;AAXW,QAAA,+BAA+B,mCAW1C"}
|
|
@@ -196,11 +196,13 @@ export class UserIdentity extends Construct {
|
|
|
196
196
|
});
|
|
197
197
|
// Retain the SMS role alongside the pool so the pool can still be updated and deleted manually
|
|
198
198
|
const poolCfn = userPool.node.defaultChild as CfnResource;
|
|
199
|
-
const
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
199
|
+
const smsRoleNode = userPool.node.tryFindChild('smsRole');
|
|
200
|
+
if (smsRoleNode) {
|
|
201
|
+
const smsRoleCfn = smsRoleNode.node.defaultChild as CfnResource;
|
|
202
|
+
smsRoleCfn.cfnOptions.deletionPolicy = poolCfn.cfnOptions.deletionPolicy;
|
|
203
|
+
smsRoleCfn.cfnOptions.updateReplacePolicy =
|
|
204
|
+
poolCfn.cfnOptions.updateReplacePolicy;
|
|
205
|
+
}
|
|
204
206
|
return userPool;
|
|
205
207
|
};
|
|
206
208
|
|
|
@@ -108,12 +108,13 @@ export class UserIdentity extends Construct {
|
|
|
108
108
|
});
|
|
109
109
|
// Retain the SMS role alongside the pool so the pool can still be updated and deleted manually
|
|
110
110
|
const poolCfn = userPool.node.defaultChild as CfnResource;
|
|
111
|
-
const
|
|
112
|
-
|
|
113
|
-
.node.defaultChild as CfnResource;
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
111
|
+
const smsRoleNode = userPool.node.tryFindChild('smsRole');
|
|
112
|
+
if (smsRoleNode) {
|
|
113
|
+
const smsRoleCfn = smsRoleNode.node.defaultChild as CfnResource;
|
|
114
|
+
smsRoleCfn.cfnOptions.deletionPolicy = poolCfn.cfnOptions.deletionPolicy;
|
|
115
|
+
smsRoleCfn.cfnOptions.updateReplacePolicy =
|
|
116
|
+
poolCfn.cfnOptions.updateReplacePolicy;
|
|
117
|
+
}
|
|
117
118
|
return userPool;
|
|
118
119
|
};
|
|
119
120
|
|