@payfit/nx-core 0.0.0-e2e → 0.0.0-semver

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.
Files changed (149) hide show
  1. package/README.md +10 -163
  2. package/dist/src/executors/publisher/docker.d.ts +3 -1
  3. package/dist/src/executors/publisher/docker.js +12 -57
  4. package/dist/src/executors/publisher/docker.js.map +1 -1
  5. package/dist/src/executors/publisher/executor.js +12 -9
  6. package/dist/src/executors/publisher/executor.js.map +1 -1
  7. package/dist/src/executors/publisher/helm.d.ts +5 -1
  8. package/dist/src/executors/publisher/helm.js +11 -40
  9. package/dist/src/executors/publisher/helm.js.map +1 -1
  10. package/dist/src/executors/publisher/schema.d.ts +5 -0
  11. package/dist/src/executors/publisher/schema.json +0 -44
  12. package/dist/src/index.d.ts +1 -24
  13. package/dist/src/index.js +11 -67
  14. package/dist/src/index.js.map +1 -1
  15. package/dist/src/scripts/version-actions.d.ts +20 -3
  16. package/dist/src/scripts/version-actions.js +41 -23
  17. package/dist/src/scripts/version-actions.js.map +1 -1
  18. package/dist/src/utils/{common/aws-auth.d.ts → aws-auth.d.ts} +8 -16
  19. package/dist/src/utils/aws-auth.js +84 -0
  20. package/dist/src/utils/aws-auth.js.map +1 -0
  21. package/dist/src/utils/docker.d.ts +16 -12
  22. package/dist/src/utils/docker.js +23 -63
  23. package/dist/src/utils/docker.js.map +1 -1
  24. package/dist/src/utils/exec.d.ts +7 -0
  25. package/dist/src/utils/exec.js +25 -0
  26. package/dist/src/utils/exec.js.map +1 -0
  27. package/dist/src/utils/get-version.d.ts +6 -0
  28. package/dist/src/utils/get-version.js +14 -0
  29. package/dist/src/utils/get-version.js.map +1 -0
  30. package/dist/src/utils/github.d.ts +4 -0
  31. package/dist/src/utils/github.js +17 -0
  32. package/dist/src/utils/github.js.map +1 -0
  33. package/dist/src/utils/helm.d.ts +16 -32
  34. package/dist/src/utils/helm.js +15 -83
  35. package/dist/src/utils/helm.js.map +1 -1
  36. package/dist/src/utils/import-esm.js.map +1 -0
  37. package/dist/src/utils/{common/tsh.d.ts → tsh.d.ts} +0 -1
  38. package/dist/src/utils/{common/tsh.js → tsh.js} +15 -20
  39. package/dist/src/utils/tsh.js.map +1 -0
  40. package/executors.json +2 -12
  41. package/package.json +18 -42
  42. package/dist/src/codegen.d.ts +0 -3
  43. package/dist/src/codegen.js +0 -25
  44. package/dist/src/codegen.js.map +0 -1
  45. package/dist/src/executors/preview-deploy/README.md +0 -5
  46. package/dist/src/executors/preview-deploy/argocdOverride.d.ts +0 -4
  47. package/dist/src/executors/preview-deploy/argocdOverride.js +0 -22
  48. package/dist/src/executors/preview-deploy/argocdOverride.js.map +0 -1
  49. package/dist/src/executors/preview-deploy/executor.d.ts +0 -4
  50. package/dist/src/executors/preview-deploy/executor.js +0 -143
  51. package/dist/src/executors/preview-deploy/executor.js.map +0 -1
  52. package/dist/src/executors/preview-deploy/kargoPolicy.d.ts +0 -14
  53. package/dist/src/executors/preview-deploy/kargoPolicy.js +0 -69
  54. package/dist/src/executors/preview-deploy/kargoPolicy.js.map +0 -1
  55. package/dist/src/executors/preview-deploy/schema.json +0 -28
  56. package/dist/src/executors/publisher/README.md +0 -3
  57. package/dist/src/executors/publisher/lambda.d.ts +0 -18
  58. package/dist/src/executors/publisher/lambda.js +0 -86
  59. package/dist/src/executors/publisher/lambda.js.map +0 -1
  60. package/dist/src/executors/release/README.md +0 -15
  61. package/dist/src/executors/release/executor.d.ts +0 -4
  62. package/dist/src/executors/release/executor.js +0 -104
  63. package/dist/src/executors/release/executor.js.map +0 -1
  64. package/dist/src/executors/release/schema.json +0 -37
  65. package/dist/src/generators/init/README.md +0 -5
  66. package/dist/src/generators/init/files/.circleci/config.yml.template +0 -232
  67. package/dist/src/generators/init/files/.circleci/teleport/shared-charts.conf.template +0 -24
  68. package/dist/src/generators/init/files/.npmrc.template +0 -1
  69. package/dist/src/generators/init/init.d.ts +0 -13
  70. package/dist/src/generators/init/init.js +0 -278
  71. package/dist/src/generators/init/init.js.map +0 -1
  72. package/dist/src/generators/init/schema.json +0 -7
  73. package/dist/src/scripts/codegen-with-auth.js +0 -55
  74. package/dist/src/scripts/version-actions.mock.d.ts +0 -6
  75. package/dist/src/scripts/version-actions.mock.js +0 -61
  76. package/dist/src/scripts/version-actions.mock.js.map +0 -1
  77. package/dist/src/utils/common/aws-auth.js +0 -145
  78. package/dist/src/utils/common/aws-auth.js.map +0 -1
  79. package/dist/src/utils/common/circleci.d.ts +0 -2
  80. package/dist/src/utils/common/circleci.js +0 -20
  81. package/dist/src/utils/common/circleci.js.map +0 -1
  82. package/dist/src/utils/common/exec.d.ts +0 -4
  83. package/dist/src/utils/common/exec.js +0 -52
  84. package/dist/src/utils/common/exec.js.map +0 -1
  85. package/dist/src/utils/common/github.d.ts +0 -20
  86. package/dist/src/utils/common/github.js +0 -60
  87. package/dist/src/utils/common/github.js.map +0 -1
  88. package/dist/src/utils/common/import-esm.js.map +0 -1
  89. package/dist/src/utils/common/logger.d.ts +0 -1
  90. package/dist/src/utils/common/logger.js +0 -8
  91. package/dist/src/utils/common/logger.js.map +0 -1
  92. package/dist/src/utils/common/nx.d.ts +0 -22
  93. package/dist/src/utils/common/nx.js +0 -174
  94. package/dist/src/utils/common/nx.js.map +0 -1
  95. package/dist/src/utils/common/s3.d.ts +0 -1
  96. package/dist/src/utils/common/s3.js +0 -18
  97. package/dist/src/utils/common/s3.js.map +0 -1
  98. package/dist/src/utils/common/tsh.js.map +0 -1
  99. package/dist/src/utils/datadog.d.ts +0 -1
  100. package/dist/src/utils/datadog.js +0 -33
  101. package/dist/src/utils/datadog.js.map +0 -1
  102. package/dist/src/utils/helm.mock.d.ts +0 -85
  103. package/dist/src/utils/helm.mock.js +0 -100
  104. package/dist/src/utils/helm.mock.js.map +0 -1
  105. package/dist/src/utils/lambda/aws-lambda.d.ts +0 -47
  106. package/dist/src/utils/lambda/aws-lambda.js +0 -231
  107. package/dist/src/utils/lambda/aws-lambda.js.map +0 -1
  108. package/dist/src/utils/lambda/lambda.d.ts +0 -7
  109. package/dist/src/utils/lambda/lambda.js +0 -20
  110. package/dist/src/utils/lambda/lambda.js.map +0 -1
  111. package/dist/src/utils/lambda/oci.d.ts +0 -8
  112. package/dist/src/utils/lambda/oci.js +0 -22
  113. package/dist/src/utils/lambda/oci.js.map +0 -1
  114. package/dist/src/utils/lambda/publish.d.ts +0 -14
  115. package/dist/src/utils/lambda/publish.js +0 -44
  116. package/dist/src/utils/lambda/publish.js.map +0 -1
  117. package/dist/src/utils/lambda/spacelift.d.ts +0 -3
  118. package/dist/src/utils/lambda/spacelift.js +0 -55
  119. package/dist/src/utils/lambda/spacelift.js.map +0 -1
  120. package/dist/src/utils/spacelift/lib/__generated__/fragment-masking.d.ts +0 -19
  121. package/dist/src/utils/spacelift/lib/__generated__/fragment-masking.js +0 -22
  122. package/dist/src/utils/spacelift/lib/__generated__/fragment-masking.js.map +0 -1
  123. package/dist/src/utils/spacelift/lib/__generated__/gql.d.ts +0 -15
  124. package/dist/src/utils/spacelift/lib/__generated__/gql.js +0 -8
  125. package/dist/src/utils/spacelift/lib/__generated__/gql.js.map +0 -1
  126. package/dist/src/utils/spacelift/lib/__generated__/graphql.d.ts +0 -9426
  127. package/dist/src/utils/spacelift/lib/__generated__/graphql.js +0 -819
  128. package/dist/src/utils/spacelift/lib/__generated__/graphql.js.map +0 -1
  129. package/dist/src/utils/spacelift/lib/__generated__/index.d.ts +0 -2
  130. package/dist/src/utils/spacelift/lib/__generated__/index.js +0 -6
  131. package/dist/src/utils/spacelift/lib/__generated__/index.js.map +0 -1
  132. package/dist/src/utils/spacelift/lib/graphql.service.d.ts +0 -18
  133. package/dist/src/utils/spacelift/lib/graphql.service.js +0 -186
  134. package/dist/src/utils/spacelift/lib/graphql.service.js.map +0 -1
  135. package/dist/src/utils/spacelift/lib/query/spacelift.queries.d.ts +0 -34
  136. package/dist/src/utils/spacelift/lib/query/spacelift.queries.js +0 -48
  137. package/dist/src/utils/spacelift/lib/query/spacelift.queries.js.map +0 -1
  138. package/dist/src/utils/spacelift/lib/spacelift.error.d.ts +0 -43
  139. package/dist/src/utils/spacelift/lib/spacelift.error.js +0 -63
  140. package/dist/src/utils/spacelift/lib/spacelift.error.js.map +0 -1
  141. package/dist/src/utils/spacelift/lib/spacelift.service.d.ts +0 -16
  142. package/dist/src/utils/spacelift/lib/spacelift.service.js +0 -58
  143. package/dist/src/utils/spacelift/lib/spacelift.service.js.map +0 -1
  144. package/dist/src/utils/spacelift/lib/utils.d.ts +0 -4
  145. package/dist/src/utils/spacelift/lib/utils.js +0 -32
  146. package/dist/src/utils/spacelift/lib/utils.js.map +0 -1
  147. package/generators.json +0 -9
  148. /package/dist/src/utils/{common/import-esm.d.ts → import-esm.d.ts} +0 -0
  149. /package/dist/src/utils/{common/import-esm.js → import-esm.js} +0 -0
