pipecraft 0.29.2 → 0.36.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.
- package/README.md +98 -34
- package/dist/cli/index.d.ts +3 -3
- package/dist/cli/index.js +66 -24
- package/dist/cli/index.js.map +1 -1
- package/dist/generators/init.tpl.d.ts +4 -4
- package/dist/generators/init.tpl.d.ts.map +1 -1
- package/dist/generators/init.tpl.js +369 -79
- package/dist/generators/init.tpl.js.map +1 -1
- package/dist/generators/workflows.tpl.d.ts +9 -9
- package/dist/generators/workflows.tpl.d.ts.map +1 -1
- package/dist/generators/workflows.tpl.js +33 -24
- package/dist/generators/workflows.tpl.js.map +1 -1
- package/dist/templates/actions/calculate-version.yml.tpl.d.ts +7 -4
- package/dist/templates/actions/calculate-version.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/calculate-version.yml.tpl.js +16 -9
- package/dist/templates/actions/calculate-version.yml.tpl.js.map +1 -1
- package/dist/templates/actions/create-pr.yml.tpl.d.ts +5 -2
- package/dist/templates/actions/create-pr.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/create-pr.yml.tpl.js +9 -6
- package/dist/templates/actions/create-pr.yml.tpl.js.map +1 -1
- package/dist/templates/actions/create-release.yml.tpl.d.ts +5 -2
- package/dist/templates/actions/create-release.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/create-release.yml.tpl.js +9 -6
- package/dist/templates/actions/create-release.yml.tpl.js.map +1 -1
- package/dist/templates/actions/create-tag.yml.tpl.d.ts +5 -2
- package/dist/templates/actions/create-tag.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/create-tag.yml.tpl.js +9 -6
- package/dist/templates/actions/create-tag.yml.tpl.js.map +1 -1
- package/dist/templates/actions/detect-changes.yml.tpl.d.ts +24 -52
- package/dist/templates/actions/detect-changes.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/detect-changes.yml.tpl.js +281 -108
- package/dist/templates/actions/detect-changes.yml.tpl.js.map +1 -1
- package/dist/templates/actions/manage-branch.yml.tpl.d.ts +5 -2
- package/dist/templates/actions/manage-branch.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/manage-branch.yml.tpl.js +9 -6
- package/dist/templates/actions/manage-branch.yml.tpl.js.map +1 -1
- package/dist/templates/actions/promote-branch.yml.tpl.d.ts +5 -2
- package/dist/templates/actions/promote-branch.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/promote-branch.yml.tpl.js +27 -76
- package/dist/templates/actions/promote-branch.yml.tpl.js.map +1 -1
- package/dist/templates/actions/run-nx-affected.yml.tpl.d.ts +33 -0
- package/dist/templates/actions/run-nx-affected.yml.tpl.d.ts.map +1 -0
- package/dist/templates/actions/run-nx-affected.yml.tpl.js +346 -0
- package/dist/templates/actions/run-nx-affected.yml.tpl.js.map +1 -0
- package/dist/templates/release-it.cjs.tpl.d.ts +1 -1
- package/dist/templates/release-it.cjs.tpl.d.ts.map +1 -1
- package/dist/templates/release-it.cjs.tpl.js +24 -26
- package/dist/templates/release-it.cjs.tpl.js.map +1 -1
- package/dist/templates/workflows/enforce-pr-target.yml.tpl.d.ts +1 -1
- package/dist/templates/workflows/enforce-pr-target.yml.tpl.d.ts.map +1 -1
- package/dist/templates/workflows/enforce-pr-target.yml.tpl.js +2 -3
- package/dist/templates/workflows/enforce-pr-target.yml.tpl.js.map +1 -1
- package/dist/templates/workflows/pipeline-nx.yml.tpl.d.ts +2 -2
- package/dist/templates/workflows/pipeline-nx.yml.tpl.d.ts.map +1 -1
- package/dist/templates/workflows/pipeline-nx.yml.tpl.js +300 -93
- package/dist/templates/workflows/pipeline-nx.yml.tpl.js.map +1 -1
- package/dist/templates/workflows/pipeline.yml.tpl.d.ts +2 -2
- package/dist/templates/workflows/pipeline.yml.tpl.d.ts.map +1 -1
- package/dist/templates/workflows/pipeline.yml.tpl.js +347 -74
- package/dist/templates/workflows/pipeline.yml.tpl.js.map +1 -1
- package/dist/templates/workflows/pr-title-check.yml.tpl.d.ts +1 -1
- package/dist/templates/workflows/pr-title-check.yml.tpl.d.ts.map +1 -1
- package/dist/templates/workflows/pr-title-check.yml.tpl.js +101 -22
- package/dist/templates/workflows/pr-title-check.yml.tpl.js.map +1 -1
- package/dist/templates/workflows/shared/index.d.ts +3 -2
- package/dist/templates/workflows/shared/index.d.ts.map +1 -1
- package/dist/templates/workflows/shared/index.js +3 -2
- package/dist/templates/workflows/shared/index.js.map +1 -1
- package/dist/templates/workflows/shared/operations-changes.d.ts +13 -2
- package/dist/templates/workflows/shared/operations-changes.d.ts.map +1 -1
- package/dist/templates/workflows/shared/operations-changes.js +47 -16
- package/dist/templates/workflows/shared/operations-changes.js.map +1 -1
- package/dist/templates/workflows/shared/operations-domain-jobs.d.ts +18 -1
- package/dist/templates/workflows/shared/operations-domain-jobs.d.ts.map +1 -1
- package/dist/templates/workflows/shared/operations-domain-jobs.js +143 -19
- package/dist/templates/workflows/shared/operations-domain-jobs.js.map +1 -1
- package/dist/templates/workflows/shared/operations-gate.d.ts +32 -0
- package/dist/templates/workflows/shared/operations-gate.d.ts.map +1 -0
- package/dist/templates/workflows/shared/operations-gate.js +77 -0
- package/dist/templates/workflows/shared/operations-gate.js.map +1 -0
- package/dist/templates/workflows/shared/operations-header.d.ts +1 -1
- package/dist/templates/workflows/shared/operations-header.d.ts.map +1 -1
- package/dist/templates/workflows/shared/operations-header.js +46 -6
- package/dist/templates/workflows/shared/operations-header.js.map +1 -1
- package/dist/templates/workflows/shared/operations-tag-promote.d.ts +5 -1
- package/dist/templates/workflows/shared/operations-tag-promote.d.ts.map +1 -1
- package/dist/templates/workflows/shared/operations-tag-promote.js +138 -31
- package/dist/templates/workflows/shared/operations-tag-promote.js.map +1 -1
- package/dist/templates/workflows/shared/operations-version.d.ts +3 -1
- package/dist/templates/workflows/shared/operations-version.d.ts.map +1 -1
- package/dist/templates/workflows/shared/operations-version.js +18 -10
- package/dist/templates/workflows/shared/operations-version.js.map +1 -1
- package/dist/templates/yaml-format-utils.d.ts.map +1 -1
- package/dist/templates/yaml-format-utils.js.map +1 -1
- package/dist/types/index.d.ts +57 -4
- package/dist/types/index.d.ts.map +1 -1
- package/dist/utils/action-reference.d.ts +73 -0
- package/dist/utils/action-reference.d.ts.map +1 -0
- package/dist/utils/action-reference.js +120 -0
- package/dist/utils/action-reference.js.map +1 -0
- package/dist/utils/ast-path-operations.d.ts +3 -3
- package/dist/utils/ast-path-operations.d.ts.map +1 -1
- package/dist/utils/ast-path-operations.js +58 -17
- package/dist/utils/ast-path-operations.js.map +1 -1
- package/dist/utils/config.d.ts +11 -5
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +33 -8
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/github-setup.d.ts +4 -4
- package/dist/utils/github-setup.d.ts.map +1 -1
- package/dist/utils/github-setup.js +57 -36
- package/dist/utils/github-setup.js.map +1 -1
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/messaging.d.ts.map +1 -1
- package/dist/utils/messaging.js +7 -3
- package/dist/utils/messaging.js.map +1 -1
- package/dist/utils/preflight.d.ts +2 -2
- package/dist/utils/preflight.d.ts.map +1 -1
- package/dist/utils/preflight.js +43 -41
- package/dist/utils/preflight.js.map +1 -1
- package/dist/utils/versioning.d.ts +1 -1
- package/dist/utils/versioning.d.ts.map +1 -1
- package/dist/utils/versioning.js +10 -10
- package/dist/utils/versioning.js.map +1 -1
- package/package.json +11 -4
- package/src/generators/init.tpl.ts +434 -96
- package/src/generators/workflows.tpl.ts +54 -45
- package/dist/templates/actions/detect-changes-nx.yml.tpl.d.ts +0 -32
- package/dist/templates/actions/detect-changes-nx.yml.tpl.d.ts.map +0 -1
- package/dist/templates/actions/detect-changes-nx.yml.tpl.js +0 -227
- package/dist/templates/actions/detect-changes-nx.yml.tpl.js.map +0 -1
- package/dist/utils/idempotency.d.ts +0 -187
- package/dist/utils/idempotency.d.ts.map +0 -1
- package/dist/utils/idempotency.js +0 -304
- package/dist/utils/idempotency.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Init Template Generator
|
|
3
3
|
*
|
|
4
|
-
* Generates the initial PipeCraft configuration file (.pipecraftrc
|
|
4
|
+
* Generates the initial PipeCraft configuration file (.pipecraftrc) with default settings.
|
|
5
5
|
* This generator is invoked by the `pipecraft init` command and prompts the user for
|
|
6
6
|
* basic project configuration preferences.
|
|
7
7
|
*
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* // Called by CLI with Pinion context
|
|
15
15
|
* await generate(pinionContext)
|
|
16
16
|
*
|
|
17
|
-
* // Creates .pipecraftrc
|
|
17
|
+
* // Creates .pipecraftrc with:
|
|
18
18
|
* // - CI provider (GitHub/GitLab)
|
|
19
19
|
* // - Merge strategy (fast-forward/merge)
|
|
20
20
|
* // - Branch flow configuration
|
|
@@ -27,8 +27,7 @@
|
|
|
27
27
|
* for the initial release to ensure consistent behavior. Future versions will
|
|
28
28
|
* respect user input and allow customization.
|
|
29
29
|
*/
|
|
30
|
-
import {
|
|
31
|
-
import { existsSync, readFileSync } from 'fs';
|
|
30
|
+
import { existsSync, readFileSync, writeFileSync } from 'fs';
|
|
32
31
|
import inquirer from 'inquirer';
|
|
33
32
|
/**
|
|
34
33
|
* Default PipeCraft configuration for new projects.
|
|
@@ -56,8 +55,19 @@ const defaultConfig = {
|
|
|
56
55
|
},
|
|
57
56
|
semver: {
|
|
58
57
|
bumpRules: {
|
|
59
|
-
|
|
58
|
+
test: 'ignore',
|
|
59
|
+
build: 'ignore',
|
|
60
|
+
ci: 'patch',
|
|
61
|
+
docs: 'patch',
|
|
62
|
+
style: 'patch',
|
|
60
63
|
fix: 'patch',
|
|
64
|
+
perf: 'patch',
|
|
65
|
+
refactor: 'patch',
|
|
66
|
+
chore: 'patch',
|
|
67
|
+
patch: 'patch',
|
|
68
|
+
feat: 'minor',
|
|
69
|
+
minor: 'minor',
|
|
70
|
+
major: 'major',
|
|
61
71
|
breaking: 'major'
|
|
62
72
|
}
|
|
63
73
|
},
|
|
@@ -81,36 +91,194 @@ const defaultConfig = {
|
|
|
81
91
|
}
|
|
82
92
|
};
|
|
83
93
|
/**
|
|
84
|
-
* Generates a
|
|
85
|
-
*
|
|
86
|
-
* Serializes the configuration object with proper formatting (2-space indentation)
|
|
87
|
-
* for writing to .pipecraftrc.json file.
|
|
94
|
+
* Generates a YAML configuration file with comprehensive comments.
|
|
88
95
|
*
|
|
89
|
-
*
|
|
90
|
-
*
|
|
96
|
+
* Creates a .pipecraftrc file with:
|
|
97
|
+
* - Descriptive section headers
|
|
98
|
+
* - Inline comments for each configuration option
|
|
99
|
+
* - Examples and valid values
|
|
100
|
+
* - Proper YAML formatting
|
|
91
101
|
*
|
|
92
|
-
* @
|
|
93
|
-
*
|
|
102
|
+
* @param {any} config - The configuration object to serialize
|
|
103
|
+
* @returns {string} YAML string with comments
|
|
94
104
|
*/
|
|
95
|
-
const
|
|
96
|
-
const
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
105
|
+
const generateYamlConfig = (config) => {
|
|
106
|
+
const lines = [];
|
|
107
|
+
// Header
|
|
108
|
+
lines.push('# PipeCraft Configuration');
|
|
109
|
+
lines.push('# Trunk-based development workflow automation');
|
|
110
|
+
lines.push('# https://pipecraft.thecraftlab.dev');
|
|
111
|
+
lines.push('');
|
|
112
|
+
// CI Provider
|
|
113
|
+
lines.push('# CI/CD Platform');
|
|
114
|
+
lines.push(`ciProvider: ${config.ciProvider}`);
|
|
115
|
+
lines.push('');
|
|
116
|
+
// Merge Strategy
|
|
117
|
+
lines.push('# Merge strategy for automatic promotions');
|
|
118
|
+
lines.push("# Options: 'fast-forward' (clean linear history, recommended) | 'merge' (creates merge commits)");
|
|
119
|
+
lines.push(`mergeStrategy: ${config.mergeStrategy}`);
|
|
120
|
+
lines.push('');
|
|
121
|
+
// Conventional Commits
|
|
122
|
+
lines.push('# Enforce conventional commit messages (feat:, fix:, etc.)');
|
|
123
|
+
lines.push(`requireConventionalCommits: ${config.requireConventionalCommits}`);
|
|
124
|
+
lines.push('');
|
|
125
|
+
// Branch Configuration
|
|
126
|
+
lines.push('# Branch flow configuration');
|
|
127
|
+
lines.push(`initialBranch: ${config.initialBranch} # Where features land`);
|
|
128
|
+
lines.push(`finalBranch: ${config.finalBranch} # Production branch`);
|
|
129
|
+
lines.push('');
|
|
130
|
+
// Branch Flow
|
|
131
|
+
lines.push(`# Promotion flow: ${config.branchFlow.join(' → ')}`);
|
|
132
|
+
lines.push('branchFlow:');
|
|
133
|
+
config.branchFlow.forEach((branch, index) => {
|
|
134
|
+
const comments = [
|
|
135
|
+
'# Feature integration and initial testing',
|
|
136
|
+
'# Pre-production validation',
|
|
137
|
+
'# Production releases'
|
|
138
|
+
];
|
|
139
|
+
lines.push(` - ${branch} ${comments[index] || ''}`);
|
|
140
|
+
});
|
|
141
|
+
lines.push('');
|
|
142
|
+
// Auto Merge
|
|
143
|
+
lines.push('# Automatic promotion after successful tests');
|
|
144
|
+
lines.push('autoMerge:');
|
|
145
|
+
const autoMergeEntries = Object.entries(config.autoMerge);
|
|
146
|
+
autoMergeEntries.forEach(([key, value]) => {
|
|
147
|
+
const flowIndex = config.branchFlow.indexOf(key);
|
|
148
|
+
const fromBranch = flowIndex > 0 ? config.branchFlow[flowIndex - 1] : '';
|
|
149
|
+
const comment = fromBranch ? ` # Auto-promote ${fromBranch} → ${key}` : '';
|
|
150
|
+
lines.push(` ${key}: ${value}${comment}`);
|
|
151
|
+
});
|
|
152
|
+
lines.push('');
|
|
153
|
+
// Package Manager (if present)
|
|
154
|
+
if (config.packageManager) {
|
|
155
|
+
lines.push('# Package manager');
|
|
156
|
+
lines.push(`packageManager: ${config.packageManager}`);
|
|
157
|
+
lines.push('');
|
|
158
|
+
}
|
|
159
|
+
// Semantic Versioning
|
|
160
|
+
lines.push('# Semantic versioning rules');
|
|
161
|
+
lines.push('# Prefixes are used to determine the type of change and the version bump level');
|
|
162
|
+
lines.push('semver:');
|
|
163
|
+
lines.push(' bumpRules:');
|
|
164
|
+
const bumpRules = config.semver.bumpRules;
|
|
165
|
+
const ruleGroups = [
|
|
166
|
+
{ title: '# Ignored types (no version bump)', keys: ['test', 'build'] },
|
|
167
|
+
{
|
|
168
|
+
title: '# Patch-level changes (0.0.x)',
|
|
169
|
+
keys: ['ci', 'docs', 'style', 'fix', 'perf', 'refactor', 'chore', 'patch']
|
|
106
170
|
},
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
171
|
+
{ title: '# Minor-level changes (0.x.0)', keys: ['feat', 'minor'] },
|
|
172
|
+
{ title: '# Major-level changes (x.0.0)', keys: ['major', 'breaking'] }
|
|
173
|
+
];
|
|
174
|
+
ruleGroups.forEach((group, groupIndex) => {
|
|
175
|
+
if (groupIndex > 0)
|
|
176
|
+
lines.push('');
|
|
177
|
+
lines.push(` ${group.title}`);
|
|
178
|
+
group.keys.forEach(key => {
|
|
179
|
+
if (bumpRules[key]) {
|
|
180
|
+
lines.push(` ${key}: '${bumpRules[key]}'`);
|
|
181
|
+
}
|
|
182
|
+
});
|
|
183
|
+
});
|
|
184
|
+
lines.push('');
|
|
185
|
+
// Domains
|
|
186
|
+
lines.push('# Domain definitions - what parts of your codebase trigger which jobs');
|
|
187
|
+
lines.push('# Will create placeholder jobs for each domain if no jobs are defined in the pipeline.yml');
|
|
188
|
+
lines.push('domains:');
|
|
189
|
+
Object.entries(config.domains).forEach(([domainName, domainConfig]) => {
|
|
190
|
+
lines.push(` ${domainName}:`);
|
|
191
|
+
// Description (always write as field)
|
|
192
|
+
if (domainConfig.description) {
|
|
193
|
+
lines.push(` description: '${domainConfig.description}'`);
|
|
194
|
+
}
|
|
195
|
+
// Paths
|
|
196
|
+
if (domainConfig.paths) {
|
|
197
|
+
lines.push(' paths:');
|
|
198
|
+
domainConfig.paths.forEach((path) => {
|
|
199
|
+
lines.push(` - ${path}`);
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
// Prefixes (if present)
|
|
203
|
+
if (domainConfig.prefixes) {
|
|
204
|
+
lines.push(` prefixes: [${domainConfig.prefixes.map((p) => `'${p}'`).join(', ')}]`);
|
|
205
|
+
}
|
|
206
|
+
lines.push('');
|
|
207
|
+
});
|
|
208
|
+
// Nx Configuration (if present)
|
|
209
|
+
if (config.nx) {
|
|
210
|
+
lines.push('# Nx integration for monorepo optimization');
|
|
211
|
+
lines.push('nx:');
|
|
212
|
+
lines.push(` enabled: ${config.nx.enabled}`);
|
|
213
|
+
if (config.nx.tasks !== undefined) {
|
|
214
|
+
if (config.nx.tasks.length > 0) {
|
|
215
|
+
lines.push(' tasks:');
|
|
216
|
+
config.nx.tasks.forEach((task) => {
|
|
217
|
+
lines.push(` - ${task}`);
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
else {
|
|
221
|
+
lines.push(' tasks: []');
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
if (config.nx.baseRef) {
|
|
225
|
+
lines.push(` baseRef: ${config.nx.baseRef}`);
|
|
226
|
+
}
|
|
227
|
+
if (config.nx.enableCache !== undefined) {
|
|
228
|
+
lines.push(` enableCache: ${config.nx.enableCache}`);
|
|
229
|
+
}
|
|
230
|
+
lines.push('');
|
|
112
231
|
}
|
|
113
|
-
|
|
232
|
+
// Versioning (if present)
|
|
233
|
+
if (config.versioning) {
|
|
234
|
+
lines.push('# Version calculation and release automation');
|
|
235
|
+
lines.push('versioning:');
|
|
236
|
+
lines.push(` enabled: ${config.versioning.enabled}`);
|
|
237
|
+
if (config.versioning.releaseItConfig) {
|
|
238
|
+
lines.push(` releaseItConfig: ${config.versioning.releaseItConfig}`);
|
|
239
|
+
}
|
|
240
|
+
if (config.versioning.conventionalCommits !== undefined) {
|
|
241
|
+
lines.push(` conventionalCommits: ${config.versioning.conventionalCommits} # Use conventional commits for version bumps`);
|
|
242
|
+
}
|
|
243
|
+
if (config.versioning.autoTag !== undefined) {
|
|
244
|
+
lines.push(` autoTag: ${config.versioning.autoTag} # Automatically create git tags`);
|
|
245
|
+
}
|
|
246
|
+
if (config.versioning.autoPush !== undefined) {
|
|
247
|
+
lines.push(` autoPush: ${config.versioning.autoPush} # Manual control over git push`);
|
|
248
|
+
}
|
|
249
|
+
if (config.versioning.changelog !== undefined) {
|
|
250
|
+
lines.push(` changelog: ${config.versioning.changelog} # Generate CHANGELOG.md`);
|
|
251
|
+
}
|
|
252
|
+
if (config.versioning.bumpRules) {
|
|
253
|
+
lines.push(' bumpRules:');
|
|
254
|
+
Object.entries(config.versioning.bumpRules).forEach(([key, value]) => {
|
|
255
|
+
lines.push(` ${key}: ${value}`);
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
lines.push('');
|
|
259
|
+
}
|
|
260
|
+
// Rebuild configuration (if present)
|
|
261
|
+
if (config.rebuild) {
|
|
262
|
+
lines.push('# Workflow rebuild optimization');
|
|
263
|
+
lines.push('rebuild:');
|
|
264
|
+
lines.push(` enabled: ${config.rebuild.enabled} # Enable smart rebuild detection`);
|
|
265
|
+
if (config.rebuild.skipIfUnchanged !== undefined) {
|
|
266
|
+
lines.push(` skipIfUnchanged: ${config.rebuild.skipIfUnchanged} # Skip regeneration if config hasn't changed`);
|
|
267
|
+
}
|
|
268
|
+
if (config.rebuild.forceRegenerate !== undefined) {
|
|
269
|
+
lines.push(` forceRegenerate: ${config.rebuild.forceRegenerate} # Force regenerate even if unchanged`);
|
|
270
|
+
}
|
|
271
|
+
if (config.rebuild.cacheFile) {
|
|
272
|
+
lines.push(` cacheFile: ${config.rebuild.cacheFile}`);
|
|
273
|
+
}
|
|
274
|
+
lines.push('');
|
|
275
|
+
}
|
|
276
|
+
// Remove trailing empty line
|
|
277
|
+
while (lines[lines.length - 1] === '') {
|
|
278
|
+
lines.pop();
|
|
279
|
+
}
|
|
280
|
+
lines.push(''); // Single trailing newline
|
|
281
|
+
return lines.join('\n');
|
|
114
282
|
};
|
|
115
283
|
/**
|
|
116
284
|
* Init generator main entry point.
|
|
@@ -155,6 +323,29 @@ const configTemplate = (ctx) => {
|
|
|
155
323
|
*/
|
|
156
324
|
export const generate = async (ctx) => {
|
|
157
325
|
const cwd = ctx.cwd || process.cwd();
|
|
326
|
+
// Check if .pipecraftrc already exists (YAML format)
|
|
327
|
+
const configPath = `${cwd}/.pipecraftrc`;
|
|
328
|
+
const legacyConfigPath = `${cwd}/.pipecraftrc.json`;
|
|
329
|
+
if (existsSync(configPath) || existsSync(legacyConfigPath)) {
|
|
330
|
+
const existingPath = existsSync(configPath) ? '.pipecraftrc' : '.pipecraftrc.json';
|
|
331
|
+
const overwriteAnswer = await inquirer.prompt([
|
|
332
|
+
{
|
|
333
|
+
type: 'confirm',
|
|
334
|
+
name: 'overwrite',
|
|
335
|
+
message: `⚠️ ${existingPath} already exists. Overwrite it?`,
|
|
336
|
+
default: false
|
|
337
|
+
}
|
|
338
|
+
]);
|
|
339
|
+
if (!overwriteAnswer.overwrite) {
|
|
340
|
+
console.log('\n❌ Init cancelled. Existing configuration preserved.\n');
|
|
341
|
+
return;
|
|
342
|
+
}
|
|
343
|
+
console.log('\n✅ Proceeding with overwrite...\n');
|
|
344
|
+
// Set force flag to true so Pinion will overwrite the file
|
|
345
|
+
if (ctx.pinion) {
|
|
346
|
+
ctx.pinion.force = true;
|
|
347
|
+
}
|
|
348
|
+
}
|
|
158
349
|
// Detect package manager before prompting
|
|
159
350
|
let detectedPackageManager = 'npm';
|
|
160
351
|
if (existsSync(`${cwd}/pnpm-lock.yaml`)) {
|
|
@@ -166,14 +357,52 @@ export const generate = async (ctx) => {
|
|
|
166
357
|
else if (existsSync(`${cwd}/package-lock.json`)) {
|
|
167
358
|
detectedPackageManager = 'npm';
|
|
168
359
|
}
|
|
360
|
+
// Detect Nx workspace before prompting
|
|
361
|
+
const nxJsonPath = `${cwd}/nx.json`;
|
|
362
|
+
let detectedNxTasks = [];
|
|
363
|
+
let nxDetected = false;
|
|
364
|
+
if (existsSync(nxJsonPath)) {
|
|
365
|
+
try {
|
|
366
|
+
const nxJsonContent = readFileSync(nxJsonPath, 'utf8');
|
|
367
|
+
const nxJson = JSON.parse(nxJsonContent);
|
|
368
|
+
// Extract tasks from targetDefaults
|
|
369
|
+
const tasks = nxJson.targetDefaults ? Object.keys(nxJson.targetDefaults) : [];
|
|
370
|
+
// Sort tasks in a logical order (quality → test → build → e2e)
|
|
371
|
+
const taskOrder = [
|
|
372
|
+
'lint',
|
|
373
|
+
'typecheck',
|
|
374
|
+
'test',
|
|
375
|
+
'unit-test',
|
|
376
|
+
'build',
|
|
377
|
+
'integration-test',
|
|
378
|
+
'e2e',
|
|
379
|
+
'e2e-ci'
|
|
380
|
+
];
|
|
381
|
+
detectedNxTasks = tasks.sort((a, b) => {
|
|
382
|
+
const aIdx = taskOrder.indexOf(a);
|
|
383
|
+
const bIdx = taskOrder.indexOf(b);
|
|
384
|
+
if (aIdx === -1 && bIdx === -1)
|
|
385
|
+
return 0;
|
|
386
|
+
if (aIdx === -1)
|
|
387
|
+
return 1;
|
|
388
|
+
if (bIdx === -1)
|
|
389
|
+
return -1;
|
|
390
|
+
return aIdx - bIdx;
|
|
391
|
+
});
|
|
392
|
+
nxDetected = true;
|
|
393
|
+
console.log('\n✅ Nx workspace detected!');
|
|
394
|
+
console.log(` Found tasks: ${detectedNxTasks.join(', ')}`);
|
|
395
|
+
console.log(' Pipecraft can optimize your CI pipeline using Nx affected commands.\n');
|
|
396
|
+
}
|
|
397
|
+
catch (error) {
|
|
398
|
+
console.warn('\n⚠️ Found nx.json but could not parse it:', error);
|
|
399
|
+
console.log(' Nx integration will use default tasks.\n');
|
|
400
|
+
nxDetected = true;
|
|
401
|
+
detectedNxTasks = ['lint', 'test', 'build', 'integration-test'];
|
|
402
|
+
}
|
|
403
|
+
}
|
|
169
404
|
// Run inquirer prompts
|
|
170
405
|
const answers = await inquirer.prompt([
|
|
171
|
-
{
|
|
172
|
-
type: 'input',
|
|
173
|
-
name: 'projectName',
|
|
174
|
-
message: 'What is your project name?',
|
|
175
|
-
default: 'my-project'
|
|
176
|
-
},
|
|
177
406
|
{
|
|
178
407
|
type: 'list',
|
|
179
408
|
name: 'ciProvider',
|
|
@@ -225,51 +454,106 @@ export const generate = async (ctx) => {
|
|
|
225
454
|
message: `Which package manager do you use? (detected: ${detectedPackageManager})`,
|
|
226
455
|
choices: ['npm', 'yarn', 'pnpm'],
|
|
227
456
|
default: detectedPackageManager
|
|
457
|
+
},
|
|
458
|
+
{
|
|
459
|
+
type: 'confirm',
|
|
460
|
+
name: 'enableNx',
|
|
461
|
+
message: nxDetected
|
|
462
|
+
? `Enable Nx integration? (detected ${detectedNxTasks.length} tasks)`
|
|
463
|
+
: 'Enable Nx integration?',
|
|
464
|
+
default: nxDetected,
|
|
465
|
+
when: () => nxDetected // Only show if Nx is detected
|
|
466
|
+
},
|
|
467
|
+
{
|
|
468
|
+
type: 'list',
|
|
469
|
+
name: 'domainSelection',
|
|
470
|
+
message: 'What domains exist in your codebase?',
|
|
471
|
+
choices: [
|
|
472
|
+
{ name: 'API + Web (common monorepo)', value: 'api-web' },
|
|
473
|
+
{ name: 'Frontend + Backend', value: 'frontend-backend' },
|
|
474
|
+
{ name: 'Apps + Libs (Nx-style)', value: 'apps-libs' },
|
|
475
|
+
{ name: 'Custom domains', value: 'custom' }
|
|
476
|
+
],
|
|
477
|
+
default: 'api-web'
|
|
228
478
|
}
|
|
229
479
|
]);
|
|
480
|
+
// Handle custom domain selection
|
|
481
|
+
let selectedDomains = [];
|
|
482
|
+
if (answers.domainSelection === 'custom') {
|
|
483
|
+
const customDomainsAnswer = await inquirer.prompt([
|
|
484
|
+
{
|
|
485
|
+
type: 'input',
|
|
486
|
+
name: 'customDomains',
|
|
487
|
+
message: 'Enter your domains (comma-separated)',
|
|
488
|
+
validate: (input) => {
|
|
489
|
+
if (!input.trim()) {
|
|
490
|
+
return 'Please enter at least one domain';
|
|
491
|
+
}
|
|
492
|
+
const domains = input
|
|
493
|
+
.split(',')
|
|
494
|
+
.map(d => d.trim())
|
|
495
|
+
.filter(d => d);
|
|
496
|
+
if (domains.length === 0) {
|
|
497
|
+
return 'Please enter valid domain names';
|
|
498
|
+
}
|
|
499
|
+
return true;
|
|
500
|
+
},
|
|
501
|
+
filter: (input) => input
|
|
502
|
+
.split(',')
|
|
503
|
+
.map(d => d.trim())
|
|
504
|
+
.filter(d => d)
|
|
505
|
+
}
|
|
506
|
+
]);
|
|
507
|
+
selectedDomains = customDomainsAnswer.customDomains;
|
|
508
|
+
}
|
|
509
|
+
else {
|
|
510
|
+
// Map predefined selections to domain names
|
|
511
|
+
const domainMappings = {
|
|
512
|
+
'api-web': ['api', 'web'],
|
|
513
|
+
'frontend-backend': ['frontend', 'backend'],
|
|
514
|
+
'apps-libs': ['apps', 'libs']
|
|
515
|
+
};
|
|
516
|
+
selectedDomains = domainMappings[answers.domainSelection] || [
|
|
517
|
+
'api',
|
|
518
|
+
'web'
|
|
519
|
+
];
|
|
520
|
+
}
|
|
521
|
+
// Generate domain configuration
|
|
522
|
+
const domainConfig = {};
|
|
523
|
+
selectedDomains.forEach((domain) => {
|
|
524
|
+
domainConfig[domain] = {
|
|
525
|
+
paths: [`${domain}/**`], // Default path pattern
|
|
526
|
+
description: `${domain} application changes`
|
|
527
|
+
};
|
|
528
|
+
});
|
|
529
|
+
// Add cicd domain for CI/CD changes
|
|
530
|
+
domainConfig.cicd = {
|
|
531
|
+
paths: ['.github/**'],
|
|
532
|
+
description: 'CI/CD configuration changes'
|
|
533
|
+
};
|
|
534
|
+
// Show warning for custom domains about path editing
|
|
535
|
+
if (answers.domainSelection === 'custom') {
|
|
536
|
+
console.log('\n⚠️ Custom domains selected!');
|
|
537
|
+
console.log(' You will need to edit the paths in .pipecraftrc after generation');
|
|
538
|
+
console.log(' to match your actual project structure.\n');
|
|
539
|
+
}
|
|
230
540
|
// Merge answers with context and defaults
|
|
231
541
|
const mergedCtx = { ...ctx, ...defaultConfig, ...answers };
|
|
232
|
-
//
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
return 0;
|
|
248
|
-
if (aIdx === -1)
|
|
249
|
-
return 1;
|
|
250
|
-
if (bIdx === -1)
|
|
251
|
-
return -1;
|
|
252
|
-
return aIdx - bIdx;
|
|
253
|
-
});
|
|
254
|
-
console.log('✅ Nx workspace detected - enabling Nx integration');
|
|
255
|
-
console.log(` Detected tasks: ${sortedTasks.join(', ')}`);
|
|
256
|
-
nxConfig = {
|
|
257
|
-
enabled: true,
|
|
258
|
-
tasks: sortedTasks,
|
|
259
|
-
baseRef: 'origin/main',
|
|
260
|
-
enableCache: true
|
|
261
|
-
};
|
|
262
|
-
}
|
|
263
|
-
catch (error) {
|
|
264
|
-
console.warn('⚠️ Found nx.json but could not parse it:', error);
|
|
265
|
-
console.log(' Using default Nx configuration');
|
|
266
|
-
nxConfig = {
|
|
267
|
-
enabled: true,
|
|
268
|
-
tasks: ['lint', 'test', 'build', 'integration-test'],
|
|
269
|
-
baseRef: 'origin/main',
|
|
270
|
-
enableCache: true
|
|
271
|
-
};
|
|
272
|
-
}
|
|
542
|
+
// Configure Nx based on detection and user confirmation
|
|
543
|
+
let nxConfig;
|
|
544
|
+
if (nxDetected && answers.enableNx) {
|
|
545
|
+
console.log('\n✅ Nx integration enabled!');
|
|
546
|
+
console.log(` Tasks to run: ${detectedNxTasks.join(', ')}\n`);
|
|
547
|
+
nxConfig = {
|
|
548
|
+
enabled: true,
|
|
549
|
+
tasks: detectedNxTasks,
|
|
550
|
+
baseRef: 'origin/main',
|
|
551
|
+
enableCache: true
|
|
552
|
+
};
|
|
553
|
+
}
|
|
554
|
+
else if (nxDetected && !answers.enableNx) {
|
|
555
|
+
console.log('\n⚠️ Nx detected but integration disabled.');
|
|
556
|
+
console.log(' You can enable it later by editing .pipecraftrc\n');
|
|
273
557
|
}
|
|
274
558
|
const configData = {
|
|
275
559
|
ciProvider: mergedCtx.ciProvider,
|
|
@@ -283,12 +567,18 @@ export const generate = async (ctx) => {
|
|
|
283
567
|
semver: {
|
|
284
568
|
bumpRules: mergedCtx.semver.bumpRules
|
|
285
569
|
},
|
|
286
|
-
domains:
|
|
570
|
+
domains: domainConfig // Use user-selected domains instead of defaults
|
|
287
571
|
};
|
|
288
572
|
// Add Nx config if detected
|
|
289
573
|
if (nxConfig) {
|
|
290
574
|
configData.nx = nxConfig;
|
|
291
575
|
}
|
|
292
|
-
|
|
576
|
+
// Generate YAML content with comments
|
|
577
|
+
const yamlContent = generateYamlConfig(configData);
|
|
578
|
+
// Write the .pipecraftrc file
|
|
579
|
+
const outputPath = `${cwd}/.pipecraftrc`;
|
|
580
|
+
writeFileSync(outputPath, yamlContent, 'utf-8');
|
|
581
|
+
console.log(`\n✅ Created ${outputPath}\n`);
|
|
582
|
+
return mergedCtx;
|
|
293
583
|
};
|
|
294
584
|
//# sourceMappingURL=init.tpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.tpl.js","sourceRoot":"","sources":["../../src/generators/init.tpl.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.tpl.js","sourceRoot":"","sources":["../../src/generators/init.tpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,17 +30,17 @@
|
|
|
30
30
|
*
|
|
31
31
|
* // Creates:
|
|
32
32
|
* // .github/workflows/pipeline.yml - Main pipeline
|
|
33
|
-
* //
|
|
34
|
-
* //
|
|
35
|
-
* //
|
|
36
|
-
* //
|
|
37
|
-
* //
|
|
38
|
-
* //
|
|
39
|
-
* //
|
|
33
|
+
* // actions/detect-changes/... - Change detection action
|
|
34
|
+
* // actions/calculate-version/... - Version calculation action
|
|
35
|
+
* // actions/create-tag/... - Tag creation action
|
|
36
|
+
* // actions/create-pr/... - PR creation action
|
|
37
|
+
* // actions/manage-branch/... - Branch management action
|
|
38
|
+
* // actions/promote-branch/... - Branch promotion action
|
|
39
|
+
* // actions/create-release/... - Release creation action
|
|
40
40
|
* // .release-it.cjs - Release-it configuration
|
|
41
41
|
* ```
|
|
42
42
|
*/
|
|
43
|
-
import { PinionContext } from '@featherscloud/pinion';
|
|
43
|
+
import { type PinionContext } from '@featherscloud/pinion';
|
|
44
44
|
/**
|
|
45
45
|
* Workflows generator main entry point.
|
|
46
46
|
*
|
|
@@ -81,7 +81,7 @@ import { PinionContext } from '@featherscloud/pinion';
|
|
|
81
81
|
*
|
|
82
82
|
* @note The generator creates 9 files:
|
|
83
83
|
* - 1 main workflow (pipeline.yml)
|
|
84
|
-
* - 7 composite actions (in
|
|
84
|
+
* - 7 composite actions (in actions/)
|
|
85
85
|
* - 1 release-it configuration (.release-it.cjs)
|
|
86
86
|
*
|
|
87
87
|
* All actions are generated in parallel for performance, followed by
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflows.tpl.d.ts","sourceRoot":"","sources":["../../src/generators/workflows.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"workflows.tpl.d.ts","sourceRoot":"","sources":["../../src/generators/workflows.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,EAAY,KAAK,aAAa,EAAgC,MAAM,uBAAuB,CAAA;AAiDlG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,eAAO,MAAM,QAAQ,GACnB,KAAK,aAAa,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,iBAsErF,CAAA"}
|