@go-to-k/cdkd 0.290.37 → 0.290.38
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/{asg-provider-CXLgFrPg.js → asg-provider-B70ujDSS.js} +2 -2
- package/dist/{asg-provider-CXLgFrPg.js.map → asg-provider-B70ujDSS.js.map} +1 -1
- package/dist/cli.js +2 -2
- package/dist/{deploy-engine-pVC4fG22.js → deploy-engine-BdYBI1uT.js} +105 -13
- package/dist/{deploy-engine-pVC4fG22.js.map → deploy-engine-BdYBI1uT.js.map} +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/{program-CUOo1x11.js → program-Br4uc31m.js} +5 -5
- package/dist/{program-CUOo1x11.js.map → program-Br4uc31m.js.map} +1 -1
- package/dist/{version-COEQwjCP.js → version-BeHfM5ow.js} +2 -2
- package/dist/{version-COEQwjCP.js.map → version-BeHfM5ow.js.map} +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { n as isVersionOnlyInvocation, t as getCdkdVersion } from "./version-
|
|
2
|
+
import { n as isVersionOnlyInvocation, t as getCdkdVersion } from "./version-BeHfM5ow.js";
|
|
3
3
|
|
|
4
4
|
//#region src/cli/pipe-close-handler.ts
|
|
5
5
|
/**
|
|
@@ -74,7 +74,7 @@ async function main() {
|
|
|
74
74
|
console.log(getCdkdVersion());
|
|
75
75
|
return;
|
|
76
76
|
}
|
|
77
|
-
const { buildProgram } = await import("./program-
|
|
77
|
+
const { buildProgram } = await import("./program-Br4uc31m.js");
|
|
78
78
|
const program = buildProgram();
|
|
79
79
|
const args = reorderArgs(process.argv);
|
|
80
80
|
await program.parseAsync(args);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { C as displayAwsMessage, D as truncateCodePoints, E as isPasteableIdent, S as UNRENDERABLE, T as displaySafe, d as applyDefaultNameForFallback, f as explicitNamePropertyFor, g as looksLikeCdkdGeneratedName, h as getCurrentStackName, m as generateResourceNameWithFallback, n as getLogger, p as generateResourceName, r as isStdoutReservedForPayload, s as getLiveRenderer, v as withStackName, w as displayIdent, x as STACK_REF_MAX_CODE_POINTS, y as withoutGeneratedFallbackName } from "./logger-BX4pJk0T.js";
|
|
2
2
|
import { a as setAssumedRoleCredentials, i as getPreAssumeEnvCredentials, n as awsClientDefaults, o as setPreAssumeEnvCredentials, r as getAssumedRoleCredentials, t as SECOND_ROLE_PUBLISH_REFUSAL } from "./aws-client-defaults-BoIxyCir.js";
|
|
3
|
-
import { t as getCdkdVersion } from "./version-
|
|
3
|
+
import { t as getCdkdVersion } from "./version-BeHfM5ow.js";
|
|
4
4
|
import { AsyncLocalStorage } from "node:async_hooks";
|
|
5
5
|
import { createHash, randomUUID } from "node:crypto";
|
|
6
6
|
import { CreateBucketCommand, DeleteObjectCommand, DeleteObjectsCommand, GetBucketLocationCommand, GetBucketReplicationCommand, GetObjectCommand, HeadBucketCommand, HeadObjectCommand, ListObjectVersionsCommand, ListObjectsV2Command, NoSuchKey, PutBucketEncryptionCommand, PutBucketPolicyCommand, PutObjectCommand, PutPublicAccessBlockCommand, S3Client, S3ServiceException } from "@aws-sdk/client-s3";
|
|
@@ -15055,7 +15055,10 @@ function positionListByCrossStackSource(bag, source, secrets) {
|
|
|
15055
15055
|
function redactByPath(bag, source, secrets, rules, secretExpressions, bagIsSameGeneration) {
|
|
15056
15056
|
if (isDynamicReferenceString(source) && typeof bag === "string") {
|
|
15057
15057
|
if (isSingleDynamicReferenceToken(source) && (rules.trustAnyExpression || isKnownSecretExpression(source, secretExpressions))) {
|
|
15058
|
-
if (!rules.sourceIsSameGeneration && isSingleDynamicReferenceToken(bag))
|
|
15058
|
+
if (!rules.sourceIsSameGeneration && isSingleDynamicReferenceToken(bag)) {
|
|
15059
|
+
if (!spanNamesResolvableService(bag)) return redactSecretsForState(bag, secrets);
|
|
15060
|
+
return secrets.get(bag) ?? bag;
|
|
15061
|
+
}
|
|
15059
15062
|
return source;
|
|
15060
15063
|
}
|
|
15061
15064
|
return positionByEmbeddedSpan(bag, source, secrets, bagIsSameGeneration);
|
|
@@ -15176,7 +15179,8 @@ function subtreeHasDynamicReference(value) {
|
|
|
15176
15179
|
* compiling a pattern per string leaf at the persist choke point, which walks
|
|
15177
15180
|
* every record. Do NOT call `.exec` / `.test` on this constant — those DO
|
|
15178
15181
|
* advance `lastIndex`, which is exactly why the shared instance is safe only
|
|
15179
|
-
* for `.match`.
|
|
15182
|
+
* for `.match`. (ONE site does, `resolvableReferenceSpans`, and it resets
|
|
15183
|
+
* `lastIndex` to 0 in the statement after the `exec`.)
|
|
15180
15184
|
*
|
|
15181
15185
|
* Widening it changes one answer, in the SAFE direction for BOTH readers.
|
|
15182
15186
|
*
|
|
@@ -15665,6 +15669,57 @@ const SECRET_BEARING_REFERENCE_PREFIXES = [
|
|
|
15665
15669
|
"{{resolve:ssm:"
|
|
15666
15670
|
];
|
|
15667
15671
|
/**
|
|
15672
|
+
* Does this complete `{{resolve:...}}` token name a service cdkd RESOLVES?
|
|
15673
|
+
*
|
|
15674
|
+
* The value scan spares a needle match lying inside a token, so that a
|
|
15675
|
+
* plaintext coinciding with a real reference's own text is not spliced into
|
|
15676
|
+
* it (issue #1935). That protection is owed to a REFERENCE only. A token of
|
|
15677
|
+
* any other service is left in place by the resolver, so text inside it is
|
|
15678
|
+
* ordinary persisted text, and a recorded plaintext there must be redacted
|
|
15679
|
+
* (issue [#2743](https://github.com/go-to-k/cdkd/issues/2743)).
|
|
15680
|
+
*/
|
|
15681
|
+
function spanNamesResolvableService(token) {
|
|
15682
|
+
return SECRET_BEARING_REFERENCE_PREFIXES.some((prefix) => token.startsWith(prefix));
|
|
15683
|
+
}
|
|
15684
|
+
/**
|
|
15685
|
+
* The spans of `value` the value scan must not splice a needle into: every
|
|
15686
|
+
* complete token of a resolvable service.
|
|
15687
|
+
*
|
|
15688
|
+
* Two scans, unioned. The ordinary one ({@link dynamicReferenceSpans}) is
|
|
15689
|
+
* LEFTMOST, so behind an opener of an unresolvable service it reports one
|
|
15690
|
+
* outer span and never sees a REAL reference nested in it — which is exactly
|
|
15691
|
+
* the text this module writes when it redacts `{{resolve:<plaintext>}}` to
|
|
15692
|
+
* `{{resolve:{{resolve:secretsmanager:...}}}}`. Dropping that outer span
|
|
15693
|
+
* alone would leave the nested reference unprotected, and a later pass whose
|
|
15694
|
+
* map holds a needle occurring in the reference's own text (`password` is an
|
|
15695
|
+
* ordinary JSON key AND an ordinary secret value) would splice into it, again
|
|
15696
|
+
* on every pass. The second scan starts only at a resolvable-service opener,
|
|
15697
|
+
* so it finds the nested reference — and keeps it only when it is an
|
|
15698
|
+
* expression of the pass's own map (see the loop).
|
|
15699
|
+
*
|
|
15700
|
+
* On a leaf with no unresolvable-service opener the two scans report the same
|
|
15701
|
+
* spans, so every leaf issue #1935 protects is answered exactly as before.
|
|
15702
|
+
*/
|
|
15703
|
+
function resolvableReferenceSpans(value, vouchedExpressions) {
|
|
15704
|
+
const spans = dynamicReferenceSpans(value).filter((span) => spanNamesResolvableService(value.slice(span.start, span.end)));
|
|
15705
|
+
const starts = new Set(spans.map((span) => span.start));
|
|
15706
|
+
for (const prefix of SECRET_BEARING_REFERENCE_PREFIXES) for (let at = value.indexOf(prefix); at >= 0; at = value.indexOf(prefix, at + 1)) {
|
|
15707
|
+
if (starts.has(at)) continue;
|
|
15708
|
+
DYNAMIC_REFERENCE_TOKEN_SCAN.lastIndex = at;
|
|
15709
|
+
const match = DYNAMIC_REFERENCE_TOKEN_SCAN.exec(value);
|
|
15710
|
+
DYNAMIC_REFERENCE_TOKEN_SCAN.lastIndex = 0;
|
|
15711
|
+
if (match?.index !== at) continue;
|
|
15712
|
+
const end = at + match[0].length;
|
|
15713
|
+
if (!vouchedExpressions.has(value.slice(at, end))) continue;
|
|
15714
|
+
spans.push({
|
|
15715
|
+
start: at,
|
|
15716
|
+
end
|
|
15717
|
+
});
|
|
15718
|
+
starts.add(at);
|
|
15719
|
+
}
|
|
15720
|
+
return spans;
|
|
15721
|
+
}
|
|
15722
|
+
/**
|
|
15668
15723
|
* The prefixes whose SPELLING settles secret-ness, with no lookup and no
|
|
15669
15724
|
* inference — the subset of {@link SECRET_BEARING_REFERENCE_PREFIXES} that
|
|
15670
15725
|
* {@link expressionSecretIsInferred} treats as certain.
|
|
@@ -16069,7 +16124,7 @@ function deriveReadbackNeedles(bag, source, secrets, rules) {
|
|
|
16069
16124
|
*/
|
|
16070
16125
|
function refuseUncertifiedSubtree(value, sourceLiterals, mark, seen = /* @__PURE__ */ new Map()) {
|
|
16071
16126
|
if (typeof value === "string") {
|
|
16072
|
-
if (isSingleDynamicReferenceToken(value) || sourceLiterals.has(value)) return value;
|
|
16127
|
+
if (isSingleDynamicReferenceToken(value) && spanNamesResolvableService(value) || sourceLiterals.has(value)) return value;
|
|
16073
16128
|
if (value === "") return value;
|
|
16074
16129
|
return mark ? POSITION_UNCERTIFIED : "***";
|
|
16075
16130
|
}
|
|
@@ -16371,6 +16426,16 @@ function redactSecretsForState(bag, secrets, source, rules = TEMPLATE_DERIVED_RU
|
|
|
16371
16426
|
* security review, and the reason the rule is one predicate over the whole
|
|
16372
16427
|
* leaf rather than a split.
|
|
16373
16428
|
* - **disjoint from every span** -> REPLACED. The ordinary embedded secret.
|
|
16429
|
+
* - **inside a span whose service cdkd does not resolve** -> REPLACED (issue
|
|
16430
|
+
* [#2743](https://github.com/go-to-k/cdkd/issues/2743)). Such a span is not
|
|
16431
|
+
* a reference: `{{resolve:<plaintext>}}` is what an `Fn::Sub` putting a
|
|
16432
|
+
* resolved secret in the SERVICE position assembled, and sparing it
|
|
16433
|
+
* persisted the plaintext. The result, `{{resolve:{{resolve:...}}}}`, is
|
|
16434
|
+
* garbage but not plaintext, the same trade as the stray-opener residual
|
|
16435
|
+
* below; the REAL reference nested in it is protected again
|
|
16436
|
+
* ({@link resolvableReferenceSpans}). The cost: an untainted look-alike
|
|
16437
|
+
* token whose text coincides with a recorded secret is rewritten like any
|
|
16438
|
+
* other text, and a replay then sends the rewritten literal.
|
|
16374
16439
|
*
|
|
16375
16440
|
* Scanning the WHOLE leaf in ONE pass is also what preserves what needle
|
|
16376
16441
|
* PRECEDENCE there is. {@link buildNeedleRegex} sorts alternatives
|
|
@@ -16399,8 +16464,9 @@ function redactSecretsForState(bag, secrets, source, rules = TEMPLATE_DERIVED_RU
|
|
|
16399
16464
|
* PLAINTEXT behind two characters any string can contain.
|
|
16400
16465
|
* - **a later `}}` anywhere in the leaf** -> the opener and that `}}` form
|
|
16401
16466
|
* ONE span swallowing everything between them, so a needle in that region
|
|
16402
|
-
* is KEPT
|
|
16403
|
-
*
|
|
16467
|
+
* is KEPT when the opener spells a resolvable service (`{{resolve:ssm:`
|
|
16468
|
+
* ...; any other opener is the unresolvable-service row above) — the only
|
|
16469
|
+
* shape where this rule redacts LESS than the code it replaced. Narrow but real, and the reachable carrier is named rather than
|
|
16404
16470
|
* waved at: the resolver shares this grammar, so such a leaf could not have
|
|
16405
16471
|
* resolved on the deploy path, which leaves an `observedProperties`
|
|
16406
16472
|
* READBACK (arbitrary text from AWS) as the way one arrives.
|
|
@@ -16411,8 +16477,10 @@ function redactSecretsForState(bag, secrets, source, rules = TEMPLATE_DERIVED_RU
|
|
|
16411
16477
|
* contradicting this change's own "not repaired, not made worse" property.
|
|
16412
16478
|
* So the residual is documented, not fixed.
|
|
16413
16479
|
*/
|
|
16480
|
+
let vouched;
|
|
16481
|
+
const vouchedExpressions = () => vouched ??= new Set(secrets.values());
|
|
16414
16482
|
const scanLeaf = (value, needles) => {
|
|
16415
|
-
const spans = isDynamicReferenceString(value) ?
|
|
16483
|
+
const spans = isDynamicReferenceString(value) ? resolvableReferenceSpans(value, vouchedExpressions()) : [];
|
|
16416
16484
|
return value.replace(needles, (match, offset) => {
|
|
16417
16485
|
const end = offset + match.length;
|
|
16418
16486
|
if (spans.some((span) => span.start <= offset && end <= span.end && (span.start !== offset || span.end !== end))) return match;
|
|
@@ -16423,7 +16491,7 @@ function redactSecretsForState(bag, secrets, source, rules = TEMPLATE_DERIVED_RU
|
|
|
16423
16491
|
if (typeof value === "string") {
|
|
16424
16492
|
const whole = wholeValueExpr(value);
|
|
16425
16493
|
if (whole !== void 0) return whole;
|
|
16426
|
-
if (isSingleDynamicReferenceToken(value)) return value;
|
|
16494
|
+
if (isSingleDynamicReferenceToken(value) && spanNamesResolvableService(value)) return value;
|
|
16427
16495
|
if (!regex) return value;
|
|
16428
16496
|
regex.lastIndex = 0;
|
|
16429
16497
|
if (!regex.test(value)) return value;
|
|
@@ -27774,7 +27842,7 @@ var IntrinsicFunctionResolver = class IntrinsicFunctionResolver {
|
|
|
27774
27842
|
/** Recursively resolve a value. */
|
|
27775
27843
|
async resolveValue(value, context) {
|
|
27776
27844
|
if (typeof value !== "object" || value === null) {
|
|
27777
|
-
if (typeof value === "string" && value.includes("{{resolve:")) return await this.
|
|
27845
|
+
if (typeof value === "string" && value.includes("{{resolve:")) return await this.resolveTemplateLeafReferences(value, context);
|
|
27778
27846
|
return value;
|
|
27779
27847
|
}
|
|
27780
27848
|
if (Array.isArray(value)) return (await allSettledKeepingFirstRejection(value.map((v) => this.resolveValue(v, context)), (pending) => this.warnAbandonedParts(pending))).filter((v) => v !== AWS_NO_VALUE);
|
|
@@ -31082,7 +31150,30 @@ var IntrinsicFunctionResolver = class IntrinsicFunctionResolver {
|
|
|
31082
31150
|
displayLeaf(value, context) {
|
|
31083
31151
|
return this.displayMasked(this.logTextOfLeaf(value, context), context);
|
|
31084
31152
|
}
|
|
31153
|
+
/**
|
|
31154
|
+
* Resolve the dynamic references of a PERSISTED string leaf: text read back
|
|
31155
|
+
* out of a state record, a rollback journal or a producer stack's outputs.
|
|
31156
|
+
* That is what every caller of this method hands it (`cdkd drift`, the
|
|
31157
|
+
* rollback replay, `cdkd scrub`'s per-token delegation, the cross-stack
|
|
31158
|
+
* re-resolution); a TEMPLATE leaf goes through {@link resolve}, which takes
|
|
31159
|
+
* {@link resolveTemplateLeafReferences}.
|
|
31160
|
+
*
|
|
31161
|
+
* The distinction is load-bearing for ONE arm (issue #2743). A token of a
|
|
31162
|
+
* service cdkd does not resolve is REFUSED on the template route when it
|
|
31163
|
+
* holds a secret, because leaving it would send that secret to AWS for the
|
|
31164
|
+
* first time. Persisted text is different on both counts: AWS already holds
|
|
31165
|
+
* it, so refusing buys no confidentiality, and the refusal is DETERMINISTIC
|
|
31166
|
+
* there -- a journal `previousState` holding `{{resolve:<plaintext>}}` beside
|
|
31167
|
+
* the reference that resolves to it would fail its rollback op on every
|
|
31168
|
+
* retry, where replaying the literal is a correct no-op. So this entry point
|
|
31169
|
+
* keeps the warn-and-leave for every such token, and the value scan redacts
|
|
31170
|
+
* whatever is persisted afterwards.
|
|
31171
|
+
*/
|
|
31085
31172
|
async resolveDynamicReferences(value, context) {
|
|
31173
|
+
return (await this.resolveDynamicReferencesWithLogTwin(value, value, context, void 0, true)).result;
|
|
31174
|
+
}
|
|
31175
|
+
/** A TEMPLATE string leaf: the refusing route (see {@link resolveDynamicReferences}). */
|
|
31176
|
+
async resolveTemplateLeafReferences(value, context) {
|
|
31086
31177
|
return (await this.resolveDynamicReferencesWithLogTwin(value, value, context)).result;
|
|
31087
31178
|
}
|
|
31088
31179
|
/**
|
|
@@ -31105,7 +31196,7 @@ var IntrinsicFunctionResolver = class IntrinsicFunctionResolver {
|
|
|
31105
31196
|
* NEEDLE match that straddles a masked span, which is why the log lines go
|
|
31106
31197
|
* through `logTwinText` rather than masking the twin alone.
|
|
31107
31198
|
*/
|
|
31108
|
-
async resolveDynamicReferencesWithLogTwin(value, logTwin, context, inherited) {
|
|
31199
|
+
async resolveDynamicReferencesWithLogTwin(value, logTwin, context, inherited, persistedText = false) {
|
|
31109
31200
|
const pattern = /\{\{resolve:([^}]+)\}\}/g;
|
|
31110
31201
|
let result = value;
|
|
31111
31202
|
let twin = logTwin;
|
|
@@ -31136,7 +31227,7 @@ var IntrinsicFunctionResolver = class IntrinsicFunctionResolver {
|
|
|
31136
31227
|
const foreign = await this.resolverForProducerRegion(regionVerdict.region, context, nameLogText(regionVerdict.region)).resolveDynamicReferencesWithLogTwin(fullMatch, fullMatch, withoutProducerRegions(context), {
|
|
31137
31228
|
tokenLogText,
|
|
31138
31229
|
nameLogText
|
|
31139
|
-
});
|
|
31230
|
+
}, persistedText);
|
|
31140
31231
|
result = result.replace(fullMatch, () => foreign.result);
|
|
31141
31232
|
twin = twin.replace(fullMatch, () => foreign.twin);
|
|
31142
31233
|
const [delegated] = foreign.substitutions;
|
|
@@ -31200,6 +31291,7 @@ var IntrinsicFunctionResolver = class IntrinsicFunctionResolver {
|
|
|
31200
31291
|
isSecret = true;
|
|
31201
31292
|
resolved = param.value;
|
|
31202
31293
|
} else {
|
|
31294
|
+
if (!persistedText && (tokenLogText !== fullMatch || this.maskNeedlesForLog(fullMatch, context) !== fullMatch)) throw markNonRetryable(new IntrinsicResolutionRefusalError(`Refusing to resolve ${this.displayMasked(tokenLogText, context)}: its service is not one cdkd resolves (secretsmanager, ssm, ssm-secure), and the reference was assembled from a secret value, so leaving it as written would send that value to AWS and record it in state in the clear.`));
|
|
31203
31295
|
this.logger.warn(this.displayMasked(`Unsupported dynamic reference service: ${this.displayMasked(nameLogText(String(service)), context)}`, context));
|
|
31204
31296
|
complete = false;
|
|
31205
31297
|
continue;
|
|
@@ -33152,7 +33244,7 @@ var CloudControlProvider = class {
|
|
|
33152
33244
|
const indeterminateGuard = await this.confirmDeleteTargetIdentity(logicalId, resourceType, physicalId, context);
|
|
33153
33245
|
if (context?.removeProtection === true && resourceType === "AWS::AutoScaling::AutoScalingGroup") {
|
|
33154
33246
|
this.logger.debug(`Delegating protected AutoScalingGroup ${logicalId} delete to the SDK ASGProvider (Cloud Control cannot force-delete a protected ASG)`);
|
|
33155
|
-
const { ASGProvider } = await import("./asg-provider-
|
|
33247
|
+
const { ASGProvider } = await import("./asg-provider-B70ujDSS.js").then((n) => n.n);
|
|
33156
33248
|
const asgProvider = new ASGProvider();
|
|
33157
33249
|
return withIndeterminateGuard(await asgProvider.delete(logicalId, physicalId, resourceType, _properties, context), indeterminateGuard);
|
|
33158
33250
|
}
|
|
@@ -46861,4 +46953,4 @@ var DeployEngine = class DeployEngine {
|
|
|
46861
46953
|
|
|
46862
46954
|
//#endregion
|
|
46863
46955
|
export { yellow as $, NestedStackChildDirectDestroyError as $i, identityKeyFor as $n, getDockerCmd as $r, requireConfigObject as $t, createPreDeleteFinalSnapshot as A, PARTITION_TABLE as Ai, refuseMalformedNestedChildOutputs as An, stringifyValue as Ar, carriesDynamicReference as At, isStatefulRecreateTargetSync as B, setAwsClients as Bi, findSilentDropProperties as Bn, getBootstrapMarkerKey as Br, isSettledInstanceState as Bt, namesAnyDeclaredParameter as C, CFN_TEMPLATE_URL_LIMIT as Ci, malformedOutputsWarning as Cn, importableOutputKeys as Cr, slowCcOperationTimeoutMs as Ct, PRE_DELETE_SNAPSHOT_TYPES as D, CUSTOM_RESOURCE_RESPONSE_OBJECT_DESCRIPTION as Di, malformedStateRefusalMessage as Dn, orphansCarriedFrom as Dr, disableInstanceApiTermination as Dt, ATOMIC_FINAL_SNAPSHOT_TYPES as E, uploadCfnTemplate as Ei, malformedResourcesWarning as En, orphansAfterRollback as Er, deleteSkipReason as Et, extractDeploymentEventError as F, clearBucketRegionCache as Fi, refuseMalformedState as Fn, rewriteTemplateAssetReferences as Fr, isImpossibleEmptyStoredAttribute as Ft, toCfnInteger as G, DependencyError as Gi, STATE_SOURCED_BASELINE_RULES as Gn, validateContainerRepoName as Gr, coerceCfnBoolean as Gt, WARM_THROUGHPUT_MEMBERS as H, CdkdError as Hi, withRetry as Hn, parseBootstrapMarker as Hr, normalizeAwsTagsToCfn as Ht, makeSiblingClaimReader as I, resolveBucketRegion as Ii, repairMalformedOutputsForReadOnly as In, AssetModeResolver as Ir, isNamelessDynamicReferenceError as It, bold as J, IntrinsicResolutionRefusalError as Ji, TEMPLATE_SOURCED_RULES as Jn, describeDockerCapturedOutput as Jr, configIntegerRefusal as Jt, toFiniteNumber as K, DeployCancelledError as Ki, STATE_SOURCED_CROSS_GENERATION_RULES as Kn, buildDenyExternalAccessPolicy as Kr, coerceCfnInteger as Kt, planOrphanAdoption as L, AwsClients as Li, repairMalformedResourcePropertiesForReadOnly as Ln, BOOTSTRAP_MARKER_PREFIX as Lr, isUnboundTemplateParameter as Lt, refusesFinalSnapshot as M, derivePartitionAndUrlSuffix as Mi, refuseMalformedOutputsForDestroy as Mn, buildAssetRedirectMap as Mr, cfnRefValueFromPhysicalId as Mt, unsupportedFinalSnapshotError as N, AssemblyReader as Ni, refuseMalformedResourcePropertiesForOrphan as Nn, createAssetRedirectResolver as Nr, coerceParameterTypedValue as Nt, buildFinalSnapshotIdentifier as O, decodeListingKey as Oi, producerRecordKey as On, shouldRetainResource as Or, isTerminationProtectionPropagationError as Ot, makeCanonicalizePropertiesFn as P, processStackMessages as Pi, refuseMalformedResourcesForDestroy as Pn, loadPublishableAssetManifest as Pr, getAccountInfo as Pt, red as Q, MalformedProducerRecordRefusalError as Qi, errorCauseChain as Qn, formatDockerLoginError as Qr, requireConfigArray as Qt, MULTI_REGION_RECREATE_BLOCKED_TYPES as R, getAwsClients as Ri, repairMalformedResourcesForReadOnly as Rn, assertAssetBucketRegion as Rr, parameterTypeMayLoseSecretIdentity as Rt, computeParameterTaint as S, CFN_TEMPLATE_BODY_LIMIT as Si, malformedOutputsRefusalMessage as Sn, hasUnverifiableParameterRefusal as Sr, isWaitAbandonedError as St, resourcesNamingDeclaredParameter as T, findLargeInlineResources as Ti, malformedResourcePropertiesWarning as Tn, isReadableBag as Tr, deleteIndeterminateGuards as Tt, coerceWarmThroughput as U, ConfigError as Ui, DagBuilder as Un, readBootstrapMarkerBody as Ur, resolveExplicitPhysicalId as Ut, renderStatefulReason as V, AssetError as Vi, describeTypeWithThrottleRetry as Vn, isCrossRegionRedirect as Vr, WAFv2WebACLProvider as Vt, isWarmThroughputDecrease as W, CrossAccountSecretRefusalError as Wi, TemplateParser as Wn, validateAssetBucketName as Wr, assertRegionMatch as Wt, gray as X, LocalStartServiceError as Xi, createSecretMasker as Xn, describeDockerFailure as Xr, readConfigString as Xt, cyan as Y, LocalInvokeBuildError as Yi, carriesSecretMask as Yn, describeDockerExecFailure as Yr, configStringRefusal as Yt, green as Z, LockError as Zi, dynamicReferenceTokens as Zn, dockerSpawnEnvWithSensitive as Zr, replayWarn as Zt, bagHoldsSecretExpression as _, markRedactedCause as _a, resolveStateBucketWithDefaultAndSource as _i, hasReadableOutputs as _n, CUSTOM_RESOURCE_RESPONSE_PREFIX as _r, endCommandInterruptScope as _t, DeploymentEventsStore as a, StackTerminationProtectionError as aa, stripControlChars as ai, s3BucketDomainName as an, recoverMaskedOutput as ar, secretBearingStateKeyWarning as at, mergeNoChangeOutputs as b, safeStringify$1 as ba, warnDeprecatedNoPrefixCliFlag as bi, malformedExportSourceWarning as bn, hasReadableExportSet as br, startInterruptWatch as bt, replayFailedOperations as c, formatError as ca, Synthesizer as ci, s3BucketWebsiteUrl as cn, LockManager as cr, IAMRoleProvider as ct, updatePartialMessage as d, withErrorHandling as da, getLegacyStateBucketName as di, applyCallerIdentityCredentials as dn, UNREPRODUCIBLE_LOCK_CLAUSE as dr, ProviderRegistry as dt, PartialFailureError as ea, partitionSensitiveEnv as ei, requireConfigString as en, isSingleDynamicReferenceToken as er, collectDeclaredOutputNames as et, updatePartialReason as f, isMarkedNonRetryable as fa, resolveApp as fi, callerEnvCredentials as fn, buildForceUnlockCommand as fr, wouldReturnToSdkProvider as ft, computeImplicitDeleteEdges as g, markNonRetryable as ga, resolveStateBucketWithDefault as gi, STATE_RESOURCES_MALFORMED as gn, shellQuote as gr, beginCommandInterruptScope as gt, IMPLICIT_DELETE_DEPENDENCIES as h, isTransientServerError as ha, resolveSkipPrefix as hi, INTRINSIC_KEYS as hn, formatLockExpiry as hr, maskerOrIdentity as ht, DeploymentEventsReader as i, StackHasActiveImportsError as ia, escapeRegExp$1 as ii, s3BucketArn as in, recordMaskOnlyValue as ir, secretBearing as it, isFinalSnapshotError as j, canonicalizeRegion as ji, refuseMalformedOutputs as jn, WorkGraph as jr, carriesFetchableDynamicReference as jt, ccRoutedFinalSnapshotError as k, expectedOwnerParam as ki, refuseDivergentRecordRegionForDestroy as kn, AssetPublisher as kr, IntrinsicFunctionResolver as kt, replayRollback as l, isCdkdError as la, synthesisStatusMessage as li, applyRoleArnIfSet as ln, S3StateBackend as lr, collectInlinePolicyNamesManagedBySiblings as lt, maskingRetryLogger as m, isThrottlingError as ma, resolveCaptureObservedState as mi, DiffCalculator as mn, forceQuitRecoveryClause as mr, maskDeep as mt, DEFAULT_RESOURCE_WARN_AFTER_MS as n, ResourceTimeoutError as na, runDockerForeground as ni, producerRegionsFromState as nn, maskSecretsInError as nr, exportAliasCollisionScrubWarning as nt, planFailedOps as o, StateError as oa, AssetManifestLoader as oi, s3BucketDualStackDomainName as on, redactSecretsForState as or, secretSafeKeyDisplay as ot, withResourceDeadline as p, isRetryableTransientError as pa, resolveAutoAssetStorage as pi, envCredentialsAreAssumedRole as pn, buildLockContentionMessage as pr, createMaskedRetryLogger as pt, formatResourceLine as q, DynamicReferenceRegionAmbiguousError as qi, STATE_SOURCED_READBACK_RULES as qn, buildDockerImage as qr, configBooleanRefusal as qt, DeployEngine as r, ResourceUpdateNotSupportedError as ra, runDockerStreaming as ri, withSharedDrainBudget as rn, maskSecretsInText as rr, isExportAliasCollision as rt, planRollback as s, SynthesisError as sa, getDockerImageBySourceHash as si, s3BucketRegionalDomainName as sn, scrubResourceRecord as sr, getCurrentResourceSecrets as st, DEFAULT_RESOURCE_TIMEOUT_MS as t, ProvisioningError as ta, redactDockerArgvValues as ti, classifyReplaySecretRegion as tn, markSameGenerationBag as tr, collectPublishedOutputNames as tt, resolveReplacementOldType as u, normalizeAwsError as ua, getDefaultStateBucketName as ui, AWS_CREDENTIAL_ENV_KEYS as un, rebuildClientForBucketRegion as ur, clearOnUpdateRemoval as ut, isSecretBearingReferenceString as v, retryClassificationText as va, resolveUseCdkBootstrapAssets as vi, hasReadableResources as vn, DEFAULT_STATE_PREFIX as vr, interruptWatchListenerCount as vt, reachableDivergentParameters as w, MIGRATE_TMP_PREFIX as wi, malformedRenderedContainersWarning as wn, importableOutputs as wr, UNSPECIFIED_SKIP_REASON as wt, bindingSkippedOutputs as x, __exportAll as xa, ssmResolvedValueType as xi, malformedLocalOutputsWarning as xn, hasReasonlessBaselineRefusal as xr, CloudControlProvider as xt, keptWholeReasonText as y, describeAwsFailure as ya, stateBucketExistenceConfirmed as yi, malformedExportNamesWarning as yn, exportNamesCarriedFrom as yr, isInterruptedWaitError as yt, isStatefulRecreateTargetForReplace as z, resetAwsClients as zi, findActionableSilentDrops as zn, ensureAssetStorage as zr, refStateLookupFromResource as zt };
|
|
46864
|
-
//# sourceMappingURL=deploy-engine-
|
|
46956
|
+
//# sourceMappingURL=deploy-engine-BdYBI1uT.js.map
|