@@ -1,13 +0,0 @@
1
- import { Tree } from '@nx/devkit';
2
- import { InitGeneratorSchema } from './schema';
3
- export declare function extractMetadataFromCircleCI(circleciContent: string, tree: Tree): Promise<Record<string, string>>;
4
- export declare function injectMetadata(tree: Tree, projectRoot: string, metadata: Record<string, string>): void;
5
- /**
6
- * Make sure the package.json publish config have correct default values
7
- * @param tree
8
- * @param packageJsonPath
9
- * @param shouldBePublished
10
- */
11
- export declare function processPackageJsonPublishConfig(tree: Tree, packageJsonPath: string, shouldBePublished?: boolean): void;
12
- export declare function initGenerator(tree: Tree, options?: InitGeneratorSchema): Promise<import("@nx/devkit").GeneratorCallback>;
13
- export default initGenerator;
@@ -1,278 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.extractMetadataFromCircleCI = extractMetadataFromCircleCI;
4
- exports.injectMetadata = injectMetadata;
5
- exports.processPackageJsonPublishConfig = processPackageJsonPublishConfig;
6
- exports.initGenerator = initGenerator;
7
- const path = require("path");
8
- const devkit_1 = require("@nx/devkit");
9
- const yaml = require("yaml");
10
- const github_1 = require("../../utils/common/github");
11
- const logger_1 = require("../../utils/common/logger");
12
- const METADATA_EXTRACTORS = [
13
- {
14
- jobType: 'payfit-aws-ecr/build-and-push',
15
- parameterKey: 'repo',
16
- metadataKey: 'ecrRegistry',
17
- extractValue: async (value) => value,
18
- },
19
- {
20
- jobType: 'helm-package-chart/publish',
21
- parameterKey: 'awsPath',
22
- metadataKey: 'chartRegistry',
23
- extractValue: async (value) => {
24
- // Extract the first part before the /
25
- const chartRegistry = value.split('/')[0];
26
- // Replace ${CIRCLE_PROJECT_REPONAME} with actual repo name if needed
27
- if (chartRegistry.includes('${CIRCLE_PROJECT_REPONAME}')) {
28
- // Get repo name from git
29
- return chartRegistry.replace('${CIRCLE_PROJECT_REPONAME}', await (0, github_1.getGitRepositoryName)());
30
- }
31
- return chartRegistry;
32
- },
33
- },
34
- ];
35
- async function extractMetadataFromCircleCI(circleciContent, tree) {
36
- const extractedMetadata = {};
37
- try {
38
- const config = yaml.parse(circleciContent);
39
- if (!config.workflows) {
40
- return extractedMetadata;
41
- }
42
- // Look through workflows for jobs matching our extractors
43
- for (const workflowName in config.workflows) {
44
- // Skip version field which is metadata, not a workflow
45
- if (workflowName === 'version') {
46
- continue;
47
- }
48
- const workflow = config.workflows[workflowName];
49
- if (!workflow.jobs) {
50
- continue;
51
- }
52
- for (const job of workflow.jobs) {
53
- if (typeof job !== 'object')
54
- continue;
55
- const jobKey = Object.keys(job)[0];
56
- const jobConfig = job[jobKey];
57
- // Check each extractor
58
- for (const extractor of METADATA_EXTRACTORS) {
59
- if (jobKey === extractor.jobType &&
60
- jobConfig[extractor.parameterKey]) {
61
- const rawValue = jobConfig[extractor.parameterKey];
62
- const extractedValue = await extractor.extractValue(rawValue, tree);
63
- if (extractedValue) {
64
- extractedMetadata[extractor.metadataKey] = extractedValue;
65
- }
66
- }
67
- }
68
- }
69
- }
70
- return extractedMetadata;
71
- }
72
- catch (error) {
73
- logger_1.consola.warn('Failed to parse CircleCI config:', error);
74
- return extractedMetadata;
75
- }
76
- }
77
- function injectMetadata(tree, projectRoot, metadata) {
78
- const projectJsonPath = path.join(projectRoot, 'project.json');
79
- if (!tree.exists(projectJsonPath) || Object.keys(metadata).length === 0) {
80
- return;
81
- }
82
- (0, devkit_1.updateJson)(tree, projectJsonPath, projectJson => {
83
- if (!projectJson.metadata) {
84
- projectJson.metadata = {};
85
- }
86
- // Inject all metadata
87
- Object.entries(metadata).forEach(([key, value]) => {
88
- projectJson.metadata[key] = value;
89
- logger_1.consola.info(`Added ${key} metadata "${value}" to ${projectRoot}/project.json`);
90
- });
91
- return projectJson;
92
- });
93
- }
94
- /**
95
- * Make sure the package.json publish config have correct default values
96
- * @param tree
97
- * @param packageJsonPath
98
- * @param shouldBePublished
99
- */
100
- function processPackageJsonPublishConfig(tree, packageJsonPath, shouldBePublished = false) {
101
- if (!tree.exists(packageJsonPath))
102
- return;
103
- (0, devkit_1.updateJson)(tree, packageJsonPath, packageJson => {
104
- // we force apply this config to make sure we're not publishing anything publicly,
105
- // user can always opt out afterward
106
- packageJson.publishConfig = {
107
- access: 'restricted',
108
- };
109
- packageJson.private = true;
110
- if (shouldBePublished) {
111
- delete packageJson.private; // should be removed to be published to npm
112
- }
113
- // check for the existence of the version, if not add it as we rely on it to calculate semver
114
- if (!packageJson.version)
115
- packageJson.version = '1.0.0';
116
- return packageJson;
117
- });
118
- }
119
- async function processCircleCIMetadata(tree, projectCircleCIPath, projectRoot) {
120
- const circleciContent = tree.read(projectCircleCIPath)?.toString();
121
- if (!circleciContent) {
122
- return;
123
- }
124
- // Extract all metadata from CircleCI config
125
- const extractedMetadata = await extractMetadataFromCircleCI(circleciContent, tree);
126
- // Inject metadata into project.json
127
- injectMetadata(tree, projectRoot, extractedMetadata);
128
- // Log warnings for missing metadata
129
- const missingMetadata = METADATA_EXTRACTORS.filter(extractor => !extractedMetadata[extractor.metadataKey]);
130
- missingMetadata.forEach(extractor => {
131
- logger_1.consola.fail(`Could not automatically find metadata ${extractor.metadataKey}, if needed, please add ${extractor.metadataKey} metadata manually to ${projectRoot}/project.json`);
132
- });
133
- }
134
- function injectNxReleaseConfiguration(tree, packageJsonName) {
135
- const nxJson = (0, devkit_1.readNxJson)(tree);
136
- nxJson.release = {
137
- projectsRelationship: 'independent',
138
- projects: ['*', `!${packageJsonName}`],
139
- releaseTagPattern: '{projectName}-{version}',
140
- releaseTagPatternCheckAllBranchesWhen: true,
141
- releaseTagPatternStrictPreid: true,
142
- changelog: {
143
- projectChangelogs: {
144
- createRelease: 'github',
145
- file: false,
146
- },
147
- automaticFromRef: true,
148
- git: {
149
- commit: false,
150
- tag: true,
151
- },
152
- },
153
- version: {
154
- useLegacyVersioning: false,
155
- currentVersionResolver: 'git-tag',
156
- fallbackCurrentVersionResolver: 'disk',
157
- specifierSource: 'conventional-commits',
158
- preserveLocalDependencyProtocols: false,
159
- },
160
- };
161
- // Initialize plugins array if it doesn't exist
162
- nxJson.plugins = nxJson.plugins ?? [];
163
- // Add @payfit/nx-core plugin if it doesn't already exist
164
- if (!nxJson.plugins.includes('@payfit/nx-core')) {
165
- nxJson.plugins.push('@payfit/nx-core');
166
- }
167
- (0, devkit_1.updateNxJson)(tree, nxJson);
168
- }
169
- function injectRootPackageJsonConfiguration(tree) {
170
- (0, devkit_1.updateJson)(tree, 'package.json', packageJson => {
171
- if (!packageJson.nx) {
172
- packageJson.nx = {
173
- includedScripts: [],
174
- };
175
- }
176
- else if (!packageJson.nx.includedScripts ||
177
- packageJson.nx.includedScripts.length >= 0) {
178
- packageJson.nx.includedScripts = [];
179
- }
180
- return packageJson;
181
- });
182
- }
183
- function injectRootProjectJsonConfiguration(tree, packageJsonName) {
184
- if (tree.exists('project.json')) {
185
- (0, devkit_1.updateJson)(tree, 'project.json', projectJson => {
186
- const projectConfig = projectJson;
187
- projectConfig.name = packageJsonName;
188
- return projectConfig;
189
- });
190
- }
191
- else {
192
- tree.write('project.json', JSON.stringify({
193
- name: packageJsonName,
194
- $schema: 'node_modules/nx/schemas/project-schema.json',
195
- tags: ['scope:local'],
196
- targets: {},
197
- }));
198
- }
199
- }
200
- function getPackageJsonName(tree) {
201
- const packageJson = JSON.parse(tree.read('package.json')?.toString());
202
- return /@{1}\w+\/{1}\w+/.test(packageJson?.name)
203
- ? packageJson?.name
204
- : `@payfit/${packageJson?.name}`;
205
- }
206
- // For each project, we need to remove the github, version, npm as there not used anymore
207
- function injectProjectJsonConfiguration(tree, projectName, options) {
208
- const projectJson = (0, devkit_1.readProjectConfiguration)(tree, projectName);
209
- let existingNpmTarget = false;
210
- for (const targetName in projectJson.targets) {
211
- if (targetName === 'npm')
212
- existingNpmTarget = true;
213
- const inferedTargets = ['github', 'version', 'npm'];
214
- if (inferedTargets.includes(targetName)) {
215
- delete projectJson.targets[targetName];
216
- }
217
- }
218
- processPackageJsonPublishConfig(tree, path.join(projectJson.root, 'package.json'), existingNpmTarget); // relying on the existing target name Npm to know if the package should be published or not
219
- (0, devkit_1.updateProjectConfiguration)(tree, projectName, projectJson);
220
- }
221
- async function initGenerator(tree, options = {}) {
222
- // Check for each project if we can find a template.yaml or a cdk.json file
223
- // If it's the case we should keep the continuation jobs in the .circleci/config.yml,
224
- // the .circleci/shared-config.yml
225
- // and keep the {projectRoot}/.circleci/config.yml file
226
- // If not we can delete all {projectRoot}/.circleci/config.yml files and the .circleci/shared-config.yml file.
227
- const projects = (0, devkit_1.getProjects)(tree);
228
- let hasCdkOrTemplateFile = false;
229
- // Check for each project
230
- for (const [projectName, projectConfig] of projects.entries()) {
231
- const projectRoot = projectConfig.root;
232
- const templateYamlPath = path.join(projectRoot, 'template.yaml');
233
- const cdkJsonPath = path.join(projectRoot, 'cdk.json');
234
- const projectCircleCIPath = path.join(projectRoot, '.circleci/config.yml');
235
- if (tree.exists(projectCircleCIPath)) {
236
- await processCircleCIMetadata(tree, projectCircleCIPath, projectRoot);
237
- }
238
- // Check if either file exists, this may need to be adjusted based on serverless autodiscover pattern
239
- if (tree.exists(templateYamlPath) || tree.exists(cdkJsonPath)) {
240
- hasCdkOrTemplateFile = true;
241
- logger_1.consola.info(`Project ${projectName} has a template.yaml or cdk.json file, keeping continuation jobs.`);
242
- }
243
- else {
244
- if (tree.exists(projectCircleCIPath)) {
245
- tree.delete(projectCircleCIPath);
246
- }
247
- }
248
- injectProjectJsonConfiguration(tree, projectName, options);
249
- }
250
- // If there is no project with a template.yaml or cdk.json file,
251
- // we can delete the .circleci/shared-config.yml file
252
- const sharedConfigPath = '.circleci/shared-config.yml';
253
- if (!hasCdkOrTemplateFile && tree.exists(sharedConfigPath)) {
254
- logger_1.consola.info('No project with a template.yaml or cdk.json file found, deleting .circleci/shared-config.yml');
255
- tree.delete(sharedConfigPath);
256
- }
257
- const packageJsonName = getPackageJsonName(tree);
258
- // Delete the .circleci/config.yml file if it exists
259
- tree.delete('.circleci/config.yml');
260
- // Generate the .circleci/config.yml file
261
- (0, devkit_1.generateFiles)(tree, path.join(__dirname, 'files'), '.', {
262
- keepContinuationJobs: hasCdkOrTemplateFile,
263
- packageJsonName,
264
- });
265
- // Patch the nx.json file with the nx release default configuration
266
- injectNxReleaseConfiguration(tree, packageJsonName);
267
- // Patch root package.json file
268
- injectRootPackageJsonConfiguration(tree);
269
- // Patch or create root project.json file
270
- injectRootProjectJsonConfiguration(tree, packageJsonName);
271
- const installCallback = (0, devkit_1.addDependenciesToPackageJson)(tree, {}, { '@nx/conformance': '^3' }, 'package.json', false);
272
- // remove the old package handling the semver from devDeps
273
- const removeCallback = (0, devkit_1.removeDependenciesFromPackageJson)(tree, [], ['@jscutlery/semver'], 'package.json');
274
- await (0, devkit_1.formatFiles)(tree);
275
- return (0, devkit_1.runTasksInSerial)(installCallback, removeCallback);
276
- }
277
- exports.default = initGenerator;
278
- //# sourceMappingURL=init.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../../src/generators/init/init.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/schema",
3
- "$id": "init",
4
- "title": "",
5
- "type": "object",
6
- "properties": {}
7
- }
@@ -1,55 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- const { execSync } = require('child_process')
4
-
5
- async function getJwtToken() {
6
- const keyId = process.env.SPACELIFT_KEY_ID
7
- const keySecret = process.env.SPACELIFT_KEY_SECRET
8
-
9
- if (!keyId || !keySecret) {
10
- throw new Error(
11
- 'SPACELIFT_KEY_ID and SPACELIFT_KEY_SECRET environment variables are required',
12
- )
13
- }
14
-
15
- const response = await fetch('https://payfit.app.spacelift.io/graphql', {
16
- method: 'POST',
17
- headers: {
18
- 'Content-Type': 'application/json',
19
- },
20
- body: JSON.stringify({
21
- query: `mutation { apiKeyUser(id: "${keyId}", secret: "${keySecret}") { jwt } }`,
22
- }),
23
- })
24
-
25
- const data = await response.json()
26
-
27
- if (!data.data?.apiKeyUser?.jwt) {
28
- throw new Error('Failed to retrieve JWT token from Spacelift API')
29
- }
30
-
31
- return data.data.apiKeyUser.jwt
32
- }
33
-
34
- async function main() {
35
- try {
36
- console.log('Retrieving JWT token from Spacelift...')
37
- const jwt = await getJwtToken()
38
-
39
- console.log('Running GraphQL codegen...')
40
- execSync('graphql-codegen -c ./packages/nx-core/src/codegen.ts', {
41
- stdio: 'inherit',
42
- env: {
43
- ...process.env,
44
- SPACELIFT_JWT_TOKEN: jwt,
45
- },
46
- })
47
-
48
- console.log('Codegen completed successfully!')
49
- } catch (error) {
50
- console.error('Error:', error.message)
51
- process.exit(1)
52
- }
53
- }
54
-
55
- main()
@@ -1,6 +0,0 @@
1
- import { ProjectGraphProjectNode } from '@nx/devkit';
2
- import { ReleaseGroupWithName } from 'nx/src/command-line/release/config/filter-release-groups';
3
- import { FinalConfigForProject } from 'nx/src/command-line/release/version/release-group-processor';
4
- export declare const mockProjectGraphNode: ProjectGraphProjectNode;
5
- export declare const mockReleaseGroup: ReleaseGroupWithName;
6
- export declare const mockFinalConfig: FinalConfigForProject;
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mockFinalConfig = exports.mockReleaseGroup = exports.mockProjectGraphNode = void 0;
4
- exports.mockProjectGraphNode = {
5
- name: 'test-project',
6
- type: 'app',
7
- data: {
8
- root: 'apps/test-project',
9
- targets: {
10
- build: {
11
- executor: '@nx/js:tsc',
12
- outputs: ['{options.outputPath}'],
13
- options: {
14
- outputPath: 'dist/apps/test-project',
15
- },
16
- },
17
- },
18
- },
19
- };
20
- exports.mockReleaseGroup = {
21
- name: 'test-group',
22
- projects: ['test-project'],
23
- version: {
24
- useLegacyVersioning: false,
25
- conventionalCommits: true,
26
- preVersionCommand: '',
27
- specifierSource: 'conventional-commits',
28
- manifestRootsToUpdate: [],
29
- versionActions: '@payfit/nx-core/versionActions',
30
- currentVersionResolver: 'git-tag',
31
- currentVersionResolverMetadata: {},
32
- fallbackCurrentVersionResolver: 'disk',
33
- versionPrefix: '',
34
- preserveLocalDependencyProtocols: false,
35
- versionActionsOptions: {},
36
- firstRelease: false,
37
- deleteVersionPlans: true,
38
- updateDependents: 'auto',
39
- groupPreVersionCommand: '',
40
- logUnchangedProjects: true,
41
- },
42
- resolvedVersionPlans: [],
43
- changelog: false,
44
- projectsRelationship: 'independent',
45
- releaseTagPattern: '{projectName}@v{version}',
46
- releaseTagPatternCheckAllBranchesWhen: false,
47
- releaseTagPatternRequireSemver: false,
48
- releaseTagPatternStrictPreid: false,
49
- versionPlans: false,
50
- };
51
- exports.mockFinalConfig = {
52
- specifierSource: 'conventional-commits',
53
- currentVersionResolver: 'git-tag',
54
- currentVersionResolverMetadata: {},
55
- fallbackCurrentVersionResolver: 'disk',
56
- versionPrefix: '',
57
- preserveLocalDependencyProtocols: false,
58
- versionActionsOptions: {},
59
- manifestRootsToUpdate: [],
60
- };
61
- //# sourceMappingURL=version-actions.mock.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"version-actions.mock.js","sourceRoot":"","sources":["../../../src/scripts/version-actions.mock.ts"],"names":[],"mappings":";;;AAIa,QAAA,oBAAoB,GAA4B;IAC3D,IAAI,EAAE,cAAc;IACpB,IAAI,EAAE,KAAK;IACX,IAAI,EAAE;QACJ,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE;YACP,KAAK,EAAE;gBACL,QAAQ,EAAE,YAAY;gBACtB,OAAO,EAAE,CAAC,sBAAsB,CAAC;gBACjC,OAAO,EAAE;oBACP,UAAU,EAAE,wBAAwB;iBACrC;aACF;SACF;KACF;CACF,CAAA;AAEY,QAAA,gBAAgB,GAAyB;IACpD,IAAI,EAAE,YAAY;IAClB,QAAQ,EAAE,CAAC,cAAc,CAAC;IAC1B,OAAO,EAAE;QACP,mBAAmB,EAAE,KAAK;QAC1B,mBAAmB,EAAE,IAAI;QACzB,iBAAiB,EAAE,EAAE;QACrB,eAAe,EAAE,sBAAsB;QACvC,qBAAqB,EAAE,EAAE;QACzB,cAAc,EAAE,gCAAgC;QAChD,sBAAsB,EAAE,SAAS;QACjC,8BAA8B,EAAE,EAAE;QAClC,8BAA8B,EAAE,MAAM;QACtC,aAAa,EAAE,EAAE;QACjB,gCAAgC,EAAE,KAAK;QACvC,qBAAqB,EAAE,EAAE;QACzB,YAAY,EAAE,KAAK;QACnB,kBAAkB,EAAE,IAAI;QACxB,gBAAgB,EAAE,MAAM;QACxB,sBAAsB,EAAE,EAAE;QAC1B,oBAAoB,EAAE,IAAI;KAC3B;IACD,oBAAoB,EAAE,EAAE;IACxB,SAAS,EAAE,KAAK;IAChB,oBAAoB,EAAE,aAAa;IACnC,iBAAiB,EAAE,0BAA0B;IAC7C,qCAAqC,EAAE,KAAK;IAC5C,8BAA8B,EAAE,KAAK;IACrC,4BAA4B,EAAE,KAAK;IACnC,YAAY,EAAE,KAAK;CACpB,CAAA;AAEY,QAAA,eAAe,GAA0B;IACpD,eAAe,EAAE,sBAAsB;IACvC,sBAAsB,EAAE,SAAS;IACjC,8BAA8B,EAAE,EAAE;IAClC,8BAA8B,EAAE,MAAM;IACtC,aAAa,EAAE,EAAE;IACjB,gCAAgC,EAAE,KAAK;IACvC,qBAAqB,EAAE,EAAE;IACzB,qBAAqB,EAAE,EAAE;CAC1B,CAAA"}
@@ -1,145 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getProfileName = getProfileName;
4
- exports.getAwsCredentialsSet = getAwsCredentialsSet;
5
- exports.getAuthWithOidcProfile = getAuthWithOidcProfile;
6
- exports.loginToEcr = loginToEcr;
7
- exports.verifyEcrCredentials = verifyEcrCredentials;
8
- exports.checkAwsAuth = checkAwsAuth;
9
- const fs = require("fs");
10
- const os = require("os");
11
- const path = require("path");
12
- const consola_1 = require("consola");
13
- const exec_1 = require("./exec");
14
- let profileName = 'OIDC-PROFILE';
15
- /**
16
- * Return the AWS profile name to use in AWS cli commands
17
- */
18
- function getProfileName() {
19
- return profileName;
20
- }
21
- /**
22
- * Retrieves the AWS credentials from environment variables.
23
- * Ensures that `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, and `AWS_DEFAULT_REGION` are properly set.
24
- * Throws an error if credentials or region are missing.
25
- *
26
- * @return {Object} An object containing AWS credentials.
27
- * @return {string} return.accessKeyId The AWS Access Key ID.
28
- * @return {string} return.secretAccessKey The AWS Secret Access Key.
29
- * @return {string} return.region The AWS Region.
30
- */
31
- function getAwsCredentialsSet() {
32
- const accessKeyId = process.env.AWS_ACCESS_KEY_ID;
33
- const secretAccessKey = process.env.AWS_SECRET_ACCESS_KEY;
34
- const region = process.env.AWS_DEFAULT_REGION;
35
- if (!accessKeyId || !secretAccessKey) {
36
- throw new Error('AWS credentials not found, please set AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables (or attach GLOBAL_ORG context if you are using CircleCI)');
37
- }
38
- if (!region) {
39
- throw new Error('AWS region not found, please set AWS_DEFAULT_REGION environment variable (or attach GLOBAL_ORG context if you are using CircleCI)');
40
- }
41
- return { accessKeyId, secretAccessKey, region };
42
- }
43
- /**
44
- * Retrieves the authentication information for a given OIDC profile.
45
- * If the specified profile exists, it fetches the configuration; otherwise, it returns false.
46
- *
47
- * @return {Promise<string | boolean>} The authentication details if the profile exists, or false if the profile does not exist.
48
- */
49
- async function getAuthWithOidcProfile() {
50
- try {
51
- const profileExist = await (0, exec_1.exec)(`aws configure list-profiles`).pipe('grep', [profileName]);
52
- return profileExist.exitCode == 0 ? profileExist.stdout.trim() : false;
53
- }
54
- catch {
55
- return false;
56
- }
57
- }
58
- /**
59
- * Login to ECR using the specified registry or the AWS_ECR_REGISTRY environment variable
60
- *
61
- * @param registry
62
- * @param isPublicRegistry
63
- * @returns A promise that resolves to the result of the login command
64
- */
65
- async function loginToEcr(registry, isPublicRegistry = false) {
66
- if (!registry) {
67
- throw new Error('No ECR registry provided, please set AWS_ECR_REGISTRY environment variable or pass it as an argument');
68
- }
69
- // Default ECR command for the eu-west-3 region
70
- let ecrCommand = `aws ecr get-login-password --region eu-west-3`;
71
- // Check if the registry is the public ECR registry, if so, use the public ECR command
72
- if (isPublicRegistry) {
73
- ecrCommand = `aws ecr-public get-login-password --region us-east-1`;
74
- }
75
- consola_1.consola.log(`Logging in to ECR registry: ${registry}`);
76
- try {
77
- const result = await (0, exec_1.exec)(ecrCommand, { throwOnError: true }).pipe(`docker`, `login --username AWS --password-stdin ${registry}`.split(' '));
78
- consola_1.consola.success(`Successfully logged in to ECR registry: ${registry}`);
79
- return result;
80
- }
81
- catch (error) {
82
- consola_1.consola.error(`Failed to login to ECR registry: ${registry}`);
83
- consola_1.consola.error(error);
84
- throw error;
85
- }
86
- }
87
- /**
88
- * Verify that we have valid ECR credentials by checking the Docker config file
89
- *
90
- * @param registry The ECR registry to verify credentials for
91
- * @returns A promise that resolves to true if credentials are valid, false otherwise
92
- */
93
- async function verifyEcrCredentials(registry) {
94
- if (!registry) {
95
- consola_1.consola.error('No ECR registry provided for credential verification');
96
- return false;
97
- }
98
- try {
99
- consola_1.consola.log(`Verifying ECR credentials for registry: ${registry}`);
100
- // Docker config file path
101
- const configPath = path.join(os.homedir(), '.docker', 'config.json');
102
- // Check if the config file exists
103
- if (!fs.existsSync(configPath)) {
104
- consola_1.consola.error('Docker config file not found');
105
- return false;
106
- }
107
- // Read and parse the config file
108
- const configContent = fs.readFileSync(configPath, 'utf8');
109
- const config = JSON.parse(configContent);
110
- // Check if the registry is in the auths section
111
- if (config.auths && config.auths[registry]) {
112
- consola_1.consola.success(`ECR credentials verified for registry: ${registry}`);
113
- return true;
114
- }
115
- else {
116
- consola_1.consola.error(`ECR credentials verification failed: No authentication found for ${registry} in the .docker/config.json file`);
117
- return false;
118
- }
119
- }
120
- catch (error) {
121
- consola_1.consola.error(`ECR credentials verification failed with unexpected error`);
122
- consola_1.consola.error(error);
123
- return false;
124
- }
125
- }
126
- /**
127
- * Check AWS CLI with the OIDC profile otherwise use the default credentials
128
- * @returns {string} the profile's name
129
- */
130
- async function checkAwsAuth() {
131
- const profileExist = await getAuthWithOidcProfile();
132
- if (profileExist) {
133
- consola_1.consola.log('OIDC profile found, using it');
134
- profileName = 'OIDC-PROFILE';
135
- }
136
- else if (getAwsCredentialsSet()) {
137
- consola_1.consola.log('OIDC profile not found, using AWS_KEY_ID and AWS_SECRET_ACCESS_KEY');
138
- profileName = 'default';
139
- }
140
- else {
141
- throw new Error('AWS credentials not found, please attach CORE-PLATFORM_SHARED_ENV context if you are using CircleCI or export AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY environment variables');
142
- }
143
- return profileName;
144
- }
145
- //# sourceMappingURL=aws-auth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"aws-auth.js","sourceRoot":"","sources":["../../../../src/utils/common/aws-auth.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function isCircleCIRunner(): boolean;
2
- export declare function setupCircleCIRunner(): Promise<void>;
@@ -1,20 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isCircleCIRunner = isCircleCIRunner;
4
- exports.setupCircleCIRunner = setupCircleCIRunner;
5
- const exec_1 = require("./exec");
6
- function isCircleCIRunner() {
7
- return process.env.CIRCLECI === 'true';
8
- }
9
- async function setupCircleCIRunner() {
10
- const gitSetup = `
11
- git config --global --type bool push.autoSetupRemote true
12
- git fetch --tags
13
- `
14
- .trim()
15
- .split('\n');
16
- for await (const line of gitSetup) {
17
- await (0, exec_1.exec)(line.trim());
18
- }
19
- }
20
- //# sourceMappingURL=circleci.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"circleci.js","sourceRoot":"","sources":["../../../../src/utils/common/circleci.ts"],"names":[],"mappings":";;AAEA,4CAEC;AAED,kDAUC;AAhBD,iCAA6B;AAE7B,SAAgB,gBAAgB;IAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,CAAA;AACxC,CAAC;AAEM,KAAK,UAAU,mBAAmB;IACvC,MAAM,QAAQ,GAAG;;;CAGlB;SACI,IAAI,EAAE;SACN,KAAK,CAAC,IAAI,CAAC,CAAA;IACd,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAA,WAAI,EAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;IACzB,CAAC;AACH,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { Options, Result } from 'tinyexec';
2
- declare function execWrapperFromString(cmd: string, options?: Partial<Options>): Result;
3
- export declare const exec: typeof execWrapperFromString;
4
- export {};