checkly 9.0.0 → 9.1.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 +1 -1
- package/bin/check-node-version.cjs +21 -0
- package/bin/launch.cjs +16 -0
- package/bin/run.cjs +32 -0
- package/dist/ai-context/skills-command/references/configure-playwright-checks.md +1 -1
- package/dist/commands/authCommand.d.ts +6 -0
- package/dist/commands/authCommand.js +17 -0
- package/dist/commands/authCommand.js.map +1 -1
- package/dist/commands/baseCommand.d.ts +11 -0
- package/dist/commands/baseCommand.js +34 -13
- package/dist/commands/baseCommand.js.map +1 -1
- package/dist/commands/debug/parse-project.d.ts +1 -1
- package/dist/commands/debug/parse-project.js +41 -15
- package/dist/commands/debug/parse-project.js.map +1 -1
- package/dist/commands/deploy.js +5 -24
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/destroy.js +2 -1
- package/dist/commands/destroy.js.map +1 -1
- package/dist/commands/import/apply.js +2 -1
- package/dist/commands/import/apply.js.map +1 -1
- package/dist/commands/import/cancel.js +2 -1
- package/dist/commands/import/cancel.js.map +1 -1
- package/dist/commands/import/commit.js +2 -1
- package/dist/commands/import/commit.js.map +1 -1
- package/dist/commands/import/plan.js +11 -29
- package/dist/commands/import/plan.js.map +1 -1
- package/dist/commands/pw-test.js +5 -24
- package/dist/commands/pw-test.js.map +1 -1
- package/dist/commands/test.js +5 -24
- package/dist/commands/test.js.map +1 -1
- package/dist/commands/trigger.js +10 -3
- package/dist/commands/trigger.js.map +1 -1
- package/dist/commands/validate.js +5 -22
- package/dist/commands/validate.js.map +1 -1
- package/dist/helpers/command-style.d.ts +2 -0
- package/dist/helpers/command-style.js +13 -0
- package/dist/helpers/command-style.js.map +1 -1
- package/dist/services/check-parser/cache-hash.d.ts +5 -2
- package/dist/services/check-parser/cache-hash.js +2 -2
- package/dist/services/check-parser/cache-hash.js.map +1 -1
- package/dist/services/check-parser/package-prune.d.ts +12 -4
- package/dist/services/check-parser/package-prune.js +184 -76
- package/dist/services/check-parser/package-prune.js.map +1 -1
- package/dist/services/checkly-config-loader.d.ts +60 -18
- package/dist/services/checkly-config-loader.js +131 -45
- package/dist/services/checkly-config-loader.js.map +1 -1
- package/dist/services/config-diagnostics.d.ts +31 -0
- package/dist/services/config-diagnostics.js +57 -0
- package/dist/services/config-diagnostics.js.map +1 -0
- package/dist/services/embedded-packages/spec.js +2 -2
- package/dist/services/embedded-packages/spec.js.map +1 -1
- package/dist/services/runner/registries.d.ts +17 -5
- package/dist/services/runner/registries.js +129 -61
- package/dist/services/runner/registries.js.map +1 -1
- package/oclif.manifest.json +628 -628
- package/package.json +3 -3
- package/bin/run +0 -8
- package/bin/run.cmd +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../../src/services/embedded-packages/spec.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"spec.js","sourceRoot":"","sources":["../../../src/services/embedded-packages/spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -118,16 +118,28 @@ export interface Registries<UpstreamName extends string = string> {
|
|
|
118
118
|
*/
|
|
119
119
|
export declare const MATCH_ALL_PATTERN = "**";
|
|
120
120
|
/**
|
|
121
|
-
*
|
|
122
|
-
*
|
|
123
|
-
*
|
|
124
|
-
*
|
|
125
|
-
* back — a malformed registry URL may carry an
|
|
121
|
+
* Walks a registries value, reporting every issue through `onIssue` so
|
|
122
|
+
* that all of them surface in a single run — the config loader turns each
|
|
123
|
+
* one into its own diagnostic. Messages name the offending part relative
|
|
124
|
+
* to the registries block itself. Invalid URLs and tokens are
|
|
125
|
+
* deliberately never echoed back — a malformed registry URL may carry an
|
|
126
|
+
* inline credential.
|
|
127
|
+
*
|
|
128
|
+
* Structural problems gate their dependents: an `upstreams` block that is
|
|
129
|
+
* not an object (or is empty) skips the per-rule upstream-existence
|
|
130
|
+
* checks (they would all fail spuriously), and a rule whose pattern is
|
|
131
|
+
* invalid skips the match-all checks for that rule.
|
|
126
132
|
*
|
|
127
133
|
* Plain-JS configs bypass the TypeScript type, so the shape must be
|
|
128
134
|
* enforced at runtime, exactly as `validateBundle` does for
|
|
129
135
|
* `bundle.packages`.
|
|
130
136
|
*/
|
|
137
|
+
export declare function collectRegistriesIssues(value: unknown, onIssue: (issue: Error) => void): void;
|
|
138
|
+
/**
|
|
139
|
+
* Validates the value of `runner.registries` and returns it typed,
|
|
140
|
+
* throwing the first issue found. Invalid URLs and tokens are never
|
|
141
|
+
* echoed back — a malformed registry URL may carry an inline credential.
|
|
142
|
+
*/
|
|
131
143
|
export declare function validateRegistries(value: unknown): Registries;
|
|
132
144
|
/**
|
|
133
145
|
* Serializes a validated configuration into the canonical contents of
|
|
@@ -66,129 +66,197 @@ function isPlainObject(value) {
|
|
|
66
66
|
* an intention, and ignoring it silently disables whatever the user meant
|
|
67
67
|
* to configure, surfacing only as an install failure on the runner.
|
|
68
68
|
*/
|
|
69
|
-
function
|
|
69
|
+
function collectUnknownKeyIssues(onIssue, context, value, known) {
|
|
70
|
+
const prefix = context === undefined ? '' : `${context}: `;
|
|
70
71
|
for (const key of Object.keys(value)) {
|
|
71
72
|
if (!known.includes(key)) {
|
|
72
|
-
|
|
73
|
+
onIssue(new Error(`${prefix}unknown field '${key}' (expected only: ${known.map(k => `'${k}'`).join(', ')}).`));
|
|
73
74
|
}
|
|
74
75
|
}
|
|
75
76
|
}
|
|
76
77
|
/**
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
80
|
-
*
|
|
81
|
-
* back — a malformed registry URL may carry an
|
|
78
|
+
* Walks a registries value, reporting every issue through `onIssue` so
|
|
79
|
+
* that all of them surface in a single run — the config loader turns each
|
|
80
|
+
* one into its own diagnostic. Messages name the offending part relative
|
|
81
|
+
* to the registries block itself. Invalid URLs and tokens are
|
|
82
|
+
* deliberately never echoed back — a malformed registry URL may carry an
|
|
83
|
+
* inline credential.
|
|
84
|
+
*
|
|
85
|
+
* Structural problems gate their dependents: an `upstreams` block that is
|
|
86
|
+
* not an object (or is empty) skips the per-rule upstream-existence
|
|
87
|
+
* checks (they would all fail spuriously), and a rule whose pattern is
|
|
88
|
+
* invalid skips the match-all checks for that rule.
|
|
82
89
|
*
|
|
83
90
|
* Plain-JS configs bypass the TypeScript type, so the shape must be
|
|
84
91
|
* enforced at runtime, exactly as `validateBundle` does for
|
|
85
92
|
* `bundle.packages`.
|
|
86
93
|
*/
|
|
87
|
-
export function
|
|
94
|
+
export function collectRegistriesIssues(value, onIssue) {
|
|
88
95
|
if (!isPlainObject(value)) {
|
|
89
|
-
|
|
96
|
+
onIssue(new Error(`must be an object.`));
|
|
97
|
+
return;
|
|
90
98
|
}
|
|
91
|
-
|
|
99
|
+
// No context: the diagnostic wrapping the issue already names the
|
|
100
|
+
// registries block's own config path.
|
|
101
|
+
collectUnknownKeyIssues(onIssue, undefined, value, ['upstreams', 'packages']);
|
|
92
102
|
const { upstreams, packages } = value;
|
|
103
|
+
let upstreamNames;
|
|
93
104
|
if (!isPlainObject(upstreams)) {
|
|
94
|
-
|
|
105
|
+
onIssue(new Error(`'upstreams' must be an object mapping upstream names to { url, auth? }.`));
|
|
95
106
|
}
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
107
|
+
else if (Object.keys(upstreams).length === 0) {
|
|
108
|
+
// Gates the per-rule upstream-existence checks the same way a
|
|
109
|
+
// non-object block does: with no upstreams defined, every rule would
|
|
110
|
+
// otherwise cascade a spurious issue of its own.
|
|
111
|
+
onIssue(new Error(`'upstreams' must define at least one upstream.`));
|
|
99
112
|
}
|
|
100
|
-
|
|
101
|
-
|
|
113
|
+
else {
|
|
114
|
+
upstreamNames = Object.keys(upstreams);
|
|
115
|
+
for (const name of upstreamNames) {
|
|
116
|
+
collectUpstreamIssues(onIssue, name, upstreams[name]);
|
|
117
|
+
}
|
|
102
118
|
}
|
|
103
119
|
if (!Array.isArray(packages)) {
|
|
104
|
-
|
|
120
|
+
onIssue(new Error(`'packages' must be an array of { pattern, upstreams } routing rules.`));
|
|
121
|
+
return;
|
|
105
122
|
}
|
|
106
123
|
let lastPattern;
|
|
124
|
+
let sawMatchAll = false;
|
|
107
125
|
for (const [index, rule] of packages.entries()) {
|
|
108
|
-
const
|
|
126
|
+
const pattern = collectPackageRoutingRuleIssues(onIssue, index, rule, upstreamNames);
|
|
109
127
|
// First match wins, so nothing past a match-all rule could ever
|
|
110
128
|
// apply. Requiring the match-all to be the final rule both guarantees
|
|
111
129
|
// every package a route and keeps silently dead rules out of the
|
|
112
130
|
// config. The final-rule check below also rejects an empty rule list.
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
131
|
+
// An excluded '!**' — invalid in itself — is not a match-all rule, so
|
|
132
|
+
// it never triggers the position issue, and it only satisfies the
|
|
133
|
+
// final-rule check when it is itself the final rule (where removing
|
|
134
|
+
// the '!' is all it takes; anywhere else the rule list still needs a
|
|
135
|
+
// trailing match-all).
|
|
136
|
+
if (pattern !== undefined && pattern.name === MATCH_ALL_PATTERN) {
|
|
137
|
+
if (!pattern.exclude && index !== packages.length - 1) {
|
|
138
|
+
onIssue(new Error(`packages[${index}]: rules after a '${MATCH_ALL_PATTERN}' match-all rule can never apply `
|
|
139
|
+
+ `(the first matching rule wins); move the match-all rule last.`));
|
|
140
|
+
}
|
|
141
|
+
if (!pattern.exclude || index === packages.length - 1) {
|
|
142
|
+
sawMatchAll = true;
|
|
143
|
+
}
|
|
116
144
|
}
|
|
117
145
|
lastPattern = pattern;
|
|
118
146
|
}
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
147
|
+
// Skipped when a match-all rule exists (a misplaced one already carries
|
|
148
|
+
// its own issue telling the user to move it, and asking them to add one
|
|
149
|
+
// they have would contradict it), and when the final rule's own pattern
|
|
150
|
+
// is invalid (its issue is already reported and this check would be
|
|
151
|
+
// speculative).
|
|
152
|
+
if (!sawMatchAll && (packages.length === 0 || lastPattern !== undefined)) {
|
|
153
|
+
onIssue(new Error(`'packages' must end with a match-all rule ({ pattern: '${MATCH_ALL_PATTERN}', ... }) `
|
|
154
|
+
+ `so that every package has a route.`));
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* Validates the value of `runner.registries` and returns it typed,
|
|
159
|
+
* throwing the first issue found. Invalid URLs and tokens are never
|
|
160
|
+
* echoed back — a malformed registry URL may carry an inline credential.
|
|
161
|
+
*/
|
|
162
|
+
export function validateRegistries(value) {
|
|
163
|
+
let firstIssue;
|
|
164
|
+
collectRegistriesIssues(value, issue => {
|
|
165
|
+
firstIssue ??= issue;
|
|
166
|
+
});
|
|
167
|
+
if (firstIssue !== undefined) {
|
|
168
|
+
throw firstIssue;
|
|
122
169
|
}
|
|
123
170
|
return value;
|
|
124
171
|
}
|
|
125
|
-
function
|
|
172
|
+
function collectUpstreamIssues(onIssue, name, value) {
|
|
126
173
|
if (!UPSTREAM_NAME_RE.test(name)) {
|
|
127
|
-
|
|
128
|
-
+ `and contain only letters, digits, '-' and '_'
|
|
174
|
+
onIssue(new Error(`upstream name '${name}' is invalid: names must start with a letter or digit `
|
|
175
|
+
+ `and contain only letters, digits, '-' and '_'.`));
|
|
129
176
|
}
|
|
130
177
|
if (!isPlainObject(value)) {
|
|
131
|
-
|
|
178
|
+
onIssue(new Error(`upstream '${name}' must be an object with a 'url'.`));
|
|
179
|
+
return;
|
|
132
180
|
}
|
|
133
|
-
|
|
181
|
+
collectUnknownKeyIssues(onIssue, `upstream '${name}'`, value, ['url', 'auth']);
|
|
134
182
|
const { url, auth } = value;
|
|
135
183
|
const parsedUrl = typeof url === 'string' ? parseComposableUrl(url) : undefined;
|
|
136
184
|
if (parsedUrl === undefined) {
|
|
137
|
-
|
|
185
|
+
onIssue(new Error(`upstream '${name}': 'url' must be ${COMPOSABLE_URL_REQUIREMENT}.`));
|
|
138
186
|
}
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
+ `use auth: { type: 'bearer', token: '\${VAR}' } instead
|
|
187
|
+
else if (parsedUrl.username !== '' || parsedUrl.password !== '') {
|
|
188
|
+
// An inline credential would ship in plaintext inside the uploaded code
|
|
189
|
+
// bundle — the exact outcome the ${VAR}-only rule on auth tokens exists
|
|
190
|
+
// to prevent. The URL is not echoed for the same reason.
|
|
191
|
+
onIssue(new Error(`upstream '${name}': 'url' must not contain credentials; `
|
|
192
|
+
+ `use auth: { type: 'bearer', token: '\${VAR}' } instead.`));
|
|
145
193
|
}
|
|
146
194
|
if (auth === undefined) {
|
|
147
195
|
return;
|
|
148
196
|
}
|
|
149
197
|
if (!isPlainObject(auth)) {
|
|
150
|
-
|
|
198
|
+
onIssue(new Error(`upstream '${name}': 'auth' must be an object if set.`));
|
|
199
|
+
return;
|
|
151
200
|
}
|
|
152
|
-
|
|
201
|
+
collectUnknownKeyIssues(onIssue, `upstream '${name}': 'auth'`, auth, ['type', 'token']);
|
|
153
202
|
if (auth.type !== 'bearer') {
|
|
154
|
-
|
|
203
|
+
onIssue(new Error(`upstream '${name}': 'auth.type' must be 'bearer'.`));
|
|
155
204
|
}
|
|
156
205
|
if (typeof auth.token !== 'string' || !ENV_VAR_REFERENCE_RE.test(auth.token)) {
|
|
157
|
-
|
|
206
|
+
onIssue(new Error(`upstream '${name}': 'auth.token' must be exactly one environment variable reference in \${VAR} syntax `
|
|
158
207
|
+ `(e.g. '\${NPM_TOKEN}'). The variable is resolved from the check's environment variables on the `
|
|
159
|
-
+ `Checkly runner; any literal content would bake a secret into the code bundle
|
|
208
|
+
+ `Checkly runner; any literal content would bake a secret into the code bundle.`));
|
|
160
209
|
}
|
|
161
210
|
}
|
|
162
|
-
|
|
211
|
+
/**
|
|
212
|
+
* Collects the issues of one routing rule. Returns the rule's parsed
|
|
213
|
+
* pattern (its name has any leading '!' stripped) when it is a parseable
|
|
214
|
+
* string, so the caller can run the match-all checks; `undefined` means
|
|
215
|
+
* the pattern is unknown and those checks do not apply. When
|
|
216
|
+
* `upstreamNames` is undefined (the `upstreams` block itself is invalid),
|
|
217
|
+
* the upstream-existence checks are skipped.
|
|
218
|
+
*/
|
|
219
|
+
function collectPackageRoutingRuleIssues(onIssue, index, value, upstreamNames) {
|
|
163
220
|
if (!isPlainObject(value)) {
|
|
164
|
-
|
|
221
|
+
onIssue(new Error(`packages[${index}] must be an object with 'pattern' and 'upstreams'.`));
|
|
222
|
+
return undefined;
|
|
165
223
|
}
|
|
166
|
-
|
|
224
|
+
collectUnknownKeyIssues(onIssue, `packages[${index}]`, value, ['pattern', 'upstreams']);
|
|
167
225
|
const { pattern, upstreams } = value;
|
|
226
|
+
let knownPattern;
|
|
168
227
|
if (typeof pattern !== 'string') {
|
|
169
|
-
|
|
170
|
-
}
|
|
171
|
-
let parsed;
|
|
172
|
-
try {
|
|
173
|
-
parsed = parsePackageNamePattern(pattern);
|
|
228
|
+
onIssue(new Error(`packages[${index}]: 'pattern' must be a string.`));
|
|
174
229
|
}
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
230
|
+
else {
|
|
231
|
+
try {
|
|
232
|
+
const parsed = parsePackageNamePattern(pattern);
|
|
233
|
+
if (parsed.exclude) {
|
|
234
|
+
onIssue(new Error(`packages[${index}]: exclusion patterns ('!') are not supported in routing rules; `
|
|
235
|
+
+ `each rule stands alone, so there is nothing for an exclusion to subtract from.`));
|
|
236
|
+
}
|
|
237
|
+
knownPattern = parsed;
|
|
238
|
+
}
|
|
239
|
+
catch (cause) {
|
|
240
|
+
onIssue(new Error(`packages[${index}]: ${cause.message}`, { cause }));
|
|
241
|
+
}
|
|
181
242
|
}
|
|
182
243
|
if (!Array.isArray(upstreams) || upstreams.length === 0) {
|
|
183
|
-
|
|
244
|
+
onIssue(new Error(`packages[${index}]: 'upstreams' must be a non-empty array of upstream names.`));
|
|
184
245
|
}
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
246
|
+
else {
|
|
247
|
+
for (const [entryIndex, name] of upstreams.entries()) {
|
|
248
|
+
if (typeof name !== 'string') {
|
|
249
|
+
// Unlike the existence check below, this does not depend on the
|
|
250
|
+
// 'upstreams' block, so it is never gated.
|
|
251
|
+
onIssue(new Error(`packages[${index}]: 'upstreams'[${entryIndex}] must be an upstream name.`));
|
|
252
|
+
}
|
|
253
|
+
else if (upstreamNames !== undefined && !upstreamNames.includes(name)) {
|
|
254
|
+
onIssue(new Error(`packages[${index}]: upstream '${name}' is not defined under 'upstreams' `
|
|
255
|
+
+ `(defined: ${upstreamNames.map(known => `'${known}'`).join(', ')}).`));
|
|
256
|
+
}
|
|
189
257
|
}
|
|
190
258
|
}
|
|
191
|
-
return
|
|
259
|
+
return knownPattern;
|
|
192
260
|
}
|
|
193
261
|
/**
|
|
194
262
|
* Serializes a validated configuration into the canonical contents of
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registries.js","sourceRoot":"","sources":["../../../src/services/runner/registries.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"registries.js","sourceRoot":"","sources":["../../../src/services/runner/registries.ts"],"names":[],"mappings":"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"}
|