@payfit/nx-core 4.40.1 → 4.41.0-ephemeral-hello-lambda-05ab438.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.
Files changed (88) hide show
  1. package/package.json +4 -15
  2. package/src/executors/publisher/docker.js +3 -3
  3. package/src/executors/publisher/docker.js.map +1 -1
  4. package/src/executors/publisher/executor.js +7 -4
  5. package/src/executors/publisher/executor.js.map +1 -1
  6. package/src/executors/publisher/helm.js +4 -4
  7. package/src/executors/publisher/helm.js.map +1 -1
  8. package/src/executors/publisher/lambda.d.ts +3 -0
  9. package/src/executors/publisher/lambda.js +50 -0
  10. package/src/executors/publisher/lambda.js.map +1 -0
  11. package/src/executors/publisher/schema.d.ts +14 -0
  12. package/src/executors/publisher/schema.json +17 -0
  13. package/src/executors/release/executor.js +4 -4
  14. package/src/executors/release/executor.js.map +1 -1
  15. package/src/executors/release/schema.d.ts +9 -0
  16. package/src/generators/init/files/.circleci/config.yml.template +12 -4
  17. package/src/generators/init/init.d.ts +1 -7
  18. package/src/generators/init/init.js +112 -77
  19. package/src/generators/init/init.js.map +1 -1
  20. package/src/generators/init/schema.d.ts +4 -0
  21. package/src/generators/init/schema.json +6 -0
  22. package/src/index.js +23 -2
  23. package/src/index.js.map +1 -1
  24. package/src/scripts/version-actions.d.ts +20 -2
  25. package/src/scripts/version-actions.js +44 -3
  26. package/src/scripts/version-actions.js.map +1 -1
  27. package/src/scripts/version-actions.mock.d.ts +1 -0
  28. package/src/scripts/version-actions.mock.js +9 -1
  29. package/src/scripts/version-actions.mock.js.map +1 -1
  30. package/src/utils/{aws-auth.d.ts → common/aws-auth.d.ts} +1 -0
  31. package/src/utils/{aws-auth.js → common/aws-auth.js} +1 -0
  32. package/src/utils/common/aws-auth.js.map +1 -0
  33. package/src/utils/common/circleci.js.map +1 -0
  34. package/src/utils/common/exec.js.map +1 -0
  35. package/src/utils/common/github.js.map +1 -0
  36. package/src/utils/common/import-esm.js.map +1 -0
  37. package/src/utils/common/logger.js.map +1 -0
  38. package/src/utils/common/nx.d.ts +9 -0
  39. package/src/utils/common/nx.js +47 -0
  40. package/src/utils/common/nx.js.map +1 -0
  41. package/src/utils/common/s3.d.ts +1 -0
  42. package/src/utils/common/s3.js +18 -0
  43. package/src/utils/common/s3.js.map +1 -0
  44. package/src/utils/common/tsh.js.map +1 -0
  45. package/src/utils/datadog.js +1 -1
  46. package/src/utils/datadog.js.map +1 -1
  47. package/src/utils/docker.js +2 -2
  48. package/src/utils/docker.js.map +1 -1
  49. package/src/utils/helm.js +3 -3
  50. package/src/utils/helm.js.map +1 -1
  51. package/src/utils/helm.mock.js.map +1 -1
  52. package/src/utils/lambda/aws-lambda.d.ts +4 -0
  53. package/src/utils/lambda/aws-lambda.js +77 -0
  54. package/src/utils/lambda/aws-lambda.js.map +1 -0
  55. package/src/utils/lambda/lambda.d.ts +1 -0
  56. package/src/utils/lambda/lambda.js +14 -0
  57. package/src/utils/lambda/lambda.js.map +1 -0
  58. package/src/utils/lambda/oci.d.ts +1 -0
  59. package/src/utils/lambda/oci.js +18 -0
  60. package/src/utils/lambda/oci.js.map +1 -0
  61. package/src/utils/lambda/publish.d.ts +1 -0
  62. package/src/utils/lambda/publish.js +26 -0
  63. package/src/utils/lambda/publish.js.map +1 -0
  64. package/src/utils/lambda/spacelift.d.ts +3 -0
  65. package/src/utils/lambda/spacelift.js +54 -0
  66. package/src/utils/lambda/spacelift.js.map +1 -0
  67. package/src/utils/aws-auth.js.map +0 -1
  68. package/src/utils/circleci.js.map +0 -1
  69. package/src/utils/exec.js.map +0 -1
  70. package/src/utils/github.js.map +0 -1
  71. package/src/utils/import-esm.js.map +0 -1
  72. package/src/utils/logger.js.map +0 -1
  73. package/src/utils/nx.d.ts +0 -8
  74. package/src/utils/nx.js +0 -95
  75. package/src/utils/nx.js.map +0 -1
  76. package/src/utils/tsh.js.map +0 -1
  77. /package/src/utils/{circleci.d.ts → common/circleci.d.ts} +0 -0
  78. /package/src/utils/{circleci.js → common/circleci.js} +0 -0
  79. /package/src/utils/{exec.d.ts → common/exec.d.ts} +0 -0
  80. /package/src/utils/{exec.js → common/exec.js} +0 -0
  81. /package/src/utils/{github.d.ts → common/github.d.ts} +0 -0
  82. /package/src/utils/{github.js → common/github.js} +0 -0
  83. /package/src/utils/{import-esm.d.ts → common/import-esm.d.ts} +0 -0
  84. /package/src/utils/{import-esm.js → common/import-esm.js} +0 -0
  85. /package/src/utils/{logger.d.ts → common/logger.d.ts} +0 -0
  86. /package/src/utils/{logger.js → common/logger.js} +0 -0
  87. /package/src/utils/{tsh.d.ts → common/tsh.d.ts} +0 -0
  88. /package/src/utils/{tsh.js → common/tsh.js} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@payfit/nx-core",
