@payfit/nx-core 5.21.5 → 5.22.0-ephemeral-feature-nx-core-lambda-define-regions.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/dist/src/executors/publisher/lambda.js +2 -1
- package/dist/src/executors/publisher/lambda.js.map +1 -1
- package/dist/src/executors/publisher/schema.d.ts +1 -0
- package/dist/src/executors/publisher/schema.json +5 -0
- package/dist/src/executors/release/executor.js +32 -62
- package/dist/src/executors/release/executor.js.map +1 -1
- package/dist/src/utils/lambda/aws-lambda.d.ts +4 -2
- package/dist/src/utils/lambda/aws-lambda.js +6 -4
- package/dist/src/utils/lambda/aws-lambda.js.map +1 -1
- package/dist/src/utils/lambda/publish.d.ts +2 -1
- package/dist/src/utils/lambda/publish.js +4 -3
- package/dist/src/utils/lambda/publish.js.map +1 -1
- package/package.json +4 -4
|
@@ -33,6 +33,7 @@ async function publishLambda(options, context, version, projectRoot, isDryRun, a
|
|
|
33
33
|
const projectName = context.projectName;
|
|
34
34
|
const lambdaFunctions = options.lambdaFunctions;
|
|
35
35
|
const lambdaStacks = options.lambdaStacks;
|
|
36
|
+
const lambdaRegion = options.lambdaRegion ?? 'eu-west-3';
|
|
36
37
|
const lambdaBucket = options.lambdaBucket;
|
|
37
38
|
if (!lambdaFunctions || lambdaFunctions.length === 0) {
|
|
38
39
|
throw new Error(`lambdaFunctions is required for Lambda publishing on project ${projectName}`);
|
|
@@ -91,7 +92,7 @@ async function publishLambda(options, context, version, projectRoot, isDryRun, a
|
|
|
91
92
|
}
|
|
92
93
|
// When we create the spacelift stack, we also run the smoke tests so we should not publish to ECR if the tests fails
|
|
93
94
|
logger_1.consola.box(`Creating new Lambda version and running smoke tests`);
|
|
94
|
-
await (0, publish_1.createLambdaVersion)(lambdaStacks, lambdaFunctions, version);
|
|
95
|
+
await (0, publish_1.createLambdaVersion)(lambdaStacks, lambdaFunctions, version, lambdaRegion);
|
|
95
96
|
const packageJsonPath = (0, path_1.join)(projectDist, 'package.json');
|
|
96
97
|
logger_1.consola.info(`Pushing OCI Artifact to ECR ${(0, ecr_1.getAwsEcrRegistry)()}/${options.lambdaOciRepository}:${version}`);
|
|
97
98
|
await (0, aws_auth_1.loginToEcr)((0, ecr_1.getAwsEcrRegistry)());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lambda.js","sourceRoot":"","sources":["../../../../src/executors/publisher/lambda.ts"],"names":[],"mappings":";;AA+BA,
|
|
1
|
+
{"version":3,"file":"lambda.js","sourceRoot":"","sources":["../../../../src/executors/publisher/lambda.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,6 +49,11 @@
|
|
|
49
49
|
"description": "The S3 bucket for lambda",
|
|
50
50
|
"default": "payfit-shared-lambda-artifacts"
|
|
51
51
|
},
|
|
52
|
+
"lambdaRegion": {
|
|
53
|
+
"type": "string",
|
|
54
|
+
"description": "AWS region for Lambda deployment and operations. ECR remains in eu-west-3.",
|
|
55
|
+
"default": "eu-west-3"
|
|
56
|
+
},
|
|
52
57
|
"lambdaStacks": {
|
|
53
58
|
"type": "array",
|
|
54
59
|
"description": "The list of stacks to publish the lambda to"
|
|
@@ -8,43 +8,6 @@ const github_1 = require("../../utils/common/github");
|
|
|
8
8
|
const logger_1 = require("../../utils/common/logger");
|
|
9
9
|
const octokit_1 = require("../../utils/common/octokit");
|
|
10
10
|
const tsh_1 = require("../../utils/common/tsh");
|
|
11
|
-
const getTagForProject = (projectName, newVersion, releaseConfig) => {
|
|
12
|
-
const groupPattern = Object.values(releaseConfig?.groups || {}).find(group => group.projects?.includes(projectName))?.releaseTag?.pattern ||
|
|
13
|
-
Object.values(releaseConfig?.groups || {}).find(group => group.projects?.includes('*'))?.releaseTag?.pattern ||
|
|
14
|
-
releaseConfig?.groups?.[projectName]?.releaseTag?.pattern;
|
|
15
|
-
const pattern = groupPattern ||
|
|
16
|
-
releaseConfig?.releaseTag?.pattern ||
|
|
17
|
-
'{projectName}@{version}';
|
|
18
|
-
return pattern
|
|
19
|
-
.replace('{projectName}', projectName)
|
|
20
|
-
.replace('{version}', newVersion);
|
|
21
|
-
};
|
|
22
|
-
const cleanupProjectsRelease = async (projects, context) => {
|
|
23
|
-
const nxJson = JSON.parse(fs.readFileSync(path.join(context.root, 'nx.json'), 'utf-8'));
|
|
24
|
-
const releaseConfig = nxJson?.release;
|
|
25
|
-
const octokit = (0, octokit_1.OctokitAuth)();
|
|
26
|
-
let repositoryName;
|
|
27
|
-
try {
|
|
28
|
-
repositoryName = await (0, github_1.getGitRepositoryName)();
|
|
29
|
-
}
|
|
30
|
-
catch (error) {
|
|
31
|
-
logger_1.consola.error(`Error while retrieving repository name, skipping release removal: ${error}`);
|
|
32
|
-
}
|
|
33
|
-
for (const { projectName, newVersion } of projects) {
|
|
34
|
-
const tag = getTagForProject(projectName, newVersion, releaseConfig);
|
|
35
|
-
try {
|
|
36
|
-
if (repositoryName) {
|
|
37
|
-
await (0, github_1.removeRelease)(octokit, 'PayFit', repositoryName, tag);
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
catch (error) {
|
|
41
|
-
logger_1.consola.error(`Error while removing release for ${projectName}, skipping release removal: ${error}`);
|
|
42
|
-
}
|
|
43
|
-
finally {
|
|
44
|
-
await (0, github_1.removeTag)(tag);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
11
|
const runExecutor = async (options, context) => {
|
|
49
12
|
let startTime = Date.now();
|
|
50
13
|
const dryRun = process.env.NX_DRY_RUN === 'true' || options.dryRun || false;
|
|
@@ -95,29 +58,15 @@ const runExecutor = async (options, context) => {
|
|
|
95
58
|
startTime = Date.now();
|
|
96
59
|
// Step 2: Changelog Release
|
|
97
60
|
logger_1.consola.start('Generating & pushing changelogs');
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
catch (error) {
|
|
110
|
-
logger_1.consola.info(`Failed to generate changelogs: ${error}`);
|
|
111
|
-
logger_1.consola.start('Cleaning up created tags and releases');
|
|
112
|
-
if (!dryRun) {
|
|
113
|
-
const projectsToCleanup = changedProjects.flatMap(projectName => {
|
|
114
|
-
const newVersion = projectsVersionData[projectName]?.newVersion;
|
|
115
|
-
return newVersion ? [{ projectName, newVersion }] : [];
|
|
116
|
-
});
|
|
117
|
-
await cleanupProjectsRelease(projectsToCleanup, context);
|
|
118
|
-
}
|
|
119
|
-
return { success: false };
|
|
120
|
-
}
|
|
61
|
+
await (0, release_1.releaseChangelog)({
|
|
62
|
+
versionData: projectsVersionData,
|
|
63
|
+
projects: changedProjects,
|
|
64
|
+
version: workspaceVersion,
|
|
65
|
+
dryRun,
|
|
66
|
+
verbose: options.verbose,
|
|
67
|
+
groups: options.groups,
|
|
68
|
+
createRelease: isPreRelease ? false : 'github',
|
|
69
|
+
});
|
|
121
70
|
logger_1.consola.success('Generated & pushed changelogs successfully!');
|
|
122
71
|
if (options.skipPublish) {
|
|
123
72
|
logger_1.consola.warn('Skipping publishing step as skipPublish = true');
|
|
@@ -149,9 +98,30 @@ const runExecutor = async (options, context) => {
|
|
|
149
98
|
logger_1.consola.success(`Published ${projectName} in version ${newVersion} successfully!`);
|
|
150
99
|
}
|
|
151
100
|
else {
|
|
152
|
-
logger_1.consola.
|
|
101
|
+
logger_1.consola.fail(`Failed to publish ${projectName} with exit code ${result.code}`);
|
|
153
102
|
if (newVersion && !dryRun) {
|
|
154
|
-
|
|
103
|
+
// Remove the release and the tag from the remote repository
|
|
104
|
+
const nxJson = JSON.parse(fs.readFileSync(path.join(context.root, 'nx.json'), 'utf-8'));
|
|
105
|
+
const releaseConfig = nxJson?.release;
|
|
106
|
+
// Get the tag pattern - check group-specific config first, then fall back to global
|
|
107
|
+
const groupPattern = Object.values(releaseConfig?.groups || {}).find(group => group.projects?.includes(projectName))?.releaseTag?.pattern ||
|
|
108
|
+
Object.values(releaseConfig?.groups || {}).find(group => group.projects?.includes('*'))?.releaseTag?.pattern ||
|
|
109
|
+
releaseConfig?.groups?.[projectName]?.releaseTag?.pattern;
|
|
110
|
+
const pattern = groupPattern ||
|
|
111
|
+
releaseConfig?.releaseTag?.pattern ||
|
|
112
|
+
'{projectName}@{version}';
|
|
113
|
+
const tag = pattern
|
|
114
|
+
.replace('{projectName}', projectName)
|
|
115
|
+
.replace('{version}', newVersion);
|
|
116
|
+
const octokit = (0, octokit_1.OctokitAuth)();
|
|
117
|
+
const repositoryName = await (0, github_1.getGitRepositoryName)();
|
|
118
|
+
if (repositoryName) {
|
|
119
|
+
await (0, github_1.removeRelease)(octokit, 'PayFit', repositoryName, tag);
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
logger_1.consola.error(`Error while retrieving repository name for ${projectName}, skipping release removal`);
|
|
123
|
+
}
|
|
124
|
+
await (0, github_1.removeTag)(tag);
|
|
155
125
|
}
|
|
156
126
|
success = false;
|
|
157
127
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../src/executors/release/executor.ts"],"names":[],"mappings":";;AAAA,yBAAwB;AACxB,6BAA4B;AAG5B,wCAA6E;AAE7E,0DAGoC;AACpC,sDAOkC;AAClC,sDAAmD;AACnD,wDAAwD;AACxD,gDAAmE;AAGnE,MAAM,
|
|
1
|
+
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../src/executors/release/executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,8 +19,9 @@ export declare function getLatestVersion(lambdaARN: string, envVars: NodeJS.Proc
|
|
|
19
19
|
*
|
|
20
20
|
* @param stackId - Spacelift stack ID to determine environment
|
|
21
21
|
* @param lambdaFunctions - Array of Lambda function names to test
|
|
22
|
+
* @param lambdaRegion - AWS region for Lambda (default eu-west-3)
|
|
22
23
|
*/
|
|
23
|
-
export declare function runSmokeTests(stackId: string, lambdaFunctions: LambdaFunction[]): Promise<void>;
|
|
24
|
+
export declare function runSmokeTests(stackId: string, lambdaFunctions: LambdaFunction[], lambdaRegion?: string): Promise<void>;
|
|
24
25
|
/**
|
|
25
26
|
* Creates or updates a Lambda function alias to point to latest version.
|
|
26
27
|
*
|
|
@@ -43,5 +44,6 @@ export declare function sanitizeAliasName(alias: string): string;
|
|
|
43
44
|
* @param stackId - Spacelift stack ID to determine environment
|
|
44
45
|
* @param lambdaFunctions - Array of Lambda function names
|
|
45
46
|
* @param alias - Alias name to create/update
|
|
47
|
+
* @param lambdaRegion - AWS region for Lambda (default eu-west-3)
|
|
46
48
|
*/
|
|
47
|
-
export declare function createOrMoveAlias(stackId: string, lambdaFunctions: LambdaFunction[], alias: string): Promise<void>;
|
|
49
|
+
export declare function createOrMoveAlias(stackId: string, lambdaFunctions: LambdaFunction[], alias: string, lambdaRegion?: string): Promise<void>;
|
|
@@ -59,13 +59,14 @@ async function getLatestVersion(lambdaARN, envVars) {
|
|
|
59
59
|
*
|
|
60
60
|
* @param stackId - Spacelift stack ID to determine environment
|
|
61
61
|
* @param lambdaFunctions - Array of Lambda function names to test
|
|
62
|
+
* @param lambdaRegion - AWS region for Lambda (default eu-west-3)
|
|
62
63
|
*/
|
|
63
|
-
async function runSmokeTests(stackId, lambdaFunctions) {
|
|
64
|
+
async function runSmokeTests(stackId, lambdaFunctions, lambdaRegion = 'eu-west-3') {
|
|
64
65
|
const [environment, accountId] = retrieveAccoundId(stackId);
|
|
65
66
|
const credentials = await assumeEnvironmentSpecificRole(environment);
|
|
66
67
|
const envVars = getAssumedRoleEnvVars(credentials);
|
|
67
68
|
const smokeTestFunction = async (lambdaFunction) => {
|
|
68
|
-
const lambdaARN = `arn:aws:lambda
|
|
69
|
+
const lambdaARN = `arn:aws:lambda:${lambdaRegion}:${accountId}:function:${lambdaFunction.name}`;
|
|
69
70
|
const latestVersion = await getLatestVersion(lambdaARN, envVars);
|
|
70
71
|
const lambdaFullARN = `${lambdaARN}:${latestVersion}`;
|
|
71
72
|
const responseFile = `/tmp/lambda-response-${environment}-${lambdaFunction.name}.json`;
|
|
@@ -224,8 +225,9 @@ function sanitizeAliasName(alias) {
|
|
|
224
225
|
* @param stackId - Spacelift stack ID to determine environment
|
|
225
226
|
* @param lambdaFunctions - Array of Lambda function names
|
|
226
227
|
* @param alias - Alias name to create/update
|
|
228
|
+
* @param lambdaRegion - AWS region for Lambda (default eu-west-3)
|
|
227
229
|
*/
|
|
228
|
-
async function createOrMoveAlias(stackId, lambdaFunctions, alias) {
|
|
230
|
+
async function createOrMoveAlias(stackId, lambdaFunctions, alias, lambdaRegion = 'eu-west-3') {
|
|
229
231
|
const [environment, accountId] = retrieveAccoundId(stackId);
|
|
230
232
|
const credentials = await assumeEnvironmentSpecificRole(environment);
|
|
231
233
|
const envVars = getAssumedRoleEnvVars(credentials);
|
|
@@ -233,7 +235,7 @@ async function createOrMoveAlias(stackId, lambdaFunctions, alias) {
|
|
|
233
235
|
const addAliasFunction = async (functionName) => {
|
|
234
236
|
try {
|
|
235
237
|
logger_1.consola.log(`Add alias ${sanitizedAlias} for ${functionName} in env ${environment}`);
|
|
236
|
-
const lambdaARN = `arn:aws:lambda
|
|
238
|
+
const lambdaARN = `arn:aws:lambda:${lambdaRegion}:${accountId}:function:${functionName}`;
|
|
237
239
|
return createOrUpdateLambdaAlias(accountId, lambdaARN, sanitizedAlias, envVars);
|
|
238
240
|
}
|
|
239
241
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aws-lambda.js","sourceRoot":"","sources":["../../../../src/utils/lambda/aws-lambda.ts"],"names":[],"mappings":";;AAsBA,8CAKC;AASD,4CAgCC;
|
|
1
|
+
{"version":3,"file":"aws-lambda.js","sourceRoot":"","sources":["../../../../src/utils/lambda/aws-lambda.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,5 +10,6 @@ import { LambdaFunction } from '../common/types';
|
|
|
10
10
|
* @param stacksName - Array of Spacelift stack IDs
|
|
11
11
|
* @param lambdaFunctions - Array of Lambda function names
|
|
12
12
|
* @param version - Version string for deployment
|
|
13
|
+
* @param lambdaRegion - AWS region for Lambda (default eu-west-3)
|
|
13
14
|
*/
|
|
14
|
-
export declare function createLambdaVersion(stacksName: string[], lambdaFunctions: LambdaFunction[], version: string): Promise<void>;
|
|
15
|
+
export declare function createLambdaVersion(stacksName: string[], lambdaFunctions: LambdaFunction[], version: string, lambdaRegion?: string): Promise<void>;
|
|
@@ -18,8 +18,9 @@ const spacelift_1 = require("./spacelift");
|
|
|
18
18
|
* @param stacksName - Array of Spacelift stack IDs
|
|
19
19
|
* @param lambdaFunctions - Array of Lambda function names
|
|
20
20
|
* @param version - Version string for deployment
|
|
21
|
+
* @param lambdaRegion - AWS region for Lambda (default eu-west-3)
|
|
21
22
|
*/
|
|
22
|
-
async function createLambdaVersion(stacksName, lambdaFunctions, version) {
|
|
23
|
+
async function createLambdaVersion(stacksName, lambdaFunctions, version, lambdaRegion = 'eu-west-3') {
|
|
23
24
|
const graphqlService = new graphql_service_1.GraphQlService();
|
|
24
25
|
const spaceliftService = new spacelift_service_1.SpaceliftService(graphqlService);
|
|
25
26
|
const lambdaNames = lambdaFunctions
|
|
@@ -32,10 +33,10 @@ async function createLambdaVersion(stacksName, lambdaFunctions, version) {
|
|
|
32
33
|
logger_1.consola.log(`Updating Spacelift stack ${stackId} TF_VAR_lambda_version with version ${version}`);
|
|
33
34
|
await (0, spacelift_1.updateSpaceliftEnvironmentVariable)(spaceliftService, stackId, 'TF_VAR_lambda_version', version);
|
|
34
35
|
await (0, spacelift_1.triggerSpaceliftStack)(spaceliftService, stackId);
|
|
35
|
-
await (0, aws_lambda_1.runSmokeTests)(stackId, lambdaFunctions);
|
|
36
|
+
await (0, aws_lambda_1.runSmokeTests)(stackId, lambdaFunctions, lambdaRegion);
|
|
36
37
|
};
|
|
37
38
|
const publishFunction = async (stackId) => {
|
|
38
|
-
await (0, aws_lambda_1.createOrMoveAlias)(stackId, lambdaFunctions, version);
|
|
39
|
+
await (0, aws_lambda_1.createOrMoveAlias)(stackId, lambdaFunctions, version, lambdaRegion);
|
|
39
40
|
};
|
|
40
41
|
// wait for each stack
|
|
41
42
|
await Promise.all(stacksName.map(processEnvironment));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../src/utils/lambda/publish.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"publish.js","sourceRoot":"","sources":["../../../../src/utils/lambda/publish.ts"],"names":[],"mappings":";;AAwBA,kDA8CC;AAtED,6CAAyD;AACzD,6CAA0C;AAE1C,sEAAiE;AACjE,0EAAqE;AACrE,6CAA+D;AAC/D,2CAGoB;AAEpB;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,mBAAmB,CACvC,UAAoB,EACpB,eAAiC,EACjC,OAAe,EACf,YAAY,GAAG,WAAW;IAE1B,MAAM,cAAc,GAAG,IAAI,gCAAc,EAAE,CAAA;IAC3C,MAAM,gBAAgB,GAAG,IAAI,oCAAgB,CAAC,cAAc,CAAC,CAAA;IAC7D,MAAM,WAAW,GAAG,eAAe;SAChC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC;SAC1C,IAAI,CAAC,GAAG,CAAC,CAAA;IACZ,MAAM,kBAAkB,GAAG,KAAK,EAAE,OAAe,EAAiB,EAAE;QAClE,MAAM,gBAAgB,GAAG,MAAM,IAAA,+BAAsB,GAAE,CAAA;QACvD,gBAAO,CAAC,GAAG,CACT,4BAA4B,OAAO,mCAAmC,gBAAgB,EAAE,CACzF,CAAA;QACD,MAAM,IAAA,8CAAkC,EACtC,gBAAgB,EAChB,OAAO,EACP,mBAAmB,EACnB,gBAAgB,CACjB,CAAA;QACD,gBAAO,CAAC,GAAG,CACT,4BAA4B,OAAO,uCAAuC,OAAO,EAAE,CACpF,CAAA;QACD,MAAM,IAAA,8CAAkC,EACtC,gBAAgB,EAChB,OAAO,EACP,uBAAuB,EACvB,OAAO,CACR,CAAA;QAED,MAAM,IAAA,iCAAqB,EAAC,gBAAgB,EAAE,OAAO,CAAC,CAAA;QACtD,MAAM,IAAA,0BAAa,EAAC,OAAO,EAAE,eAAe,EAAE,YAAY,CAAC,CAAA;IAC7D,CAAC,CAAA;IAED,MAAM,eAAe,GAAG,KAAK,EAAE,OAAe,EAAiB,EAAE;QAC/D,MAAM,IAAA,8BAAiB,EAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;IAC1E,CAAC,CAAA;IACD,sBAAsB;IACtB,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAA;IACrD,gBAAO,CAAC,OAAO,CACb,4DAA4D,WAAW,EAAE,CAC1E,CAAA;IACD,gBAAO,CAAC,GAAG,CAAC,wBAAwB,OAAO,iBAAiB,WAAW,EAAE,CAAC,CAAA;IAC1E,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAA;AACpD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payfit/nx-core",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.22.0-ephemeral-feature-nx-core-lambda-define-regions.0",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"main": "./dist/src/index.js",
|
|
6
6
|
"types": "./dist/src/index.d.ts",
|
|
@@ -39,9 +39,9 @@
|
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"@graphql-codegen/cli": "^6.0.0",
|
|
42
|
-
"@nx/devkit": "22.5.
|
|
43
|
-
"@nx/plugin": "22.5.
|
|
44
|
-
"@nx/vite": "22.5.
|
|
42
|
+
"@nx/devkit": "22.5.3",
|
|
43
|
+
"@nx/plugin": "22.5.3",
|
|
44
|
+
"@nx/vite": "22.5.3",
|
|
45
45
|
"memfs": "4.56.11",
|
|
46
46
|
"portfinder": "^1.0.32",
|
|
47
47
|
"verdaccio": "^6.1.6",
|