@payfit/nx-core 5.21.4 → 5.21.5-ephemeral-featsync-agents-release-docs.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.
@@ -8,6 +8,43 @@ 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
+ };
11
48
  const runExecutor = async (options, context) => {
12
49
  let startTime = Date.now();
13
50
  const dryRun = process.env.NX_DRY_RUN === 'true' || options.dryRun || false;
@@ -58,15 +95,29 @@ const runExecutor = async (options, context) => {
58
95
  startTime = Date.now();
59
96
  // Step 2: Changelog Release
60
97
  logger_1.consola.start('Generating & pushing changelogs');
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
- });
98
+ try {
99
+ await (0, release_1.releaseChangelog)({
100
+ versionData: projectsVersionData,
101
+ projects: changedProjects,
102
+ version: workspaceVersion,
103
+ dryRun,
104
+ verbose: options.verbose,
105
+ groups: options.groups,
106
+ createRelease: isPreRelease ? false : 'github',
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
+ }
70
121
  logger_1.consola.success('Generated & pushed changelogs successfully!');
71
122
  if (options.skipPublish) {
72
123
  logger_1.consola.warn('Skipping publishing step as skipPublish = true');
@@ -98,30 +149,9 @@ const runExecutor = async (options, context) => {
98
149
  logger_1.consola.success(`Published ${projectName} in version ${newVersion} successfully!`);
99
150
  }
100
151
  else {
101
- logger_1.consola.fail(`Failed to publish ${projectName} with exit code ${result.code}`);
152
+ logger_1.consola.error(`Failed to publish ${projectName} with exit code ${result.code}`);
102
153
  if (newVersion && !dryRun) {
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);
154
+ await cleanupProjectsRelease([{ projectName, newVersion: newVersion }], context);
125
155
  }
126
156
  success = false;
127
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../src/executors/release/executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../src/executors/release/executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { Tree } from '@nx/devkit';
2
+ import { SyncGeneratorResult } from 'nx/src/utils/sync-generators';
3
+ export declare function syncAgents(tree: Tree): Promise<SyncGeneratorResult>;
4
+ export default syncAgents;
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.syncAgents = syncAgents;
4
+ const devkit_1 = require("@nx/devkit");
5
+ const nx_1 = require("../../utils/common/nx");
6
+ const AGENTS_FILE_PATH = 'AGENTS.md';
7
+ const NX_CORE_START_MARKER = '<!-- nx-core start -->';
8
+ const NX_CORE_END_MARKER = '<!-- nx-core end -->';
9
+ const NX_CORE_RULES_REGEX = new RegExp(`${NX_CORE_START_MARKER}[\\s\\S]*?${NX_CORE_END_MARKER}`, 'm');
10
+ function getWrappedReleaseDocs(content) {
11
+ const trimmedContent = content.trim();
12
+ if (!trimmedContent) {
13
+ return `${NX_CORE_START_MARKER}\n${NX_CORE_END_MARKER}`;
14
+ }
15
+ return `${NX_CORE_START_MARKER}\n\n${trimmedContent}\n\n${NX_CORE_END_MARKER}`;
16
+ }
17
+ function contentOnly(content) {
18
+ return content
19
+ .replace(NX_CORE_START_MARKER, '')
20
+ .replace(NX_CORE_END_MARKER, '')
21
+ .replace(/\s/g, '');
22
+ }
23
+ function buildReleaseDocsContent(projects) {
24
+ if (projects.length === 0) {
25
+ return '';
26
+ }
27
+ const sortedProjects = [...projects].sort((a, b) => a.name.localeCompare(b.name));
28
+ const projectLines = sortedProjects.map(project => {
29
+ const sortedArtifactTypes = [...project.artifactTypes].sort((a, b) => a.localeCompare(b));
30
+ return `- \`${project.name}\` (\`${project.root}\`): ${sortedArtifactTypes.join(', ')}`;
31
+ });
32
+ return [
33
+ '## nx-core release-managed artifacts',
34
+ '',
35
+ 'Projects with artifact metadata detected by `@payfit/nx-core`:',
36
+ '',
37
+ ...projectLines,
38
+ ].join('\n');
39
+ }
40
+ function syncReleaseDocsInAgents(tree, releaseDocsContent) {
41
+ const expectedRules = getWrappedReleaseDocs(releaseDocsContent);
42
+ if (!tree.exists(AGENTS_FILE_PATH)) {
43
+ tree.write(AGENTS_FILE_PATH, expectedRules);
44
+ return {
45
+ outOfSyncMessage: '/AGENTS.md file needs to be created',
46
+ };
47
+ }
48
+ const existingContent = tree.read(AGENTS_FILE_PATH, 'utf-8');
49
+ if (!existingContent) {
50
+ tree.write(AGENTS_FILE_PATH, expectedRules);
51
+ return {
52
+ outOfSyncMessage: '/AGENTS.md file needs to be updated',
53
+ };
54
+ }
55
+ const existingNxCoreBlock = existingContent.match(NX_CORE_RULES_REGEX);
56
+ if (existingNxCoreBlock) {
57
+ if (contentOnly(existingNxCoreBlock[0]) === contentOnly(expectedRules)) {
58
+ return;
59
+ }
60
+ const updatedContent = existingContent.replace(NX_CORE_RULES_REGEX, expectedRules);
61
+ tree.write(AGENTS_FILE_PATH, updatedContent);
62
+ return {
63
+ outOfSyncMessage: '/AGENTS.md file needs to be updated',
64
+ };
65
+ }
66
+ const updatedContent = `${existingContent}\n\n${expectedRules}`;
67
+ tree.write(AGENTS_FILE_PATH, updatedContent);
68
+ return {
69
+ outOfSyncMessage: '/AGENTS.md file needs to be updated',
70
+ };
71
+ }
72
+ async function syncAgents(tree) {
73
+ const projectGraph = await (0, devkit_1.createProjectGraphAsync)();
74
+ const artifactProjects = [];
75
+ for (const [projectName, node] of Object.entries(projectGraph.nodes)) {
76
+ const projectConfiguration = node.data;
77
+ const artifactTypes = (0, nx_1.getProjectArtifactTypes)(projectConfiguration.root, projectConfiguration);
78
+ if (artifactTypes.length > 0) {
79
+ artifactProjects.push({
80
+ name: projectName,
81
+ root: projectConfiguration.root,
82
+ artifactTypes,
83
+ });
84
+ }
85
+ }
86
+ const releaseDocsContent = buildReleaseDocsContent(artifactProjects);
87
+ return syncReleaseDocsInAgents(tree, releaseDocsContent);
88
+ }
89
+ exports.default = syncAgents;
90
+ //# sourceMappingURL=sync-agents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-agents.js","sourceRoot":"","sources":["../../../../src/generators/sync/sync-agents.ts"],"names":[],"mappings":"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"}
package/generators.json CHANGED
@@ -10,6 +10,11 @@
10
10
  "schema": "./dist/src/generators/sync/schema.json",
11
11
  "description": "sync-list-lambda-functions generator"
12
12
  },
13
+ "sync-agents": {
14
+ "factory": "./dist/src/generators/sync/sync-agents",
15
+ "schema": "./dist/src/generators/sync/schema.json",
16
+ "description": "sync-agents generator"
17
+ },
13
18
  "local-lambda-setup": {
14
19
  "factory": "./dist/src/generators/local-lambda-setup/local-lambda-setup",
15
20
  "schema": "./dist/src/generators/local-lambda-setup/schema.json",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payfit/nx-core",
3
- "version": "5.21.4",
3
+ "version": "5.21.5-ephemeral-featsync-agents-release-docs.0",
4
4
  "type": "commonjs",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",