3
- "version": "4.40.1",
3
+ "version": "4.41.0-ephemeral-hello-lambda-05ab438.0",
4
4
  "type": "commonjs",
5
5
  "main": "./src/index.js",
6
6
  "types": "./src/index.d.ts",
@@ -11,7 +11,7 @@
11
11
  "directory": "packages/nx-core"
12
12
  },
13
13
  "dependencies": {
14
- "@nx/js": "21.3.2",
14
+ "@payfit/spacelift": "0.14.0-ephemeral-hello-lambda-05ab438.0",
15
15
  "args-tokenizer": "^0.3.0",
16
16
  "consola": "^3.4.2",
17
17
  "get-port": "^7.1.0",
@@ -31,11 +31,7 @@
31
31
  "nx": "^21"
32
32
  },
33
33
  "exports": {
34
- ".": {
35
- "types": "./src/index.d.ts",
36
- "require": "./src/index.js",
37
- "default": "./src/index.js"
38
- },
34
+ ".": "./src/index.js",
39
35
  "./versionActions": "./src/scripts/version-actions.js",
40
36
  "./package.json": "./package.json"
41
37
  },
@@ -43,12 +39,5 @@
43
39
  "generators": "./generators.json",
44
40
  "publishConfig": {
45
41
  "access": "restricted"
46
- },
47
- "files": [
48
- "src",
49
- "executors.json",
50
- "generators.json",
51
- "package.json",
52
- "!*tsconfig.lib.tsbuildinfo"
53
- ]
42
+ }
54
43
  }
@@ -2,11 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.publishDocker = publishDocker;
4
4
  const fs = require("node:fs");
5
- const aws_auth_1 = require("../../utils/aws-auth");
5
+ const aws_auth_1 = require("../../utils/common/aws-auth");
6
+ const github_1 = require("../../utils/common/github");
7
+ const logger_1 = require("../../utils/common/logger");
6
8
  const datadog_1 = require("../../utils/datadog");
7
9
  const docker_1 = require("../../utils/docker");
