@substrat-run/contracts 0.56.0 → 0.57.1
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/ci.d.ts +17 -0
- package/dist/ci.d.ts.map +1 -1
- package/dist/ci.js +51 -11
- package/dist/ci.js.map +1 -1
- package/package.json +1 -1
package/dist/ci.d.ts
CHANGED
|
@@ -88,7 +88,24 @@ export interface DeployWorkflowOptions {
|
|
|
88
88
|
cpUrl: string;
|
|
89
89
|
/** Defaults to `trunk`. */
|
|
90
90
|
release?: ReleaseMode;
|
|
91
|
+
/**
|
|
92
|
+
* The vertical's directory INSIDE the repo, for a monorepo whose package is not the
|
|
93
|
+
* repo root (e.g. `demos/auth-server`). Every push/preview runs against this directory,
|
|
94
|
+
* the version gates read ITS package.json, and the triggers gain a `paths:` filter so a
|
|
95
|
+
* merge that never touched the package does not release it. Install still runs at the
|
|
96
|
+
* repo root — a workspace repo's lockfile lives there. Omitted = the repo root, exactly
|
|
97
|
+
* the file this generator always produced.
|
|
98
|
+
*/
|
|
99
|
+
path?: string;
|
|
91
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* Normalize a package directory to the repo-relative form the workflow embeds: no leading
|
|
103
|
+
* `./`, no trailing `/`. Root spellings (``, `.`, `./`) collapse to undefined so callers
|
|
104
|
+
* cannot generate a `push ./` that means the same thing as the pathless file but diffs
|
|
105
|
+
* against it. Traversal is refused here — a generator shared by three writers must not
|
|
106
|
+
* rely on every caller validating.
|
|
107
|
+
*/
|
|
108
|
+
export declare function normalizeWorkflowDir(path: string | undefined): string | undefined;
|
|
92
109
|
/**
|
|
93
110
|
* The workflow the one-click setup commits and `substrat init --ci github` writes.
|
|
94
111
|
*
|
package/dist/ci.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ci.d.ts","sourceRoot":"","sources":["../src/ci.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAMH;;;;;GAKG;AACH,eAAO,MAAM,UAAU,aAAc,MAAM,KAAG,MAA0B,CAAC;AAEzE;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,aAAc,MAAM,SAAS,MAAM,GAAG,MAAM,KAAG,MAChD,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,aAAc,MAAM,KAAG,MAA2B,CAAC;AAMrF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAElE;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,MAAM,CAa1F;AAED,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,QAAO,MACiF,CAAC;AAMvH;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,YAAY,CAAC;AAEjD,MAAM,WAAW,qBAAqB;IACpC,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"ci.d.ts","sourceRoot":"","sources":["../src/ci.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAMH;;;;;GAKG;AACH,eAAO,MAAM,UAAU,aAAc,MAAM,KAAG,MAA0B,CAAC;AAEzE;;;;;;;GAOG;AACH,eAAO,MAAM,eAAe,aAAc,MAAM,SAAS,MAAM,GAAG,MAAM,KAAG,MAChD,CAAC;AAE5B;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,aAAc,MAAM,KAAG,MAA2B,CAAC;AAMrF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,8BAA8B,CAAC;AAElE;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,MAAM,CAa1F;AAED,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,QAAO,MACiF,CAAC;AAMvH;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,YAAY,CAAC;AAEjD,MAAM,WAAW,qBAAqB;IACpC,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IACb,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAQjF;AAKD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,qBAAqB,GAAG,MAAM,CAuNtE"}
|
package/dist/ci.js
CHANGED
|
@@ -77,6 +77,24 @@ export function previewCommentBody(urls) {
|
|
|
77
77
|
}
|
|
78
78
|
/** The sticky comment after the PR closed and the preview forks were deleted. */
|
|
79
79
|
export const previewReapedBody = () => `${PREVIEW_COMMENT_MARKER}\n🔎 **Substrat preview:** reaped — this PR is closed and the preview forks were deleted.`;
|
|
80
|
+
/**
|
|
81
|
+
* Normalize a package directory to the repo-relative form the workflow embeds: no leading
|
|
82
|
+
* `./`, no trailing `/`. Root spellings (``, `.`, `./`) collapse to undefined so callers
|
|
83
|
+
* cannot generate a `push ./` that means the same thing as the pathless file but diffs
|
|
84
|
+
* against it. Traversal is refused here — a generator shared by three writers must not
|
|
85
|
+
* rely on every caller validating.
|
|
86
|
+
*/
|
|
87
|
+
export function normalizeWorkflowDir(path) {
|
|
88
|
+
if (path === undefined)
|
|
89
|
+
return undefined;
|
|
90
|
+
const trimmed = path.replace(/^\.\//, '').replace(/\/+$/, '');
|
|
91
|
+
if (trimmed === '' || trimmed === '.')
|
|
92
|
+
return undefined;
|
|
93
|
+
if (trimmed.startsWith('/') || trimmed.split('/').some((seg) => seg === '' || seg === '.' || seg === '..')) {
|
|
94
|
+
throw new Error(`not a repo-relative package directory: '${path}'`);
|
|
95
|
+
}
|
|
96
|
+
return trimmed;
|
|
97
|
+
}
|
|
80
98
|
/** Render a comment body as a single-quoted `printf` format string (literal `\n`, `%s` holes). */
|
|
81
99
|
const printfFormat = (body) => body.replace(/\n/g, '\\n');
|
|
82
100
|
/**
|
|
@@ -101,6 +119,10 @@ export function deployWorkflowYaml(opts) {
|
|
|
101
119
|
const { branch, slug, cpUrl } = opts;
|
|
102
120
|
const release = opts.release ?? 'trunk';
|
|
103
121
|
const cli = 'npx @substrat-run/cli';
|
|
122
|
+
// The package directory: what push/preview build, whose package.json owns the version.
|
|
123
|
+
const path = normalizeWorkflowDir(opts.path);
|
|
124
|
+
const dir = path ?? '.';
|
|
125
|
+
const pkgRef = path ? `./${path}/package.json` : './package.json';
|
|
104
126
|
// The install block repeats across jobs (self-contained file, see above). `fetch-depth: 2`
|
|
105
127
|
// is what lets the changesets release gate diff package.json against the previous commit.
|
|
106
128
|
const setup = (fetchDepth) => ` - uses: actions/checkout@v4${fetchDepth ? `\n with:\n fetch-depth: ${fetchDepth}` : ''}
|
|
@@ -131,19 +153,19 @@ export function deployWorkflowYaml(opts) {
|
|
|
131
153
|
${cpEnv}
|
|
132
154
|
run: |
|
|
133
155
|
set -euo pipefail
|
|
134
|
-
CUR=$(node -p "require('
|
|
135
|
-
PREV=$(git show HEAD
|
|
156
|
+
CUR=$(node -p "require('${pkgRef}').version")
|
|
157
|
+
PREV=$(git show HEAD^:${path ? `${path}/package.json` : 'package.json'} 2>/dev/null | node -pe "JSON.parse(require('fs').readFileSync(0,'utf8')).version" 2>/dev/null || echo '')
|
|
136
158
|
if [ "$CUR" = "$PREV" ]; then
|
|
137
159
|
echo "package.json version is still $CUR — this merge landed a changeset, not a release. Skipping prod."
|
|
138
160
|
exit 0
|
|
139
161
|
fi
|
|
140
162
|
echo "releasing $CUR (was \${PREV:-none})"
|
|
141
|
-
${cli} push
|
|
163
|
+
${cli} push ${dir} --slug ${slug} --version "$CUR" --promote prod`
|
|
142
164
|
: ` - name: Release to prod
|
|
143
165
|
${cpEnv}
|
|
144
166
|
run: |
|
|
145
167
|
set -euo pipefail
|
|
146
|
-
${cli} push
|
|
168
|
+
${cli} push ${dir} --slug ${slug} --promote prod`;
|
|
147
169
|
// --- the "tracks main" test environment ---------------------------------------------
|
|
148
170
|
//
|
|
149
171
|
// Runs on EVERY merge, release or not — that is the point of a test env: it is always the
|
|
@@ -157,8 +179,8 @@ ${cpEnv}
|
|
|
157
179
|
${cpEnv}
|
|
158
180
|
run: |
|
|
159
181
|
set -euo pipefail
|
|
160
|
-
BASE=$(node -p "require('
|
|
161
|
-
${cli} push
|
|
182
|
+
BASE=$(node -p "require('${pkgRef}').version")
|
|
183
|
+
${cli} push ${dir} --slug ${slug} --version "$BASE-test.\${{ github.run_number }}" | tee push.out
|
|
162
184
|
# '|| true' so an unmatched grep does not trip pipefail before the message below —
|
|
163
185
|
# "could not read the pushed version id" beats a bare exit 1 from grep.
|
|
164
186
|
VID=$(grep -F '✓ pushed' push.out | grep -oE 'version [A-Za-z0-9]+' | head -1 | cut -d' ' -f2 || true)
|
|
@@ -172,7 +194,7 @@ ${cpEnv}
|
|
|
172
194
|
${cpEnv}
|
|
173
195
|
run: |
|
|
174
196
|
set -euo pipefail
|
|
175
|
-
${cli} preview create
|
|
197
|
+
${cli} preview create ${dir} --slug ${slug} --tag pr-\${{ github.event.number }} | tee preview.out
|
|
176
198
|
# Take the URL from the CLI success line (the ✓ marker) only — the push it runs
|
|
177
199
|
# first also prints an https:// *deploy endpoint* we must never mistake for a preview.
|
|
178
200
|
grep -F '✓ preview' preview.out | grep -oE 'https://[a-zA-Z0-9.:/_-]+' | tail -1 > preview.url || true
|
|
@@ -184,7 +206,7 @@ ${cpEnv}
|
|
|
184
206
|
# A FRESH scope, bound once and never rebound, so this URL is frozen to this build
|
|
185
207
|
# forever. Clean-room (--empty) rather than a fork: a throwaway per build should not
|
|
186
208
|
# copy prod data every push. Short TTL — the sticky preview is the one that lives.
|
|
187
|
-
${cli} preview create
|
|
209
|
+
${cli} preview create ${dir} --slug ${slug} \\
|
|
188
210
|
--tag pr-\${{ github.event.number }}-\${{ github.run_id }} --empty --ttl 24h | tee build.out
|
|
189
211
|
grep -F '✓ preview' build.out | grep -oE 'https://[a-zA-Z0-9.:/_-]+' | tail -1 > build.url || true`;
|
|
190
212
|
// The comment body comes from previewCommentBody() so the CI-written and platform-written
|
|
@@ -227,6 +249,22 @@ ${cpEnv}
|
|
|
227
249
|
- name: Reap the preview
|
|
228
250
|
${cpEnv}
|
|
229
251
|
run: ${cli} preview delete --slug ${slug} --tag pr-\${{ github.event.number }}`;
|
|
252
|
+
// A nested package only deploys when a change could have affected it. The filter is
|
|
253
|
+
// deliberately editable prose, not policy: a workspace package that consumes SIBLING
|
|
254
|
+
// packages should add their paths, or delete the filter to deploy on every merge.
|
|
255
|
+
const pathsFilter = path
|
|
256
|
+
? `
|
|
257
|
+
# Only changes that can affect ${path} deploy it. If this package depends on other
|
|
258
|
+
# directories of the repo (workspace packages, shared config), add their paths here —
|
|
259
|
+
# or remove the filter to build on every merge.
|
|
260
|
+
paths:
|
|
261
|
+
- '${path}/**'
|
|
262
|
+
- '.github/workflows/**'
|
|
263
|
+
- 'package.json'
|
|
264
|
+
- 'pnpm-lock.yaml'
|
|
265
|
+
- 'yarn.lock'
|
|
266
|
+
- 'package-lock.json'`
|
|
267
|
+
: '';
|
|
230
268
|
const releaseNote = release === 'changesets'
|
|
231
269
|
? ` # Release train: the version lives in package.json and only a version PR moves it, so a
|
|
232
270
|
# merge releases ONLY when that version changed. Every merge still updates the test env.`
|
|
@@ -236,7 +274,9 @@ ${cpEnv}
|
|
|
236
274
|
|
|
237
275
|
# Generated by Substrat (substrat init --ci github). The workflow this encodes — one prod
|
|
238
276
|
# channel, previews as the only non-prod environment — is documented at
|
|
239
|
-
# https://substrat.net/guide/environments-and-previews
|
|
277
|
+
# https://substrat.net/guide/environments-and-previews${path
|
|
278
|
+
? `\n#\n# Monorepo: this deploys the '${slug}' vertical from ${path}/ (dependencies still\n# install at the repo root — the workspace lockfile lives there).`
|
|
279
|
+
: ''}
|
|
240
280
|
#
|
|
241
281
|
# Optional repository variables (Settings → Secrets and variables → Actions → Variables):
|
|
242
282
|
# SUBSTRAT_TEST_SCOPE_ID a long-lived scope rebound to every merge (the test env)
|
|
@@ -244,11 +284,11 @@ ${cpEnv}
|
|
|
244
284
|
|
|
245
285
|
on:
|
|
246
286
|
push:
|
|
247
|
-
branches: [${branch}]
|
|
287
|
+
branches: [${branch}]${pathsFilter}
|
|
248
288
|
# Per-PR previews: open/update a PR → a preview instance running the PR's code against a
|
|
249
289
|
# FORK of prod on its own URL; close the PR → it is reaped (the TTL is the GC backstop).
|
|
250
290
|
pull_request:
|
|
251
|
-
types: [opened, synchronize, reopened, closed]
|
|
291
|
+
types: [opened, synchronize, reopened, closed]${pathsFilter}
|
|
252
292
|
|
|
253
293
|
jobs:
|
|
254
294
|
deploy:
|
package/dist/ci.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ci.js","sourceRoot":"","sources":["../src/ci.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,QAAgB,EAAU,EAAE,CAAC,MAAM,QAAQ,EAAE,CAAC;AAEzE;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAgB,EAAE,KAAsB,EAAU,EAAE,CAClF,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;AAE5B;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAAgB,EAAU,EAAE,CAAC,MAAM,QAAQ,GAAG,CAAC;AAErF,8EAA8E;AAC9E,wBAAwB;AACxB,8EAA8E;AAE9E;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,2BAA2B,CAAC;AAElE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAA+C;IAChF,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,CACL,GAAG,sBAAsB,8BAA8B,IAAI,CAAC,MAAM,MAAM;YACxE,gGAAgG;YAChG,6BAA6B,CAC9B,CAAC;IACJ,CAAC;IACD,OAAO,CACL,GAAG,sBAAsB,8BAA8B,IAAI,CAAC,MAAM,wBAAwB,IAAI,CAAC,KAAK,MAAM;QAC1G,gGAAgG;QAChG,iGAAiG,CAClG,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAW,EAAE,CAC5C,GAAG,sBAAsB,2FAA2F,CAAC;
|
|
1
|
+
{"version":3,"file":"ci.js","sourceRoot":"","sources":["../src/ci.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@substrat-run/contracts",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.57.1",
|
|
4
4
|
"description": "Substrat kernel contract schemas — Zod is the source of truth (master plan D-22); OAS/JSON Schema are emitted artifacts",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|