@payfit/nx-core 5.0.2-ephemeral-vibe-code-spacelift-stack-manager.4 → 5.0.2

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 (64) hide show
  1. package/dist/src/executors/docker-build/executor.js +3 -6
  2. package/dist/src/executors/docker-build/executor.js.map +1 -1
  3. package/dist/src/executors/docker-build/schema.json +5 -0
  4. package/dist/src/executors/publisher/docker.js +1 -1
  5. package/dist/src/executors/publisher/docker.js.map +1 -1
  6. package/dist/src/executors/publisher/executor.js.map +1 -1
  7. package/dist/src/executors/publisher/frontend.js +1 -2
  8. package/dist/src/executors/publisher/frontend.js.map +1 -1
  9. package/dist/src/executors/publisher/helm.js +5 -3
  10. package/dist/src/executors/publisher/helm.js.map +1 -1
  11. package/dist/src/executors/publisher/lambda.js +13 -16
  12. package/dist/src/executors/publisher/lambda.js.map +1 -1
  13. package/dist/src/executors/publisher/schema.json +5 -0
  14. package/dist/src/executors/release/executor.js +2 -0
  15. package/dist/src/executors/release/executor.js.map +1 -1
  16. package/dist/src/generators/init/globalFiles/.circleci/config.yml.template +1 -4
  17. package/dist/src/index.d.ts +4 -3
  18. package/dist/src/index.js +116 -54
  19. package/dist/src/index.js.map +1 -1
  20. package/dist/src/scripts/nx-core-updater.js +60 -312
  21. package/dist/src/utils/common/ecr.js +9 -29
  22. package/dist/src/utils/common/ecr.js.map +1 -1
  23. package/dist/src/utils/common/nx.d.ts +1 -3
  24. package/dist/src/utils/common/nx.js +0 -25
  25. package/dist/src/utils/common/nx.js.map +1 -1
  26. package/dist/src/utils/common/oci.d.ts +3 -17
  27. package/dist/src/utils/common/oci.js +4 -36
  28. package/dist/src/utils/common/oci.js.map +1 -1
  29. package/dist/src/utils/docker.d.ts +2 -2
  30. package/dist/src/utils/docker.js +11 -9
  31. package/dist/src/utils/docker.js.map +1 -1
  32. package/dist/src/utils/helm.d.ts +1 -1
  33. package/dist/src/utils/helm.js +6 -11
  34. package/dist/src/utils/helm.js.map +1 -1
  35. package/dist/src/utils/helm.mock.d.ts +85 -0
  36. package/dist/src/utils/helm.mock.js +100 -0
  37. package/dist/src/utils/helm.mock.js.map +1 -0
  38. package/dist/src/utils/spacelift/lib/__generated__/gql.js +1 -1
  39. package/dist/src/utils/spacelift/lib/__generated__/graphql.d.ts +45 -42
  40. package/dist/src/utils/spacelift/lib/__generated__/graphql.js +3 -3
  41. package/dist/src/utils/spacelift/lib/__generated__/graphql.js.map +1 -1
  42. package/executors.json +4 -4
  43. package/generators.json +0 -5
  44. package/migrations.json +0 -5
  45. package/package.json +3 -4
  46. package/dist/src/executors/publisher/schema.d.ts +0 -26
  47. package/dist/src/executors/publisher/schema.js +0 -3
  48. package/dist/src/executors/publisher/schema.js.map +0 -1
  49. package/dist/src/executors/spacelift-stack-management/executor.d.ts +0 -4
  50. package/dist/src/executors/spacelift-stack-management/executor.js +0 -195
  51. package/dist/src/executors/spacelift-stack-management/executor.js.map +0 -1
  52. package/dist/src/executors/spacelift-stack-management/schema.json +0 -31
  53. package/dist/src/generators/local-lambda-setup/files/docker-compose/docker-compose.yml.template +0 -21
  54. package/dist/src/generators/local-lambda-setup/files/scripts/invoke_lambda_local.sh.template +0 -97
  55. package/dist/src/generators/local-lambda-setup/local-lambda-setup.d.ts +0 -25
  56. package/dist/src/generators/local-lambda-setup/local-lambda-setup.js +0 -167
  57. package/dist/src/generators/local-lambda-setup/local-lambda-setup.js.map +0 -1
  58. package/dist/src/generators/local-lambda-setup/schema.json +0 -24
  59. package/dist/src/migrations/20251029-nx-conformance-requirement-publish.d.ts +0 -2
  60. package/dist/src/migrations/20251029-nx-conformance-requirement-publish.js +0 -85
  61. package/dist/src/migrations/20251029-nx-conformance-requirement-publish.js.map +0 -1
  62. package/dist/src/utils/common/enums.d.ts +0 -7
  63. package/dist/src/utils/common/enums.js +0 -12
  64. package/dist/src/utils/common/enums.js.map +0 -1
