pipecraft 0.0.0-releaseit → 0.25.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.
- package/README.md +126 -108
- package/dist/cli/index.d.ts +69 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +94 -22
- package/dist/cli/index.js.map +1 -1
- package/dist/generators/init.tpl.d.ts +70 -0
- package/dist/generators/init.tpl.d.ts.map +1 -1
- package/dist/generators/init.tpl.js +100 -8
- package/dist/generators/init.tpl.js.map +1 -1
- package/dist/generators/workflows.tpl.d.ts +86 -0
- package/dist/generators/workflows.tpl.d.ts.map +1 -1
- package/dist/generators/workflows.tpl.js +101 -9
- package/dist/generators/workflows.tpl.js.map +1 -1
- package/dist/templates/actions/calculate-version.yml.tpl.d.ts +47 -0
- package/dist/templates/actions/calculate-version.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/calculate-version.yml.tpl.js +72 -3
- package/dist/templates/actions/calculate-version.yml.tpl.js.map +1 -1
- package/dist/templates/actions/create-pr.yml.tpl.d.ts +14 -0
- package/dist/templates/actions/create-pr.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/create-pr.yml.tpl.js +22 -2
- package/dist/templates/actions/create-pr.yml.tpl.js.map +1 -1
- package/dist/templates/actions/create-release.yml.tpl.d.ts +18 -0
- package/dist/templates/actions/create-release.yml.tpl.d.ts.map +1 -0
- package/dist/templates/actions/create-release.yml.tpl.js +141 -0
- package/dist/templates/actions/create-release.yml.tpl.js.map +1 -0
- package/dist/templates/actions/create-tag.yml.tpl.d.ts +14 -0
- package/dist/templates/actions/create-tag.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/create-tag.yml.tpl.js +22 -2
- package/dist/templates/actions/create-tag.yml.tpl.js.map +1 -1
- package/dist/templates/actions/detect-changes.yml.tpl.d.ts +70 -0
- package/dist/templates/actions/detect-changes.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/detect-changes.yml.tpl.js +98 -2
- package/dist/templates/actions/detect-changes.yml.tpl.js.map +1 -1
- package/dist/templates/actions/manage-branch.yml.tpl.d.ts +14 -0
- package/dist/templates/actions/manage-branch.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/manage-branch.yml.tpl.js +22 -2
- package/dist/templates/actions/manage-branch.yml.tpl.js.map +1 -1
- package/dist/templates/actions/promote-branch.yml.tpl.d.ts +14 -0
- package/dist/templates/actions/promote-branch.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/promote-branch.yml.tpl.js +50 -7
- package/dist/templates/actions/promote-branch.yml.tpl.js.map +1 -1
- package/dist/templates/workflows/pipeline-path-based.yml.tpl.d.ts +114 -1
- package/dist/templates/workflows/pipeline-path-based.yml.tpl.d.ts.map +1 -1
- package/dist/templates/workflows/pipeline-path-based.yml.tpl.js +479 -74
- package/dist/templates/workflows/pipeline-path-based.yml.tpl.js.map +1 -1
- package/dist/types/index.d.ts +231 -8
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +9 -0
- package/dist/types/index.js.map +1 -1
- package/dist/utils/ast-path-operations.d.ts.map +1 -1
- package/dist/utils/ast-path-operations.js +24 -11
- package/dist/utils/ast-path-operations.js.map +1 -1
- package/dist/utils/config.d.ts +63 -0
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +71 -0
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/github-setup.d.ts +323 -2
- package/dist/utils/github-setup.d.ts.map +1 -1
- package/dist/utils/github-setup.js +551 -23
- package/dist/utils/github-setup.js.map +1 -1
- package/dist/utils/idempotency.d.ts +147 -7
- package/dist/utils/idempotency.d.ts.map +1 -1
- package/dist/utils/idempotency.js +143 -15
- package/dist/utils/idempotency.js.map +1 -1
- package/dist/utils/logger.d.ts +134 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +153 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/preflight.d.ts +223 -12
- package/dist/utils/preflight.d.ts.map +1 -1
- package/dist/utils/preflight.js +216 -16
- package/dist/utils/preflight.js.map +1 -1
- package/dist/utils/versioning.d.ts +160 -8
- package/dist/utils/versioning.d.ts.map +1 -1
- package/dist/utils/versioning.js +179 -15
- package/dist/utils/versioning.js.map +1 -1
- package/package.json +26 -5
- package/.claude/settings.local.json +0 -35
- package/.github/actions/calculate-version/action.yml +0 -106
- package/.github/actions/create-pr/action.yml +0 -122
- package/.github/actions/create-release/action.yml +0 -74
- package/.github/actions/create-tag/action.yml +0 -94
- package/.github/actions/detect-changes/action.yml +0 -62
- package/.github/actions/manage-branch/action.yml +0 -113
- package/.github/actions/promote-branch/action.yml +0 -352
- package/.github/example/workflows/job.analyze.code.yml +0 -26
- package/.github/example/workflows/job.analyze.docker.yml +0 -32
- package/.github/example/workflows/job.app.api.deploy.yml +0 -127
- package/.github/example/workflows/job.app.api.test.yml +0 -102
- package/.github/example/workflows/job.app.docs.deploy.yml +0 -40
- package/.github/example/workflows/job.app.docs.test.yml +0 -50
- package/.github/example/workflows/job.app.web.deploy.yml +0 -96
- package/.github/example/workflows/job.app.web.test.yml +0 -49
- package/.github/example/workflows/job.changes.yml +0 -82
- package/.github/example/workflows/job.create-pr.yml +0 -96
- package/.github/example/workflows/job.env-check.yml +0 -43
- package/.github/example/workflows/job.fast-forward.yml +0 -103
- package/.github/example/workflows/job.lint.yml +0 -64
- package/.github/example/workflows/job.pr-name.yml +0 -70
- package/.github/example/workflows/job.pr-squash-name.yml +0 -27
- package/.github/example/workflows/job.tag.yml +0 -38
- package/.github/example/workflows/job.version.yml +0 -99
- package/.github/example/workflows/lib.plugin-base.publish.yml +0 -59
- package/.github/example/workflows/pipe.yml +0 -178
- package/.github/example/workflows/scripts/fastforward.sh +0 -51
- package/.github/example/workflows/scripts/pipe-cleaner.sh +0 -70
- package/.github/scripts/fastforward.sh +0 -51
- package/.github/scripts/pipe-cleaner.sh +0 -70
- package/.github/workflows/pipeline.yml +0 -220
- package/.github/workflows/pr-title-check.yml +0 -70
- package/.github/workflows/publish.yml +0 -39
- package/.pipecraftrc.json +0 -78
- package/.release-it.cjs +0 -71
- package/PIPELINE_TESTING_PLAN.md +0 -499
- package/TRUNK_FLOW_PLAN.md +0 -401
- package/assets/logo_banner.png +0 -0
- package/assets/logo_banner.webp +0 -0
- package/docs/USER_JOURNEY_ERRORS.md +0 -352
- package/eslint.config.js +0 -77
- package/examples/basic-config.json +0 -41
- package/examples/monorepo-config.json +0 -49
- package/examples/usage.md +0 -289
- package/scripts/debug-workflows.sh +0 -339
- package/scripts/parse-pipeline.js +0 -29
- package/scripts/test-job-order.cjs +0 -140
- package/scripts/validate-pipeline.cjs +0 -379
- package/scripts/verify-job-order.sh +0 -30
- package/src/cli/index.ts +0 -414
- package/src/generators/init.tpl.ts +0 -126
- package/src/generators/workflows.tpl.ts +0 -80
- package/src/templates/actions/calculate-version.yml.tpl.ts +0 -124
- package/src/templates/actions/create-pr.yml.tpl.ts +0 -147
- package/src/templates/actions/create-tag.yml.tpl.ts +0 -112
- package/src/templates/actions/detect-changes.yml.tpl.ts +0 -87
- package/src/templates/actions/manage-branch.yml.tpl.ts +0 -132
- package/src/templates/actions/promote-branch.yml.tpl.ts +0 -364
- package/src/templates/workflows/pipeline-path-based.yml.tpl.ts +0 -706
- package/src/types/index.ts +0 -64
- package/src/utils/README-ast-path-operations.md +0 -390
- package/src/utils/ast-path-operations.ts +0 -581
- package/src/utils/config.ts +0 -64
- package/src/utils/github-setup.ts +0 -558
- package/src/utils/idempotency.ts +0 -215
- package/src/utils/preflight.ts +0 -306
- package/src/utils/versioning.ts +0 -244
- package/tests/README.md +0 -229
- package/tests/TEST_STRUCTURE.md +0 -256
- package/tests/act/run-act-tests.sh +0 -345
- package/tests/debugging/debug-utils.ts +0 -538
- package/tests/debugging/debug-workflow.test.ts +0 -339
- package/tests/debugging/debug-workflows.sh +0 -339
- package/tests/debugging/iterative-debug.ts +0 -652
- package/tests/debugging/run-debug-tests.sh +0 -431
- package/tests/fixtures/basic-config.json +0 -51
- package/tests/fixtures/invalid-config.json +0 -9
- package/tests/fixtures/pipeline-generated.yml +0 -235
- package/tests/fixtures/pipeline-preserve-comments.yml +0 -245
- package/tests/fixtures/pipeline-user-modified.yml +0 -245
- package/tests/fixtures/test-config.json +0 -58
- package/tests/github-live/README.md +0 -250
- package/tests/github-local/JOB_WORKFLOW_TESTS.md +0 -296
- package/tests/github-local/README.md +0 -240
- package/tests/github-local/run-all-tests.sh +0 -422
- package/tests/github-local/test-job-workflows.sh +0 -631
- package/tests/github-local/test-pipeline-workflow.sh +0 -440
- package/tests/integration/generators.test.ts +0 -578
- package/tests/integration/path-based-template.test.ts +0 -510
- package/tests/integration/simple-path-based.test.ts +0 -415
- package/tests/setup.ts +0 -56
- package/tests/unit/ast-path-operations-extended.test.ts +0 -302
- package/tests/unit/cli.test.ts +0 -541
- package/tests/unit/config-extended.test.ts +0 -412
- package/tests/unit/config.test.ts +0 -152
- package/tests/unit/github-setup.test.ts +0 -189
- package/tests/unit/idempotency-isolated.test.ts +0 -297
- package/tests/unit/job-order.test.ts +0 -157
- package/tests/unit/pipeline-path-based.test.ts +0 -511
- package/tests/unit/validate-pipeline.test.ts +0 -384
- package/tests/unit/versioning-extended.test.ts +0 -279
- package/tests/unit/versioning.test.ts +0 -241
- package/tsconfig.debug.json +0 -17
- package/tsconfig.json +0 -28
- package/vitest.config.ts +0 -51
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Init Template Generator
|
|
3
|
+
*
|
|
4
|
+
* Generates the initial PipeCraft configuration file (.pipecraftrc.json) with default settings.
|
|
5
|
+
* This generator is invoked by the `pipecraft init` command and prompts the user for
|
|
6
|
+
* basic project configuration preferences.
|
|
7
|
+
*
|
|
8
|
+
* @module generators/init.tpl
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* import { generate } from './generators/init.tpl.js'
|
|
13
|
+
*
|
|
14
|
+
* // Called by CLI with Pinion context
|
|
15
|
+
* await generate(pinionContext)
|
|
16
|
+
*
|
|
17
|
+
* // Creates .pipecraftrc.json with:
|
|
18
|
+
* // - CI provider (GitHub/GitLab)
|
|
19
|
+
* // - Merge strategy (fast-forward/merge)
|
|
20
|
+
* // - Branch flow configuration
|
|
21
|
+
* // - Domain-based change detection
|
|
22
|
+
* // - Semantic versioning rules
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @note Current Implementation: The generator currently uses hardcoded defaults
|
|
26
|
+
* from `defaultConfig` regardless of user prompt responses. This is intentional
|
|
27
|
+
* for the initial release to ensure consistent behavior. Future versions will
|
|
28
|
+
* respect user input and allow customization.
|
|
29
|
+
*/
|
|
1
30
|
import { PinionContext } from '@featherscloud/pinion';
|
|
31
|
+
/**
|
|
32
|
+
* Init generator main entry point.
|
|
33
|
+
*
|
|
34
|
+
* Orchestrates the initialization process by:
|
|
35
|
+
* 1. Prompting user for project preferences (currently unused - see note)
|
|
36
|
+
* 2. Merging user input with default configuration
|
|
37
|
+
* 3. Generating and writing .pipecraftrc.json file
|
|
38
|
+
*
|
|
39
|
+
* @param {PinionContext} ctx - Pinion generator context from CLI
|
|
40
|
+
* @returns {Promise<PinionContext>} Updated context after file generation
|
|
41
|
+
*
|
|
42
|
+
* @throws {Error} If configuration file cannot be written
|
|
43
|
+
* @throws {Error} If user input validation fails
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* ```typescript
|
|
47
|
+
* // Called by Pinion framework when user runs `pipecraft init`
|
|
48
|
+
* const result = await generate({
|
|
49
|
+
* cwd: '/path/to/project',
|
|
50
|
+
* argv: ['init'],
|
|
51
|
+
* pinion: { ... }
|
|
52
|
+
* })
|
|
53
|
+
*
|
|
54
|
+
* // Results in: /path/to/project/.pipecraftrc.json
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* @note Current Behavior: Despite prompting for user input, the generator
|
|
58
|
+
* currently overwrites all responses with `defaultConfig` values (line 167).
|
|
59
|
+
* This ensures consistency for the initial release. Future versions will
|
|
60
|
+
* respect user choices and allow customization of branch names, merge strategies,
|
|
61
|
+
* and domain configurations.
|
|
62
|
+
*
|
|
63
|
+
* Prompts Presented (currently unused):
|
|
64
|
+
* - Project name
|
|
65
|
+
* - CI provider (GitHub/GitLab)
|
|
66
|
+
* - Merge strategy (fast-forward/merge)
|
|
67
|
+
* - Conventional commits enforcement
|
|
68
|
+
* - Development branch name
|
|
69
|
+
* - Production branch name
|
|
70
|
+
* - Branch flow sequence
|
|
71
|
+
*/
|
|
2
72
|
export declare const generate: (ctx: PinionContext) => Promise<PinionContext>;
|
|
3
73
|
//# sourceMappingURL=init.tpl.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.tpl.d.ts","sourceRoot":"","sources":["../../src/generators/init.tpl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAmD,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"init.tpl.d.ts","sourceRoot":"","sources":["../../src/generators/init.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,aAAa,EAAmD,MAAM,uBAAuB,CAAA;AAuFtG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,aAAa,2BA2DrC,CAAA"}
|
|
@@ -1,4 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Init Template Generator
|
|
3
|
+
*
|
|
4
|
+
* Generates the initial PipeCraft configuration file (.pipecraftrc.json) with default settings.
|
|
5
|
+
* This generator is invoked by the `pipecraft init` command and prompts the user for
|
|
6
|
+
* basic project configuration preferences.
|
|
7
|
+
*
|
|
8
|
+
* @module generators/init.tpl
|
|
9
|
+
*
|
|
10
|
+
* @example
|
|
11
|
+
* ```typescript
|
|
12
|
+
* import { generate } from './generators/init.tpl.js'
|
|
13
|
+
*
|
|
14
|
+
* // Called by CLI with Pinion context
|
|
15
|
+
* await generate(pinionContext)
|
|
16
|
+
*
|
|
17
|
+
* // Creates .pipecraftrc.json with:
|
|
18
|
+
* // - CI provider (GitHub/GitLab)
|
|
19
|
+
* // - Merge strategy (fast-forward/merge)
|
|
20
|
+
* // - Branch flow configuration
|
|
21
|
+
* // - Domain-based change detection
|
|
22
|
+
* // - Semantic versioning rules
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @note Current Implementation: The generator currently uses hardcoded defaults
|
|
26
|
+
* from `defaultConfig` regardless of user prompt responses. This is intentional
|
|
27
|
+
* for the initial release to ensure consistent behavior. Future versions will
|
|
28
|
+
* respect user input and allow customization.
|
|
29
|
+
*/
|
|
1
30
|
import { toFile, prompt, writeJSON } from '@featherscloud/pinion';
|
|
31
|
+
/**
|
|
32
|
+
* Default PipeCraft configuration for new projects.
|
|
33
|
+
*
|
|
34
|
+
* Provides a complete, working trunk-based development workflow with:
|
|
35
|
+
* - GitHub Actions CI/CD
|
|
36
|
+
* - Fast-forward merge strategy
|
|
37
|
+
* - Develop → Staging → Main branch flow
|
|
38
|
+
* - Conventional commits enforcement
|
|
39
|
+
* - Semantic versioning with standard bump rules
|
|
40
|
+
* - Domain-based change detection for monorepos
|
|
41
|
+
*
|
|
42
|
+
* @const
|
|
43
|
+
*/
|
|
2
44
|
const defaultConfig = {
|
|
3
45
|
ciProvider: 'github',
|
|
4
46
|
mergeStrategy: 'fast-forward',
|
|
@@ -6,6 +48,10 @@ const defaultConfig = {
|
|
|
6
48
|
initialBranch: 'develop',
|
|
7
49
|
finalBranch: 'main',
|
|
8
50
|
branchFlow: ['develop', 'staging', 'main'],
|
|
51
|
+
autoMerge: {
|
|
52
|
+
staging: true,
|
|
53
|
+
main: true
|
|
54
|
+
},
|
|
9
55
|
semver: {
|
|
10
56
|
bumpRules: {
|
|
11
57
|
feat: 'minor',
|
|
@@ -13,10 +59,6 @@ const defaultConfig = {
|
|
|
13
59
|
breaking: 'major'
|
|
14
60
|
}
|
|
15
61
|
},
|
|
16
|
-
actions: {
|
|
17
|
-
onDevelopMerge: ['runTests', 'fastForwardToStaging'],
|
|
18
|
-
onStagingMerge: ['runTests', 'calculateVersion', 'createOrFastForwardToMain']
|
|
19
|
-
},
|
|
20
62
|
domains: {
|
|
21
63
|
api: {
|
|
22
64
|
paths: ['apps/api/**'],
|
|
@@ -36,6 +78,18 @@ const defaultConfig = {
|
|
|
36
78
|
}
|
|
37
79
|
}
|
|
38
80
|
};
|
|
81
|
+
/**
|
|
82
|
+
* Generates a JSON string representation of the PipeCraft configuration.
|
|
83
|
+
*
|
|
84
|
+
* Serializes the configuration object with proper formatting (2-space indentation)
|
|
85
|
+
* for writing to .pipecraftrc.json file.
|
|
86
|
+
*
|
|
87
|
+
* @param {PipecraftConfig} ctx - The configuration context to serialize
|
|
88
|
+
* @returns {string} JSON string representation of the configuration
|
|
89
|
+
*
|
|
90
|
+
* @note The function extracts specific fields from the context to ensure
|
|
91
|
+
* only valid configuration properties are included in the output file.
|
|
92
|
+
*/
|
|
39
93
|
const configTemplate = (ctx) => {
|
|
40
94
|
const config = {
|
|
41
95
|
ciProvider: ctx.ciProvider,
|
|
@@ -44,17 +98,55 @@ const configTemplate = (ctx) => {
|
|
|
44
98
|
initialBranch: ctx.initialBranch,
|
|
45
99
|
finalBranch: ctx.finalBranch,
|
|
46
100
|
branchFlow: ctx.branchFlow,
|
|
101
|
+
autoMerge: ctx.autoMerge,
|
|
47
102
|
semver: {
|
|
48
103
|
bumpRules: ctx.semver.bumpRules
|
|
49
104
|
},
|
|
50
|
-
actions: {
|
|
51
|
-
onDevelopMerge: ctx.actions.onDevelopMerge,
|
|
52
|
-
onStagingMerge: ctx.actions.onStagingMerge
|
|
53
|
-
},
|
|
54
105
|
domains: ctx.domains
|
|
55
106
|
};
|
|
56
107
|
return JSON.stringify(config, null, 2);
|
|
57
108
|
};
|
|
109
|
+
/**
|
|
110
|
+
* Init generator main entry point.
|
|
111
|
+
*
|
|
112
|
+
* Orchestrates the initialization process by:
|
|
113
|
+
* 1. Prompting user for project preferences (currently unused - see note)
|
|
114
|
+
* 2. Merging user input with default configuration
|
|
115
|
+
* 3. Generating and writing .pipecraftrc.json file
|
|
116
|
+
*
|
|
117
|
+
* @param {PinionContext} ctx - Pinion generator context from CLI
|
|
118
|
+
* @returns {Promise<PinionContext>} Updated context after file generation
|
|
119
|
+
*
|
|
120
|
+
* @throws {Error} If configuration file cannot be written
|
|
121
|
+
* @throws {Error} If user input validation fails
|
|
122
|
+
*
|
|
123
|
+
* @example
|
|
124
|
+
* ```typescript
|
|
125
|
+
* // Called by Pinion framework when user runs `pipecraft init`
|
|
126
|
+
* const result = await generate({
|
|
127
|
+
* cwd: '/path/to/project',
|
|
128
|
+
* argv: ['init'],
|
|
129
|
+
* pinion: { ... }
|
|
130
|
+
* })
|
|
131
|
+
*
|
|
132
|
+
* // Results in: /path/to/project/.pipecraftrc.json
|
|
133
|
+
* ```
|
|
134
|
+
*
|
|
135
|
+
* @note Current Behavior: Despite prompting for user input, the generator
|
|
136
|
+
* currently overwrites all responses with `defaultConfig` values (line 167).
|
|
137
|
+
* This ensures consistency for the initial release. Future versions will
|
|
138
|
+
* respect user choices and allow customization of branch names, merge strategies,
|
|
139
|
+
* and domain configurations.
|
|
140
|
+
*
|
|
141
|
+
* Prompts Presented (currently unused):
|
|
142
|
+
* - Project name
|
|
143
|
+
* - CI provider (GitHub/GitLab)
|
|
144
|
+
* - Merge strategy (fast-forward/merge)
|
|
145
|
+
* - Conventional commits enforcement
|
|
146
|
+
* - Development branch name
|
|
147
|
+
* - Production branch name
|
|
148
|
+
* - Branch flow sequence
|
|
149
|
+
*/
|
|
58
150
|
export const generate = (ctx) => Promise.resolve(ctx)
|
|
59
151
|
.then(prompt([
|
|
60
152
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.tpl.js","sourceRoot":"","sources":["../../src/generators/init.tpl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,MAAM,EAAkB,MAAM,EAAQ,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAMtG,MAAM,aAAa,GAAG;IACpB,UAAU,EAAE,QAAiB;IAC7B,aAAa,EAAE,cAAuB;IACtC,0BAA0B,EAAE,IAAI;IAChC,aAAa,EAAE,SAAS;IACxB,WAAW,EAAE,MAAM;IACnB,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC;IAC1C,
|
|
1
|
+
{"version":3,"file":"init.tpl.js","sourceRoot":"","sources":["../../src/generators/init.tpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Workflows Template Generator
|
|
3
|
+
*
|
|
4
|
+
* Main orchestrator for generating complete GitHub Actions CI/CD pipeline.
|
|
5
|
+
* This generator creates all necessary workflow files including:
|
|
6
|
+
* - Main pipeline workflow (path-based change detection)
|
|
7
|
+
* - Reusable composite actions (tag creation, versioning, branch management, etc.)
|
|
8
|
+
*
|
|
9
|
+
* The generator supports both initial generation and incremental updates, preserving
|
|
10
|
+
* user modifications to existing workflows through intelligent merging.
|
|
11
|
+
*
|
|
12
|
+
* @module generators/workflows.tpl
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import { generate } from './generators/workflows.tpl.js'
|
|
17
|
+
*
|
|
18
|
+
* // Initial generation - creates all workflows
|
|
19
|
+
* await generate({
|
|
20
|
+
* cwd: '/path/to/project',
|
|
21
|
+
* config: pipecraftConfig
|
|
22
|
+
* })
|
|
23
|
+
*
|
|
24
|
+
* // Incremental update - merges with existing pipeline
|
|
25
|
+
* await generate({
|
|
26
|
+
* cwd: '/path/to/project',
|
|
27
|
+
* pipelinePath: '.github/workflows/pipeline.yml',
|
|
28
|
+
* config: pipecraftConfig
|
|
29
|
+
* })
|
|
30
|
+
*
|
|
31
|
+
* // Creates:
|
|
32
|
+
* // .github/workflows/pipeline.yml - Main pipeline
|
|
33
|
+
* // .github/actions/detect-changes/... - Change detection action
|
|
34
|
+
* // .github/actions/calculate-version/... - Version calculation action
|
|
35
|
+
* // .github/actions/create-tag/... - Tag creation action
|
|
36
|
+
* // .github/actions/create-pr/... - PR creation action
|
|
37
|
+
* // .github/actions/manage-branch/... - Branch management action
|
|
38
|
+
* // .github/actions/promote-branch/... - Branch promotion action
|
|
39
|
+
* // .github/actions/create-release/... - Release creation action
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
1
42
|
import { PinionContext } from '@featherscloud/pinion';
|
|
43
|
+
/**
|
|
44
|
+
* Workflows generator main entry point.
|
|
45
|
+
*
|
|
46
|
+
* Orchestrates the complete workflow generation process:
|
|
47
|
+
* 1. Loads existing pipeline (if specified) for merging
|
|
48
|
+
* 2. Merges configuration with defaults
|
|
49
|
+
* 3. Generates all composite actions in parallel
|
|
50
|
+
* 4. Generates the main pipeline workflow
|
|
51
|
+
*
|
|
52
|
+
* @param {PinionContext & { pipelinePath?: string, outputPipelinePath?: string, config?: any }} ctx - Extended Pinion context
|
|
53
|
+
* @param {string} [ctx.pipelinePath] - Path to existing pipeline for incremental updates
|
|
54
|
+
* @param {string} [ctx.outputPipelinePath] - Custom output path for pipeline (defaults to .github/workflows/pipeline.yml)
|
|
55
|
+
* @param {PipecraftConfig} [ctx.config] - PipeCraft configuration (overrides defaults)
|
|
56
|
+
* @returns {Promise<PinionContext>} Updated context after workflow generation
|
|
57
|
+
*
|
|
58
|
+
* @throws {Error} If workflow files cannot be written
|
|
59
|
+
* @throws {Error} If existing pipeline cannot be parsed
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* // Initial generation with config
|
|
64
|
+
* await generate({
|
|
65
|
+
* cwd: '/path/to/project',
|
|
66
|
+
* config: {
|
|
67
|
+
* ciProvider: 'github',
|
|
68
|
+
* branchFlow: ['develop', 'staging', 'main'],
|
|
69
|
+
* domains: { api: { paths: ['src/api/**'] } }
|
|
70
|
+
* }
|
|
71
|
+
* })
|
|
72
|
+
*
|
|
73
|
+
* // Update existing pipeline
|
|
74
|
+
* await generate({
|
|
75
|
+
* cwd: '/path/to/project',
|
|
76
|
+
* pipelinePath: '.github/workflows/pipeline.yml',
|
|
77
|
+
* config: updatedConfig
|
|
78
|
+
* })
|
|
79
|
+
* ```
|
|
80
|
+
*
|
|
81
|
+
* @note The generator creates 8 files:
|
|
82
|
+
* - 1 main workflow (pipeline.yml)
|
|
83
|
+
* - 7 composite actions (in .github/actions/)
|
|
84
|
+
*
|
|
85
|
+
* All actions are generated in parallel for performance, followed by
|
|
86
|
+
* the main pipeline which may reference the actions.
|
|
87
|
+
*/
|
|
2
88
|
export declare const generate: (ctx: PinionContext & {
|
|
3
89
|
pipelinePath?: string;
|
|
4
90
|
outputPipelinePath?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflows.tpl.d.ts","sourceRoot":"","sources":["../../src/generators/workflows.tpl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA0C,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"workflows.tpl.d.ts","sourceRoot":"","sources":["../../src/generators/workflows.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,EAAE,aAAa,EAA0C,MAAM,uBAAuB,CAAA;AA8C7F;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,aAAa,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,GAAG,CAAA;CAAE,iBAuC5G,CAAA"}
|
|
@@ -1,5 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Workflows Template Generator
|
|
3
|
+
*
|
|
4
|
+
* Main orchestrator for generating complete GitHub Actions CI/CD pipeline.
|
|
5
|
+
* This generator creates all necessary workflow files including:
|
|
6
|
+
* - Main pipeline workflow (path-based change detection)
|
|
7
|
+
* - Reusable composite actions (tag creation, versioning, branch management, etc.)
|
|
8
|
+
*
|
|
9
|
+
* The generator supports both initial generation and incremental updates, preserving
|
|
10
|
+
* user modifications to existing workflows through intelligent merging.
|
|
11
|
+
*
|
|
12
|
+
* @module generators/workflows.tpl
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* import { generate } from './generators/workflows.tpl.js'
|
|
17
|
+
*
|
|
18
|
+
* // Initial generation - creates all workflows
|
|
19
|
+
* await generate({
|
|
20
|
+
* cwd: '/path/to/project',
|
|
21
|
+
* config: pipecraftConfig
|
|
22
|
+
* })
|
|
23
|
+
*
|
|
24
|
+
* // Incremental update - merges with existing pipeline
|
|
25
|
+
* await generate({
|
|
26
|
+
* cwd: '/path/to/project',
|
|
27
|
+
* pipelinePath: '.github/workflows/pipeline.yml',
|
|
28
|
+
* config: pipecraftConfig
|
|
29
|
+
* })
|
|
30
|
+
*
|
|
31
|
+
* // Creates:
|
|
32
|
+
* // .github/workflows/pipeline.yml - Main pipeline
|
|
33
|
+
* // .github/actions/detect-changes/... - Change detection action
|
|
34
|
+
* // .github/actions/calculate-version/... - Version calculation action
|
|
35
|
+
* // .github/actions/create-tag/... - Tag creation action
|
|
36
|
+
* // .github/actions/create-pr/... - PR creation action
|
|
37
|
+
* // .github/actions/manage-branch/... - Branch management action
|
|
38
|
+
* // .github/actions/promote-branch/... - Branch promotion action
|
|
39
|
+
* // .github/actions/create-release/... - Release creation action
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
1
42
|
import { readFileSync, existsSync } from 'fs';
|
|
2
43
|
import { parse } from 'yaml';
|
|
44
|
+
import { logger } from '../utils/logger.js';
|
|
3
45
|
// Import individual workflow templates
|
|
4
46
|
import { generate as generateTagWorkflow } from '../templates/actions/create-tag.yml.tpl.js';
|
|
5
47
|
import { generate as generateChangesWorkflow } from '../templates/actions/detect-changes.yml.tpl.js';
|
|
@@ -7,7 +49,15 @@ import { generate as generateVersionWorkflow } from '../templates/actions/calcul
|
|
|
7
49
|
import { generate as generateCreatePRWorkflow } from '../templates/actions/create-pr.yml.tpl.js';
|
|
8
50
|
import { generate as generateBranchWorkflow } from '../templates/actions/manage-branch.yml.tpl.js';
|
|
9
51
|
import { generate as generatePromoteBranchWorkflow } from '../templates/actions/promote-branch.yml.tpl.js';
|
|
52
|
+
import { generate as generateReleaseWorkflow } from '../templates/actions/create-release.yml.tpl.js';
|
|
10
53
|
import { generate as generatePathBasedPipeline } from '../templates/workflows/pipeline-path-based.yml.tpl.js';
|
|
54
|
+
/**
|
|
55
|
+
* Default fallback configuration when no config file exists.
|
|
56
|
+
* Mirrors `defaultConfig` from init.tpl.ts to ensure consistent behavior.
|
|
57
|
+
*
|
|
58
|
+
* @const
|
|
59
|
+
* @see {@link module:generators/init.tpl~defaultConfig}
|
|
60
|
+
*/
|
|
11
61
|
const defaultConfig = {
|
|
12
62
|
ciProvider: 'github',
|
|
13
63
|
mergeStrategy: 'fast-forward',
|
|
@@ -22,10 +72,6 @@ const defaultConfig = {
|
|
|
22
72
|
breaking: 'major'
|
|
23
73
|
}
|
|
24
74
|
},
|
|
25
|
-
actions: {
|
|
26
|
-
onDevelopMerge: ['runTests', 'fastForwardToStaging'],
|
|
27
|
-
onStagingMerge: ['runTests', 'calculateVersion', 'createOrFastForwardToMain']
|
|
28
|
-
},
|
|
29
75
|
domains: {
|
|
30
76
|
api: { paths: ['apps/api/**'], description: 'API application changes' },
|
|
31
77
|
web: { paths: ['apps/web/**'], description: 'Web application changes' },
|
|
@@ -33,9 +79,54 @@ const defaultConfig = {
|
|
|
33
79
|
cicd: { paths: ['.github/workflows/**'], description: 'CI/CD configuration changes' }
|
|
34
80
|
}
|
|
35
81
|
};
|
|
82
|
+
/**
|
|
83
|
+
* Workflows generator main entry point.
|
|
84
|
+
*
|
|
85
|
+
* Orchestrates the complete workflow generation process:
|
|
86
|
+
* 1. Loads existing pipeline (if specified) for merging
|
|
87
|
+
* 2. Merges configuration with defaults
|
|
88
|
+
* 3. Generates all composite actions in parallel
|
|
89
|
+
* 4. Generates the main pipeline workflow
|
|
90
|
+
*
|
|
91
|
+
* @param {PinionContext & { pipelinePath?: string, outputPipelinePath?: string, config?: any }} ctx - Extended Pinion context
|
|
92
|
+
* @param {string} [ctx.pipelinePath] - Path to existing pipeline for incremental updates
|
|
93
|
+
* @param {string} [ctx.outputPipelinePath] - Custom output path for pipeline (defaults to .github/workflows/pipeline.yml)
|
|
94
|
+
* @param {PipecraftConfig} [ctx.config] - PipeCraft configuration (overrides defaults)
|
|
95
|
+
* @returns {Promise<PinionContext>} Updated context after workflow generation
|
|
96
|
+
*
|
|
97
|
+
* @throws {Error} If workflow files cannot be written
|
|
98
|
+
* @throws {Error} If existing pipeline cannot be parsed
|
|
99
|
+
*
|
|
100
|
+
* @example
|
|
101
|
+
* ```typescript
|
|
102
|
+
* // Initial generation with config
|
|
103
|
+
* await generate({
|
|
104
|
+
* cwd: '/path/to/project',
|
|
105
|
+
* config: {
|
|
106
|
+
* ciProvider: 'github',
|
|
107
|
+
* branchFlow: ['develop', 'staging', 'main'],
|
|
108
|
+
* domains: { api: { paths: ['src/api/**'] } }
|
|
109
|
+
* }
|
|
110
|
+
* })
|
|
111
|
+
*
|
|
112
|
+
* // Update existing pipeline
|
|
113
|
+
* await generate({
|
|
114
|
+
* cwd: '/path/to/project',
|
|
115
|
+
* pipelinePath: '.github/workflows/pipeline.yml',
|
|
116
|
+
* config: updatedConfig
|
|
117
|
+
* })
|
|
118
|
+
* ```
|
|
119
|
+
*
|
|
120
|
+
* @note The generator creates 8 files:
|
|
121
|
+
* - 1 main workflow (pipeline.yml)
|
|
122
|
+
* - 7 composite actions (in .github/actions/)
|
|
123
|
+
*
|
|
124
|
+
* All actions are generated in parallel for performance, followed by
|
|
125
|
+
* the main pipeline which may reference the actions.
|
|
126
|
+
*/
|
|
36
127
|
export const generate = (ctx) => Promise.resolve(ctx)
|
|
37
128
|
.then((ctx) => {
|
|
38
|
-
|
|
129
|
+
logger.info('🔧 Generating GitHub Actions...');
|
|
39
130
|
// Load existing pipeline if provided
|
|
40
131
|
let existingPipeline = null;
|
|
41
132
|
let existingPipelineContent = null;
|
|
@@ -43,10 +134,10 @@ export const generate = (ctx) => Promise.resolve(ctx)
|
|
|
43
134
|
try {
|
|
44
135
|
existingPipelineContent = readFileSync(ctx.pipelinePath, 'utf8');
|
|
45
136
|
existingPipeline = parse(existingPipelineContent);
|
|
46
|
-
|
|
137
|
+
logger.verbose(`📖 Loaded existing pipeline from: ${ctx.pipelinePath}`);
|
|
47
138
|
}
|
|
48
139
|
catch (error) {
|
|
49
|
-
|
|
140
|
+
logger.warn(`⚠️ Failed to load existing pipeline: ${error}`);
|
|
50
141
|
}
|
|
51
142
|
}
|
|
52
143
|
return { ...ctx, ...defaultConfig, ...ctx.config, ...ctx, existingPipeline, existingPipelineContent, outputPipelinePath: ctx.outputPipelinePath };
|
|
@@ -59,7 +150,8 @@ export const generate = (ctx) => Promise.resolve(ctx)
|
|
|
59
150
|
generateVersionWorkflow(ctx),
|
|
60
151
|
generateCreatePRWorkflow(ctx),
|
|
61
152
|
generateBranchWorkflow(ctx),
|
|
62
|
-
generatePromoteBranchWorkflow(ctx)
|
|
153
|
+
generatePromoteBranchWorkflow(ctx),
|
|
154
|
+
generateReleaseWorkflow(ctx)
|
|
63
155
|
]).then(() => ctx);
|
|
64
156
|
})
|
|
65
157
|
.then((ctx) => {
|
|
@@ -67,7 +159,7 @@ export const generate = (ctx) => Promise.resolve(ctx)
|
|
|
67
159
|
return generatePathBasedPipeline(ctx);
|
|
68
160
|
})
|
|
69
161
|
.then((ctx) => {
|
|
70
|
-
|
|
162
|
+
logger.success('✅ Generated workflows in: .github/workflows');
|
|
71
163
|
return ctx;
|
|
72
164
|
});
|
|
73
165
|
//# sourceMappingURL=workflows.tpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflows.tpl.js","sourceRoot":"","sources":["../../src/generators/workflows.tpl.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workflows.tpl.js","sourceRoot":"","sources":["../../src/generators/workflows.tpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Calculate Version Action Template
|
|
3
|
+
*
|
|
4
|
+
* Generates a composite action that calculates the next semantic version based on
|
|
5
|
+
* conventional commits. Uses `release-it` to analyze commit history and determine
|
|
6
|
+
* the appropriate version bump (major, minor, or patch).
|
|
7
|
+
*
|
|
8
|
+
* ## Purpose
|
|
9
|
+
*
|
|
10
|
+
* Automates semantic versioning in the CI/CD pipeline by:
|
|
11
|
+
* - Analyzing conventional commit messages since the last tag
|
|
12
|
+
* - Determining the appropriate version bump (feat→minor, fix→patch, BREAKING→major)
|
|
13
|
+
* - Installing and running release-it for version calculation
|
|
14
|
+
* - Outputting the calculated version for use in subsequent jobs
|
|
15
|
+
*
|
|
16
|
+
* ## Generated Action Location
|
|
17
|
+
*
|
|
18
|
+
* `.github/actions/calculate-version/action.yml`
|
|
19
|
+
*
|
|
20
|
+
* ## Usage in Workflows
|
|
21
|
+
*
|
|
22
|
+
* ```yaml
|
|
23
|
+
* jobs:
|
|
24
|
+
* version:
|
|
25
|
+
* runs-on: ubuntu-latest
|
|
26
|
+
* outputs:
|
|
27
|
+
* version: ${{ steps.calc.outputs.version }}
|
|
28
|
+
* steps:
|
|
29
|
+
* - uses: ./.github/actions/calculate-version
|
|
30
|
+
* id: calc
|
|
31
|
+
* with:
|
|
32
|
+
* baseRef: main
|
|
33
|
+
*
|
|
34
|
+
* tag:
|
|
35
|
+
* needs: version
|
|
36
|
+
* steps:
|
|
37
|
+
* - run: echo "Next version: ${{ needs.version.outputs.version }}"
|
|
38
|
+
* ```
|
|
39
|
+
*
|
|
40
|
+
* @module templates/actions/calculate-version.yml.tpl
|
|
41
|
+
*/
|
|
1
42
|
import { PinionContext } from '@featherscloud/pinion';
|
|
43
|
+
/**
|
|
44
|
+
* Generator entry point for calculate-version composite action.
|
|
45
|
+
*
|
|
46
|
+
* @param {PinionContext} ctx - Pinion generator context
|
|
47
|
+
* @returns {Promise<PinionContext>} Updated context after file generation
|
|
48
|
+
*/
|
|
2
49
|
export declare const generate: (ctx: PinionContext) => Promise<any>;
|
|
3
50
|
//# sourceMappingURL=calculate-version.yml.tpl.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calculate-version.yml.tpl.d.ts","sourceRoot":"","sources":["../../../src/templates/actions/calculate-version.yml.tpl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAA0B,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"calculate-version.yml.tpl.d.ts","sourceRoot":"","sources":["../../../src/templates/actions/calculate-version.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AAEH,OAAO,EAAE,aAAa,EAA0B,MAAM,uBAAuB,CAAA;AAuI7E;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,aAAa,iBAU6D,CAAA"}
|