8
- const github_1 = require("../../utils/github");
9
- const logger_1 = require("../../utils/logger");
10
10
  async function publishDocker(options, context, version, projectRoot, isDryRun) {
11
11
  const projectDockerfile = `${projectRoot}/Dockerfile`;
12
12
  if (!fs.existsSync(projectDockerfile)) {
@@ -1 +1 @@
1
- {"version":3,"file":"docker.js","sourceRoot":"","sources":["../../../../src/executors/publisher/docker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docker.js","sourceRoot":"","sources":["../../../../../../packages/nx-core/src/executors/publisher/docker.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const nx_1 = require("../../utils/nx");
3
+ const nx_1 = require("../../utils/common/nx");
4
4
  const docker_1 = require("./docker");
5
5
  const helm_1 = require("./helm");
6
+ const lambda_1 = require("./lambda");
6
7
  const runExecutor = async (options, context) => {
7
8
  const isDryRun = process.env.NX_DRY_RUN === 'true' || options.dryRun || false;
8
- const projectRoot = context.projectGraph.nodes[context.projectName].data.root;
9
- const projectDist = await (0, nx_1.getDistForApp)(context);
10
- const version = (0, nx_1.getVersion)(context);
9
+ const projectGraph = (0, nx_1.getProjectFromGraph)(context);
10
+ const projectRoot = projectGraph.data.root;
11
+ const projectDist = await (0, nx_1.getDistForApp)(projectGraph);
12
+ const version = (0, nx_1.getVersion)(projectDist);
11
13
  await (0, docker_1.publishDocker)(options, context, version, projectRoot, isDryRun);
12
14
  await (0, helm_1.publishHelm)(options, context, version, projectRoot, projectDist, isDryRun);
15
+ await (0, lambda_1.publishLambda)(options, context, version, projectRoot, projectDist, isDryRun);
13
16
  return {
14
17
  success: true,
15
18
  };
@@ -1 +1 @@
1
- {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../src/executors/publisher/executor.ts"],"names":[],"mappings":";;AAEA,uCAA0D;AAC1D,qCAAwC;AACxC,iCAAoC;AAGpC,MAAM,WAAW,GAGuB,KAAK,EAC3C,OAAiC,EACjC,OAAwB,EACxB,EAAE;IACF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM,IAAI,OAAO,CAAC,MAAM,IAAI,KAAK,CAAA;IAC7E,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA;IAC7E,MAAM,WAAW,GAAG,MAAM,IAAA,kBAAa,EAAC,OAAO,CAAC,CAAA;IAChD,MAAM,OAAO,GAAG,IAAA,eAAU,EAAC,OAAO,CAAC,CAAA;IAEnC,MAAM,IAAA,sBAAa,EAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;IACrE,MAAM,IAAA,kBAAW,EACf,OAAO,EACP,OAAO,EACP,OAAO,EACP,WAAW,EACX,WAAW,EACX,QAAQ,CACT,CAAA;IAED,OAAO;QACL,OAAO,EAAE,IAAI;KACd,CAAA;AACH,CAAC,CAAA;AAED,kBAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../../../packages/nx-core/src/executors/publisher/executor.ts"],"names":[],"mappings":";;AAEA,8CAI8B;AAC9B,qCAAwC;AACxC,iCAAoC;AACpC,qCAAwC;AAGxC,MAAM,WAAW,GAGuB,KAAK,EAC3C,OAAiC,EACjC,OAAwB,EACxB,EAAE;IACF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM,IAAI,OAAO,CAAC,MAAM,IAAI,KAAK,CAAA;IAC7E,MAAM,YAAY,GAAG,IAAA,wBAAmB,EAAC,OAAO,CAAC,CAAA;IACjD,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAA;IAC1C,MAAM,WAAW,GAAG,MAAM,IAAA,kBAAa,EAAC,YAAY,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,IAAA,eAAU,EAAC,WAAW,CAAC,CAAA;IAEvC,MAAM,IAAA,sBAAa,EAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;IACrE,MAAM,IAAA,kBAAW,EACf,OAAO,EACP,OAAO,EACP,OAAO,EACP,WAAW,EACX,WAAW,EACX,QAAQ,CACT,CAAA;IACD,MAAM,IAAA,sBAAa,EACjB,OAAO,EACP,OAAO,EACP,OAAO,EACP,WAAW,EACX,WAAW,EACX,QAAQ,CACT,CAAA;IAED,OAAO;QACL,OAAO,EAAE,IAAI;KACd,CAAA;AACH,CAAC,CAAA;AAED,kBAAe,WAAW,CAAA"}
@@ -3,11 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.publishHelm = publishHelm;
4
4
  const tslib_1 = require("tslib");
5
5
  const fs = require("node:fs");
6
- const aws_auth_1 = require("../../utils/aws-auth");
7
- const github_1 = require("../../utils/github");
6
+ const aws_auth_1 = require("../../utils/common/aws-auth");
7
+ const github_1 = require("../../utils/common/github");
8
+ const logger_1 = require("../../utils/common/logger");
9
+ const tsh_1 = require("../../utils/common/tsh");
8
10
  const helm_1 = require("../../utils/helm");
9
- const logger_1 = require("../../utils/logger");
10
- const tsh_1 = require("../../utils/tsh");
11
11
  async function publishHelm(options, context, version, projectRoot, projectDist, isDryRun) {
12
12
  const env_1 = { stack: [], error: void 0, hasError: false };
13
13
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"helm.js","sourceRoot":"","sources":["../../../../src/executors/publisher/helm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helm.js","sourceRoot":"","sources":["../../../../../../packages/nx-core/src/executors/publisher/helm.ts"],"names":[],"mappings":";;AAoBA,kCA6EC;;AAjGD,8BAA6B;AAI7B,0DAA0D;AAC1D,sDAAwE;AACxE,sDAAmD;AACnD,gDAAmE;AACnE,2CASyB;AAGlB,KAAK,UAAU,WAAW,CAC/B,OAAiC,EACjC,OAAwB,EACxB,OAAe,EACf,WAAmB,EACnB,WAAmB,EACnB,QAAiB;;;QAEjB,MAAM,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,SAAS,CAAA;QAC5D,MAAM,iBAAiB,GAAG,GAAG,WAAW,IAAI,eAAe,EAAE,CAAA;QAC7D,MAAM,gBAAgB,GAAG,GAAG,iBAAiB,cAAc,CAAA;QAC3D,MAAM,eAAe,GAAG,GAAG,iBAAiB,aAAa,CAAA;QACzD,MAAM,qBAAqB,GAAG,GAAG,WAAW,SAAS,CAAA;QACrD,MAAM,aAAa,GAAG,MAAM,IAAA,qCAA4B,GAAE,CAAA;QAE1D,IAAI,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;QAEvE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACpC,gBAAO,CAAC,IAAI,CACV,kCAAkC,OAAO,CAAC,WAAW,eAAe,eAAe,YAAY,CAChG,CAAA;YACD,OAAM;QACR,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC3B,gBAAO,CAAC,KAAK,CACX,uGAAuG,CACxG,CAAA;YACD,OAAM;QACR,CAAC;QAED,IAAI,QAAQ,EAAE,CAAC;YACb,gBAAO,CAAC,GAAG,CACT,8CAA8C,iBAAiB,OAAO,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,IAAI,aAAa,iBAAiB,OAAO,2BAA2B,CAClN,CAAA;YACD,OAAM;QACR,CAAC;QAED,MAAM,IAAA,uBAAY,GAAE,CAAA;QAEpB,gBAAO,CAAC,GAAG,CACT,4BAA4B,OAAO,CAAC,aAAa,IAAI,aAAa,iBAAiB,OAAO,EAAE,CAC7F,CAAA;QACD,8CAA8C;QAC9C,MAAM,SAAS,0CAAG,MAAM,IAAA,gCAA0B,GAAE,QAAA,CAAA;QACpD,MAAM,SAAS,CAAC,OAAO,EAAE,CAAA;QAEzB,gBAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACpC,MAAM,IAAA,sCAA+B,EAAC,iBAAiB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QACxE,MAAM,IAAA,sBAAe,EAAC,iBAAiB,CAAC,CAAA;QACxC,MAAM,IAAA,oBAAa,EAAC,gBAAgB,EAAE,eAAe,EAAE,OAAO,CAAC,CAAA;QAC/D,MAAM,IAAA,kBAAW,EAAC,iBAAiB,EAAE,OAAO,EAAE,qBAAqB,CAAC,CAAA;QACpE,MAAM,IAAA,sCAA+B,EAAC,iBAAiB,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA;QACxE,gBAAO,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAA;QAEvC,MAAM,WAAW,GAAG,MAAM,IAAA,uBAAgB,EAAC,iBAAiB,CAAC,CAAA;QAC7D,MAAM,qBAAqB,GAAG,GAAG,WAAW,CAAC,IAAI,IAAI,OAAO,MAAM,CAAA;QAClE,MAAM,qBAAqB,GAAG,GAAG,qBAAqB,GAAG,qBAAqB,EAAE,CAAA;QAEhF,gBAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAA;QACtC,8DAA8D;QAC9D,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,gBAAO,CAAC,GAAG,CACT,yCAAyC,OAAO,CAAC,cAAc,EAAE,CAClE,CAAA;YACD,MAAM,IAAA,0BAAmB,EAAC,qBAAqB,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;QAC1E,CAAC;aAAM,CAAC;YACN,+CAA+C;YAC/C,MAAM,IAAA,uBAAgB,EACpB,qBAAqB,EACrB,qBAAqB,EACrB,OAAO,CAAC,aAAa,EACrB,aAAa,CACd,CAAA;QACH,CAAC;QAED,gBAAO,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAA;;;;;;;;;CACtD"}
@@ -0,0 +1,3 @@
1
+ import { ExecutorContext } from '@nx/devkit';
2
+ import { PublisherExecutorOptions } from './schema';
3
+ export declare function publishLambda(options: PublisherExecutorOptions, context: ExecutorContext, version: string, projectRoot: string, projectDist: string, isDryRun: boolean): Promise<void>;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.publishLambda = publishLambda;
4
+ const path_1 = require("path");
5
+ const aws_auth_1 = require("../../utils/common/aws-auth");
6
+ const github_1 = require("../../utils/common/github");
7
+ const logger_1 = require("../../utils/common/logger");
8
+ const s3_1 = require("../../utils/common/s3");
9
+ const lambda_1 = require("../../utils/lambda/lambda");
10
+ const oci_1 = require("../../utils/lambda/oci");
11
+ const publish_1 = require("../../utils/lambda/publish");
12
+ async function publishLambda(options, context, version, projectRoot, projectDist, isDryRun) {
13
+ const gitBranchName = await (0, github_1.getSanitizedCurrentGitBranch)();
14
+ const repoUrl = await (0, github_1.getSanitizedCurrentGitRepoUrl)();
15
+ const repoName = repoUrl.split('/').pop() ?? 'unknown-repo';
16
+ const zipName = `${context.projectName}-${version}.zip`;
17
+ const zipFileNameS3 = `${options.lambdaBucket}/${repoName}/${context.projectName}/${zipName}`;
18
+ if (!gitBranchName)
19
+ throw new Error('Unable to get current Git branch');
20
+ if (!options.lambdaRegistry) {
21
+ logger_1.consola.error('No lambda registry provided, add "lambdaRegistry" to your project.json metadata');
22
+ return;
23
+ }
24
+ if (!options.lambdaStacks) {
25
+ logger_1.consola.error('No lambda spacelift stacks provided, add "lambdaStacks" to your project.json metadata');
26
+ return;
27
+ }
28
+ if (!options.lambdaFunctions) {
29
+ logger_1.consola.error('No lambda functions provided, add "lambdaFunctions" to your project.json metadata');
30
+ return;
31
+ }
32
+ if (isDryRun) {
33
+ logger_1.consola.box(`Would have published lambda artefact to S3 ${zipFileNameS3} and ECR ${process.env.AWS_ECR_REGISTRY}/${options.lambdaRegistry}:${version} but --dry-run is enabled`);
34
+ return;
35
+ }
36
+ await (0, aws_auth_1.checkAwsAuth)();
37
+ logger_1.consola.box(`Publishing the lambda artefact ${zipFileNameS3}`);
38
+ logger_1.consola.info(`Zipping ${zipName} from ${projectDist}`);
39
+ await (0, lambda_1.createZip)(projectDist, zipName);
40
+ const zipPath = (0, path_1.join)(projectDist, zipName);
41
+ logger_1.consola.info(`Uploading ${zipPath} to S3 at ${zipFileNameS3}`);
42
+ await (0, s3_1.pushToS3)(zipPath, zipFileNameS3);
43
+ logger_1.consola.info(`Creating Spacelift Lambda version for ${zipFileNameS3}`);
44
+ await (0, publish_1.createLambdaVersion)(options.lambdaStacks, options.lambdaFunctions, version);
45
+ const packageJsonPath = (0, path_1.join)(projectDist, 'package.json');
46
+ logger_1.consola.info(`Pushing empty image to ECR ${process.env.AWS_ECR_REGISTRY}/${options.lambdaRegistry}:${version}`);
47
+ await (0, oci_1.pushImageToEcr)(options.lambdaRegistry, version, packageJsonPath);
48
+ logger_1.consola.success('Lambda artifact successfully pushed to S3!');
49
+ }
50
+ //# sourceMappingURL=lambda.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lambda.js","sourceRoot":"","sources":["../../../../../../packages/nx-core/src/executors/publisher/lambda.ts"],"names":[],"mappings":";;AAgBA,sCAuEC;AAvFD,+BAA2B;AAI3B,0DAA0D;AAC1D,sDAGkC;AAClC,sDAAmD;AACnD,8CAAgD;AAChD,sDAAqD;AACrD,gDAAuD;AACvD,wDAAgE;AAGzD,KAAK,UAAU,aAAa,CACjC,OAAiC,EACjC,OAAwB,EACxB,OAAe,EACf,WAAmB,EACnB,WAAmB,EACnB,QAAiB;IAEjB,MAAM,aAAa,GAAG,MAAM,IAAA,qCAA4B,GAAE,CAAA;IAE1D,MAAM,OAAO,GAAG,MAAM,IAAA,sCAA6B,GAAE,CAAA;IACrD,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,cAAc,CAAA;IAE3D,MAAM,OAAO,GAAG,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,MAAM,CAAA;IACvD,MAAM,aAAa,GAAG,GAAG,OAAO,CAAC,YAAY,IAAI,QAAQ,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,EAAE,CAAA;IAE7F,IAAI,CAAC,aAAa;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;IAEvE,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAC5B,gBAAO,CAAC,KAAK,CACX,iFAAiF,CAClF,CAAA;QACD,OAAM;IACR,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QAC1B,gBAAO,CAAC,KAAK,CACX,uFAAuF,CACxF,CAAA;QACD,OAAM;IACR,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;QAC7B,gBAAO,CAAC,KAAK,CACX,mFAAmF,CACpF,CAAA;QACD,OAAM;IACR,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,gBAAO,CAAC,GAAG,CACT,8CAA8C,aAAa,YAAY,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,4BAA4B,CACrK,CAAA;QACD,OAAM;IACR,CAAC;IAED,MAAM,IAAA,uBAAY,GAAE,CAAA;IACpB,gBAAO,CAAC,GAAG,CAAC,kCAAkC,aAAa,EAAE,CAAC,CAAA;IAE9D,gBAAO,CAAC,IAAI,CAAC,WAAW,OAAO,SAAS,WAAW,EAAE,CAAC,CAAA;IACtD,MAAM,IAAA,kBAAS,EAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IAErC,MAAM,OAAO,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,OAAO,CAAC,CAAA;IAC1C,gBAAO,CAAC,IAAI,CAAC,aAAa,OAAO,aAAa,aAAa,EAAE,CAAC,CAAA;IAC9D,MAAM,IAAA,aAAQ,EAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAEtC,gBAAO,CAAC,IAAI,CAAC,yCAAyC,aAAa,EAAE,CAAC,CAAA;IAEtE,MAAM,IAAA,6BAAmB,EACvB,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,eAAe,EACvB,OAAO,CACR,CAAA;IAED,MAAM,eAAe,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,cAAc,CAAC,CAAA;IACzD,gBAAO,CAAC,IAAI,CACV,8BAA8B,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,OAAO,CAAC,cAAc,IAAI,OAAO,EAAE,CAClG,CAAA;IACD,MAAM,IAAA,oBAAc,EAAC,OAAO,CAAC,cAAc,EAAE,OAAO,EAAE,eAAe,CAAC,CAAA;IAEtE,gBAAO,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAA;AAC/D,CAAC"}
@@ -0,0 +1,14 @@
1
+ export interface PublisherExecutorSchema {} // eslint-disable-line
2
+ export interface PublisherExecutorOptions {
3
+ chartRegistry: string
4
+ ecrRegistry: string
5
+ ociEcrRegistry?: string
6
+ isPublicRegistry?: boolean
7
+ helmChartFolder?: string
8
+ extraReleaseTags?: string[]
9
+ dryRun?: boolean
10
+ lambdaBucket?: string
11
+ lambdaRegistry?: string
12
+ lambdaStacks?: string[]
13
+ lambdaFunctions?: string[]
14
+ }
@@ -39,6 +39,23 @@
39
39
  "type": "boolean",
40
40
  "description": "Whether to run in dry run mode. When true, shows what would be published without actually publishing.",
41
41
  "default": false
42
+ },
43
+ "lambdaBucket": {
44
+ "type": "string",
45
+ "description": "The S3 bucket for lambda",
46
+ "default": "payfit-shared-lambda-artifacts"
47
+ },
48
+ "lambdaRegistry": {
49
+ "type": "string",
50
+ "description": "The OCI registry for lambda"
51
+ },
52
+ "lambdaStacks": {
53
+ "type": "array",
54
+ "description": "The list of stacks to publish the lambda to"
55
+ },
56
+ "lambdaFunctions": {
57
+ "type": "array",
58
+ "description": "The list of lambda functions inside the workload"
42
59
  }
43
60
  },
44
61
  "required": []
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const release_1 = require("nx/release");
4
- const circleci_1 = require("../../utils/circleci");
5
- const github_1 = require("../../utils/github");
6
- const logger_1 = require("../../utils/logger");
7
- const tsh_1 = require("../../utils/tsh");
4
+ const circleci_1 = require("../../utils/common/circleci");
5
+ const github_1 = require("../../utils/common/github");
6
+ const logger_1 = require("../../utils/common/logger");
7
+ const tsh_1 = require("../../utils/common/tsh");
8
8
  const runExecutor = async (options, context) => {
9
9
  const isDryRun = process.env.NX_DRY_RUN === 'true' || options.dryRun || false;
10
10
  if ((0, circleci_1.isCircleCIRunner)()) {
@@ -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":["../../../../../../packages/nx-core/src/executors/release/executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export interface ReleaseExecutorSchema {} // eslint-disable-line
2
+ export interface ReleaseExecutorOptions {
3
+ skipPublish?: boolean
4
+ preRelease?: boolean
5
+ dryRun?: boolean
6
+ verbose?: boolean
7
+ groups?: string[]
8
+ specifier?: string
9
+ }
@@ -78,14 +78,11 @@ jobs:
78
78
  - checkout
79
79
  - node/install-packages: *install_packages
80
80
  - nx/set-shas: *nx_set_shas_option
81
- - run: npx nx affected -t build
81
+ - run: npx nx run-many -t build
82
82
  - persist_to_workspace:
83
83
  root: '.'
84
84
  paths:
85
85
  - dist
86
- - apps/*/dist
87
- - packages/*/dist
88
- - libs/*/dist
89
86
 
90
87
  test:
91
88
  <<: *setup_env_node
@@ -94,6 +91,8 @@ jobs:
94
91
  - node/install-packages: *install_packages
95
92
  - nx/set-shas: *nx_set_shas_option
96
93
  - run: npx nx affected -t test
94
+ - store_test_results:
95
+ path: test-results
97
96
 
98
97
  publish:
99
98
  <<: *setup_env_machine
@@ -118,6 +117,15 @@ jobs:
118
117
  tar -xzf teleport-v17.4.6-linux-amd64-bin.tar.gz
119
118
  cd teleport
120
119
  sudo ./install
120
+ - run:
121
+ name: 'Install Oras'
122
+ command: |
123
+ VERSION="1.2.2"
124
+ curl -LO "https://github.com/oras-project/oras/releases/download/v${VERSION}/oras_${VERSION}_linux_amd64.tar.gz"
125
+ mkdir -p oras-install/
126
+ tar -zxf oras_${VERSION}_*.tar.gz -C oras-install/
127
+ sudo mv oras-install/oras /usr/local/bin/
128
+ rm -rf oras_${VERSION}_*.tar.gz oras-install/
121
129
  - run:
122
130
  name: Release
123
131
  command: |
@@ -2,12 +2,6 @@ import { Tree } from '@nx/devkit';
2
2
  import { InitGeneratorSchema } from './schema';
3
3
  export declare function extractMetadataFromCircleCI(circleciContent: string, tree: Tree): Promise<Record<string, string>>;
4
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;
5
+ export declare function processPackageJsonPublishConfig(tree: Tree, packageJsonPath: string): Promise<void>;
12
6
  export declare function initGenerator(tree: Tree, options?: InitGeneratorSchema): Promise<import("@nx/devkit").GeneratorCallback>;
13
7
  export default initGenerator;
@@ -7,8 +7,8 @@ exports.initGenerator = initGenerator;
7
7
  const path = require("path");
8
8
  const devkit_1 = require("@nx/devkit");
9
9
  const yaml = require("yaml");
10
- const github_1 = require("../../utils/github");
11
- const logger_1 = require("../../utils/logger");
10
+ const github_1 = require("../../utils/common/github");
11
+ const logger_1 = require("../../utils/common/logger");
12
12
  const METADATA_EXTRACTORS = [
13
13
  {
14
14
  jobType: 'payfit-aws-ecr/build-and-push',
@@ -91,24 +91,15 @@ function injectMetadata(tree, projectRoot, metadata) {
91
91
  return projectJson;
92
92
  });
93
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;
94
+ async function processPackageJsonPublishConfig(tree, packageJsonPath) {
103
95
  (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
96
+ if (packageJson.private === undefined) {
97
+ packageJson.private = true;
98
+ }
99
+ else if (packageJson.private === false && !packageJson.publishConfig) {
100
+ packageJson.publishConfig = {
101
+ access: 'restricted',
102
+ };
112
103
  }
113
104
  return packageJson;
114
105
  });
@@ -129,39 +120,67 @@ async function processCircleCIMetadata(tree, projectCircleCIPath, projectRoot) {
129
120
  });
130
121
  }
131
122
  function injectNxReleaseConfiguration(tree, packageJsonName) {
132
- const nxJson = (0, devkit_1.readNxJson)(tree);
133
- nxJson.release = {
134
- projectsRelationship: 'independent',
135
- projects: ['*', `!${packageJsonName}`],
136
- releaseTagPattern: '{projectName}-{version}',
137
- changelog: {
138
- projectChangelogs: {
139
- createRelease: 'github',
140
- file: false,
123
+ (0, devkit_1.updateJson)(tree, 'nx.json', nxJson => {
124
+ nxJson.release = {
125
+ projectsRelationship: 'independent',
126
+ projects: ['*', `!${packageJsonName}`],
127
+ releaseTagPattern: '{projectName}-{version}',
128
+ changelog: {
129
+ projectChangelogs: {
130
+ createRelease: 'github',
131
+ file: false,
132
+ },
133
+ automaticFromRef: true,
134
+ git: {
135
+ commit: false,
136
+ tag: true,
137
+ },
141
138
  },
142
- automaticFromRef: true,
143
- git: {
144
- commit: false,
145
- tag: true,
139
+ version: {
140
+ useLegacyVersioning: false,
141
+ currentVersionResolver: 'git-tag',
142
+ fallbackCurrentVersionResolver: 'disk',
143
+ specifierSource: 'conventional-commits',
144
+ manifestRootsToUpdate: ['{workspaceRoot}/dist/{projectRoot}'],
145
+ preserveLocalDependencyProtocols: false,
146
146
  },
147
- },
148
- version: {
149
- useLegacyVersioning: false,
150
- currentVersionResolver: 'git-tag',
151
- fallbackCurrentVersionResolver: 'disk',
152
- specifierSource: 'conventional-commits',
153
- preserveLocalDependencyProtocols: false,
154
- },
155
- };
156
- // Initialize plugins array if it doesn't exist
157
- nxJson.plugins = nxJson.plugins ?? [];
158
- // Add @payfit/nx-core plugin if it doesn't already exist
159
- if (!nxJson.plugins.includes('@payfit/nx-core')) {
160
- nxJson.plugins.push('@payfit/nx-core');
161
- }
162
- (0, devkit_1.updateNxJson)(tree, nxJson);
147
+ };
148
+ // Initialize plugins array if it doesn't exist
149
+ nxJson.plugins = nxJson.plugins ?? [];
150
+ // Add @payfit/nx-core plugin if it doesn't already exist
151
+ if (!nxJson.plugins.includes('@payfit/nx-core')) {
152
+ nxJson.plugins.push('@payfit/nx-core');
153
+ }
154
+ // Initialize nx-release-publish target default
155
+ nxJson.targetDefaults = nxJson.targetDefaults ?? [];
156
+ if (!nxJson.targetDefaults['nx-release-publish']) {
157
+ nxJson.targetDefaults['nx-release-publish'] = {
158
+ options: {
159
+ packageRoot: '{workspaceRoot}/dist/{projectRoot}',
160
+ },
161
+ };
162
+ }
163
+ const outputPath = '{workspaceRoot}/dist/{projectRoot}';
164
+ // Inject the build output path for the release
165
+ if (!nxJson.targetDefaults['build']) {
166
+ nxJson.targetDefaults['build'] = {
167
+ options: {
168
+ outputPath,
169
+ },
170
+ };
171
+ }
172
+ else if (!nxJson.targetDefaults['build'].options) {
173
+ nxJson.targetDefaults['build'].options = {
174
+ outputPath,
175
+ };
176
+ }
177
+ else {
178
+ nxJson.targetDefaults['build'].options.outputPath = outputPath;
179
+ }
180
+ return nxJson;
181
+ });
163
182
  }
164
- function injectRootPackageJsonConfiguration(tree) {
183
+ function injectPackageJsonConfiguration(tree) {
165
184
  (0, devkit_1.updateJson)(tree, 'package.json', packageJson => {
166
185
  if (!packageJson.nx) {
167
186
  packageJson.nx = {
@@ -178,23 +197,24 @@ function injectRootPackageJsonConfiguration(tree) {
178
197
  function injectRootProjectJsonConfiguration(tree, packageJsonName) {
179
198
  if (tree.exists('project.json')) {
180
199
  (0, devkit_1.updateJson)(tree, 'project.json', projectJson => {
181
- const projectConfig = projectJson;
182
- if (!projectConfig.targets) {
183
- projectConfig.targets = {
200
+ if (!projectJson.targets) {
201
+ projectJson.targets = {
184
202
  release: {
185
203
  executor: '@payfit/nx-core:release',
186
204
  cache: false,
187
205
  },
188
206
  };
189
207
  }
190
- else if (!projectConfig.targets['release']) {
191
- projectConfig.targets['release'] = {
208
+ else if (!projectJson.targets['release']) {
209
+ projectJson.targets['release'] = {
192
210
  executor: '@payfit/nx-core:release',
193
211
  cache: false,
194
212
  };
195
213
  }
196
- projectConfig.name = packageJsonName;
197
- return projectConfig;
214
+ if (projectJson.name !== packageJsonName) {
215
+ projectJson.name = packageJsonName;
216
+ }
217
+ return projectJson;
198
218
  });
199
219
  }
200
220
  else {
@@ -217,22 +237,25 @@ function getPackageJsonName(tree) {
217
237
  ? packageJson?.name
218
238
  : `@payfit/${packageJson?.name}`;
219
239
  }
220
- // For each project, we need to remove the github, version, npm as there not used anymore
221
- function injectProjectJsonConfiguration(tree, projectName, options) {
222
- const projectJson = (0, devkit_1.readProjectConfiguration)(tree, projectName);
223
- let existingNpmTarget = false;
224
- for (const targetName in projectJson.targets) {
225
- if (targetName === 'npm')
226
- existingNpmTarget = true;
227
- const inferedTargets = ['github', 'version', 'npm'];
228
- if (inferedTargets.includes(targetName)) {
229
- delete projectJson.targets[targetName];
230
- }
240
+ // For each project, we need to remove the github, version
241
+ // We should also remove the lint and test targets as they should be infered
242
+ // if there is a eslint.json or jest.config.js/vite config file
243
+ function removeInferedNxProjectConfiguration(tree, projectRoot) {
244
+ const nxJsonPath = path.join(projectRoot, 'project.json');
245
+ if (tree.exists(nxJsonPath)) {
246
+ (0, devkit_1.updateJson)(tree, nxJsonPath, nxJson => {
247
+ const inferedTargets = ['github', 'version'];
248
+ inferedTargets.forEach(target => {
249
+ if (nxJson.targets?.[target]) {
250
+ delete nxJson.targets[target];
251
+ }
252
+ });
253
+ return nxJson;
254
+ });
231
255
  }
232
- 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
233
- (0, devkit_1.updateProjectConfiguration)(tree, projectName, projectJson);
234
256
  }
235
257
  async function initGenerator(tree, options = {}) {
258
+ const workspaceRoot = `.`;
236
259
  // Check for each project if we can find a template.yaml or a cdk.json file
237
260
  // If it's the case we should keep the continuation jobs in the .circleci/config.yml,
238
261
  // the .circleci/shared-config.yml
@@ -246,9 +269,13 @@ async function initGenerator(tree, options = {}) {
246
269
  const templateYamlPath = path.join(projectRoot, 'template.yaml');
247
270
  const cdkJsonPath = path.join(projectRoot, 'cdk.json');
248
271
  const projectCircleCIPath = path.join(projectRoot, '.circleci/config.yml');
272
+ const packageJsonPath = path.join(projectRoot, 'package.json');
249
273
  if (tree.exists(projectCircleCIPath)) {
250
274
  await processCircleCIMetadata(tree, projectCircleCIPath, projectRoot);
251
275
  }
276
+ if (tree.exists(packageJsonPath)) {
277
+ await processPackageJsonPublishConfig(tree, packageJsonPath);
278
+ }
252
279
  // Check if either file exists, this may need to be adjusted based on serverless autodiscover pattern
253
280
  if (tree.exists(templateYamlPath) || tree.exists(cdkJsonPath)) {
254
281
  hasCdkOrTemplateFile = true;
@@ -259,20 +286,21 @@ async function initGenerator(tree, options = {}) {
259
286
  tree.delete(projectCircleCIPath);
260
287
  }
261
288
  }
262
- injectProjectJsonConfiguration(tree, projectName, options);
263
289
  }
264
290
  // If there is no project with a template.yaml or cdk.json file,
265
291
  // we can delete the .circleci/shared-config.yml file
266
- const sharedConfigPath = '.circleci/shared-config.yml';
267
- if (!hasCdkOrTemplateFile && tree.exists(sharedConfigPath)) {
292
+ if (!hasCdkOrTemplateFile) {
268
293
  logger_1.consola.info('No project with a template.yaml or cdk.json file found, deleting .circleci/shared-config.yml');
269
- tree.delete(sharedConfigPath);
294
+ const sharedConfigPath = path.join(workspaceRoot, '.circleci/shared-config.yml');
295
+ if (tree.exists(sharedConfigPath)) {
296
+ tree.delete(sharedConfigPath);
297
+ }
270
298
  }
271
299
  const packageJsonName = getPackageJsonName(tree);
272
300
  // Delete the .circleci/config.yml file if it exists
273
- tree.delete('.circleci/config.yml');
301
+ tree.delete(path.join(workspaceRoot, '.circleci/config.yml'));
274
302
  // Generate the .circleci/config.yml file
275
- (0, devkit_1.generateFiles)(tree, path.join(__dirname, 'files'), '.', {
303
+ (0, devkit_1.generateFiles)(tree, path.join(__dirname, 'files'), workspaceRoot, {
276
304
  queuing_release: options.queuing_release ?? true,
277
305
  keepContinuationJobs: hasCdkOrTemplateFile,
278
306
  packageJsonName,
@@ -280,11 +308,18 @@ async function initGenerator(tree, options = {}) {
280
308
  // Patch the nx.json file with the nx release default configuration
281
309
  injectNxReleaseConfiguration(tree, packageJsonName);
282
310
  // Patch root package.json file
283
- injectRootPackageJsonConfiguration(tree);
311
+ injectPackageJsonConfiguration(tree);
284
312
  // Patch or create root project.json file
285
313
  injectRootProjectJsonConfiguration(tree, packageJsonName);
286
- const installCallback = (0, devkit_1.addDependenciesToPackageJson)(tree, {}, { '@nx/conformance': '^3' }, 'package.json', false);
314
+ // For each project, remove the infered targets
315
+ if (options.remove_infered_targets) {
316
+ for (const [projectName, projectConfig] of projects.entries()) {
317
+ const projectRoot = projectConfig.root;
318
+ removeInferedNxProjectConfiguration(tree, projectRoot);
319
+ }
320
+ }
287
321
  await (0, devkit_1.formatFiles)(tree);
322
+ const installCallback = (0, devkit_1.addDependenciesToPackageJson)(tree, {}, { '@nx/conformance': '^3' }, 'package.json', false);
288
323
  return (0, devkit_1.runTasksInSerial)(installCallback);
289
324
  }
290
325
  exports.default = initGenerator;