pipecraft 0.43.1 → 0.43.3
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/dist/generators/workflows.tpl.d.ts.map +1 -1
- package/dist/generators/workflows.tpl.js +2 -1
- package/dist/generators/workflows.tpl.js.map +1 -1
- package/dist/templates/actions/promote-branch.yml.tpl.d.ts.map +1 -1
- package/dist/templates/actions/promote-branch.yml.tpl.js +24 -0
- package/dist/templates/actions/promote-branch.yml.tpl.js.map +1 -1
- package/dist/templates/workflows/enforce-pr-target.yml.tpl.d.ts +7 -0
- package/dist/templates/workflows/enforce-pr-target.yml.tpl.d.ts.map +1 -1
- package/dist/templates/workflows/enforce-pr-target.yml.tpl.js +45 -2
- package/dist/templates/workflows/enforce-pr-target.yml.tpl.js.map +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 +8 -5
- package/dist/templates/workflows/pr-title-check.yml.tpl.js.map +1 -1
- package/dist/templates/workflows/shared/fully-managed-header.d.ts +21 -0
- package/dist/templates/workflows/shared/fully-managed-header.d.ts.map +1 -0
- package/dist/templates/workflows/shared/fully-managed-header.js +37 -0
- package/dist/templates/workflows/shared/fully-managed-header.js.map +1 -0
- package/dist/types/index.d.ts +9 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/versioning.d.ts.map +1 -1
- package/dist/utils/versioning.js +73 -34
- package/dist/utils/versioning.js.map +1 -1
- package/package.json +1 -1
- package/src/generators/workflows.tpl.ts +2 -1
|
@@ -1 +1 @@
|
|
|
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;AA+ClG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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,
|
|
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;AA+ClG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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,iBA6DrF,CAAA"}
|
|
@@ -175,7 +175,8 @@ export const generate = (ctx) => Promise.resolve(ctx)
|
|
|
175
175
|
return generatePipeline(ctx);
|
|
176
176
|
})
|
|
177
177
|
.then(ctx => {
|
|
178
|
-
// Generate the enforce PR target workflow
|
|
178
|
+
// Generate the enforce PR target workflow. The template adapts to a single-branch
|
|
179
|
+
// flow on its own — see enforce-pr-target.yml.tpl.ts.
|
|
179
180
|
return generateEnforcePRTarget(ctx);
|
|
180
181
|
})
|
|
181
182
|
.then(ctx => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflows.tpl.js","sourceRoot":"","sources":["../../src/generators/workflows.tpl.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"workflows.tpl.js","sourceRoot":"","sources":["../../src/generators/workflows.tpl.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promote-branch.yml.tpl.d.ts","sourceRoot":"","sources":["../../../src/templates/actions/promote-branch.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,aAAa,EAA0B,MAAM,uBAAuB,CAAA;AAKlF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,GAAI,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"promote-branch.yml.tpl.d.ts","sourceRoot":"","sources":["../../../src/templates/actions/promote-branch.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,KAAK,aAAa,EAA0B,MAAM,uBAAuB,CAAA;AAKlF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,GAAI,KAAK,GAAG,WA4YnD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,aAAa,GAAG;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;CAAE,iBAgB/E,CAAA"}
|
|
@@ -73,6 +73,30 @@ export const promoteBranchActionTemplate = (ctx) => {
|
|
|
73
73
|
runs:
|
|
74
74
|
using: 'composite'
|
|
75
75
|
steps:
|
|
76
|
+
- name: Validate Inputs
|
|
77
|
+
shell: bash
|
|
78
|
+
run: |
|
|
79
|
+
# GitHub does not enforce 'required: true' for composite action inputs, so an
|
|
80
|
+
# expression that resolves to empty arrives here silently. Left unchecked it is
|
|
81
|
+
# substituted into the temp branch name and 'gh pr create --base', which fails
|
|
82
|
+
# later with a confusing message about a malformed ref. Fail fast instead.
|
|
83
|
+
TARGET="\${{ inputs.targetBranch }}"
|
|
84
|
+
TARGET="\$(echo "\$TARGET" | xargs)"
|
|
85
|
+
|
|
86
|
+
if [ -z "\$TARGET" ]; then
|
|
87
|
+
echo "::error::promote-branch requires a non-empty 'targetBranch' input."
|
|
88
|
+
echo "::error::Received an empty value. There is no branch to promote to."
|
|
89
|
+
echo ""
|
|
90
|
+
echo "This usually means one of:"
|
|
91
|
+
echo " - The branch flow has a single branch, so there is nothing to promote."
|
|
92
|
+
echo " Remove the promote step rather than calling it with an empty target."
|
|
93
|
+
echo " - The expression feeding targetBranch resolved to empty (typo, or a"
|
|
94
|
+
echo " 'needs' output that was never set)."
|
|
95
|
+
exit 1
|
|
96
|
+
fi
|
|
97
|
+
|
|
98
|
+
echo "✅ Promoting to '\$TARGET'"
|
|
99
|
+
|
|
76
100
|
- name: Checkout Code
|
|
77
101
|
uses: actions/checkout@v5
|
|
78
102
|
with:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promote-branch.yml.tpl.js","sourceRoot":"","sources":["../../../src/templates/actions/promote-branch.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAsB,cAAc,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAClF,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAG3F;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,GAAQ,EAAE,EAAE;IACtD,OAAO,MAAM,CAAA
|
|
1
|
+
{"version":3,"file":"promote-branch.yml.tpl.js","sourceRoot":"","sources":["../../../src/templates/actions/promote-branch.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAsB,cAAc,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAClF,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAAE,MAAM,IAAI,CAAA;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAG3F;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,GAAQ,EAAE,EAAE;IACtD,OAAO,MAAM,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0YZ,CAAA;AACH,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAA0D,EAAE,EAAE,CACrF,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;IAC9B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAA;IAE/B,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,MAAM,CAAC,OAAO,CAAC,kEAAkE,CAAC,CAAA;QAClF,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,QAAQ,GAAG,GAAG,SAAS,4BAA4B,CAAA;IACzD,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,gBAAgB,CAAA;IACpE,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,IAAI,QAAQ,EAAE,CAAC,CAAA;IAEvC,OAAO,cAAc,CAAC,2BAA2B,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;AAC3E,CAAC,CAAC,CAAA"}
|
|
@@ -27,6 +27,13 @@
|
|
|
27
27
|
* ```
|
|
28
28
|
*/
|
|
29
29
|
import { type PinionContext } from '@featherscloud/pinion';
|
|
30
|
+
/**
|
|
31
|
+
* Repo-relative path this template writes to.
|
|
32
|
+
*
|
|
33
|
+
* Exported so the generator can clear a stale file when the flow collapses to a
|
|
34
|
+
* single branch and the workflow is no longer generated.
|
|
35
|
+
*/
|
|
36
|
+
export declare const ENFORCE_PR_TARGET_PATH = ".github/workflows/enforce-pr-target.yml";
|
|
30
37
|
/**
|
|
31
38
|
* Generates the enforce-pr-target.yml workflow file.
|
|
32
39
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enforce-pr-target.yml.tpl.d.ts","sourceRoot":"","sources":["../../../src/templates/workflows/enforce-pr-target.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,KAAK,aAAa,EAA0B,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"enforce-pr-target.yml.tpl.d.ts","sourceRoot":"","sources":["../../../src/templates/workflows/enforce-pr-target.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAE,KAAK,aAAa,EAA0B,MAAM,uBAAuB,CAAA;AAMlF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,4CAA4C,CAAA;AAE/E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,aAAa,iBAgFxC,CAAA"}
|
|
@@ -27,6 +27,15 @@
|
|
|
27
27
|
* ```
|
|
28
28
|
*/
|
|
29
29
|
import { renderTemplate, toFile } from '@featherscloud/pinion';
|
|
30
|
+
import { fullyManagedHeader } from './shared/fully-managed-header.js';
|
|
31
|
+
const ENFORCE_HEADER = fullyManagedHeader(['initialBranch', 'finalBranch']);
|
|
32
|
+
/**
|
|
33
|
+
* Repo-relative path this template writes to.
|
|
34
|
+
*
|
|
35
|
+
* Exported so the generator can clear a stale file when the flow collapses to a
|
|
36
|
+
* single branch and the workflow is no longer generated.
|
|
37
|
+
*/
|
|
38
|
+
export const ENFORCE_PR_TARGET_PATH = '.github/workflows/enforce-pr-target.yml';
|
|
30
39
|
/**
|
|
31
40
|
* Generates the enforce-pr-target.yml workflow file.
|
|
32
41
|
*
|
|
@@ -51,7 +60,35 @@ import { renderTemplate, toFile } from '@featherscloud/pinion';
|
|
|
51
60
|
*/
|
|
52
61
|
export const generate = (ctx) => Promise.resolve(ctx).then(renderTemplate((ctx) => {
|
|
53
62
|
const { initialBranch = 'develop', finalBranch = 'main' } = ctx;
|
|
54
|
-
|
|
63
|
+
// In a single-branch flow the rule "target initialBranch, not finalBranch" names the
|
|
64
|
+
// same branch twice. Emitting both steps gives them an identical `if`, so the reject
|
|
65
|
+
// step runs first and fails every PR to the only branch there is.
|
|
66
|
+
//
|
|
67
|
+
// Emit the confirm step alone instead of skipping the file. Regenerating then repairs
|
|
68
|
+
// a workflow left over from a previous multi-branch config, and any branch protection
|
|
69
|
+
// rule requiring the `check-pr-target` status keeps getting a result — deleting the
|
|
70
|
+
// workflow would leave that check permanently unreported and block every PR.
|
|
71
|
+
if (initialBranch === finalBranch) {
|
|
72
|
+
return `${ENFORCE_HEADER}name: Enforce PR Target Branch
|
|
73
|
+
|
|
74
|
+
on:
|
|
75
|
+
pull_request:
|
|
76
|
+
types: [opened, edited, synchronize, reopened]
|
|
77
|
+
# Single-branch flow: '${finalBranch}' is the only branch, so it is the only valid target.
|
|
78
|
+
branches:
|
|
79
|
+
- ${finalBranch}
|
|
80
|
+
|
|
81
|
+
jobs:
|
|
82
|
+
check-pr-target:
|
|
83
|
+
runs-on: ubuntu-latest
|
|
84
|
+
steps:
|
|
85
|
+
- name: Confirm correct target
|
|
86
|
+
run: |
|
|
87
|
+
echo "✅ PR correctly targets '${initialBranch}' branch"
|
|
88
|
+
echo "Single-branch flow: '${initialBranch}' is the only branch in the flow."
|
|
89
|
+
`;
|
|
90
|
+
}
|
|
91
|
+
return `${ENFORCE_HEADER}name: Enforce PR Target Branch
|
|
55
92
|
|
|
56
93
|
on:
|
|
57
94
|
pull_request:
|
|
@@ -87,5 +124,11 @@ jobs:
|
|
|
87
124
|
run: |
|
|
88
125
|
echo "✅ PR correctly targets '${initialBranch}' branch"
|
|
89
126
|
`;
|
|
90
|
-
}, toFile(
|
|
127
|
+
}, toFile(ENFORCE_PR_TARGET_PATH),
|
|
128
|
+
// This workflow is entirely generated — unlike pipeline.yml it has no user-editable
|
|
129
|
+
// regions to preserve. Without force, Pinion skips the file whenever it already
|
|
130
|
+
// exists, so the branches baked into it never change: renaming finalBranch left the
|
|
131
|
+
// old name enforced, and collapsing to a single-branch flow left the rejecting
|
|
132
|
+
// version in place, failing every PR.
|
|
133
|
+
{ force: true }));
|
|
91
134
|
//# sourceMappingURL=enforce-pr-target.yml.tpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enforce-pr-target.yml.tpl.js","sourceRoot":"","sources":["../../../src/templates/workflows/enforce-pr-target.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAsB,cAAc,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAElF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAkB,EAAE,EAAE,CAC7C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CACvB,cAAc,
|
|
1
|
+
{"version":3,"file":"enforce-pr-target.yml.tpl.js","sourceRoot":"","sources":["../../../src/templates/workflows/enforce-pr-target.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAAsB,cAAc,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAElF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAErE,MAAM,cAAc,GAAG,kBAAkB,CAAC,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC,CAAA;AAE3E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,yCAAyC,CAAA;AAE/E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAkB,EAAE,EAAE,CAC7C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CACvB,cAAc,CACZ,CAAC,GAAQ,EAAE,EAAE;IACX,MAAM,EAAE,aAAa,GAAG,SAAS,EAAE,WAAW,GAAG,MAAM,EAAE,GAAG,GAAG,CAAA;IAE/D,qFAAqF;IACrF,qFAAqF;IACrF,kEAAkE;IAClE,EAAE;IACF,sFAAsF;IACtF,sFAAsF;IACtF,oFAAoF;IACpF,6EAA6E;IAC7E,IAAI,aAAa,KAAK,WAAW,EAAE,CAAC;QAClC,OAAO,GAAG,cAAc;;;;;6BAKL,WAAW;;UAE9B,WAAW;;;;;;;;0CAQqB,aAAa;uCAChB,aAAa;CACnD,CAAA;IACO,CAAC;IAED,OAAO,GAAG,cAAc;;;;;;;;;;UAUtB,WAAW;;;;;;;;;;kCAUa,WAAW;;sDAES,aAAa,kBAAkB,WAAW;6DACnC,aAAa;;;;;8CAK5B,WAAW,SAAS,aAAa;;;;kCAI7C,aAAa;;0CAEL,aAAa;CACtD,CAAA;AACK,CAAC,EACD,MAAM,CAAC,sBAAsB,CAAC;AAC9B,oFAAoF;AACpF,gFAAgF;AAChF,oFAAoF;AACpF,+EAA+E;AAC/E,sCAAsC;AACtC,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CACF,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pr-title-check.yml.tpl.d.ts","sourceRoot":"","sources":["../../../src/templates/workflows/pr-title-check.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAE,KAAK,aAAa,EAA0B,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"pr-title-check.yml.tpl.d.ts","sourceRoot":"","sources":["../../../src/templates/workflows/pr-title-check.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAE,KAAK,aAAa,EAA0B,MAAM,uBAAuB,CAAA;AAMlF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,QAAQ,GAAI,KAAK,aAAa,iBA2KvC,CAAA"}
|
|
@@ -26,6 +26,8 @@
|
|
|
26
26
|
* ```
|
|
27
27
|
*/
|
|
28
28
|
import { renderTemplate, toFile } from '@featherscloud/pinion';
|
|
29
|
+
import { fullyManagedHeader } from './shared/fully-managed-header.js';
|
|
30
|
+
const TITLE_CHECK_HEADER = fullyManagedHeader(['initialBranch', 'semver.bumpRules']);
|
|
29
31
|
/**
|
|
30
32
|
* Generates the pr-title-check.yml workflow file.
|
|
31
33
|
*
|
|
@@ -81,10 +83,7 @@ export const generate = (ctx) => Promise.resolve(ctx).then(ctx => {
|
|
|
81
83
|
build
|
|
82
84
|
revert
|
|
83
85
|
major`;
|
|
84
|
-
|
|
85
|
-
// Format: ^(major|breaking|othermajortype):
|
|
86
|
-
const majorTypesPattern = majorTypes.length > 0 ? `^(${majorTypes.join('|')}):` : '^major:';
|
|
87
|
-
return `name: "PR Title Format Check"
|
|
86
|
+
return `${TITLE_CHECK_HEADER}name: "PR Title Format Check"
|
|
88
87
|
|
|
89
88
|
on:
|
|
90
89
|
pull_request:
|
|
@@ -205,6 +204,10 @@ ${typesList}
|
|
|
205
204
|
with:
|
|
206
205
|
header: breaking-change-warning
|
|
207
206
|
delete: true`;
|
|
208
|
-
}, toFile('.github/workflows/pr-title-check.yml')
|
|
207
|
+
}, toFile('.github/workflows/pr-title-check.yml'),
|
|
208
|
+
// Fully generated, no user-editable regions. Without force, Pinion skips the file once
|
|
209
|
+
// it exists, so the allowed commit types baked in at first generation never change —
|
|
210
|
+
// adding a type to semver.bumpRules left this check rejecting titles that use it.
|
|
211
|
+
{ force: true })(ctx);
|
|
209
212
|
});
|
|
210
213
|
//# sourceMappingURL=pr-title-check.yml.tpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pr-title-check.yml.tpl.js","sourceRoot":"","sources":["../../../src/templates/workflows/pr-title-check.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAsB,cAAc,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAElF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAkB,EAAE,EAAE,CAC7C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;IAC9B,MAAM,EAAE,0BAA0B,GAAG,IAAI,EAAE,GAAG,GAAU,CAAA;IAExD,qDAAqD;IACrD,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAChC,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,OAAO,cAAc,
|
|
1
|
+
{"version":3,"file":"pr-title-check.yml.tpl.js","sourceRoot":"","sources":["../../../src/templates/workflows/pr-title-check.yml.tpl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAsB,cAAc,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAElF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAA;AAErE,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC,CAAA;AAEpF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,GAAkB,EAAE,EAAE,CAC7C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;IAC9B,MAAM,EAAE,0BAA0B,GAAG,IAAI,EAAE,GAAG,GAAU,CAAA;IAExD,qDAAqD;IACrD,IAAI,CAAC,0BAA0B,EAAE,CAAC;QAChC,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,OAAO,cAAc,CACnB,CAAC,GAAQ,EAAE,EAAE;QACX,qFAAqF;QACrF,+EAA+E;QAC/E,MAAM,aAAa,GAAG,GAAG,CAAC,aAAa,IAAI,GAAG,CAAC,MAAM,EAAE,aAAa,IAAI,SAAS,CAAA;QACjF,6CAA6C;QAC7C,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,IAAI,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,IAAI,EAAE,CAAA;QAC1F,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAEvC,qDAAqD;QACrD,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;aACzC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,OAAO,CAAC;aACzC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAA;QAE3B,kDAAkD;QAClD,qEAAqE;QACrE,MAAM,SAAS,GACb,QAAQ,CAAC,MAAM,GAAG,CAAC;YACjB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YACxD,CAAC,CAAC;;;;;;;;;;;kBAWI,CAAA;QAEV,OAAO,GAAG,kBAAkB;;;;;;;;;;UAU1B,aAAa;;;;;;;;;;;;;;;;;;;;;;EAsBrB,SAAS;;;;;;;;;;;;;qCAa0B,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;YAE9C,UAAU,CAAC,MAAM,GAAG,CAAC;YACnB,CAAC,CAAC;wBACQ,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;;;;;;qJAMsF;YACvI,CAAC,CAAC,2IACN;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAiEa,CAAA;IACjB,CAAC,EACD,MAAM,CAAC,sCAAsC,CAAC;IAC9C,uFAAuF;IACvF,qFAAqF;IACrF,kFAAkF;IAClF,EAAE,KAAK,EAAE,IAAI,EAAE,CAChB,CAAC,GAAG,CAAC,CAAA;AACR,CAAC,CAAC,CAAA"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Header for workflows Pipecraft renders whole from config.
|
|
3
|
+
*
|
|
4
|
+
* `pipeline.yml` announces itself as managed and lists what it preserves, so a reader
|
|
5
|
+
* reasonably takes an unlabelled workflow to be theirs. `enforce-pr-target.yml` and
|
|
6
|
+
* `pr-title-check.yml` carried no such notice while Pinion was skipping them on
|
|
7
|
+
* regeneration, which made hand-editing look safe. They are rewritten on every generate
|
|
8
|
+
* as of v0.43.2, so the file has to say so.
|
|
9
|
+
*
|
|
10
|
+
* Unlike pipeline.yml there are no preserved regions here: the whole file is replaced.
|
|
11
|
+
*
|
|
12
|
+
* @module templates/workflows/shared/fully-managed-header
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Build the comment block that opens a fully-generated workflow.
|
|
16
|
+
*
|
|
17
|
+
* @param derivedFrom - Config keys this workflow's content comes from, for the reader who
|
|
18
|
+
* wants to know which knob to turn instead of editing the file.
|
|
19
|
+
*/
|
|
20
|
+
export declare function fullyManagedHeader(derivedFrom: string[]): string;
|
|
21
|
+
//# sourceMappingURL=fully-managed-header.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fully-managed-header.d.ts","sourceRoot":"","sources":["../../../../src/templates/workflows/shared/fully-managed-header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,CAiBhE"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Header for workflows Pipecraft renders whole from config.
|
|
3
|
+
*
|
|
4
|
+
* `pipeline.yml` announces itself as managed and lists what it preserves, so a reader
|
|
5
|
+
* reasonably takes an unlabelled workflow to be theirs. `enforce-pr-target.yml` and
|
|
6
|
+
* `pr-title-check.yml` carried no such notice while Pinion was skipping them on
|
|
7
|
+
* regeneration, which made hand-editing look safe. They are rewritten on every generate
|
|
8
|
+
* as of v0.43.2, so the file has to say so.
|
|
9
|
+
*
|
|
10
|
+
* Unlike pipeline.yml there are no preserved regions here: the whole file is replaced.
|
|
11
|
+
*
|
|
12
|
+
* @module templates/workflows/shared/fully-managed-header
|
|
13
|
+
*/
|
|
14
|
+
/**
|
|
15
|
+
* Build the comment block that opens a fully-generated workflow.
|
|
16
|
+
*
|
|
17
|
+
* @param derivedFrom - Config keys this workflow's content comes from, for the reader who
|
|
18
|
+
* wants to know which knob to turn instead of editing the file.
|
|
19
|
+
*/
|
|
20
|
+
export function fullyManagedHeader(derivedFrom) {
|
|
21
|
+
const sources = derivedFrom.map(key => `# - ${key}`).join('\n');
|
|
22
|
+
return `#=============================================================================
|
|
23
|
+
# PIPECRAFT MANAGED WORKFLOW
|
|
24
|
+
#=============================================================================
|
|
25
|
+
#
|
|
26
|
+
# 🔒 THIS ENTIRE FILE IS GENERATED. Edits are overwritten on the next
|
|
27
|
+
# 'pipecraft generate'. Unlike pipeline.yml, nothing here is preserved.
|
|
28
|
+
#
|
|
29
|
+
# ⚙️ Generated from your .pipecraftrc:
|
|
30
|
+
${sources}
|
|
31
|
+
#
|
|
32
|
+
# ✏️ To change this workflow, change the config above and regenerate. To add
|
|
33
|
+
# checks of your own, put them in a separate workflow file.
|
|
34
|
+
#=============================================================================
|
|
35
|
+
`;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=fully-managed-header.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fully-managed-header.js","sourceRoot":"","sources":["../../../../src/templates/workflows/shared/fully-managed-header.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAAqB;IACtD,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEjE,OAAO;;;;;;;;EAQP,OAAO;;;;;CAKR,CAAA;AACD,CAAC"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -143,9 +143,15 @@ export interface PipecraftConfig {
|
|
|
143
143
|
* - boolean: Enable/disable auto-promotion for all branches
|
|
144
144
|
* - Record: Per-branch auto-promote settings (e.g., `{ staging: true, main: false }`)
|
|
145
145
|
*
|
|
146
|
-
*
|
|
147
|
-
*
|
|
148
|
-
*
|
|
146
|
+
* This controls how a promotion PR is *merged*, not whether one is *opened*.
|
|
147
|
+
* PipeCraft opens the promotion PR either way:
|
|
148
|
+
*
|
|
149
|
+
* - `true` — the PR is opened and merged automatically once checks pass.
|
|
150
|
+
* - `false` — the PR is opened and left for a human to merge.
|
|
151
|
+
*
|
|
152
|
+
* There is no value here that stops promotion PRs from being created. To stop
|
|
153
|
+
* promoting to a branch at all, remove it from `branchFlow`.
|
|
154
|
+
*
|
|
149
155
|
* @default false
|
|
150
156
|
*/
|
|
151
157
|
autoPromote?: boolean | Record<string, boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,KAAK,EAAE,MAAM,EAAE,CAAA;IAEf;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAA;IAEnB;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;IAEnB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAA;IAElB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAA;IAEpB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,UAAU,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAE/B;;;;OAIG;IACH,aAAa,EAAE,cAAc,GAAG,OAAO,CAAA;IAEvC;;;;OAIG;IACH,0BAA0B,EAAE,OAAO,CAAA;IAEnC;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAA;IAErB;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAA;IAEnB;;;;;OAKG;IACH,UAAU,EAAE,MAAM,EAAE,CAAA;IAEpB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA8bH;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,YAAY;IACZ,eAAe;IACf,4BAA4B;IAC5B,eAAe;IACf,aAAa;IACb,YAAY;IACZ,aAAa;IACb,aAAa;IACb,WAAW;IACX,QAAQ;IACR,SAAS;IACT,gBAAgB;IAChB,SAAS;IACT,kBAAkB;IAClB,eAAe;IACf,SAAS;IACT,YAAY;CACJ,CAAA;AAEV;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO;IACP,aAAa;IACb,UAAU;IACV,UAAU;IACV,YAAY;IACZ,gBAAgB;CACR,CAAA;AAYV,MAAM,iBAAiB,GACrB,IAAI,CAAA;AACN,MAAM,iBAAiB,GAAwE,IAAI,CAAA;AACnG,KAAK,iBAAiB,CAAA;AACtB,KAAK,iBAAiB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versioning.d.ts","sourceRoot":"","sources":["../../src/utils/versioning.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAExD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAiB;IAE/B;;;;OAIG;gBACS,MAAM,EAAE,eAAe;IAInC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,uBAAuB,IAAI,MAAM;
|
|
1
|
+
{"version":3,"file":"versioning.d.ts","sourceRoot":"","sources":["../../src/utils/versioning.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAExD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAiB;IAE/B;;;;OAIG;gBACS,MAAM,EAAE,eAAe;IAInC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,uBAAuB,IAAI,MAAM;IAkGjC;;;;;;;;;;;;;;;OAeG;IACH,wBAAwB,IAAI,MAAM;IA8BlC;;;;;;;;OAQG;IACH,mBAAmB,IAAI,MAAM;IAO7B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,sBAAsB,IAAI,IAAI;IAkC9B;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,wBAAwB;IAsBhC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,2BAA2B,IAAI,OAAO;IAmBtC;;;;;;;;;;;;;OAaG;IACH,iBAAiB,IAAI,MAAM;IAa3B;;;;;;;;;;;;;;;OAeG;IACH,oBAAoB,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;CAwB1D"}
|
package/dist/utils/versioning.js
CHANGED
|
@@ -72,7 +72,33 @@ export class VersionManager {
|
|
|
72
72
|
* ```
|
|
73
73
|
*/
|
|
74
74
|
generateReleaseItConfig() {
|
|
75
|
-
|
|
75
|
+
// Bump rules live under `semver` in the schema. `versioning.bumpRules` is the
|
|
76
|
+
// deprecated spelling and loses to it. This is the same precedence the release-it
|
|
77
|
+
// template and the pr-title-check template use — reading only `versioning` here meant
|
|
78
|
+
// a project configured the way the schema requires got none of its rules.
|
|
79
|
+
const userBumpRules = {
|
|
80
|
+
...(this.config.versioning?.bumpRules ?? {}),
|
|
81
|
+
...(this.config.semver?.bumpRules ?? {})
|
|
82
|
+
};
|
|
83
|
+
// Keep these in step with src/templates/release-it.cjs.tpl.ts.
|
|
84
|
+
const baseDefaults = {
|
|
85
|
+
test: 'ignore',
|
|
86
|
+
build: 'ignore',
|
|
87
|
+
ci: 'patch',
|
|
88
|
+
docs: 'patch',
|
|
89
|
+
chore: 'minor',
|
|
90
|
+
style: 'patch',
|
|
91
|
+
fix: 'patch',
|
|
92
|
+
perf: 'patch',
|
|
93
|
+
refactor: 'patch',
|
|
94
|
+
feat: 'minor',
|
|
95
|
+
major: 'major'
|
|
96
|
+
};
|
|
97
|
+
const mergedRules = { ...baseDefaults, ...userBumpRules };
|
|
98
|
+
const rulesEntries = Object.entries(mergedRules)
|
|
99
|
+
.map(([type, level]) => ` ${type}: '${level}'`)
|
|
100
|
+
.join(',\n');
|
|
101
|
+
const staticConfig = {
|
|
76
102
|
git: {
|
|
77
103
|
requireCleanWorkingDir: false,
|
|
78
104
|
commit: false,
|
|
@@ -89,41 +115,54 @@ export class VersionManager {
|
|
|
89
115
|
},
|
|
90
116
|
hooks: {
|
|
91
117
|
'after:release': 'echo ${version} > .release-version'
|
|
92
|
-
},
|
|
93
|
-
plugins: {
|
|
94
|
-
'@release-it/conventional-changelog': {
|
|
95
|
-
whatBump: (commits, options) => {
|
|
96
|
-
// Import DEFAULT_PREFIXES from the release-it config
|
|
97
|
-
const { DEFAULT_PREFIXES } = require('../../.release-it.cjs');
|
|
98
|
-
const defaults = DEFAULT_PREFIXES;
|
|
99
|
-
// Merge with user-defined bump rules
|
|
100
|
-
const bumpRules = { ...defaults, ...this.config.versioning?.bumpRules };
|
|
101
|
-
let breakings = 0;
|
|
102
|
-
let features = 0;
|
|
103
|
-
const levelSet = ['major', 'minor', 'patch', 'ignore'];
|
|
104
|
-
// eslint-disable-next-line prefer-spread
|
|
105
|
-
const level = Math.min.apply(Math, commits.map(commit => {
|
|
106
|
-
let level = levelSet.indexOf(bumpRules[commit.type] || 'ignore');
|
|
107
|
-
level = level < 0 ? 3 : level;
|
|
108
|
-
if (commit.notes.length > 0) {
|
|
109
|
-
breakings += commit.notes.length;
|
|
110
|
-
}
|
|
111
|
-
if (commit.type === 'feat') {
|
|
112
|
-
features += 1;
|
|
113
|
-
}
|
|
114
|
-
return level;
|
|
115
|
-
}));
|
|
116
|
-
return {
|
|
117
|
-
level: level,
|
|
118
|
-
reason: breakings === 1
|
|
119
|
-
? `There is ${breakings} BREAKING CHANGE and ${features} features`
|
|
120
|
-
: `There are ${breakings} BREAKING CHANGES and ${features} features`
|
|
121
|
-
};
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
118
|
}
|
|
125
119
|
};
|
|
126
|
-
|
|
120
|
+
// whatBump has to be emitted as source. Serialising the whole config with
|
|
121
|
+
// JSON.stringify silently dropped it — and it is the only thing that reads the bump
|
|
122
|
+
// rules, so the generated file ignored them entirely.
|
|
123
|
+
return `const DEFAULT_PREFIXES = {
|
|
124
|
+
${rulesEntries}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
module.exports = {
|
|
128
|
+
...${JSON.stringify(staticConfig, null, 2).replace(/\n/g, '\n ')},
|
|
129
|
+
plugins: {
|
|
130
|
+
'@release-it/conventional-changelog': {
|
|
131
|
+
whatBump: commits => {
|
|
132
|
+
const bumpRules = DEFAULT_PREFIXES
|
|
133
|
+
let breakings = 0
|
|
134
|
+
let features = 0
|
|
135
|
+
const levelSet = ['major', 'minor', 'patch', 'ignore']
|
|
136
|
+
|
|
137
|
+
const level = Math.min(
|
|
138
|
+
...commits.map(commit => {
|
|
139
|
+
let level = levelSet.indexOf(bumpRules[commit.type] || 'ignore')
|
|
140
|
+
level = level < 0 ? 3 : level
|
|
141
|
+
|
|
142
|
+
if (commit.notes.length > 0) {
|
|
143
|
+
breakings += commit.notes.length
|
|
144
|
+
}
|
|
145
|
+
if (commit.type === 'feat') {
|
|
146
|
+
features += 1
|
|
147
|
+
}
|
|
148
|
+
return level
|
|
149
|
+
})
|
|
150
|
+
)
|
|
151
|
+
|
|
152
|
+
return {
|
|
153
|
+
level: level,
|
|
154
|
+
reason:
|
|
155
|
+
breakings === 1
|
|
156
|
+
? \`There is \${breakings} BREAKING CHANGE and \${features} features\`
|
|
157
|
+
: \`There are \${breakings} BREAKING CHANGES and \${features} features\`
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
module.exports.DEFAULT_PREFIXES = DEFAULT_PREFIXES
|
|
165
|
+
`;
|
|
127
166
|
}
|
|
128
167
|
/**
|
|
129
168
|
* Generate commitlint configuration file content.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versioning.js","sourceRoot":"","sources":["../../src/utils/versioning.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,IAAI,CAAA;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,OAAO,cAAc;IACjB,MAAM,CAAiB;IAE/B;;;;OAIG;IACH,YAAY,MAAuB;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;IACtB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,uBAAuB;QACrB,
|
|
1
|
+
{"version":3,"file":"versioning.js","sourceRoot":"","sources":["../../src/utils/versioning.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pipecraft",
|
|
3
|
-
"version": "0.43.
|
|
3
|
+
"version": "0.43.3",
|
|
4
4
|
"description": "Automated CI/CD pipeline generator for trunk-based development. Generates intelligent GitHub Actions workflows with domain-based change detection, semantic versioning, and branch flow management. Full documentation: https://pipecraft.thecraftlab.dev",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -185,7 +185,8 @@ export const generate = (
|
|
|
185
185
|
return generatePipeline(ctx)
|
|
186
186
|
})
|
|
187
187
|
.then(ctx => {
|
|
188
|
-
// Generate the enforce PR target workflow
|
|
188
|
+
// Generate the enforce PR target workflow. The template adapts to a single-branch
|
|
189
|
+
// flow on its own — see enforce-pr-target.yml.tpl.ts.
|
|
189
190
|
return generateEnforcePRTarget(ctx)
|
|
190
191
|
})
|
|
191
192
|
.then(ctx => {
|