@@ -1,31 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/schema",
3
- "version": 2,
4
- "title": "Spacelift Stack Management",
5
- "description": "Create and manage Spacelift stacks from YAML configuration",
6
- "type": "object",
7
- "properties": {
8
- "configFile": {
9
- "type": "string",
10
- "description": "Path to the YAML configuration file containing stack definition",
11
- "default": "spacelift.yaml"
12
- },
13
- "action": {
14
- "type": "string",
15
- "description": "Action to perform on the stack",
16
- "enum": ["create", "update", "delete"],
17
- "default": "update"
18
- },
19
- "destroyResources": {
20
- "type": "boolean",
21
- "description": "When deleting, also destroy resources",
22
- "default": false
23
- },
24
- "skipIfUnchanged": {
25
- "type": "boolean",
26
- "description": "Skip update if YAML matches current stack",
27
- "default": true
28
- }
29
- },
30
- "required": []
31
- }
@@ -1,21 +0,0 @@
1
- name: '<%= repositoryName %>'
2
-
3
- services:
4
- localstack:
5
- image: localstack/localstack:4.8.1
6
- container_name: localstack
7
- ports:
8
- - '127.0.0.1:4566:4566'
9
- - '127.0.0.1:4510-4559:4510-4559'
10
- environment:
11
- - AWS_ACCESS_KEY_ID=localstack
12
- - AWS_SECRET_ACCESS_KEY=a-secret-access-key
13
- - AWS_REGION=eu-west-3
14
- - DEBUG=1
15
- - DOCKER_HOST=unix:///var/run/docker.sock
16
- - LAMBDA_RUNTIME_ENVIRONMENT_TIMEOUT=30
17
- volumes:
18
- - ./tmp/localstack:/var/lib/localstack
19
- - /var/run/docker.sock:/var/run/docker.sock
20
- security_opt:
21
- - no-new-privileges:true
@@ -1,97 +0,0 @@
1
- #!/bin/sh
2
- if [ $# -lt 1 ]; then
3
- echo "ERROR FUNCTION_NAME name required"
4
- exit 1
5
- fi
6
- FUNCTION_NAME=$1
7
- NX_PROJECT=$2
8
- PROJECT_ROOT=$3
9
- LAMBDA_RUNTIME=$4
10
- LAMBDA_HANDLER=$5
11
- LAMBDA_TIMEOUT=$6
12
-
13
- DIST_FOLDER_PATH=$(npx nx show project $NX_PROJECT --json | jq -r '.targets.build.options.outputPath // .targets.build.outputs[0]' | head -1 | sed 's/{[^}]*}/./g')
14
-
15
- # zip the build result
16
- cd $DIST_FOLDER_PATH && zip -r ./$FUNCTION_NAME.zip . >/dev/null && cd -
17
-
18
- localAWS() {
19
- AWS_ACCESS_KEY_ID=localstack \
20
- AWS_SECRET_ACCESS_KEY=secret \
21
- AWS_DEFAULT_REGION=eu-west-3 \
22
- aws --endpoint-url=http://localhost:4566 --no-cli-pager "$@"
23
- }
24
-
25
- # Load environment variables
26
- if [ -f "$PWD/$PROJECT_ROOT/.env.$FUNCTION_NAME" ]; then
27
- ENV_VARIABLES=$(grep -v '^\s*#' "$PWD/$PROJECT_ROOT/.env.$FUNCTION_NAME" | grep -v '^\s*$' | paste -s -d "," -)
28
- else
29
- echo "No file .env.$FUNCTION_NAME found"
30
- fi
31
- # Check if function exists
32
- localAWS lambda get-function --function-name $FUNCTION_NAME >/dev/null 2>&1
33
- if [ 0 -eq $? ]; then
34
- # Update lambda in localstack
35
- echo "Updating lambda $FUNCTION_NAME configuration"
36
- localAWS lambda update-function-configuration \
37
- --function-name "$FUNCTION_NAME" \
38
- --role "arn:aws:iam::000000000000:role/$FUNCTION_NAME" \
39
- --runtime "$LAMBDA_RUNTIME" \
40
- --timeout "$LAMBDA_TIMEOUT" \
41
- --memory-size 128 \
42
- --handler $LAMBDA_HANDLER \
43
- --environment "Variables={$ENV_VARIABLES}" \
44
- --no-cli-pager >/dev/null 2>&1
45
- echo "Updating $FUNCTION_NAME lambda code"
46
- localAWS lambda update-function-code \
47
- --function-name $FUNCTION_NAME \
48
- --zip-file fileb://$DIST_FOLDER_PATH/$FUNCTION_NAME.zip \
49
- --no-cli-pager >/dev/null 2>&1
50
- else
51
- # Create lambda in localstack
52
- echo "Creating lambda $FUNCTION_NAME"
53
- localAWS lambda create-function \
54
- --function-name "$FUNCTION_NAME" \
55
- --role "arn:aws:iam::000000000000:role/lambda-demo" \
56
- --runtime "$LAMBDA_RUNTIME" \
57
- --timeout "$LAMBDA_TIMEOUT" \
58
- --memory-size 128 \
59
- --handler $LAMBDA_HANDLER \
60
- --environment "Variables={$ENV_VARIABLES}" \
61
- --zip-file "fileb://$DIST_FOLDER_PATH/$FUNCTION_NAME.zip" \
62
- --no-cli-pager >/dev/null 2>&1
63
- fi
64
-
65
- TIMEOUT=60
66
- COUNTER=0
67
-
68
- while [ $(localAWS lambda get-function --function-name "$FUNCTION_NAME" --query 'Configuration.State' --output text) != "Active" ]; do
69
- if [ $COUNTER -ge $TIMEOUT ]; then
70
- echo "Timeout: Function $FUNCTION_NAME not ready after ${TIMEOUT} seconds"
71
- exit 1
72
- fi
73
- echo "Waiting for function $FUNCTION_NAME... (${COUNTER}s)"
74
- sleep 5
75
- COUNTER=$((COUNTER + 5))
76
- done
77
- echo "Function $FUNCTION_NAME is ready!"
78
-
79
- # invoke lambda
80
- response=$(localAWS lambda invoke \
81
- --function-name "$FUNCTION_NAME" \
82
- --payload fileb://$PWD/$PROJECT_ROOT/events/$FUNCTION_NAME.json \
83
- "$DIST_FOLDER_PATH/$FUNCTION_NAME.output")
84
-
85
- output=$(cat $DIST_FOLDER_PATH/$FUNCTION_NAME.output | jq)
86
-
87
- if echo "$response" | jq -e '.FunctionError' > /dev/null 2>&1; then
88
- echo "Error: Lambda $FUNCTION_NAME execution failed"
89
- echo "$output"
90
- exit 1
91
- fi
92
-
93
- echo "Function $FUNCTION_NAME executed successfully"
94
- echo "$output"
95
-
96
- rm $DIST_FOLDER_PATH/$FUNCTION_NAME.zip
97
- rm $DIST_FOLDER_PATH/$FUNCTION_NAME.output
@@ -1,25 +0,0 @@
1
- import { ProjectConfiguration, Tree } from '@nx/devkit';
2
- import { LocalLambdaSetupGeneratorSchema } from './schema';
3
- interface LambdaTerraformConfiguration {
4
- environment_variables: Record<string, string>;
5
- config: {
6
- runtime: string;
7
- handler: string;
8
- timeout: number;
9
- };
10
- }
11
- export declare function getLambdaTerraformConfiguration(tree: Tree, projectRoot: string, lambdaName: string): Promise<{
12
- environment_variables: any;
13
- config: {
14
- runtime: any;
15
- handler: any;
16
- timeout: any;
17
- };
18
- }>;
19
- export declare function createEnvFile(tree: Tree, projectRoot: string, lambdaName: string, lambdaTerraformConfiguration: LambdaTerraformConfiguration): Promise<void>;
20
- export declare function generateDockerComposeFile(tree: Tree): void;
21
- export declare function createJsonEventFile(tree: Tree, projectRoot: string, lambdaName: string): Promise<void>;
22
- export declare function updateProjectJson(tree: Tree, lambdaName: string, projectConfiguration: ProjectConfiguration, lambdaTerraformConfiguration: LambdaTerraformConfiguration): void;
23
- export declare function generateScripts(tree: Tree): void;
24
- export declare function localLambdaSetupGenerator(tree: Tree, options: LocalLambdaSetupGeneratorSchema): Promise<void>;
25
- export default localLambdaSetupGenerator;
@@ -1,167 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLambdaTerraformConfiguration = getLambdaTerraformConfiguration;
4
- exports.createEnvFile = createEnvFile;
5
- exports.generateDockerComposeFile = generateDockerComposeFile;
6
- exports.createJsonEventFile = createJsonEventFile;
7
- exports.updateProjectJson = updateProjectJson;
8
- exports.generateScripts = generateScripts;
9
- exports.localLambdaSetupGenerator = localLambdaSetupGenerator;
10
- const path = require("path");
11
- const hcl2json_1 = require("@cdktf/hcl2json");
12
- const prompts_1 = require("@inquirer/prompts");
13
- const devkit_1 = require("@nx/devkit");
14
- const yaml = require("yaml");
15
- const DEFAULT_VALUES = {
16
- environment_variables: {},
17
- config: {
18
- runtime: 'nodejs22.x',
19
- handler: 'index.handler',
20
- timeout: 30,
21
- },
22
- };
23
- async function getLambdaTerraformConfiguration(tree, projectRoot, lambdaName) {
24
- const terraform_files = await (0, devkit_1.globAsync)(tree, [
25
- `${projectRoot}/.deploy/infrastructure/**/*.tf`,
26
- ]);
27
- for (const filePath of terraform_files) {
28
- if (!filePath.endsWith('.tf')) {
29
- return;
30
- }
31
- const terraformFile = tree.read(filePath, 'utf-8');
32
- const ast = await (0, hcl2json_1.parse)(filePath, terraformFile);
33
- if (!ast.module) {
34
- continue;
35
- }
36
- for (const astModule of Object.values(ast.module)) {
37
- const module = astModule[0];
38
- if (module.source.includes('lambda') && module.name === lambdaName) {
39
- return {
40
- environment_variables: module.environment_variables,
41
- config: {
42
- runtime: module.config?.runtime ?? DEFAULT_VALUES.config.runtime,
43
- handler: module.config?.handler ?? DEFAULT_VALUES.config.handler,
44
- timeout: module.config?.timeout ?? DEFAULT_VALUES.config.timeout,
45
- },
46
- };
47
- }
48
- }
49
- }
50
- return null;
51
- }
52
- async function createEnvFile(tree, projectRoot, lambdaName, lambdaTerraformConfiguration) {
53
- const environment_variables = Object.keys(lambdaTerraformConfiguration.environment_variables).filter(key => !key.startsWith('DD'));
54
- if (environment_variables.length > 0) {
55
- const environment_variables_values = [];
56
- for (const key of environment_variables) {
57
- const value = await (0, prompts_1.input)({ message: `Value for ${key}` });
58
- environment_variables_values.push([key, value]);
59
- }
60
- const envFileContent = `${environment_variables_values.map(([key, value]) => `${key}=${value}`).join('\n')}`;
61
- tree.write(`${projectRoot}/.env.${lambdaName}`, envFileContent);
62
- }
63
- }
64
- function generateDockerComposeFile(tree) {
65
- const localStackConfig = {
66
- image: 'localstack/localstack:4.8.1',
67
- container_name: 'localstack',
68
- ports: ['127.0.0.1:4566:4566', '127.0.0.1:4510-4559:4510-4559'],
69
- environment: [
70
- 'AWS_ACCESS_KEY_ID=localstack',
71
- 'AWS_SECRET_ACCESS_KEY=a-secret-access-key',
72
- 'AWS_REGION=eu-west-3',
73
- 'DEBUG=1',
74
- 'DOCKER_HOST=unix:///var/run/docker.sock',
75
- 'LAMBDA_RUNTIME_ENVIRONMENT_TIMEOUT=30',
76
- ],
77
- volumes: [
78
- './tmp/localstack:/var/lib/localstack',
79
- '/var/run/docker.sock:/var/run/docker.sock',
80
- ],
81
- security_opt: ['no-new-privileges:true'],
82
- };
83
- const dockerComposeFile = tree.read(`./docker-compose.yml`, 'utf-8');
84
- if (!dockerComposeFile) {
85
- (0, devkit_1.generateFiles)(tree, path.join(__dirname, 'files', 'docker-compose'), '/', {
86
- repositoryName: path.basename(devkit_1.workspaceRoot),
87
- });
88
- }
89
- else {
90
- let localStackPresent = false;
91
- const dockerCompose = yaml.parse(dockerComposeFile);
92
- for (const service of Object.values(dockerCompose.services)) {
93
- if (service.image.startsWith('localstack')) {
94
- localStackPresent = true;
95
- }
96
- }
97
- if (!localStackPresent) {
98
- dockerCompose.services.localstack = localStackConfig;
99
- }
100
- tree.write(`./docker-compose.yml`, yaml.stringify(dockerCompose, {
101
- indent: 2,
102
- lineWidth: 0,
103
- minContentWidth: 0,
104
- }));
105
- }
106
- }
107
- async function createJsonEventFile(tree, projectRoot, lambdaName) {
108
- const event = await (0, prompts_1.editor)({
109
- message: 'Enter a test event (JSON format)',
110
- });
111
- try {
112
- JSON.parse(event);
113
- }
114
- catch (error) {
115
- throw new Error('Invalid JSON event');
116
- }
117
- tree.write(`${projectRoot}/events/${lambdaName}.json`, event);
118
- }
119
- function updateProjectJson(tree, lambdaName, projectConfiguration, lambdaTerraformConfiguration) {
120
- const commands = [
121
- `sh ./scripts/invoke_lambda_local.sh ${lambdaName} ${projectConfiguration.name} ${projectConfiguration.root} ${lambdaTerraformConfiguration.config.runtime} ${lambdaTerraformConfiguration.config.handler} ${lambdaTerraformConfiguration.config.timeout}`,
122
- ];
123
- projectConfiguration.targets['start-localstack'] = {
124
- executor: 'nx:run-commands',
125
- options: {
126
- cwd: '{workspaceRoot}',
127
- command: 'docker-compose --file docker-compose.yml up --detach --wait --no-recreate',
128
- },
129
- };
130
- if (projectConfiguration.targets['lambda-local-invoke']?.options?.commands) {
131
- commands.push(...projectConfiguration.targets['lambda-local-invoke'].options.commands);
132
- }
133
- projectConfiguration.targets['lambda-local-invoke'] = {
134
- executor: 'nx:run-commands',
135
- dependsOn: ['build', 'start-localstack'],
136
- options: {
137
- cwd: '{workspaceRoot}',
138
- commands: [...new Set(commands)],
139
- parallel: false,
140
- },
141
- };
142
- (0, devkit_1.updateProjectConfiguration)(tree, projectConfiguration.name, projectConfiguration);
143
- }
144
- function generateScripts(tree) {
145
- (0, devkit_1.generateFiles)(tree, path.join(__dirname, 'files', 'scripts'), './scripts', {});
146
- console.log('Scripts generated');
147
- }
148
- async function localLambdaSetupGenerator(tree, options) {
149
- const projectConfiguration = (0, devkit_1.readProjectConfiguration)(tree, options.project);
150
- const lambdaTerraformConfiguration = await getLambdaTerraformConfiguration(tree, projectConfiguration.root, options.lambdaName);
151
- if (!lambdaTerraformConfiguration) {
152
- throw new Error('Lambda Terraform configuration not found');
153
- }
154
- //Create .env file
155
- await createEnvFile(tree, projectConfiguration.root, options.lambdaName, lambdaTerraformConfiguration);
156
- //Create docker compose file
157
- generateDockerComposeFile(tree);
158
- //Create event file
159
- await createJsonEventFile(tree, projectConfiguration.root, options.lambdaName);
160
- //Create targets in project.json
161
- updateProjectJson(tree, options.lambdaName, projectConfiguration, lambdaTerraformConfiguration);
162
- //Generate scripts
163
- generateScripts(tree);
164
- await (0, devkit_1.formatFiles)(tree);
165
- }
166
- exports.default = localLambdaSetupGenerator;
167
- //# sourceMappingURL=local-lambda-setup.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"local-lambda-setup.js","sourceRoot":"","sources":["../../../../src/generators/local-lambda-setup/local-lambda-setup.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- {
2
- "$schema": "https://json-schema.org/schema",
3
- "$id": "LocalLambdaSetup",
4
- "title": "",
5
- "type": "object",
6
- "properties": {
7
- "lambdaName": {
8
- "type": "string",
9
- "description": "",
10
- "$default": {
11
- "$source": "argv",
12
- "index": 0
13
- },
14
- "x-prompt": "Name of the lambda to generate the local setup for"
15
- },
16
- "project": {
17
- "type": "string",
18
- "description": "The project where the component will be located.",
19
- "x-prompt": "Which project will this component be located in?",
20
- "x-dropdown": "projects"
21
- }
22
- },
23
- "required": ["lambdaName", "project"]
24
- }
@@ -1,2 +0,0 @@
1
- import { Tree } from '@nx/devkit';
2
- export default function update(host: Tree): void;
@@ -1,85 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = update;
4
- const yaml_1 = require("yaml");
5
- const logger_1 = require("../utils/common/logger");
6
- function update(host) {
7
- const circleciConfigPath = '.circleci/config.yml';
8
- // Check if the CircleCI config file exists
9
- if (!host.exists(circleciConfigPath)) {
10
- logger_1.consola.warn(`${circleciConfigPath} not found. Skipping migration.`);
11
- return;
12
- }
13
- // Read the CircleCI config file
14
- const circleciConfig = host.read(circleciConfigPath, 'utf-8');
15
- if (!circleciConfig) {
16
- logger_1.consola.warn(`${circleciConfigPath} is empty. Skipping migration.`);
17
- return;
18
- }
19
- // Parse the YAML document while preserving comments and anchors
20
- const doc = (0, yaml_1.parseDocument)(circleciConfig);
21
- // Navigate to workflows.build-test-deploy.jobs
22
- const workflows = doc.get('workflows');
23
- if (!(0, yaml_1.isMap)(workflows)) {
24
- logger_1.consola.warn('No workflows section found. Skipping migration.');
25
- return;
26
- }
27
- const buildTestDeploy = workflows.get('build-test-deploy');
28
- if (!(0, yaml_1.isMap)(buildTestDeploy)) {
29
- logger_1.consola.warn('No build-test-deploy workflow found. Skipping migration.');
30
- return;
31
- }
32
- const jobs = buildTestDeploy.get('jobs');
33
- if (!(0, yaml_1.isSeq)(jobs)) {
34
- logger_1.consola.warn('No jobs found in workflow. Skipping migration.');
35
- return;
36
- }
37
- // Check if nx-conformance job exists in the workflow
38
- const hasConformanceJob = jobs.items.some(item => {
39
- if ((0, yaml_1.isMap)(item)) {
40
- return item.has('nx-conformance');
41
- }
42
- return false;
43
- });
44
- if (!hasConformanceJob) {
45
- logger_1.consola.warn('nx-conformance job not found in workflows. Skipping migration.');
46
- return;
47
- }
48
- // Find the publish job
49
- let publishJobConfig = null;
50
- for (const item of jobs.items) {
51
- if ((0, yaml_1.isMap)(item) && item.has('publish')) {
52
- publishJobConfig = item.get('publish');
53
- break;
54
- }
55
- }
56
- if (!publishJobConfig || !(0, yaml_1.isMap)(publishJobConfig)) {
57
- logger_1.consola.warn('Could not find publish job. Skipping migration.');
58
- return;
59
- }
60
- // Get the requires section
61
- const requires = publishJobConfig.get('requires');
62
- if (!(0, yaml_1.isSeq)(requires)) {
63
- logger_1.consola.warn('Could not find requires section in publish job. Skipping migration.');
64
- return;
65
- }
66
- // Check if nx-conformance is already in the requirements
67
- const hasConformance = requires.items.some(item => {
68
- return (item &&
69
- typeof item === 'object' &&
70
- 'value' in item &&
71
- item.value === 'nx-conformance');
72
- });
73
- if (hasConformance) {
74
- logger_1.consola.info('nx-conformance is already in publish job requirements');
75
- return;
76
- }
77
- // Add nx-conformance to the requires list
78
- requires.add('nx-conformance');
79
- // Write back with comments and anchors preserved
80
- host.write(circleciConfigPath, doc.toString({
81
- lineWidth: 0, // avoid cutting line on width
82
- }));
83
- logger_1.consola.info('Successfully added nx-conformance to publish job requirements in .circleci/config.yml');
84
- }
85
- //# sourceMappingURL=20251029-nx-conformance-requirement-publish.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"20251029-nx-conformance-requirement-publish.js","sourceRoot":"","sources":["../../../src/migrations/20251029-nx-conformance-requirement-publish.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- export declare enum ArtifactType {
2
- DOCKER = "docker",
3
- LAMBDA = "lambda",
4
- FRONTEND = "frontend",
5
- TERRAFORM_MODULE = "terraform module",
6
- HELM = "helm chart"
7
- }
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ArtifactType = void 0;
4
- var ArtifactType;
5
- (function (ArtifactType) {
6
- ArtifactType["DOCKER"] = "docker";
7
- ArtifactType["LAMBDA"] = "lambda";
8
- ArtifactType["FRONTEND"] = "frontend";
9
- ArtifactType["TERRAFORM_MODULE"] = "terraform module";
10
- ArtifactType["HELM"] = "helm chart";
11
- })(ArtifactType || (exports.ArtifactType = ArtifactType = {}));
12
- //# sourceMappingURL=enums.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/utils/common/enums.ts"],"names":[],"mappings":";;;AAAA,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,qCAAqB,CAAA;IACrB,qDAAqC,CAAA;IACrC,mCAAmB,CAAA;AACrB,CAAC,EANW,YAAY,4BAAZ,YAAY,QAMvB"}