@go-to-k/cdkd 0.296.7 → 0.296.9
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-BU0YONBp.js → asg-provider-B0IrI6EW.js} +3 -3
- package/dist/{asg-provider-BU0YONBp.js.map → asg-provider-B0IrI6EW.js.map} +1 -1
- package/dist/cli.js +2 -2
- package/dist/{deploy-engine-wyaJUA8V.js → deploy-engine-B-oaHd2t.js} +142 -96
- package/dist/deploy-engine-B-oaHd2t.js.map +1 -0
- package/dist/{iam-policy-targets-td1X_kKN.js → iam-policy-targets-BREzwsG6.js} +9 -8
- package/dist/iam-policy-targets-BREzwsG6.js.map +1 -0
- package/dist/{iam-role-provider-obY72uH2.js → iam-role-provider-DsJM0NT3.js} +3 -3
- package/dist/{iam-role-provider-obY72uH2.js.map → iam-role-provider-DsJM0NT3.js.map} +1 -1
- package/dist/index.d.ts +11 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/{neptune-provider-C3f-vDOh.js → neptune-provider-DGaKBQxm.js} +3 -3
- package/dist/{neptune-provider-C3f-vDOh.js.map → neptune-provider-DGaKBQxm.js.map} +1 -1
- package/dist/{program-DEnDp4o0.js → program-DTXVCX29.js} +226 -121
- package/dist/program-DTXVCX29.js.map +1 -0
- package/dist/{provider-classes-CsF7Ia5F.js → provider-classes-y-yYsSvB.js} +137 -23
- package/dist/provider-classes-y-yYsSvB.js.map +1 -0
- package/dist/{rds-provider-Cf5P2so_.js → rds-provider-B0YTjZKU.js} +3 -3
- package/dist/{rds-provider-Cf5P2so_.js.map → rds-provider-B0YTjZKU.js.map} +1 -1
- package/dist/{version-LalLOhpQ.js → version-Dqnp1Xj8.js} +2 -2
- package/dist/{version-LalLOhpQ.js.map → version-Dqnp1Xj8.js.map} +1 -1
- package/package.json +1 -1
- package/dist/deploy-engine-wyaJUA8V.js.map +0 -1
- package/dist/iam-policy-targets-td1X_kKN.js.map +0 -1
- package/dist/program-DEnDp4o0.js.map +0 -1
- package/dist/provider-classes-CsF7Ia5F.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { r as getAwsClients, s as __exportAll } from "./aws-clients-CnmtbrxD.js";
|
|
2
2
|
import { A as displayIdent, C as withoutGeneratedFallbackName, D as UNRENDERABLE, E as STACK_REF_MAX_CODE_POINTS, F as plainIdentOr, I as safeMsg, M as displayStackName, N as isPasteableIdent, R as truncateCodePoints, S as withStackName, T as SECRET_REF_MAX_CODE_POINTS, _ as generateResourceNameWithFallback, b as looksLikeCdkdGeneratedName, c as installLogLineMaskerSource, g as generateResourceName, h as explicitNamePropertyFor, j as displaySafe, k as displayAwsMessage, l as getLiveRenderer, n as getLogger, p as applyDefaultNameForFallback, r as isStdoutReservedForPayload, s as currentLogLineMasker, v as getCurrentSkipPrefix, x as withSkipPrefix, y as getCurrentStackName } from "./logger-DAaB7GFO.js";
|
|
3
|
-
import { $n as markRedactedCause, $t as LockError, A as isTerminalDeleteFailure, At as CUSTOM_RESOURCE_RESPONSE_PREFIX, Bn as isAmbiguousCcHandlerErrorCode, Bt as clientDefaultsFor, C as refusalTypeShown, Cn as physicalIdShownBesideCommand, Ct as buildForceUnlockCommand, D as ProtectionFlipRegistry, Dn as shellQuote, Dt as formatLockOperation, En as shellBoundedDisplay, Et as formatLockExpiry, Fn as isRecreateRetryableError, Ft as producerRecordKey, Gn as retryClassificationText, H as pasteableAwsCommand, Hn as isIamPropagationError, Ht as AccountIdUnavailableError, In as isReplayedNameCollisionFrom, J as isInterruptedWaitError, Jn as safeStringify$1, Kn as describeAwsFailure, Kt as CrossAccountSecretRefusalError, Lt as withPasteableAwsProfile, M as observeThenDisableProtection, Mn as hasReplayMayCollide, Mt as injectiveKey, N as protectionFlipKey, Nn as isNameCollisionErrorFrom, O as compensateProtectionFlip, On as withheldTargetClause, Ot as formatLockOwner, Pn as isNameCooldownError, Q as canonicalizeRoute53QueryName, Qn as markNonRetryable, R as DELETION_PROTECTION_DOC_POINTER, Rn as markReplayMayCollide, Rt as ambientClientDefaults, S as quotedRemedyLogicalId, Sn as pasteableCommand, St as UNREPRODUCIBLE_LOCK_CLAUSE, T as resolveExplicitPhysicalId, Tn as quotedOrDescribed, U as protectedReplacementAdvice, Un as isRetryableTransientError, Ut as AssetError, Vn as isAmbiguousOutcomeError, Vt as credentialFingerprint, Wn as isTransientServerError, Wt as CdkdError, X as ElapsedBudgetRegistry, Xn as isMarkedNonRetryable, Xt as IntrinsicResolutionRefusalError, Y as startInterruptWatch, Yt as DynamicReferenceRegionAmbiguousError, Z as monotonicNowMs, Zn as isThrottlingError, _n as SHELL_ACTIVE_WHY, _t as hasCreatedBeforeFailure, an as ResourceTimeoutError, at as segmentAfterAnchor, b as isQuotableImportValue, bt as markAuxiliaryFailure, ct as createMaskedRetryLogger, d as prepareRemovalForUpdate, dt as maskerOrIdentity, en as MacroExpansionError, er as wrapMaskedAwsError, et as compositeIdSeparatorRefusal, f as removalWarning, ft as withDerivedNameMasks, g as assertRegionMatch, gn as SHELL_ACTIVE, gt as createdBeforeFailure, h as RESOURCE_NOT_FOUND, i as holdsSecretDerivedEntry, in as ProvisioningError, it as resourceTypeShown, jn as isUpdateUnsupportedError, jt as DEFAULT_STATE_PREFIX, k as deleteWithProtectionCompensation, kt as sanitizeRecoveryValue, l as withUnchangedSecretPrincipalLists, ln as StateError, lt as isSecretDerivedValue, m as withoutInjectedRemovals, mt as carryCreatedBeforeFailure, nt as logicalIdShown, on as ResourceUpdateNotSupportedError, ot as stateOrphanRecordRemedy, pn as normalizeAwsError, pt as RETRY_AUXILIARY_OWNER, qt as DependencyError, st as createMaskedLogSinks, tn as MalformedProducerRecordRefusalError, un as SynthesisError, ut as maskDeep, vn as UNSHOWABLE_VALUE, vt as isAuxiliaryFailure, wn as plainOrDescribed, x as normalizeAwsTagsToCfn, xn as isInertUnquoted, xt as markCreatedBeforeFailure, yn as commandHole, yt as isAuxiliaryMarkOf, zn as formatRetryClassificationSignals, zt as ambientCredentialConfig } from "./iam-policy-targets-
|
|
3
|
+
import { $n as markRedactedCause, $t as LockError, A as isTerminalDeleteFailure, At as CUSTOM_RESOURCE_RESPONSE_PREFIX, Bn as isAmbiguousCcHandlerErrorCode, Bt as clientDefaultsFor, C as refusalTypeShown, Cn as physicalIdShownBesideCommand, Ct as buildForceUnlockCommand, D as ProtectionFlipRegistry, Dn as shellQuote, Dt as formatLockOperation, En as shellBoundedDisplay, Et as formatLockExpiry, Fn as isRecreateRetryableError, Ft as producerRecordKey, Gn as retryClassificationText, H as pasteableAwsCommand, Hn as isIamPropagationError, Ht as AccountIdUnavailableError, In as isReplayedNameCollisionFrom, J as isInterruptedWaitError, Jn as safeStringify$1, Kn as describeAwsFailure, Kt as CrossAccountSecretRefusalError, Lt as withPasteableAwsProfile, M as observeThenDisableProtection, Mn as hasReplayMayCollide, Mt as injectiveKey, N as protectionFlipKey, Nn as isNameCollisionErrorFrom, O as compensateProtectionFlip, On as withheldTargetClause, Ot as formatLockOwner, Pn as isNameCooldownError, Q as canonicalizeRoute53QueryName, Qn as markNonRetryable, R as DELETION_PROTECTION_DOC_POINTER, Rn as markReplayMayCollide, Rt as ambientClientDefaults, S as quotedRemedyLogicalId, Sn as pasteableCommand, St as UNREPRODUCIBLE_LOCK_CLAUSE, T as resolveExplicitPhysicalId, Tn as quotedOrDescribed, U as protectedReplacementAdvice, Un as isRetryableTransientError, Ut as AssetError, Vn as isAmbiguousOutcomeError, Vt as credentialFingerprint, Wn as isTransientServerError, Wt as CdkdError, X as ElapsedBudgetRegistry, Xn as isMarkedNonRetryable, Xt as IntrinsicResolutionRefusalError, Y as startInterruptWatch, Yt as DynamicReferenceRegionAmbiguousError, Z as monotonicNowMs, Zn as isThrottlingError, _n as SHELL_ACTIVE_WHY, _t as hasCreatedBeforeFailure, an as ResourceTimeoutError, at as segmentAfterAnchor, b as isQuotableImportValue, bt as markAuxiliaryFailure, ct as createMaskedRetryLogger, d as prepareRemovalForUpdate, dt as maskerOrIdentity, en as MacroExpansionError, er as wrapMaskedAwsError, et as compositeIdSeparatorRefusal, f as removalWarning, ft as withDerivedNameMasks, g as assertRegionMatch, gn as SHELL_ACTIVE, gt as createdBeforeFailure, h as RESOURCE_NOT_FOUND, i as holdsSecretDerivedEntry, in as ProvisioningError, it as resourceTypeShown, jn as isUpdateUnsupportedError, jt as DEFAULT_STATE_PREFIX, k as deleteWithProtectionCompensation, kt as sanitizeRecoveryValue, l as withUnchangedSecretPrincipalLists, ln as StateError, lt as isSecretDerivedValue, m as withoutInjectedRemovals, mt as carryCreatedBeforeFailure, nt as logicalIdShown, on as ResourceUpdateNotSupportedError, ot as stateOrphanRecordRemedy, pn as normalizeAwsError, pt as RETRY_AUXILIARY_OWNER, qt as DependencyError, st as createMaskedLogSinks, tn as MalformedProducerRecordRefusalError, un as SynthesisError, ut as maskDeep, vn as UNSHOWABLE_VALUE, vt as isAuxiliaryFailure, wn as plainOrDescribed, x as normalizeAwsTagsToCfn, xn as isInertUnquoted, xt as markCreatedBeforeFailure, yn as commandHole, yt as isAuxiliaryMarkOf, zn as formatRetryClassificationSignals, zt as ambientCredentialConfig } from "./iam-policy-targets-BREzwsG6.js";
|
|
4
4
|
import { a as setAssumedRoleCredentials, i as getPreAssumeEnvCredentials, n as awsClientDefaults, o as setPreAssumeEnvCredentials, r as getAssumedRoleCredentials, s as ambientRegion, t as SECOND_ROLE_PUBLISH_REFUSAL } from "./aws-client-defaults-D0q0z4dG.js";
|
|
5
|
-
import { t as getCdkdVersion } from "./version-
|
|
5
|
+
import { t as getCdkdVersion } from "./version-Dqnp1Xj8.js";
|
|
6
6
|
import { createHash, randomUUID } from "node:crypto";
|
|
7
7
|
import { AsyncLocalStorage } from "node:async_hooks";
|
|
8
8
|
import { CreateBucketCommand, DeleteObjectCommand, DeleteObjectsCommand, GetBucketLocationCommand, GetBucketReplicationCommand, GetObjectCommand, HeadBucketCommand, HeadObjectCommand, ListObjectVersionsCommand, ListObjectsV2Command, NoSuchKey, PutBucketEncryptionCommand, PutBucketPolicyCommand, PutObjectCommand, PutPublicAccessBlockCommand, S3Client, S3ServiceException } from "@aws-sdk/client-s3";
|
|
@@ -12445,7 +12445,7 @@ const PROPERTY_COVERAGE_BY_TYPE = /* @__PURE__ */ new Map([
|
|
|
12445
12445
|
]),
|
|
12446
12446
|
silentDrop: /* @__PURE__ */ new Map(),
|
|
12447
12447
|
createOnlyDrops: /* @__PURE__ */ new Set(),
|
|
12448
|
-
readOnly: /* @__PURE__ */ new Set(["
|
|
12448
|
+
readOnly: /* @__PURE__ */ new Set(["AnomalyDetectorId"]),
|
|
12449
12449
|
ccRouteUnavailable: true
|
|
12450
12450
|
}],
|
|
12451
12451
|
["AWS::CodeBuild::Project", {
|
|
@@ -15237,22 +15237,27 @@ function accountArgs(recovery) {
|
|
|
15237
15237
|
flag: "--state-prefix",
|
|
15238
15238
|
value: prefix,
|
|
15239
15239
|
hole: "prefix",
|
|
15240
|
-
opts:
|
|
15240
|
+
opts: prefixGate(prefix)
|
|
15241
15241
|
});
|
|
15242
15242
|
return args;
|
|
15243
15243
|
}
|
|
15244
|
+
function prefixGate(prefix) {
|
|
15245
|
+
return prefix.split("/").every((seg) => isPasteableIdent(seg)) ? {} : { plainIdent: true };
|
|
15246
|
+
}
|
|
15244
15247
|
const ACCOUNT_FLAG_BY_HOLE = {
|
|
15245
15248
|
profile: "--profile",
|
|
15246
15249
|
bucket: "--state-bucket",
|
|
15247
15250
|
prefix: "--state-prefix"
|
|
15248
15251
|
};
|
|
15249
|
-
function withheldAccountClause(
|
|
15250
|
-
const
|
|
15252
|
+
function withheldAccountClause(recovery, where) {
|
|
15253
|
+
const slashPrefix = recovery?.statePrefix?.includes("/") === true;
|
|
15254
|
+
const parts = withheldAccountValues(recovery).filter((w) => ACCOUNT_FLAG_BY_HOLE[w.hole] !== void 0).map((w) => `the '${ACCOUNT_FLAG_BY_HOLE[w.hole]}' value this run was given ${w.hole === "prefix" && w.reason === "not-plain" && slashPrefix ? PREFIX_NOT_PLAIN_WHY : accountReason(w.reason)}`);
|
|
15251
15255
|
if (parts.length === 0) return "";
|
|
15252
15256
|
const sentence = parts.join(", and ");
|
|
15253
15257
|
const holes = parts.length === 1 ? "a quoted hole in its place" : "quoted holes in their place";
|
|
15254
15258
|
return `${sentence.charAt(0).toUpperCase()}${sentence.slice(1)}, so ${where} ${holes}: replace each such hole whole, quotes included, with the shell-quoted value you passed this run. `;
|
|
15255
15259
|
}
|
|
15260
|
+
const PREFIX_NOT_PLAIN_WHY = "has a '/'-separated part that is not a plain identifier (a letter or digit, then letters, digits, '~', '_', '.' or '-'), the only shape printed in a command beside a labelled line";
|
|
15256
15261
|
function accountReason(reason) {
|
|
15257
15262
|
switch (reason) {
|
|
15258
15263
|
case "altered": return "does not render exactly";
|
|
@@ -15283,7 +15288,7 @@ function confirmKeyListing(recovery) {
|
|
|
15283
15288
|
return accountArgs(recovery).length === 0 ? `'cdkd state list --long'` : `'cdkd state list --long' run with the same account flags as the command lines below`;
|
|
15284
15289
|
}
|
|
15285
15290
|
function destroyAccountClause(recovery) {
|
|
15286
|
-
const clause = withheldAccountClause(
|
|
15291
|
+
const clause = withheldAccountClause(recovery, "the command lines below print");
|
|
15287
15292
|
return clause === "" ? "" : ` ${clause.trimEnd()}`;
|
|
15288
15293
|
}
|
|
15289
15294
|
function refuseMalformedResourcesForDestroy(state, stackName, region, recovery) {
|
|
@@ -15298,8 +15303,7 @@ function divergentRecordRegionRefusalMessage(stackName, keyRegion, divergentBody
|
|
|
15298
15303
|
const kind = describeRegionValueKind(divergentBodyRegion);
|
|
15299
15304
|
const opening = exact ? `cdkd will not destroy stack ${shellQuote(safeIdentifier(stackName, cap))} (${shellQuote(safeIdentifier(keyRegion, cap))}): the state record read from that region's key carries a 'region' of its own (${kind}) that is not the key's, and ${lists}` : `cdkd will not destroy the state record this command loaded: it carries a 'region' of its own (${kind}) that is not the region of the key it was read from, and ${lists}`;
|
|
15300
15305
|
const listing = withheldListingPointer(recovery);
|
|
15301
|
-
const
|
|
15302
|
-
const remedy = exact ? "Re-run with --verbose to see what the record's region field holds, then either destroy against the region the resources are really in, or repair that field to match the key it is stored under and re-run. " + withheldAccountClause(withheldAccounts, "the command at the end of this message prints") + "To drop the record and leave the live resources standing, spelled out rather than pasteable because that command DELETES a record: " + dropRecordTemplate(recovery) : "This record's stack name or region does NOT render exactly — what any surrounding output shows is a sanitized form, and another record may render identically — so this message names no target and offers no command against one. List the records with " + (listing.line === void 0 ? `${WITHHELD_LISTING_POINTER}. Inspect it with: ${inspectCommand(void 0, void 0)}` : `${listing.pointer}.` + destroyAccountClause(recovery) + `\n${listing.line}\nInspect it with: ${inspectCommand(void 0, void 0, recovery)}`);
|
|
15306
|
+
const remedy = exact ? "Re-run with --verbose to see what the record's region field holds, then either destroy against the region the resources are really in, or repair that field to match the key it is stored under and re-run. " + withheldAccountClause(recovery, "the command at the end of this message prints") + "To drop the record and leave the live resources standing, spelled out rather than pasteable because that command DELETES a record: " + dropRecordTemplate(recovery) : "This record's stack name or region does NOT render exactly — what any surrounding output shows is a sanitized form, and another record may render identically — so this message names no target and offers no command against one. List the records with " + (listing.line === void 0 ? `${WITHHELD_LISTING_POINTER}. Inspect it with: ${inspectCommand(void 0, void 0)}` : `${listing.pointer}.` + destroyAccountClause(recovery) + `\n${listing.line}\nInspect it with: ${inspectCommand(void 0, void 0, recovery)}`);
|
|
15303
15307
|
return `${opening} ${resourceCount === void 0 ? `— so cdkd can neither count what it would delete nor tell which region it is in` : `— so cdkd cannot tell which region those resources are in`}. cdkd stamps the key's region into every record it writes, so this record was not written by cdkd. Destroying against the key's region would issue every delete there; if the record's own region is the honest half, each delete comes back not-found, which this command reads as ALREADY DELETED — it would report success, remove the record, and leave every resource standing in the other region with nothing naming it. ${remedy}`;
|
|
15304
15308
|
}
|
|
15305
15309
|
function refuseDivergentRecordRegionForDestroy(state, stackName, keyRegion, divergentBodyRegion, recovery, provenOrphans = 0) {
|
|
@@ -15308,14 +15312,14 @@ function refuseDivergentRecordRegionForDestroy(state, stackName, keyRegion, dive
|
|
|
15308
15312
|
if (resourceCount === 0 && provenOrphans === 0) return;
|
|
15309
15313
|
throw markNonRetryable(new CdkdError(divergentRecordRegionRefusalMessage(stackName, keyRegion, divergentBodyRegion, resourceCount, recovery, provenOrphans), STATE_REGION_DIVERGED));
|
|
15310
15314
|
}
|
|
15311
|
-
function malformedDeployResourcesRefusalMessage(rawStackName, rawRegion) {
|
|
15315
|
+
function malformedDeployResourcesRefusalMessage(rawStackName, rawRegion, recovery) {
|
|
15312
15316
|
const stackName = absentIfEmpty(rawStackName);
|
|
15313
15317
|
const region = absentIfEmpty(rawRegion);
|
|
15314
|
-
return `${malformedStateDiagnosis(stackName, region)} 'cdkd deploy' can WRITE state and AWS resources, so it refuses rather than continuing — under '--dry-run' too, because the plan a dry run would print is the wrong one: an unreadable map reads as ZERO recorded resources, so every resource the template declares is planned as a CREATE and the deploy re-provisions a stack that already exists, colliding on each deterministic name and duplicating the rest, then saves a well-formed record over the only evidence anything was wrong. Reading the bag as EMPTY produces that same plan rather than avoiding it. Nothing was provisioned and no state was written FOR THIS STACK. Repair or remove the record first; 'cdkd diff' previews the stack with this map read as EMPTY and warns that it did. ${inspectClause(stackName, region)}Inspect it with: ${inspectCommand(stackName, region)}`;
|
|
15318
|
+
return `${malformedStateDiagnosis(stackName, region)} 'cdkd deploy' can WRITE state and AWS resources, so it refuses rather than continuing — under '--dry-run' too, because the plan a dry run would print is the wrong one: an unreadable map reads as ZERO recorded resources, so every resource the template declares is planned as a CREATE and the deploy re-provisions a stack that already exists, colliding on each deterministic name and duplicating the rest, then saves a well-formed record over the only evidence anything was wrong. Reading the bag as EMPTY produces that same plan rather than avoiding it. Nothing was provisioned and no state was written FOR THIS STACK. Repair or remove the record first; 'cdkd diff' previews the stack with this map read as EMPTY and warns that it did. ${inspectClause(stackName, region, recovery)}Inspect it with: ${inspectCommand(stackName, region, recovery)}`;
|
|
15315
15319
|
}
|
|
15316
|
-
function refuseMalformedResourcesForDeploy(state, stackName, region) {
|
|
15320
|
+
function refuseMalformedResourcesForDeploy(state, stackName, region, recovery) {
|
|
15317
15321
|
if (hasReadableResources(state)) return;
|
|
15318
|
-
throw markNonRetryable(new CdkdError(malformedDeployResourcesRefusalMessage(stackName, region), STATE_RESOURCES_MALFORMED));
|
|
15322
|
+
throw markNonRetryable(new CdkdError(malformedDeployResourcesRefusalMessage(stackName, region, recovery), STATE_RESOURCES_MALFORMED));
|
|
15319
15323
|
}
|
|
15320
15324
|
const EXPORT_LEGACY_LEAD = "The record was loaded from its legacy key, which carries no region segment — 'cdkd state show' reads such a record only when its body names a region, and a 'cdkd deploy' will not migrate it while it is torn — so inspect the object directly";
|
|
15321
15325
|
const EXPORT_DELETES_STATE = "'cdkd export' migrates the resources this record lists into CloudFormation and then DELETES the cdkd state, so it refuses rather than continuing, under '--dry-run' too.";
|
|
@@ -15328,19 +15332,19 @@ function refuseMalformedResourcesForExport(state, stackName, region, recovery) {
|
|
|
15328
15332
|
if (hasReadableResources(state)) return;
|
|
15329
15333
|
throw new CdkdError(malformedExportResourcesRefusalMessage(stackName, region, recovery), STATE_RESOURCES_MALFORMED);
|
|
15330
15334
|
}
|
|
15331
|
-
function malformedRenderedContainersWarning(rawStackName, rawRegion, containers) {
|
|
15335
|
+
function malformedRenderedContainersWarning(rawStackName, rawRegion, containers, recovery) {
|
|
15332
15336
|
const stackName = absentIfEmpty(rawStackName);
|
|
15333
15337
|
const region = absentIfEmpty(rawRegion);
|
|
15334
15338
|
const names = containers.map((name) => `'${safeIdentifier(name, 128)}'`).join(", ");
|
|
15335
|
-
return `${stackClause(stackName, region)} has a non-object ${names} — the record is malformed or truncated. 'Object.entries' walks a string or a list as readily as a map, so rendering one INVENTS a row per character or element. Continuing with it EMPTY: this view shows no rows there, which is not the same as the record holding none. A per-resource container is named once however many resources hold one. ${inspectClause(stackName, region)}See the stored values with: ` + inspectCommand(stackName, region);
|
|
15339
|
+
return `${stackClause(stackName, region)} has a non-object ${names} — the record is malformed or truncated. 'Object.entries' walks a string or a list as readily as a map, so rendering one INVENTS a row per character or element. Continuing with it EMPTY: this view shows no rows there, which is not the same as the record holding none. A per-resource container is named once however many resources hold one. ${inspectClause(stackName, region, recovery)}See the stored values with: ` + inspectCommand(stackName, region, recovery);
|
|
15336
15340
|
}
|
|
15337
15341
|
function absentIfEmpty(value) {
|
|
15338
15342
|
return value === "" ? void 0 : value;
|
|
15339
15343
|
}
|
|
15340
|
-
function malformedResourcesWarning(rawStackName, rawRegion) {
|
|
15344
|
+
function malformedResourcesWarning(rawStackName, rawRegion, recovery) {
|
|
15341
15345
|
const stackName = absentIfEmpty(rawStackName);
|
|
15342
15346
|
const region = absentIfEmpty(rawRegion);
|
|
15343
|
-
return `${malformedStateDiagnosis(stackName, region)} Continuing with an EMPTY resource set: this command's output describes zero resources, which is not the same as the stack having none. ${inspectClause(stackName, region)}Inspect it with: ${inspectCommand(stackName, region)}`;
|
|
15347
|
+
return `${malformedStateDiagnosis(stackName, region)} Continuing with an EMPTY resource set: this command's output describes zero resources, which is not the same as the stack having none. ${inspectClause(stackName, region, recovery)}Inspect it with: ${inspectCommand(stackName, region, recovery)}`;
|
|
15344
15348
|
}
|
|
15345
15349
|
function repairMalformedOutputsForReadOnly(state) {
|
|
15346
15350
|
if (hasReadableOutputs(state)) return false;
|
|
@@ -15348,10 +15352,10 @@ function repairMalformedOutputsForReadOnly(state) {
|
|
|
15348
15352
|
return true;
|
|
15349
15353
|
}
|
|
15350
15354
|
const DEPLOY_REFUSES_OUTPUTS_SENTENCE = "'cdkd deploy' REFUSES this record when it loads it, over this same unreadable 'outputs' map, rather than rebuilding the map over it — repair the stored value before deploying.";
|
|
15351
|
-
function malformedOutputsWarning(rawStackName, rawRegion) {
|
|
15355
|
+
function malformedOutputsWarning(rawStackName, rawRegion, recovery) {
|
|
15352
15356
|
const stackName = absentIfEmpty(rawStackName);
|
|
15353
15357
|
const region = absentIfEmpty(rawRegion);
|
|
15354
|
-
return `${stackClause(stackName, region)} has no readable 'outputs' map — the record is malformed or truncated. Where the stored value is a string or a list, 'Object.entries' walks it as readily as a map, so diffing it INVENTS a REMOVE row per character or element carrying the record's own characters; where it is a number, a boolean or null, it yields no comparison at all. Continuing with it EMPTY: every output this diff resolves is reported as an ADD and no stored key is reported as a REMOVE, which is not the same as the record holding none. ${DEPLOY_REFUSES_OUTPUTS_SENTENCE} ${inspectClause(stackName, region)}See the stored value with: ` + inspectCommand(stackName, region);
|
|
15358
|
+
return `${stackClause(stackName, region)} has no readable 'outputs' map — the record is malformed or truncated. Where the stored value is a string or a list, 'Object.entries' walks it as readily as a map, so diffing it INVENTS a REMOVE row per character or element carrying the record's own characters; where it is a number, a boolean or null, it yields no comparison at all. Continuing with it EMPTY: every output this diff resolves is reported as an ADD and no stored key is reported as a REMOVE, which is not the same as the record holding none. ${DEPLOY_REFUSES_OUTPUTS_SENTENCE} ${inspectClause(stackName, region, recovery)}See the stored value with: ` + inspectCommand(stackName, region, recovery);
|
|
15355
15359
|
}
|
|
15356
15360
|
function refuseMalformedState(state, stackName, region, recovery) {
|
|
15357
15361
|
if (hasReadableResources(state)) return;
|
|
@@ -15362,15 +15366,15 @@ function malformedOutputsRefusalMessage(rawStackName, rawRegion, recovery) {
|
|
|
15362
15366
|
const region = absentIfEmpty(rawRegion);
|
|
15363
15367
|
return inspectTail(`${stackClause(stackName, region)} has no readable 'outputs' map — the record is malformed or truncated. This command can WRITE state, so it refuses rather than continuing: it REBUILDS the bag before saving, and 'Object.entries' walks a string or a list as readily as a map, so a six-character value would be saved back as a well-formed six-key map (a null one as an empty map). That replaces the only signal anything is wrong with a legitimate-looking record, permanently — and the next deploy republishes it into the shared exports index every other stack's Fn::ImportValue resolves against. Repair or remove the record first.`, stackName, region, recovery);
|
|
15364
15368
|
}
|
|
15365
|
-
function malformedExportSourceWarning(rawStackName, rawRegion) {
|
|
15369
|
+
function malformedExportSourceWarning(rawStackName, rawRegion, recovery) {
|
|
15366
15370
|
const stackName = absentIfEmpty(rawStackName);
|
|
15367
15371
|
const region = absentIfEmpty(rawRegion);
|
|
15368
|
-
return `${stackClause(stackName, region)} has no readable 'outputs' map or 'exportNames' list — the record is malformed or truncated. It contributes NO exports to this region's index, which is not the same as the stack exporting none: an Fn::ImportValue of a name this stack really publishes will fail in the CONSUMER stack, naming that stack rather than this record. Continuing with the other producers — enumerating a string or a list here would instead publish one FABRICATED export per character or element. ${inspectClause(stackName, region)}See the stored values with: ` + inspectCommand(stackName, region);
|
|
15372
|
+
return `${stackClause(stackName, region)} has no readable 'outputs' map or 'exportNames' list — the record is malformed or truncated. It contributes NO exports to this region's index, which is not the same as the stack exporting none: an Fn::ImportValue of a name this stack really publishes will fail in the CONSUMER stack, naming that stack rather than this record. Continuing with the other producers — enumerating a string or a list here would instead publish one FABRICATED export per character or element. ${inspectClause(stackName, region, recovery)}See the stored values with: ` + inspectCommand(stackName, region, recovery);
|
|
15369
15373
|
}
|
|
15370
|
-
function malformedExportNamesWarning(rawStackName, rawRegion) {
|
|
15374
|
+
function malformedExportNamesWarning(rawStackName, rawRegion, recovery) {
|
|
15371
15375
|
const stackName = absentIfEmpty(rawStackName);
|
|
15372
15376
|
const region = absentIfEmpty(rawRegion);
|
|
15373
|
-
return `${stackClause(stackName, region)} has an unusable 'exportNames' list — the record is malformed or truncated. It is read as an EMPTY export set, which is not the same as the record holding one: no stored key is reported as an export, so a row that should carry an '[export]' tag renders without it. Reading it as UNKNOWN instead would be worse — that falls back to the pre-v9 rule where every output name is importable. ${inspectClause(stackName, region)}See the stored value with: ` + inspectCommand(stackName, region);
|
|
15377
|
+
return `${stackClause(stackName, region)} has an unusable 'exportNames' list — the record is malformed or truncated. It is read as an EMPTY export set, which is not the same as the record holding one: no stored key is reported as an export, so a row that should carry an '[export]' tag renders without it. Reading it as UNKNOWN instead would be worse — that falls back to the pre-v9 rule where every output name is importable. ${inspectClause(stackName, region, recovery)}See the stored value with: ` + inspectCommand(stackName, region, recovery);
|
|
15374
15378
|
}
|
|
15375
15379
|
function refuseMalformedOutputs(state, stackName, region, recovery) {
|
|
15376
15380
|
if (hasReadableOutputs(state)) return;
|
|
@@ -15385,10 +15389,10 @@ function repairMalformedOrphansForReadOnly(state) {
|
|
|
15385
15389
|
state.orphans = [];
|
|
15386
15390
|
return true;
|
|
15387
15391
|
}
|
|
15388
|
-
function malformedOrphansWarning(rawStackName, rawRegion) {
|
|
15392
|
+
function malformedOrphansWarning(rawStackName, rawRegion, recovery) {
|
|
15389
15393
|
const stackName = absentIfEmpty(rawStackName);
|
|
15390
15394
|
const region = absentIfEmpty(rawRegion);
|
|
15391
|
-
return `${stackClause(stackName, region)} has no readable 'orphans' list — the record is malformed or truncated. Readers reach it on a bare '?? []' or '?.length', which admits a string, a number, a plain object and null alike: a string is WALKED, one garbage orphan per character, and the others read as no orphans at all. Continuing with it EMPTY: this view previews no adoption and names no orphan, which is NOT the same as the record holding none — resources from an earlier failed deploy may still be live in AWS. ${inspectClause(stackName, region)}See the stored value with: ` + inspectCommand(stackName, region);
|
|
15395
|
+
return `${stackClause(stackName, region)} has no readable 'orphans' list — the record is malformed or truncated. Readers reach it on a bare '?? []' or '?.length', which admits a string, a number, a plain object and null alike: a string is WALKED, one garbage orphan per character, and the others read as no orphans at all. Continuing with it EMPTY: this view previews no adoption and names no orphan, which is NOT the same as the record holding none — resources from an earlier failed deploy may still be live in AWS. ${inspectClause(stackName, region, recovery)}See the stored value with: ` + inspectCommand(stackName, region, recovery);
|
|
15392
15396
|
}
|
|
15393
15397
|
function malformedOrphansRefusalMessage(rawStackName, rawRegion, recovery) {
|
|
15394
15398
|
const stackName = absentIfEmpty(rawStackName);
|
|
@@ -15422,19 +15426,19 @@ function refuseMalformedOutputsForDestroy(state, stackName, region, recovery) {
|
|
|
15422
15426
|
if (hasReadableOutputs(state)) return;
|
|
15423
15427
|
throw markNonRetryable(new CdkdError(malformedDestroyOutputsRefusalMessage(stackName, region, recovery), STATE_RESOURCES_MALFORMED));
|
|
15424
15428
|
}
|
|
15425
|
-
function malformedNestedChildOutputsRefusalMessage(rawChildStackName, rawRegion) {
|
|
15429
|
+
function malformedNestedChildOutputsRefusalMessage(rawChildStackName, rawRegion, recovery) {
|
|
15426
15430
|
const childStackName = absentIfEmpty(rawChildStackName);
|
|
15427
15431
|
const region = absentIfEmpty(rawRegion);
|
|
15428
|
-
return `${stackClause(childStackName, region, "nested stack child")} has no readable 'outputs' map — the record is malformed or truncated. The parent's 'Outputs.<Key>' attributes are REBUILT from this bag and persisted into the PARENT's record, and 'Object.entries' walks a string or a list as readily as a map — so a six-character value would become six fabricated parent attributes that every Fn::GetAtt against this nested stack then resolves into live AWS calls. The deploy refuses rather than fabricating them. Repair or remove the child's record first. ${inspectClause(childStackName, region)}Inspect it with: ` + inspectCommand(childStackName, region);
|
|
15432
|
+
return `${stackClause(childStackName, region, "nested stack child")} has no readable 'outputs' map — the record is malformed or truncated. The parent's 'Outputs.<Key>' attributes are REBUILT from this bag and persisted into the PARENT's record, and 'Object.entries' walks a string or a list as readily as a map — so a six-character value would become six fabricated parent attributes that every Fn::GetAtt against this nested stack then resolves into live AWS calls. The deploy refuses rather than fabricating them. Repair or remove the child's record first. ${inspectClause(childStackName, region, recovery)}Inspect it with: ` + inspectCommand(childStackName, region, recovery);
|
|
15429
15433
|
}
|
|
15430
|
-
function refuseMalformedNestedChildOutputs(state, childStackName, region) {
|
|
15434
|
+
function refuseMalformedNestedChildOutputs(state, childStackName, region, recovery) {
|
|
15431
15435
|
if (hasReadableOutputs(state)) return;
|
|
15432
|
-
throw markNonRetryable(new CdkdError(malformedNestedChildOutputsRefusalMessage(childStackName, region), STATE_RESOURCES_MALFORMED));
|
|
15436
|
+
throw markNonRetryable(new CdkdError(malformedNestedChildOutputsRefusalMessage(childStackName, region, recovery), STATE_RESOURCES_MALFORMED));
|
|
15433
15437
|
}
|
|
15434
|
-
function malformedLocalOutputsWarning(rawStackName, rawRegion) {
|
|
15438
|
+
function malformedLocalOutputsWarning(rawStackName, rawRegion, recovery) {
|
|
15435
15439
|
const stackName = absentIfEmpty(rawStackName);
|
|
15436
15440
|
const region = absentIfEmpty(rawRegion);
|
|
15437
|
-
return `${stackClause(stackName, region)} has no readable 'outputs' map — the record is malformed or truncated. 'Object.entries' walks a string or a list as readily as a map, so reading it would hand this local run one FABRICATED output per character or element. Continuing with it EMPTY: every reference to an output of this record resolves to nothing and is dropped, which is not the same as the record holding none. ${inspectClause(stackName, region)}See the stored value with: ` + inspectCommand(stackName, region);
|
|
15441
|
+
return `${stackClause(stackName, region)} has no readable 'outputs' map — the record is malformed or truncated. 'Object.entries' walks a string or a list as readily as a map, so reading it would hand this local run one FABRICATED output per character or element. Continuing with it EMPTY: every reference to an output of this record resolves to nothing and is dropped, which is not the same as the record holding none. ${inspectClause(stackName, region, recovery)}See the stored value with: ` + inspectCommand(stackName, region, recovery);
|
|
15438
15442
|
}
|
|
15439
15443
|
const NAMED_UNREADABLE_PROPERTY_BAGS = 5;
|
|
15440
15444
|
function stackClause(stackName, region, kind = "") {
|
|
@@ -15485,7 +15489,7 @@ function inspectCommand(stackName, region, recovery) {
|
|
|
15485
15489
|
return inspectGate(stackName, region, recovery).command;
|
|
15486
15490
|
}
|
|
15487
15491
|
function inspectClause(stackName, region, recovery) {
|
|
15488
|
-
const accounts = withheldAccountClause(
|
|
15492
|
+
const accounts = withheldAccountClause(recovery, "the command at the end of this line prints");
|
|
15489
15493
|
if (stackName === void 0) return accounts;
|
|
15490
15494
|
const { withheld } = inspectGate(stackName, region, recovery);
|
|
15491
15495
|
const parts = [inspectWithheldPart("stack name above", withheld, "stack", true), inspectWithheldPart("region above", withheld, "region", false)].filter((part) => part !== "");
|
|
@@ -15542,10 +15546,10 @@ function unreadableResourcePropertyBags(state) {
|
|
|
15542
15546
|
if (!hasReadableResources(state)) return [];
|
|
15543
15547
|
return Object.entries(state.resources).filter(([, entry]) => isReadableBag(entry) && !isReadableBag(entry.properties)).map(([logicalId]) => logicalId);
|
|
15544
15548
|
}
|
|
15545
|
-
function refuseMalformedResourceProperties(state, stackName, region) {
|
|
15549
|
+
function refuseMalformedResourceProperties(state, stackName, region, recovery) {
|
|
15546
15550
|
const unreadable = unreadableResourcePropertyBags(state);
|
|
15547
15551
|
if (unreadable.length === 0) return;
|
|
15548
|
-
throw markNonRetryable(new CdkdError(malformedResourcePropertiesRefusalMessage(stackName, region, unreadable), STATE_RESOURCES_MALFORMED));
|
|
15552
|
+
throw markNonRetryable(new CdkdError(malformedResourcePropertiesRefusalMessage(stackName, region, unreadable, recovery), STATE_RESOURCES_MALFORMED));
|
|
15549
15553
|
}
|
|
15550
15554
|
function repairMalformedResourcePropertiesForReadOnly(state) {
|
|
15551
15555
|
const unreadable = unreadableResourcePropertyBags(state);
|
|
@@ -15567,10 +15571,10 @@ function namedPropertyBagsDiagnosis(stackName, region, logicalIds, describeUnsaf
|
|
|
15567
15571
|
function namedPropertyBagsClause(stackName, region, logicalIds) {
|
|
15568
15572
|
return `${namedPropertyBagsDiagnosis(stackName, region, logicalIds)} Comparing a template against one reports every property the template declares as ADDED (a string bag also invents one change per character), and a create-only property among them is a REPLACEMENT of the live resource.`;
|
|
15569
15573
|
}
|
|
15570
|
-
function malformedResourcePropertiesRefusalMessage(rawStackName, rawRegion, logicalIds) {
|
|
15574
|
+
function malformedResourcePropertiesRefusalMessage(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15571
15575
|
const stackName = absentIfEmpty(rawStackName);
|
|
15572
15576
|
const region = absentIfEmpty(rawRegion);
|
|
15573
|
-
return `${namedPropertyBagsClause(stackName, region, logicalIds)} 'cdkd deploy' can WRITE state and AWS resources, so it refuses rather than continuing — under '--dry-run' too, because the plan a dry run would print is the wrong one: a DELETE and re-create of resources the template did not change, and reading the bag as empty produces that same verdict rather than avoiding it. Nothing was provisioned and no state was written FOR THIS STACK. Repair or remove the record first; 'cdkd diff' previews the rest of the stack with those maps read as EMPTY and warns that it did. ${inspectClause(stackName, region)}Inspect the record with: ${inspectCommand(stackName, region)}`;
|
|
15577
|
+
return `${namedPropertyBagsClause(stackName, region, logicalIds)} 'cdkd deploy' can WRITE state and AWS resources, so it refuses rather than continuing — under '--dry-run' too, because the plan a dry run would print is the wrong one: a DELETE and re-create of resources the template did not change, and reading the bag as empty produces that same verdict rather than avoiding it. Nothing was provisioned and no state was written FOR THIS STACK. Repair or remove the record first; 'cdkd diff' previews the rest of the stack with those maps read as EMPTY and warns that it did. ${inspectClause(stackName, region, recovery)}Inspect the record with: ${inspectCommand(stackName, region, recovery)}`;
|
|
15574
15578
|
}
|
|
15575
15579
|
function malformedOrphanResourcePropertiesRefusalMessage(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15576
15580
|
const stackName = absentIfEmpty(rawStackName);
|
|
@@ -15603,7 +15607,7 @@ function withheldIdentityClause(stackName, region) {
|
|
|
15603
15607
|
return ` — the stack name or region above did not render exactly, so take them from the 'Find the exact name' command below — replace each quoted hole, quotes included, with ${JSON_LISTING_HOLE_VALUE} — rather than from this message`;
|
|
15604
15608
|
}
|
|
15605
15609
|
function withheldRecoveryClause(recovery) {
|
|
15606
|
-
const clause = withheldAccountClause(
|
|
15610
|
+
const clause = withheldAccountClause(recovery, "the command lines below print").trimEnd();
|
|
15607
15611
|
if (clause === "") return "";
|
|
15608
15612
|
return ` — ${clause.charAt(0).toLowerCase()}${clause.slice(1, -1)}`;
|
|
15609
15613
|
}
|
|
@@ -15655,26 +15659,26 @@ function refuseMalformedResourcePropertiesForOrphan(state, removedLogicalIds, st
|
|
|
15655
15659
|
if (unreadable.length === 0) return;
|
|
15656
15660
|
throw new CdkdError(malformedOrphanResourcePropertiesRefusalMessage(stackName, region, unreadable, recovery), STATE_RESOURCES_MALFORMED);
|
|
15657
15661
|
}
|
|
15658
|
-
function malformedResourcePropertiesWarning(rawStackName, rawRegion, logicalIds) {
|
|
15662
|
+
function malformedResourcePropertiesWarning(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15659
15663
|
const stackName = absentIfEmpty(rawStackName);
|
|
15660
15664
|
const region = absentIfEmpty(rawRegion);
|
|
15661
|
-
return `${namedPropertyBagsClause(stackName, region, logicalIds)} Continuing with those maps EMPTY: what these records are stored as holding is NOT what this preview compares against. Where the template still declares the resource, every property it declares previews as an addition and a create-only one as a replacement; where it no longer declares it, the DELETE row shows an empty previous side instead of the stored one. Do NOT run 'cdkd deploy' against this record — it REFUSES on the same defect rather than acting on this preview. ${inspectClause(stackName, region)}See the stored values with: ${inspectCommand(stackName, region)}`;
|
|
15665
|
+
return `${namedPropertyBagsClause(stackName, region, logicalIds)} Continuing with those maps EMPTY: what these records are stored as holding is NOT what this preview compares against. Where the template still declares the resource, every property it declares previews as an addition and a create-only one as a replacement; where it no longer declares it, the DELETE row shows an empty previous side instead of the stored one. Do NOT run 'cdkd deploy' against this record — it REFUSES on the same defect rather than acting on this preview. ${inspectClause(stackName, region, recovery)}See the stored values with: ${inspectCommand(stackName, region, recovery)}`;
|
|
15662
15666
|
}
|
|
15663
15667
|
const DRIFT_PROPERTIES_ROLE = "To 'cdkd drift' this map is the baseline wherever no 'observedProperties' is recorded — a stored string reads as one drifted key per character, and an EMPTY reading compares nothing and reports the resource clean — and it is where cdkd finds the secret positions it must mask.";
|
|
15664
|
-
function malformedDriftResourcePropertiesRefusalMessage(rawStackName, rawRegion, logicalIds) {
|
|
15668
|
+
function malformedDriftResourcePropertiesRefusalMessage(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15665
15669
|
const stackName = absentIfEmpty(rawStackName);
|
|
15666
15670
|
const region = absentIfEmpty(rawRegion);
|
|
15667
|
-
return `${namedPropertyBagsDiagnosis(stackName, region, logicalIds)} 'cdkd drift --accept' and '--revert' WRITE this record back, so they refuse rather than continuing. ${DRIFT_PROPERTIES_ROLE} Continuing would let '--accept' save, and '--revert' push to the live resource, a verdict about properties this record does not hold. Nothing was written and no AWS resource was modified. Repair or remove the record first; plain 'cdkd drift' compares the rest of the stack and reports these resources as not compared. ${inspectClause(stackName, region)}Inspect the record with: ${inspectCommand(stackName, region)}`;
|
|
15671
|
+
return `${namedPropertyBagsDiagnosis(stackName, region, logicalIds)} 'cdkd drift --accept' and '--revert' WRITE this record back, so they refuse rather than continuing. ${DRIFT_PROPERTIES_ROLE} Continuing would let '--accept' save, and '--revert' push to the live resource, a verdict about properties this record does not hold. Nothing was written and no AWS resource was modified. Repair or remove the record first; plain 'cdkd drift' compares the rest of the stack and reports these resources as not compared. ${inspectClause(stackName, region, recovery)}Inspect the record with: ${inspectCommand(stackName, region, recovery)}`;
|
|
15668
15672
|
}
|
|
15669
|
-
function refuseMalformedResourcePropertiesForDrift(state, stackName, region) {
|
|
15673
|
+
function refuseMalformedResourcePropertiesForDrift(state, stackName, region, recovery) {
|
|
15670
15674
|
const unreadable = unreadableResourcePropertyBags(state);
|
|
15671
15675
|
if (unreadable.length === 0) return;
|
|
15672
|
-
throw new CdkdError(malformedDriftResourcePropertiesRefusalMessage(stackName, region, unreadable), STATE_RESOURCES_MALFORMED);
|
|
15676
|
+
throw new CdkdError(malformedDriftResourcePropertiesRefusalMessage(stackName, region, unreadable, recovery), STATE_RESOURCES_MALFORMED);
|
|
15673
15677
|
}
|
|
15674
|
-
function malformedDriftResourcePropertiesWarning(rawStackName, rawRegion, logicalIds) {
|
|
15678
|
+
function malformedDriftResourcePropertiesWarning(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15675
15679
|
const stackName = absentIfEmpty(rawStackName);
|
|
15676
15680
|
const region = absentIfEmpty(rawRegion);
|
|
15677
|
-
return `${namedPropertyBagsDiagnosis(stackName, region, logicalIds)} ${DRIFT_PROPERTIES_ROLE} So 'cdkd drift' does NOT compare these resources: each is reported as not compared, and the run does not exit clean. The rest of the stack is compared as usual. 'cdkd drift --accept' / '--revert' and 'cdkd deploy' REFUSE this record. ${inspectClause(stackName, region)}See the stored values with: ${inspectCommand(stackName, region)}`;
|
|
15681
|
+
return `${namedPropertyBagsDiagnosis(stackName, region, logicalIds)} ${DRIFT_PROPERTIES_ROLE} So 'cdkd drift' does NOT compare these resources: each is reported as not compared, and the run does not exit clean. The rest of the stack is compared as usual. 'cdkd drift --accept' / '--revert' and 'cdkd deploy' REFUSE this record. ${inspectClause(stackName, region, recovery)}See the stored values with: ${inspectCommand(stackName, region, recovery)}`;
|
|
15678
15682
|
}
|
|
15679
15683
|
function malformedExportResourcePropertiesRefusalMessage(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15680
15684
|
const stackName = absentIfEmpty(rawStackName);
|
|
@@ -15704,15 +15708,15 @@ function repairMalformedResourceEntriesForReadOnly(state) {
|
|
|
15704
15708
|
for (const logicalId of unreadable) delete state.resources[logicalId];
|
|
15705
15709
|
return unreadable;
|
|
15706
15710
|
}
|
|
15707
|
-
function malformedResourceEntriesWarning(rawStackName, rawRegion, logicalIds) {
|
|
15711
|
+
function malformedResourceEntriesWarning(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15708
15712
|
const stackName = absentIfEmpty(rawStackName);
|
|
15709
15713
|
const region = absentIfEmpty(rawRegion);
|
|
15710
|
-
return `${namedEntriesClause(stackName, region, logicalIds)} Continuing WITHOUT them: this command's output describes the remaining resources only, which is not the same as the stack holding none of these. ${inspectClause(stackName, region)}See the stored values with: ` + inspectCommand(stackName, region);
|
|
15714
|
+
return `${namedEntriesClause(stackName, region, logicalIds)} Continuing WITHOUT them: this command's output describes the remaining resources only, which is not the same as the stack holding none of these. ${inspectClause(stackName, region, recovery)}See the stored values with: ` + inspectCommand(stackName, region, recovery);
|
|
15711
15715
|
}
|
|
15712
|
-
function malformedOrphanRecordsWarning(rawStackName, rawRegion, logicalIds, alsoRejectsTornMaps) {
|
|
15716
|
+
function malformedOrphanRecordsWarning(rawStackName, rawRegion, logicalIds, alsoRejectsTornMaps, recovery) {
|
|
15713
15717
|
const stackName = absentIfEmpty(rawStackName);
|
|
15714
15718
|
const region = absentIfEmpty(rawRegion);
|
|
15715
|
-
return `${stackClause(stackName, region)} holds ${logicalIds.length} rollback-orphan record(s) in 'orphans' that cannot be read as resources — ${namedOrphanRows(logicalIds)} — because they are not objects, have no string 'logicalId' or share it with another row, or their 'state' is not an object, names no resource type${alsoRejectsTornMaps ? ", has no non-empty string 'physicalId', or holds a 'properties' or 'attributes' map that is not an object" : ` or has no non-empty string 'physicalId'`}. Continuing WITHOUT them: ${alsoRejectsTornMaps ? `they are excluded from the secret scan, so nothing this run does can certify them` : "they are not previewed for adoption, and 'cdkd deploy' refuses the record over them rather than dropping them as this command does"}. These ids were read from 'orphans'; the 'resources' map carries its own warning when it is damaged too. ${inspectClause(stackName, region)}See the stored values with: ` + inspectCommand(stackName, region);
|
|
15719
|
+
return `${stackClause(stackName, region)} holds ${logicalIds.length} rollback-orphan record(s) in 'orphans' that cannot be read as resources — ${namedOrphanRows(logicalIds)} — because they are not objects, have no string 'logicalId' or share it with another row, or their 'state' is not an object, names no resource type${alsoRejectsTornMaps ? ", has no non-empty string 'physicalId', or holds a 'properties' or 'attributes' map that is not an object" : ` or has no non-empty string 'physicalId'`}. Continuing WITHOUT them: ${alsoRejectsTornMaps ? `they are excluded from the secret scan, so nothing this run does can certify them` : "they are not previewed for adoption, and 'cdkd deploy' refuses the record over them rather than dropping them as this command does"}. These ids were read from 'orphans'; the 'resources' map carries its own warning when it is damaged too. ${inspectClause(stackName, region, recovery)}See the stored values with: ` + inspectCommand(stackName, region, recovery);
|
|
15716
15720
|
}
|
|
15717
15721
|
function namedEntriesClause(stackName, region, logicalIds) {
|
|
15718
15722
|
const named = logicalIds.slice(0, NAMED_UNREADABLE_ENTRIES).map((id) => displayLogicalId(id)).join(", ");
|
|
@@ -15725,15 +15729,15 @@ function malformedResourceEntriesRefusalMessage(rawStackName, rawRegion, logical
|
|
|
15725
15729
|
const region = absentIfEmpty(rawRegion);
|
|
15726
15730
|
return `${namedEntriesClause(stackName, region, logicalIds)} This command can WRITE state, so it refuses rather than skipping them: saving over the record would report a clean run for entries nothing could read, and would leave the next command to fail on them with no more to go on. Nothing was locked, read from AWS or written FOR THIS STACK. ${inspectClause(stackName, region, recovery)}Inspect it with: ` + inspectCommand(stackName, region, recovery);
|
|
15727
15731
|
}
|
|
15728
|
-
function refuseMalformedResourceEntriesForDeploy(state, stackName, region) {
|
|
15732
|
+
function refuseMalformedResourceEntriesForDeploy(state, stackName, region, recovery) {
|
|
15729
15733
|
const unreadable = unreadableResourceEntries(state);
|
|
15730
15734
|
if (unreadable.length === 0) return;
|
|
15731
|
-
throw markNonRetryable(new CdkdError(malformedDeployResourceEntriesRefusalMessage(stackName, region, unreadable), STATE_RESOURCES_MALFORMED));
|
|
15735
|
+
throw markNonRetryable(new CdkdError(malformedDeployResourceEntriesRefusalMessage(stackName, region, unreadable, recovery), STATE_RESOURCES_MALFORMED));
|
|
15732
15736
|
}
|
|
15733
|
-
function malformedDeployResourceEntriesRefusalMessage(rawStackName, rawRegion, logicalIds) {
|
|
15737
|
+
function malformedDeployResourceEntriesRefusalMessage(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15734
15738
|
const stackName = absentIfEmpty(rawStackName);
|
|
15735
15739
|
const region = absentIfEmpty(rawRegion);
|
|
15736
|
-
return `${namedEntriesClause(stackName, region, logicalIds)} 'cdkd deploy' can WRITE state and AWS resources, so it refuses rather than continuing — under '--dry-run' too, because the plan a dry run would print is the wrong one: a row that is not an object reads as a resource cdkd does not manage, so the template's resource of that id is planned as a CREATE (a second copy of a live resource, or a name collision), and a row with no resource type is planned as a TYPE CHANGE, which replaces the live resource. Nothing was provisioned and no state was written FOR THIS STACK. Repair or remove the record first; 'cdkd diff' previews the rest of the stack without those rows and warns that it did. ${inspectClause(stackName, region)}Inspect the record with: ` + inspectCommand(stackName, region);
|
|
15740
|
+
return `${namedEntriesClause(stackName, region, logicalIds)} 'cdkd deploy' can WRITE state and AWS resources, so it refuses rather than continuing — under '--dry-run' too, because the plan a dry run would print is the wrong one: a row that is not an object reads as a resource cdkd does not manage, so the template's resource of that id is planned as a CREATE (a second copy of a live resource, or a name collision), and a row with no resource type is planned as a TYPE CHANGE, which replaces the live resource. Nothing was provisioned and no state was written FOR THIS STACK. Repair or remove the record first; 'cdkd diff' previews the rest of the stack without those rows and warns that it did. ${inspectClause(stackName, region, recovery)}Inspect the record with: ` + inspectCommand(stackName, region, recovery);
|
|
15737
15741
|
}
|
|
15738
15742
|
function refuseMalformedResourceEntriesForDestroy(state, stackName, region, recovery) {
|
|
15739
15743
|
const unreadable = unreadableResourceEntries(state);
|
|
@@ -15771,20 +15775,20 @@ function malformedImportUnrepairedEntriesRefusalMessage(rawStackName, rawRegion,
|
|
|
15771
15775
|
const region = absentIfEmpty(rawRegion);
|
|
15772
15776
|
return `${namedEntriesClause(stackName, region, logicalIds)} 'cdkd import' was asked to re-import these rows and their import did not succeed (each is reported above), so the record it would save still holds them unreadable; it refuses rather than saving a row it could not replace. Nothing was written FOR THIS STACK, and the resources this run did import stay as they are in AWS. Fix what the import reported, or repair the rows by hand, and re-run. ${inspectClause(stackName, region, recovery)}Inspect the record with: ` + inspectCommand(stackName, region, recovery);
|
|
15773
15777
|
}
|
|
15774
|
-
function malformedScrubResourceEntriesRefusalMessage(rawStackName, rawRegion, logicalIds) {
|
|
15778
|
+
function malformedScrubResourceEntriesRefusalMessage(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15775
15779
|
const stackName = absentIfEmpty(rawStackName);
|
|
15776
15780
|
const region = absentIfEmpty(rawRegion);
|
|
15777
|
-
return `${namedEntriesClause(stackName, region, logicalIds)} 'cdkd scrub' REBUILDS and SAVES the resource map whenever anything in the stack changed, so it refuses rather than continuing: a null row either stops the rewrite on a bare TypeError under the lock (the template still positions it and this stack recorded a secret) or is copied into the rebuilt map as it stands — reported clean when no secret was recorded at all, saved back the moment another record changed; a string or number the template positions is spread into an object and saved as one; and a row with no resource type is rewritten and saved still without one. Nothing was written FOR THIS STACK. Repair or remove the row first; '--dry-run' audits the rest of the record without it and warns that it did. ${inspectClause(stackName, region)}Inspect the record with: ` + inspectCommand(stackName, region);
|
|
15781
|
+
return `${namedEntriesClause(stackName, region, logicalIds)} 'cdkd scrub' REBUILDS and SAVES the resource map whenever anything in the stack changed, so it refuses rather than continuing: a null row either stops the rewrite on a bare TypeError under the lock (the template still positions it and this stack recorded a secret) or is copied into the rebuilt map as it stands — reported clean when no secret was recorded at all, saved back the moment another record changed; a string or number the template positions is spread into an object and saved as one; and a row with no resource type is rewritten and saved still without one. Nothing was written FOR THIS STACK. Repair or remove the row first; '--dry-run' audits the rest of the record without it and warns that it did. ${inspectClause(stackName, region, recovery)}Inspect the record with: ` + inspectCommand(stackName, region, recovery);
|
|
15778
15782
|
}
|
|
15779
|
-
function malformedLocalResourcesWarning(rawStackName, rawRegion) {
|
|
15783
|
+
function malformedLocalResourcesWarning(rawStackName, rawRegion, recovery) {
|
|
15780
15784
|
const stackName = absentIfEmpty(rawStackName);
|
|
15781
15785
|
const region = absentIfEmpty(rawRegion);
|
|
15782
|
-
return `${malformedStateDiagnosis(stackName, region)} Continuing with it EMPTY: every 'Ref' and 'Fn::GetAtt' in this run's environment that names a resource of this record resolves to nothing and is dropped, and a bare '--assume-role' falls back to the developer's credentials — which is not the same as the record holding no resources. Nothing is written; 'cdkd deploy' and 'cdkd destroy' refuse this record instead. ${inspectClause(stackName, region)}See the stored value with: ` + inspectCommand(stackName, region);
|
|
15786
|
+
return `${malformedStateDiagnosis(stackName, region)} Continuing with it EMPTY: every 'Ref' and 'Fn::GetAtt' in this run's environment that names a resource of this record resolves to nothing and is dropped, and a bare '--assume-role' falls back to the developer's credentials — which is not the same as the record holding no resources. Nothing is written; 'cdkd deploy' and 'cdkd destroy' refuse this record instead. ${inspectClause(stackName, region, recovery)}See the stored value with: ` + inspectCommand(stackName, region, recovery);
|
|
15783
15787
|
}
|
|
15784
|
-
function malformedLocalResourceEntriesWarning(rawStackName, rawRegion, logicalIds) {
|
|
15788
|
+
function malformedLocalResourceEntriesWarning(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15785
15789
|
const stackName = absentIfEmpty(rawStackName);
|
|
15786
15790
|
const region = absentIfEmpty(rawRegion);
|
|
15787
|
-
return `${namedEntriesClause(stackName, region, logicalIds)} Continuing WITHOUT them: a 'Ref' or 'Fn::GetAtt' in this run's environment that names one of these ids resolves to nothing and is dropped, and a bare '--assume-role' read through one falls back to the developer's credentials — which is not the same as the record holding no such resource. Nothing is written; 'cdkd deploy' and 'cdkd destroy' refuse this record instead. ${inspectClause(stackName, region)}See the stored values with: ` + inspectCommand(stackName, region);
|
|
15791
|
+
return `${namedEntriesClause(stackName, region, logicalIds)} Continuing WITHOUT them: a 'Ref' or 'Fn::GetAtt' in this run's environment that names one of these ids resolves to nothing and is dropped, and a bare '--assume-role' read through one falls back to the developer's credentials — which is not the same as the record holding no such resource. Nothing is written; 'cdkd deploy' and 'cdkd destroy' refuse this record instead. ${inspectClause(stackName, region, recovery)}See the stored values with: ` + inspectCommand(stackName, region, recovery);
|
|
15788
15792
|
}
|
|
15789
15793
|
function refuseMalformedResourceEntriesForOrphan(state, removedLogicalIds, stackName, region, recovery) {
|
|
15790
15794
|
const removed = new Set(removedLogicalIds);
|
|
@@ -15833,10 +15837,10 @@ function hasAddressablePhysicalId(entry) {
|
|
|
15833
15837
|
const physicalId = entry.physicalId;
|
|
15834
15838
|
return typeof physicalId === "string" && physicalId.trim() !== "";
|
|
15835
15839
|
}
|
|
15836
|
-
function unaddressableUpdateRefusalMessage(rawStackName, rawRegion, logicalId, resourceType) {
|
|
15840
|
+
function unaddressableUpdateRefusalMessage(rawStackName, rawRegion, logicalId, resourceType, recovery) {
|
|
15837
15841
|
const stackName = absentIfEmpty(rawStackName);
|
|
15838
15842
|
const region = absentIfEmpty(rawRegion);
|
|
15839
|
-
return `${stackClause(stackName, region)} holds a record for ${displayIdent(logicalId)} (${displayIdent(resourceType)}) with no non-empty string 'physicalId', so cdkd cannot address that resource in AWS and did not try to update it. 'cdkd deploy' fails on it rather than skipping it, since a skipped update would end the deploy without the template's change. Nothing was sent for this resource. Repair the record's 'physicalId' and re-run. ${inspectClause(stackName, region)}Inspect the record with: ` + inspectCommand(stackName, region);
|
|
15843
|
+
return `${stackClause(stackName, region)} holds a record for ${displayIdent(logicalId)} (${displayIdent(resourceType)}) with no non-empty string 'physicalId', so cdkd cannot address that resource in AWS and did not try to update it. 'cdkd deploy' fails on it rather than skipping it, since a skipped update would end the deploy without the template's change. Nothing was sent for this resource. Repair the record's 'physicalId' and re-run. ${inspectClause(stackName, region, recovery)}Inspect the record with: ` + inspectCommand(stackName, region, recovery);
|
|
15840
15844
|
}
|
|
15841
15845
|
function unpreviewableOrphanRecords(state) {
|
|
15842
15846
|
if (!Array.isArray(state.orphans)) return [];
|
|
@@ -15925,10 +15929,10 @@ function refuseMalformedOrphansForOrphan(state, stackName, region, recovery) {
|
|
|
15925
15929
|
function deployRefusesOrphanRowsReason(logicalIds) {
|
|
15926
15930
|
return `${logicalIds.length} rollback-orphan record(s) in 'orphans' — ${namedOrphanRows(logicalIds)} — carry a 'properties' or 'attributes' map that cannot be read. This preview KEEPS them, so any adoption shown for them is one 'cdkd deploy' will not perform: it refuses the record over the same rows, and the deploy this previews will not start.`;
|
|
15927
15931
|
}
|
|
15928
|
-
function malformedOrphanRowsKeptWarning(rawStackName, rawRegion, logicalIds) {
|
|
15932
|
+
function malformedOrphanRowsKeptWarning(rawStackName, rawRegion, logicalIds, recovery) {
|
|
15929
15933
|
const stackName = absentIfEmpty(rawStackName);
|
|
15930
15934
|
const region = absentIfEmpty(rawRegion);
|
|
15931
|
-
return `${stackClause(stackName, region)} holds ${logicalIds.length} rollback-orphan record(s) in 'orphans' — ${namedOrphanRows(logicalIds)} — whose 'properties' or 'attributes' map is not an object. This preview KEEPS them. 'cdkd deploy' of THIS stack does NOT: it refuses the whole record over these rows and will not start until they are repaired. ${inspectClause(stackName, region)}See the stored values with: ` + inspectCommand(stackName, region);
|
|
15935
|
+
return `${stackClause(stackName, region)} holds ${logicalIds.length} rollback-orphan record(s) in 'orphans' — ${namedOrphanRows(logicalIds)} — whose 'properties' or 'attributes' map is not an object. This preview KEEPS them. 'cdkd deploy' of THIS stack does NOT: it refuses the whole record over these rows and will not start until they are repaired. ${inspectClause(stackName, region, recovery)}See the stored values with: ` + inspectCommand(stackName, region, recovery);
|
|
15932
15936
|
}
|
|
15933
15937
|
function namedOrphanRows(logicalIds) {
|
|
15934
15938
|
const named = logicalIds.slice(0, NAMED_UNREADABLE_ENTRIES).map((id) => displayLogicalId(id)).join(", ");
|
|
@@ -20671,10 +20675,10 @@ var DiffCalculator = class DiffCalculator {
|
|
|
20671
20675
|
conditionalReplacementVerdict(resourceType, propertyPath, oldValue, newValue) {
|
|
20672
20676
|
return this.replacementRules.conditionalReplacementVerdict(resourceType, propertyPath, oldValue, newValue);
|
|
20673
20677
|
}
|
|
20674
|
-
async calculateDiff(currentState, desiredTemplate, resolveFn, canonicalizeProperties, allowedUnsupportedProperties, freshParameters, maskForLog, recreateTargets, maskedInputs) {
|
|
20678
|
+
async calculateDiff(currentState, desiredTemplate, resolveFn, canonicalizeProperties, allowedUnsupportedProperties, freshParameters, maskForLog, recreateTargets, maskedInputs, refusalRecovery) {
|
|
20675
20679
|
const changes = /* @__PURE__ */ new Map();
|
|
20676
|
-
refuseMalformedResourceEntriesForDeploy(currentState, void 0, void 0);
|
|
20677
|
-
refuseMalformedResourceProperties(currentState, void 0, void 0);
|
|
20680
|
+
refuseMalformedResourceEntriesForDeploy(currentState, void 0, void 0, refusalRecovery);
|
|
20681
|
+
refuseMalformedResourceProperties(currentState, void 0, void 0, refusalRecovery);
|
|
20678
20682
|
const currentResources = currentState.resources;
|
|
20679
20683
|
const desiredResources = desiredTemplate.Resources;
|
|
20680
20684
|
this.logger.debug("Calculating diff...");
|
|
@@ -22103,7 +22107,7 @@ var CloudControlProvider = class {
|
|
|
22103
22107
|
const indeterminateGuard = await this.confirmDeleteTargetIdentity(logicalId, resourceType, physicalId, context);
|
|
22104
22108
|
if (context?.removeProtection === true && resourceType === "AWS::AutoScaling::AutoScalingGroup") {
|
|
22105
22109
|
this.logger.debug(`Delegating protected AutoScalingGroup ${logicalId} delete to the SDK ASGProvider (Cloud Control cannot force-delete a protected ASG)`);
|
|
22106
|
-
const { ASGProvider } = await import("./asg-provider-
|
|
22110
|
+
const { ASGProvider } = await import("./asg-provider-B0IrI6EW.js");
|
|
22107
22111
|
const delegateRegion = ambientRegion();
|
|
22108
22112
|
let asgProvider = this.asgDeleteDelegates.get(delegateRegion);
|
|
22109
22113
|
if (asgProvider === void 0) {
|
|
@@ -22209,7 +22213,7 @@ var CloudControlProvider = class {
|
|
|
22209
22213
|
const family = SDK_DELETE_FAMILIES.get(resourceType);
|
|
22210
22214
|
const cached = this.sdkDeleteDelegates.get(family);
|
|
22211
22215
|
if (cached !== void 0 && cached.region === ccRegion) return cached.provider;
|
|
22212
|
-
const provider = family === "rds" ? new (await (import("./rds-provider-
|
|
22216
|
+
const provider = family === "rds" ? new (await (import("./rds-provider-B0YTjZKU.js"))).RDSProvider({ region: ccRegion }) : new (await (import("./neptune-provider-DGaKBQxm.js"))).NeptuneProvider({ region: ccRegion });
|
|
22213
22217
|
this.sdkDeleteDelegates.set(family, {
|
|
22214
22218
|
region: ccRegion,
|
|
22215
22219
|
provider
|
|
@@ -25523,6 +25527,7 @@ const PROPERTY_SHAPES = /* @__PURE__ */ new Map([
|
|
|
25523
25527
|
["AWS::CloudFront::OriginAccessControl", "{\"OriginAccessControlConfig\":\"object\"}"],
|
|
25524
25528
|
["AWS::CloudTrail::Trail", "{\"AdvancedEventSelectors\":\"array\",\"AdvancedEventSelectors[]\":\"object\",\"AdvancedEventSelectors[].FieldSelectors\":\"array\",\"AdvancedEventSelectors[].FieldSelectors[]\":\"object\",\"AdvancedEventSelectors[].FieldSelectors[].EndsWith\":\"array\",\"AdvancedEventSelectors[].FieldSelectors[].Equals\":\"array\",\"AdvancedEventSelectors[].FieldSelectors[].NotEndsWith\":\"array\",\"AdvancedEventSelectors[].FieldSelectors[].NotEquals\":\"array\",\"AdvancedEventSelectors[].FieldSelectors[].NotStartsWith\":\"array\",\"AdvancedEventSelectors[].FieldSelectors[].StartsWith\":\"array\",\"AggregationConfigurations\":\"array\",\"AggregationConfigurations[]\":\"object\",\"AggregationConfigurations[].Templates\":\"array\",\"EventSelectors\":\"array\",\"EventSelectors[]\":\"object\",\"EventSelectors[].DataResources\":\"array\",\"EventSelectors[].DataResources[]\":\"object\",\"EventSelectors[].DataResources[].Values\":\"array\",\"EventSelectors[].ExcludeManagementEventSources\":\"array\",\"InsightSelectors\":\"array\",\"InsightSelectors[]\":\"object\",\"InsightSelectors[].EventCategories\":\"array\",\"Tags\":\"array\",\"Tags[]\":\"object\"}"],
|
|
25525
25529
|
["AWS::CloudWatch::Alarm", "{\"AlarmActions\":\"array\",\"Dimensions\":\"array\",\"Dimensions[]\":\"object\",\"EvaluationCriteria\":\"object\",\"EvaluationCriteria.PromQLCriteria\":\"object\",\"EvaluationWindow\":\"object\",\"EvaluationWindow.SlidingWindow\":\"object\",\"EvaluationWindow.WallClockWindow\":\"object\",\"InsufficientDataActions\":\"array\",\"Metrics\":\"array\",\"Metrics[]\":\"object\",\"Metrics[].MetricStat\":\"object\",\"Metrics[].MetricStat.Metric\":\"object\",\"Metrics[].MetricStat.Metric.Dimensions\":\"array\",\"Metrics[].MetricStat.Metric.Dimensions[]\":\"object\",\"OKActions\":\"array\",\"Tags\":\"array\",\"Tags[]\":\"object\",\"WarmUpConfiguration\":\"object\"}"],
|
|
25530
|
+
["AWS::CloudWatch::AnomalyDetector", "{\"Configuration\":\"object\",\"Configuration.ExcludedTimeRanges\":\"array\",\"Configuration.ExcludedTimeRanges[]\":\"object\",\"Dimensions\":\"array\",\"Dimensions[]\":\"object\",\"MetricCharacteristics\":\"object\",\"MetricMathAnomalyDetector\":\"object\",\"MetricMathAnomalyDetector.MetricDataQueries\":\"array\",\"MetricMathAnomalyDetector.MetricDataQueries[]\":\"object\",\"MetricMathAnomalyDetector.MetricDataQueries[].MetricStat\":\"object\",\"MetricMathAnomalyDetector.MetricDataQueries[].MetricStat.Metric\":\"object\",\"MetricMathAnomalyDetector.MetricDataQueries[].MetricStat.Metric.Dimensions\":\"array\",\"MetricMathAnomalyDetector.MetricDataQueries[].MetricStat.Metric.Dimensions[]\":\"object\",\"SingleMetricAnomalyDetector\":\"object\",\"SingleMetricAnomalyDetector.Dimensions\":\"array\",\"SingleMetricAnomalyDetector.Dimensions[]\":\"object\"}"],
|
|
25526
25531
|
["AWS::CodeCommit::Repository", "{\"Code\":\"object\",\"Code.S3\":\"object\",\"Tags\":\"array\",\"Tags[]\":\"object\",\"Triggers\":\"array\",\"Triggers[]\":\"object\",\"Triggers[].Branches\":\"array\",\"Triggers[].Events\":\"array\"}"],
|
|
25527
25532
|
["AWS::Cognito::UserPool", "{\"AccountRecoverySetting\":\"object\",\"AccountRecoverySetting.RecoveryMechanisms\":\"array\",\"AccountRecoverySetting.RecoveryMechanisms[]\":\"object\",\"AdminCreateUserConfig\":\"object\",\"AdminCreateUserConfig.InviteMessageTemplate\":\"object\",\"AliasAttributes\":\"array\",\"AutoVerifiedAttributes\":\"array\",\"DeviceConfiguration\":\"object\",\"EmailConfiguration\":\"object\",\"EnabledMfas\":\"array\",\"IssuerConfiguration\":\"object\",\"KeyConfiguration\":\"object\",\"LambdaConfig\":\"object\",\"LambdaConfig.CustomEmailSender\":\"object\",\"LambdaConfig.CustomSMSSender\":\"object\",\"LambdaConfig.InboundFederation\":\"object\",\"LambdaConfig.PreTokenGenerationConfig\":\"object\",\"Policies\":\"object\",\"Policies.PasswordPolicy\":\"object\",\"Policies.SignInPolicy\":\"object\",\"Policies.SignInPolicy.AllowedFirstAuthFactors\":\"array\",\"Schema\":\"array\",\"Schema[]\":\"object\",\"Schema[].NumberAttributeConstraints\":\"object\",\"Schema[].StringAttributeConstraints\":\"object\",\"SmsConfiguration\":\"object\",\"SmsConfiguration.EumsSms\":\"object\",\"UserAttributeUpdateSettings\":\"object\",\"UserAttributeUpdateSettings.AttributesRequireVerificationBeforeUpdate\":\"array\",\"UserPoolAddOns\":\"object\",\"UserPoolAddOns.AdvancedSecurityAdditionalFlows\":\"object\",\"UserPoolTags\":\"object\",\"UsernameAttributes\":\"array\",\"UsernameConfiguration\":\"object\",\"VerificationMessageTemplate\":\"object\"}"],
|
|
25528
25533
|
["AWS::DLM::LifecyclePolicy", "{\"CrossRegionCopyTargets\":\"array\",\"CrossRegionCopyTargets[]\":\"object\",\"Exclusions\":\"object\",\"Exclusions.ExcludeTags\":\"array\",\"Exclusions.ExcludeTags[]\":\"object\",\"Exclusions.ExcludeVolumeTypes\":\"array\",\"PolicyDetails\":\"object\",\"PolicyDetails.Actions\":\"array\",\"PolicyDetails.Actions[]\":\"object\",\"PolicyDetails.Actions[].CrossRegionCopy\":\"array\",\"PolicyDetails.Actions[].CrossRegionCopy[]\":\"object\",\"PolicyDetails.Actions[].CrossRegionCopy[].EncryptionConfiguration\":\"object\",\"PolicyDetails.Actions[].CrossRegionCopy[].RetainRule\":\"object\",\"PolicyDetails.CrossRegionCopyTargets\":\"array\",\"PolicyDetails.CrossRegionCopyTargets[]\":\"object\",\"PolicyDetails.EventSource\":\"object\",\"PolicyDetails.EventSource.Parameters\":\"object\",\"PolicyDetails.EventSource.Parameters.SnapshotOwner\":\"array\",\"PolicyDetails.Exclusions\":\"object\",\"PolicyDetails.Exclusions.ExcludeTags\":\"array\",\"PolicyDetails.Exclusions.ExcludeTags[]\":\"object\",\"PolicyDetails.Exclusions.ExcludeVolumeTypes\":\"array\",\"PolicyDetails.Parameters\":\"object\",\"PolicyDetails.Parameters.ExcludeDataVolumeTags\":\"array\",\"PolicyDetails.Parameters.ExcludeDataVolumeTags[]\":\"object\",\"PolicyDetails.ResourceLocations\":\"array\",\"PolicyDetails.ResourceTypes\":\"array\",\"PolicyDetails.Schedules\":\"array\",\"PolicyDetails.Schedules[]\":\"object\",\"PolicyDetails.Schedules[].ArchiveRule\":\"object\",\"PolicyDetails.Schedules[].ArchiveRule.RetainRule\":\"object\",\"PolicyDetails.Schedules[].ArchiveRule.RetainRule.RetentionArchiveTier\":\"object\",\"PolicyDetails.Schedules[].CreateRule\":\"object\",\"PolicyDetails.Schedules[].CreateRule.Scripts\":\"array\",\"PolicyDetails.Schedules[].CreateRule.Scripts[]\":\"object\",\"PolicyDetails.Schedules[].CreateRule.Scripts[].Stages\":\"array\",\"PolicyDetails.Schedules[].CreateRule.Times\":\"array\",\"PolicyDetails.Schedules[].CrossRegionCopyRules\":\"array\",\"PolicyDetails.Schedules[].CrossRegionCopyRules[]\":\"object\",\"PolicyDetails.Schedules[].CrossRegionCopyRules[].DeprecateRule\":\"object\",\"PolicyDetails.Schedules[].CrossRegionCopyRules[].RetainRule\":\"object\",\"PolicyDetails.Schedules[].DeprecateRule\":\"object\",\"PolicyDetails.Schedules[].FastRestoreRule\":\"object\",\"PolicyDetails.Schedules[].FastRestoreRule.AvailabilityZoneIds\":\"array\",\"PolicyDetails.Schedules[].FastRestoreRule.AvailabilityZones\":\"array\",\"PolicyDetails.Schedules[].RetainRule\":\"object\",\"PolicyDetails.Schedules[].ShareRules\":\"array\",\"PolicyDetails.Schedules[].ShareRules[]\":\"object\",\"PolicyDetails.Schedules[].ShareRules[].TargetAccounts\":\"array\",\"PolicyDetails.Schedules[].TagsToAdd\":\"array\",\"PolicyDetails.Schedules[].TagsToAdd[]\":\"object\",\"PolicyDetails.Schedules[].VariableTags\":\"array\",\"PolicyDetails.Schedules[].VariableTags[]\":\"object\",\"PolicyDetails.TargetTags\":\"array\",\"PolicyDetails.TargetTags[]\":\"object\",\"Tags\":\"array\",\"Tags[]\":\"object\"}"],
|
|
@@ -27536,8 +27541,17 @@ function sanitizeSnapshotBase(physicalId) {
|
|
|
27536
27541
|
return base;
|
|
27537
27542
|
}
|
|
27538
27543
|
function finalSnapshotNamePrefix(physicalId, resourceType) {
|
|
27544
|
+
return finalSnapshotNameCut(physicalId, resourceType).prefix;
|
|
27545
|
+
}
|
|
27546
|
+
function finalSnapshotNameCut(physicalId, resourceType) {
|
|
27539
27547
|
const maxLength = resourceType === "AWS::ElastiCache::CacheCluster" || resourceType === "AWS::ElastiCache::ReplicationGroup" ? 50 : 255;
|
|
27540
|
-
|
|
27548
|
+
const sanitized = sanitizeSnapshotBase(physicalId);
|
|
27549
|
+
const base = sanitized.slice(0, maxLength - 22).replace(/-+$/, "");
|
|
27550
|
+
return {
|
|
27551
|
+
prefix: `${base}-final-`,
|
|
27552
|
+
sanitized,
|
|
27553
|
+
kept: base.length
|
|
27554
|
+
};
|
|
27541
27555
|
}
|
|
27542
27556
|
function buildFinalSnapshotIdentifier(physicalId, resourceType, now = /* @__PURE__ */ new Date()) {
|
|
27543
27557
|
const ts = now.toISOString().replace(/[-:]/g, "").replace(/\..*$/, "").replace("T", "-").toLowerCase();
|
|
@@ -28203,8 +28217,24 @@ function secretNameNeedlesOf(logicalId, record, secrets, options) {
|
|
|
28203
28217
|
if (embeddedBag !== void 0 && physicalId !== void 0) {
|
|
28204
28218
|
for (const needle of printingCorpusOf(embeddedBag).keys()) if (needle !== "" && (needle === physicalId || needle.length >= 4 && physicalId.includes(needle))) add(needle);
|
|
28205
28219
|
}
|
|
28220
|
+
if (physicalId !== void 0) for (const spelling of finalSnapshotSpellingsOf(physicalId, record?.resourceType, needles)) add(spelling);
|
|
28206
28221
|
return needles.size > 0 ? needles : void 0;
|
|
28207
28222
|
}
|
|
28223
|
+
function finalSnapshotSpellingsOf(physicalId, resourceType, needles) {
|
|
28224
|
+
if (typeof resourceType !== "string" || !(ATOMIC_FINAL_SNAPSHOT_TYPES.has(resourceType) || PRE_DELETE_SNAPSHOT_TYPES.has(resourceType))) return [];
|
|
28225
|
+
const { prefix, sanitized, kept } = finalSnapshotNameCut(physicalId, resourceType);
|
|
28226
|
+
const spellings = [];
|
|
28227
|
+
for (const needle of needles) {
|
|
28228
|
+
const folded = needle.toLowerCase().replace(/[^a-z0-9-]/g, "-").replace(/-{2,}/g, "-");
|
|
28229
|
+
if (folded.length < 4) continue;
|
|
28230
|
+
for (let at = sanitized.indexOf(folded); at !== -1; at = sanitized.indexOf(folded, at + 1)) {
|
|
28231
|
+
if (at >= kept) break;
|
|
28232
|
+
if (at + folded.length > kept) spellings.push(prefix);
|
|
28233
|
+
else if (folded !== needle) spellings.push(folded);
|
|
28234
|
+
}
|
|
28235
|
+
}
|
|
28236
|
+
return spellings;
|
|
28237
|
+
}
|
|
28208
28238
|
function secretNamesReadBy(logicalId, record, resources, judge = () => ({
|
|
28209
28239
|
secrets: void 0,
|
|
28210
28240
|
embedded: void 0
|
|
@@ -35127,7 +35157,7 @@ async function provisionUpdate(logicalId, change, stateResources, stackName, tem
|
|
|
35127
35157
|
return;
|
|
35128
35158
|
}
|
|
35129
35159
|
this.refuseRedactedAttributeReads(logicalId, resourceType, context);
|
|
35130
|
-
if (!(currentResource.resourceType === "AWS::CloudFormation::Stack" && currentResource.provisionedBy !== "cc-api") && !hasAddressablePhysicalId(currentResource)) throw markRefusedBeforeApplying(markNonRetryable(new CdkdError(unaddressableUpdateRefusalMessage(stackName, this.stackRegion, logicalId, oldResourceType), STATE_RESOURCES_MALFORMED)));
|
|
35160
|
+
if (!(currentResource.resourceType === "AWS::CloudFormation::Stack" && currentResource.provisionedBy !== "cc-api") && !hasAddressablePhysicalId(currentResource)) throw markRefusedBeforeApplying(markNonRetryable(new CdkdError(unaddressableUpdateRefusalMessage(stackName, this.stackRegion, logicalId, oldResourceType, this.options.refusalRecovery), STATE_RESOURCES_MALFORMED)));
|
|
35131
35161
|
this.attemptedResolvedProps.set(logicalId, resolvedProps);
|
|
35132
35162
|
const noEchoHeldPaths = /* @__PURE__ */ new Set();
|
|
35133
35163
|
if (change.propertyChanges?.some((pc) => pc.requiresReplacement) === true) {
|
|
@@ -35781,15 +35811,21 @@ async function provisionDelete(logicalId, change, stateResources, stackName, tem
|
|
|
35781
35811
|
renderer.removeTask(logicalId);
|
|
35782
35812
|
const skipLine = formatResourceLine("skipped", logicalId, resourceType, `skipped (${reason})`);
|
|
35783
35813
|
this.logger.info(safeMsg`${skipPrefix}${skipLine}`);
|
|
35784
|
-
const
|
|
35785
|
-
|
|
35786
|
-
|
|
35787
|
-
|
|
35788
|
-
|
|
35789
|
-
|
|
35790
|
-
|
|
35791
|
-
|
|
35792
|
-
|
|
35814
|
+
const recovery = this.options.refusalRecovery;
|
|
35815
|
+
const account = accountArgs(recovery);
|
|
35816
|
+
const showCommand = pasteableCommand("cdkd state show", [
|
|
35817
|
+
{
|
|
35818
|
+
value: stackName,
|
|
35819
|
+
hole: "stack",
|
|
35820
|
+
opts: { plainIdent: true }
|
|
35821
|
+
},
|
|
35822
|
+
{
|
|
35823
|
+
flag: "--stack-region",
|
|
35824
|
+
value: this.stackRegion,
|
|
35825
|
+
hole: "region"
|
|
35826
|
+
},
|
|
35827
|
+
...account
|
|
35828
|
+
]).command;
|
|
35793
35829
|
const dropCommand = pasteableCommand("cdkd state orphan", [
|
|
35794
35830
|
{
|
|
35795
35831
|
value: stackName,
|
|
@@ -35806,9 +35842,11 @@ async function provisionDelete(logicalId, change, stateResources, stackName, tem
|
|
|
35806
35842
|
value: logicalId,
|
|
35807
35843
|
hole: "logicalId",
|
|
35808
35844
|
opts: { plainIdent: true }
|
|
35809
|
-
}
|
|
35845
|
+
},
|
|
35846
|
+
...account
|
|
35810
35847
|
]).command;
|
|
35811
|
-
|
|
35848
|
+
const accountClause = withheldAccountClause(recovery, "the command lines below print").trimEnd();
|
|
35849
|
+
this.logger.warn(safeMsg`Resource ${displaySafe(logicalId)} (${displaySafe(resourceType)}) has no non-empty string 'physicalId' in its state record, so cdkd cannot address it in AWS and did not try to delete it while removing it from the template. Its cdkd state record was KEPT, so the next 'cdkd deploy' re-attempts the delete. Repair the record's 'physicalId', or delete the resource by hand and drop the record.${accountClause === "" ? "" : ` ${accountClause}`}
|
|
35812
35850
|
Inspect it with: ${showCommand}
|
|
35813
35851
|
Drop the record with: ${dropCommand}`);
|
|
35814
35852
|
if (counts) counts.deleteSkipped++;
|
|
@@ -35852,16 +35890,23 @@ Drop the record with: ${dropCommand}`);
|
|
|
35852
35890
|
const nested = resourceType === "AWS::CloudFormation::Stack";
|
|
35853
35891
|
const recordStack = nested ? nestedChildStackName(stackName, logicalId) : stackName;
|
|
35854
35892
|
const interrupted = nested && deleteSkipped.endsWith(" was interrupted");
|
|
35893
|
+
const recovery = this.options.refusalRecovery;
|
|
35894
|
+
const account = accountArgs(recovery);
|
|
35895
|
+
const accountClause = withheldAccountClause(recovery, "the command lines below print").trimEnd();
|
|
35855
35896
|
const stackArg = {
|
|
35856
35897
|
value: recordStack,
|
|
35857
35898
|
hole: nested ? "child-stack" : "stack",
|
|
35858
35899
|
opts: { plainIdent: true }
|
|
35859
35900
|
};
|
|
35860
|
-
this.logger.warn(deleteSkippedMessage(logicalId, currentResource.physicalId, deleteSkipped, "while removing it from the template") + ". Its cdkd state record was KEPT, so the next 'cdkd deploy' re-attempts the delete. Repair the record first (for a nested stack it is the CHILD's own state, whose other resources may already be gone), or delete the resource by hand and drop the record." + (interrupted ? " The commands name the child stack record. Its destroy was interrupted: re-run 'cdkd deploy' to resume it, and drop the child record only if that cannot finish, after deleting by hand what the child still holds (the inspect command with --show-nested lists every level; a child with nested stacks of its own has records under '<child>~<logicalId>' too, each needing the same drop)." : nested ? " The commands name the child stack record. Dropping it drops every record the child still has and nothing reaches those resources again, so first delete by hand what the child still holds (the inspect command with --show-nested lists every level; a child with nested stacks of its own has records under '<child>~<logicalId>' too, each needing the same drop). The next 'cdkd deploy' then removes this row." : " Keep '--resource' on the drop: without it the command drops the record of every resource in this still-deployed stack.") + `\nInspect it with: ${pasteableCommand("cdkd state show", [
|
|
35861
|
-
|
|
35862
|
-
|
|
35863
|
-
|
|
35864
|
-
|
|
35901
|
+
this.logger.warn(deleteSkippedMessage(logicalId, currentResource.physicalId, deleteSkipped, "while removing it from the template") + ". Its cdkd state record was KEPT, so the next 'cdkd deploy' re-attempts the delete. Repair the record first (for a nested stack it is the CHILD's own state, whose other resources may already be gone), or delete the resource by hand and drop the record." + (interrupted ? " The commands name the child stack record. Its destroy was interrupted: re-run 'cdkd deploy' to resume it, and drop the child record only if that cannot finish, after deleting by hand what the child still holds (the inspect command with --show-nested lists every level; a child with nested stacks of its own has records under '<child>~<logicalId>' too, each needing the same drop)." : nested ? " The commands name the child stack record. Dropping it drops every record the child still has and nothing reaches those resources again, so first delete by hand what the child still holds (the inspect command with --show-nested lists every level; a child with nested stacks of its own has records under '<child>~<logicalId>' too, each needing the same drop). The next 'cdkd deploy' then removes this row." : " Keep '--resource' on the drop: without it the command drops the record of every resource in this still-deployed stack.") + (accountClause === "" ? "" : ` ${accountClause}`) + `\nInspect it with: ${pasteableCommand("cdkd state show", [
|
|
35902
|
+
stackArg,
|
|
35903
|
+
{
|
|
35904
|
+
flag: "--stack-region",
|
|
35905
|
+
value: this.stackRegion,
|
|
35906
|
+
hole: "region"
|
|
35907
|
+
},
|
|
35908
|
+
...account
|
|
35909
|
+
]).command}\nDrop the record with: ${pasteableCommand("cdkd state orphan", [
|
|
35865
35910
|
stackArg,
|
|
35866
35911
|
{
|
|
35867
35912
|
flag: "--stack-region",
|
|
@@ -35873,7 +35918,8 @@ Drop the record with: ${dropCommand}`);
|
|
|
35873
35918
|
value: logicalId,
|
|
35874
35919
|
hole: "logicalId",
|
|
35875
35920
|
opts: { plainIdent: true }
|
|
35876
|
-
}]
|
|
35921
|
+
}],
|
|
35922
|
+
...account
|
|
35877
35923
|
]).command}`);
|
|
35878
35924
|
if (counts) counts.deleteSkipped++;
|
|
35879
35925
|
return { deleteSkipped };
|
|
@@ -37324,12 +37370,12 @@ async function doDeployWithPrefetch(stackName, template, createOnlyPrefetch) {
|
|
|
37324
37370
|
};
|
|
37325
37371
|
const currentEtag = currentStateData?.etag;
|
|
37326
37372
|
this.healBaseline = currentState.resources ?? {};
|
|
37327
|
-
refuseMalformedOutputs(currentState, stackName, this.stackRegion);
|
|
37328
|
-
refuseMalformedResourcesForDeploy(currentState, stackName, this.stackRegion);
|
|
37329
|
-
refuseMalformedResourceEntriesForDeploy(currentState, stackName, this.stackRegion);
|
|
37330
|
-
refuseMalformedResourceProperties(currentState, stackName, this.stackRegion);
|
|
37331
|
-
refuseMalformedOrphans(currentState, stackName, this.stackRegion);
|
|
37332
|
-
refuseMalformedOrphanRecords(currentState, stackName, this.stackRegion);
|
|
37373
|
+
refuseMalformedOutputs(currentState, stackName, this.stackRegion, this.options.refusalRecovery);
|
|
37374
|
+
refuseMalformedResourcesForDeploy(currentState, stackName, this.stackRegion, this.options.refusalRecovery);
|
|
37375
|
+
refuseMalformedResourceEntriesForDeploy(currentState, stackName, this.stackRegion, this.options.refusalRecovery);
|
|
37376
|
+
refuseMalformedResourceProperties(currentState, stackName, this.stackRegion, this.options.refusalRecovery);
|
|
37377
|
+
refuseMalformedOrphans(currentState, stackName, this.stackRegion, this.options.refusalRecovery);
|
|
37378
|
+
refuseMalformedOrphanRecords(currentState, stackName, this.stackRegion, this.options.refusalRecovery);
|
|
37333
37379
|
const migrationPending = currentStateData?.migrationPending ?? false;
|
|
37334
37380
|
this.logger.debug(`Loaded current state: ${Object.keys(currentState.resources).length} resources`);
|
|
37335
37381
|
if (this.options.onCurrentStateLoaded) await this.options.onCurrentStateLoaded(stackName, currentStateData?.state);
|
|
@@ -37426,7 +37472,7 @@ async function doDeployWithPrefetch(stackName, template, createOnlyPrefetch) {
|
|
|
37426
37472
|
sources: maskedInputSourcesForDiff,
|
|
37427
37473
|
rebaselined: /* @__PURE__ */ new Map()
|
|
37428
37474
|
};
|
|
37429
|
-
const changes = await this.diffCalculator.calculateDiff(currentState, effectiveTemplate, diffResolveFn, makeCanonicalizePropertiesFn(this.providerRegistry), this.providerRegistry.getAllowedUnsupportedProperties?.(), this.freshNoEchoParameters(parameterValues), this.diffLogMasker(diffResolverContext.recordedSecretValues, effectiveTemplate, parameterValues), recreateTargetIdsFor(this.options.recreateTargets, stackName), maskedInputs);
|
|
37475
|
+
const changes = await this.diffCalculator.calculateDiff(currentState, effectiveTemplate, diffResolveFn, makeCanonicalizePropertiesFn(this.providerRegistry), this.providerRegistry.getAllowedUnsupportedProperties?.(), this.freshNoEchoParameters(parameterValues), this.diffLogMasker(diffResolverContext.recordedSecretValues, effectiveTemplate, parameterValues), recreateTargetIdsFor(this.options.recreateTargets, stackName), maskedInputs, this.options.refusalRecovery);
|
|
37430
37476
|
createOnlyPrefetch.cancel();
|
|
37431
37477
|
for (const [logicalId, fingerprints] of maskedInputs?.rebaselined ?? []) {
|
|
37432
37478
|
const record = currentState.resources[logicalId];
|
|
@@ -38104,5 +38150,5 @@ DeployEngine.prototype.replacementNameOrigin = replacementNameOrigin;
|
|
|
38104
38150
|
DeployEngine.prototype.orphanedNameCollisionAdvice = orphanedNameCollisionAdvice;
|
|
38105
38151
|
|
|
38106
38152
|
//#endregion
|
|
38107
|
-
export { resourcesNamingDeclaredParameter as $, maskSecretsInError as $a, repairMalformedResourceEntriesForReadOnly as $i, deleteSkipReason as $n, ensureAssetStorage as $o, deployRefusesOrphanRowsReason as $r, derivePartitionAndUrlSuffix as $s, effectiveDeletionPolicy as $t, resolveDynamoDbDeleteBudgetClock as A, requireConfigObject as Aa, refuseMalformedOrphans as Ai, acquireIdempotencyToken as An, acceptedCreateOnlyDropsOf as Ao, s3BucketWebsiteUrl as Ar, getDefaultStateBucketName as As, planRollback as At, getPriorAttempts as B, TemplateParser as Ba, refuseMalformedResourceEntriesForImportSave as Bi, CC_BROKEN_REASON as Bn, orphansCarriedFrom as Bo, AWS_NO_VALUE as Br, stateBucketExistenceConfirmed as Bs, updatePartialMessage as Bt, perType as C, coerceCfnInteger as Ca, malformedScrubResourceEntriesRefusalMessage as Ci, findDestructiveChanges as Cn, WHOLE_DYNAMIC_REFERENCE_PATTERN as Co, callerEnvCredentials as Cr, warnFinchArgvExposure as Cs, getStackRecords as Ct, beginDeleteWait as D, readConfigString as Da, refuseMalformedNestedChildOutputs as Di, ledgerForStack as Dn, S3StateBackend as Do, s3BucketDomainName as Dr, getDockerImageBySourceHash as Ds, isJournaledOrphan as Dt, DYNAMODB_DELETE_MIN_RESOURCE_TIMEOUT_MS as E, configStringRefusal as Ea, refuseDivergentRecordRegionForDestroy as Ei, earliestDefined as En, isLockInfoExpired as Eo, s3BucketArn as Er, AssetManifestLoader as Es, demoteSupersededOrphans as Et, waitForIndexesSettled as F, withRetry as Fa, refuseMalformedResourceAttributesForOrphan as Fi, refuseMalformedDesiredTags as Fn, hasUnverifiableParameterRefusal as Fo, isImpossibleEmptyStoredAttribute as Fr, resolveCaptureObservedState as Fs, inheritProducerRegions as Ft, cyan as G, literalSplitDelimitersOf as Ga, refuseMalformedResourcePropertiesForOrphan as Gi, getCurrentResourceSecrets as Gn, WorkGraph as Go, withSharedDrainBudget as Gr, MIGRATE_TMP_PREFIX as Gs, orphanRecordsPrintingBag as Gt, formatResourceLine as H, carryLogOnlyValues as Ha, refuseMalformedResourcePropertiesForDestroy as Hi, ccBrokenReason as Hn, AssetPublisher as Ho, isStalePlaceholderArnAttribute as Hr, ssmResolvedValueType as Hs, completedReplayEntries as Ht, ECR_AUTO_DELETE_IMAGES_TAG as I, canonicalLambdaFunctionName as Ia, refuseMalformedResourceEntries as Ii, tagMapAsList as In, importableOutputKeys as Io, carriesDynamicReference as Ir, resolveSkipPrefix as Is, REDACTED_DELETE_ADDRESS_SKIP_REASON as It, red as J, recordLogOnlyParameterValue as Ja, refuseMalformedResourcesForExport as Ji, slowCcOperationTimeoutMs as Jn, loadPublishableAssetManifest as Jo, JSON_LISTING_HOLE_VALUE as Jr, CUSTOM_RESOURCE_RESPONSE_OBJECT_DESCRIPTION as Js, ATOMIC_FINAL_SNAPSHOT_TYPES as Jt, gray as K, logOnlyValueCount as Ka, refuseMalformedResourcesForDeploy as Ki, withPrintingSecrets as Kn, buildAssetRedirectMap as Ko, parameterInputsFor as Kr, findLargeInlineResources as Ks, secretNamePrintingBag as Kt, S3_AUTO_DELETE_OBJECTS_TAG as L, lambdaFunctionNameForMask as La, refuseMalformedResourceEntriesForDeploy as Li, tagPlanWarning as Ln, importableOutputs as Lo, carriesFetchableDynamicReference as Lr, resolveStateBucketWithDefault as Ls, isRedactedRecordedValue as Lt, DELETE_INDEX_WAIT_PROCEED_NOTE as M, prefetchCreateOnlyPropertyPaths as Ma, refuseMalformedOrphansForOrphan as Mi, DBPROXY_TAG_OPTIONS as Mn, exportNamesCarriedFrom as Mo, isUnboundTemplateParameter as Mr, loadCdkJson as Ms, resolveReplacementOldType as Mt, INDEX_SETTLE_POLL_INTERVAL_MS as N, templateResourceTypes as Na, refuseMalformedOutputs as Ni, planTagDiff as Nn, hasReadableExportSet as No, parameterTypeMayLoseSecretIdentity as Nr, resolveApp as Ns, findNestedStackTypeChanges as Nt, compensateRemovedDeletionProtection as O, replayWarn as Oa, refuseMalformedOrphanRecords as Oi, reserveStackCreateToken as On, rebuildClientForBucketRegion as Oo, s3BucketDualStackDomainName as Or, Synthesizer as Os, isReplacementOrphan as Ot, deleteTableWithIndexBusyRetry as P, describeTypeWithThrottleRetry as Pa, refuseMalformedOutputsForDestroy as Pi, readTagList as Pn, hasReasonlessBaselineRefusal as Po, getAccountInfo as Pr, resolveAutoAssetStorage as Ps, getCurrentProducerRegions as Pt, reachableDivergentParameters as Q, errorCauseChain as Qa, repairMalformedOutputsForReadOnly as Qi, deleteIndeterminateGuards as Qn, assertAssetBucketRegion as Qo, UNREADABLE_RESOURCES_MAP_ROW as Qr, canonicalizeRegion as Qs, createPreDeleteFinalSnapshot as Qt, hasCdkAutoDeleteTag as R, sameLambdaFunctionAddress as Ra, refuseMalformedResourceEntriesForDestroy as Ri, definedAttributes as Rn, isReadableBag as Ro, isNamelessDynamicReferenceError as Rr, resolveStateBucketWithDefaultAndSource as Rs, redactedDeleteAddressFields as Rt, isProtectionValueActive as S, coerceCfnBoolean as Sa, malformedResourcesWarning as Si, constructPathOf as Sn, TEMPLATE_SOURCED_RULES as So, applyCallerIdentityCredentials as Sr, runDockerStreaming as Ss, destroyStackRecordsView as St, DynamoDBGlobalTableProvider as T, configIntegerRefusal as Ta, previewableOrphanRecords as Ti, RollbackInlinePolicyWriters as Tn, LockManager as To, isSettledInstanceState as Tr, stripControlChars as Ts, recordAfterRollbackUpdate as Tt, createReadOnlyAttributeHealerFactory as U, createUnionSecretMasker as Ua, refuseMalformedResourcePropertiesForDrift as Ui, wouldReturnToSdkProvider as Un, isSensitiveAttributeName as Uo, refStateLookupFromResource as Ur, CFN_TEMPLATE_BODY_LIMIT as Us, journaledOrphanPrintingBag as Ut, markRefusedBeforeApplying as V, liveMatchesUnresolvedTokenFrame as Va, refuseMalformedResourceEntriesForOrphan as Vi, ProviderRegistry as Vn, shouldRetainResource as Vo, cfnRefValueFromPhysicalId as Vr, warnDeprecatedNoPrefixCliFlag as Vs, updatePartialReason as Vt, bold as W, hasMaskableValues as Wa, refuseMalformedResourcePropertiesForExport as Wi, isCustomResourceType as Wn, stringifyValue as Wo, parseWebACLArn as Wr, CFN_TEMPLATE_URL_LIMIT as Ws, maskEventTextWithBoundBags as Wt, computeParameterTaint as X, shareLogOnlyValues as Xa, repairMalformedOrphanRecordsForReadOnly as Xi, unchangedBehindSecretReference as Xn, AssetModeResolver as Xo, STATE_RESOURCES_MALFORMED as Xr, expectedOwnerParam as Xs, buildFinalSnapshotIdentifier as Xt, yellow as Y, recordLogOnlyValue as Ya, refuseMalformedState as Yi, ccProtectionRegistryTypes as Yn, rewriteTemplateAssetReferences as Yo, STATE_REGION_DIVERGED as Yr, decodeListingKey as Ys, PRE_DELETE_SNAPSHOT_TYPES as Yt, namesAnyDeclaredParameter as Z, createSecretMasker as Za, repairMalformedOrphansForReadOnly as Zi, UNSPECIFIED_SKIP_REASON as Zn, BOOTSTRAP_MARKER_PREFIX as Zo, UNREADABLE_ORPHANS_CONTAINER_ROW as Zr, PARTITION_TABLE as Zs, ccRoutedFinalSnapshotError as Zt, makeCanonicalizePropertiesFn as _, WARM_THROUGHPUT_MEMBERS as _a, malformedOutputsRefusalMessage as _i, isExportAliasCollision as _n, recordProvenPublicExpression as _o, assertSendableRoleArn as _r, isMalformedEnvKey as _s, getCurrentNestedStackContext as _t, findNestedTemplateTreeDefect as a, findActionableSilentDrops as aa, hasPlainPrototype$1 as ac, isReadableResourceEntry as ai, extractDeploymentEventError as an, dynamicReferenceTokens as ao, isTerminationProtectionPropagationError as ar, validateContainerRepoName as as, makeSiblingClaimReader as at, recordedProtectionNote as b, toCfnInteger as ba, malformedResourceEntriesWarning as bi, DEFAULT_RESOURCE_WARN_AFTER_MS as bn, STATE_SOURCED_CROSS_GENERATION_RULES as bo, sendableAssumeRoleCommand as br, redactedDockerCause as bs, replayRollback as bt, renderNestedTemplateTreeDefect as c, withoutSilentDropProperties as ca, absoluteAssemblyPathEscape as cc, malformedExportSourceWarning as ci, exportAliasCollisionScrubWarning as cn, inheritNestedStackParameterAssociations as co, reEnableInstanceApiTermination as cr, resolveDockerContextDirectory as cs, displacedOpClause as ct, conditionInputsFrom as d, findReplacedReadersOfRecreateTargets as da, renderAssemblyPathEscape as dc, malformedLocalResourcesWarning as di, secretSafeKeyDisplay as dn, identityKeyFor as do, IntrinsicFunctionResolver as dr, describeDockerFailure as ds, getNestedRevertRun as dt, repairMalformedResourcePropertiesForReadOnly as ea, AssemblyReader as ec, displayLogicalId as ei, isFinalSnapshotError as en, maskSecretsInText as eo, withIndeterminateGuard as er, getBootstrapMarkerKey as es, deleteJournaledOrphans as et, parentSuppliedValues as f, shownType as fa, resolveAssemblyPath as fc, malformedOrphanRecordsRefusalMessage as fi, exportNameSecretExposure as fn, carriesSecretMask as fo, classifyReplaySecretRegion as fr, dockerSpawnEnvWithSensitive as fs, nestedChildStackName as ft, mergeNoChangeOutputs as g, renderStatefulReason as ga, malformedOrphansWarning as gi, collectPublishedOutputNames as gn, recordNoEchoAttributeValues as go, assertFlagRoleArn as gr, isDockerClientEnvKey as gs, withNestedRevertRun as gt, keptWholeReasonText as h, isStatefulRecreateTargetSync as ha, malformedOrphansRefusalMessage as hi, collectDeclaredOutputNames as hn, recordMaskOnlyValuesIn as ho, applyRoleArnIfSet as hr, getDockerCmd as hs, revertedNestedRowIds as ht, childTemplateLoader as i, unreadableResourceEntries as ia, hasOwnKey as ic, isReadableOrphanRecord as ii, DeploymentEventsStore as in, DYNAMIC_REFERENCE_TOKEN_SCAN as io, ec2InstanceProtectionSite as ir, validateAssetBucketName as is, sameJournaledOrphans as it, resolveDynamoDbDeleteBudgetMs as j, requireConfigString as ja, refuseMalformedOrphansForDestroy as ji, DBPROXY_TAGS_WHAT as jn, describeRegionValueKind as jo, coerceParameterTypedValue as jr, getLegacyStateBucketName as js, replacementNeverSwapped as jt, deleteBudgetKey as k, requireConfigArray as ka, refuseMalformedOrphanRecordsForDestroy as ki, withCreateTokenLedger as kn, splitImportedOps as ko, s3BucketRegionalDomainName as kr, synthesisStatusMessage as ks, planFailedOps as kt, templateIdentity as l, NO_CC_HANDLERS_REASON as la, describeFileReadFailure as lc, malformedLocalOutputsWarning as li, secretBearing as ln, recordNestedStackParameterExpressions as lo, DiffCalculator as lr, describeDockerCapturedOutput as ls, displacedPhysicalIdShown as lt, isSecretBearingReferenceString as m, isStatefulRecreateTargetForReplace as ma, resolveBucketRegion as mc, malformedOrphanRowsKeptWarning as mi, noEchoParameterValueSeed as mn, recordMaskOnlyValue as mo, regionLessSecretName as mr, formatDockerLoginError as ms, revertNestedChildFromJournal as mt, IMPLICIT_DELETE_DEPENDENCIES as n, unpreviewableOrphanRecords as na, processStackMessages as nc, hasReadableOutputs as ni, unsupportedFinalSnapshotError as nn, redactSecretsForState as no, markWaitAbandoned as nr, parseBootstrapMarker as ns, journaledOrphanLines as nt, isAbsoluteAssetPath as o, findSilentDropProperties as oa, nullPrototypeRecord as oc, malformedDriftResourcePropertiesWarning as oi, WITHHELD_NAME_DISPLAY as on, isUncertifiedBaselineMaskPosition as oo, observeThenDisableInstanceApiTermination as or, buildDenyExternalAccessPolicy as os, planOrphanAdoption as ot, readRecordedConditionVerdicts as p, MULTI_REGION_RECREATE_BLOCKED_TYPES as pa, clearBucketRegionCache as pc, malformedOrphanRecordsWarning as pi, isWholeDynamicReferenceValue as pn, provenPublicValue as po, producerRegionsFromState as pr, finchSecretArgvRefusal as ps, recordDisplacedSkips as pt, green as q, printingCorpusOf as qa, refuseMalformedResourcesForDestroy as qi, CloudControlProvider as qn, createAssetRedirectResolver as qo, passedParameterClassesOf as qr, uploadCfnTemplate as qs, stateSecretNameNeedles as qt, computeImplicitDeleteEdges as r, unreadableOrphanRecords as ra, defineOwnKey as rc, hasReadableResources as ri, DeploymentEventsReader as rn, scrubResourceRecord as ro, disableInstanceApiTermination as rr, readBootstrapMarkerBody as rs, loadJournaledOrphans as rt, listNestedTemplateRows as s, unwrittenCreateOnlyReplacement as sa, ownValue as sc, malformedExportNamesWarning as si, displayTextOrWithheld as sn, pathCrossesDottedKey as so, reDisableInstanceApiTermination as sr, buildDockerImage as ss, NESTED_PENDING_PARENT_REASON as st, DeployEngine as t, repairMalformedResourcesForReadOnly as ta, StageLoadError as tc, hasReadableOrphans as ti, refusesFinalSnapshot as tn, markSameGenerationBag as to, isWaitAbandonedError as tr, isCrossRegionRedirect as ts, isHandledOrphan as tt, conditionFingerprint as u, hasNoCloudControlHandlers as ua, displayAssemblyPath as uc, malformedLocalResourceEntriesWarning as ui, secretBearingStateKeyWarning as un, recoverMaskedOutput as uo, INTRINSIC_KEYS as ur, describeDockerExecFailure as us, dropSettledNestedJournals as ut, withResourceDeadline as v, coerceWarmThroughput as va, malformedOutputsWarning as vi, bindingSkippedOutputs as vn, wholeStringLeavesOf as vo, explicitRoleArnOrThrow as vr, partitionSensitiveEnv as vs, withNestedStackContext as vt, readProtection as w, configBooleanRefusal as wa, malformedStateRefusalMessage as wi, formatDestructiveChange as wn, isSingleDynamicReferenceToken as wo, envCredentialsAreAssumedRole as wr, escapeRegExp$3 as ws, withStackRecords as wt, PROTECTION_PROPERTY_BY_TYPE as x, toFiniteNumber as xa, malformedResourcePropertiesWarning as xi, maskingRetryLogger as xn, STATE_SOURCED_READBACK_RULES as xo, AWS_CREDENTIAL_ENV_KEYS as xr, runDockerForeground as xs, awaitInFlightSibling as xt, recordedProtectionEvidence as y, isWarmThroughputDecrease as ya, malformedRenderedContainersWarning as yi, DEFAULT_RESOURCE_TIMEOUT_MS as yn, STATE_SOURCED_BASELINE_RULES as yo, isIamRoleArn as yr, redactDockerArgvValues as ys, replayFailedOperations as yt, isTruthyCfnBoolean as z, DagBuilder as za, refuseMalformedResourceEntriesForImport as zi, stringifyIfAssigned as zn, orphansAfterRollback as zo, keepsSecretReferenceToken as zr, resolveUseCdkBootstrapAssets as zs, redactedDeleteAddressSkip as zt };
|
|
38108
|
-
//# sourceMappingURL=deploy-engine-
|
|
38153
|
+
export { resourcesNamingDeclaredParameter as $, createSecretMasker as $a, repairMalformedOutputsForReadOnly as $i, deleteSkipReason as $n, BOOTSTRAP_MARKER_PREFIX as $o, accountArgs as $r, PARTITION_TABLE as $s, effectiveDeletionPolicy as $t, resolveDynamoDbDeleteBudgetClock as A, replayWarn as Aa, refuseMalformedOrphanRecordsForDestroy as Ai, acquireIdempotencyToken as An, rebuildClientForBucketRegion as Ao, s3BucketWebsiteUrl as Ar, Synthesizer as As, planRollback as At, getPriorAttempts as B, sameLambdaFunctionAddress as Ba, refuseMalformedResourceEntriesForImport as Bi, CC_BROKEN_REASON as Bn, isReadableBag as Bo, AWS_NO_VALUE as Br, resolveStateBucketWithDefaultAndSource as Bs, updatePartialMessage as Bt, perType as C, toFiniteNumber as Ca, malformedResourcesWarning as Ci, findDestructiveChanges as Cn, STATE_SOURCED_READBACK_RULES as Co, callerEnvCredentials as Cr, runDockerForeground as Cs, getStackRecords as Ct, beginDeleteWait as D, configIntegerRefusal as Da, refuseDivergentRecordRegionForDestroy as Di, ledgerForStack as Dn, LockManager as Do, s3BucketDomainName as Dr, stripControlChars as Ds, isJournaledOrphan as Dt, DYNAMODB_DELETE_MIN_RESOURCE_TIMEOUT_MS as E, configBooleanRefusal as Ea, previewableOrphanRecords as Ei, earliestDefined as En, isSingleDynamicReferenceToken as Eo, s3BucketArn as Er, escapeRegExp$3 as Es, demoteSupersededOrphans as Et, waitForIndexesSettled as F, templateResourceTypes as Fa, refuseMalformedOutputsForDestroy as Fi, refuseMalformedDesiredTags as Fn, hasReadableExportSet as Fo, isImpossibleEmptyStoredAttribute as Fr, resolveApp as Fs, inheritProducerRegions as Ft, cyan as G, createUnionSecretMasker as Ga, refuseMalformedResourcePropertiesForExport as Gi, getCurrentResourceSecrets as Gn, isSensitiveAttributeName as Go, withSharedDrainBudget as Gr, CFN_TEMPLATE_BODY_LIMIT as Gs, orphanRecordsPrintingBag as Gt, formatResourceLine as H, TemplateParser as Ha, refuseMalformedResourceEntriesForOrphan as Hi, ccBrokenReason as Hn, orphansCarriedFrom as Ho, isStalePlaceholderArnAttribute as Hr, stateBucketExistenceConfirmed as Hs, completedReplayEntries as Ht, ECR_AUTO_DELETE_IMAGES_TAG as I, describeTypeWithThrottleRetry as Ia, refuseMalformedResourceAttributesForOrphan as Ii, tagMapAsList as In, hasReasonlessBaselineRefusal as Io, carriesDynamicReference as Ir, resolveAutoAssetStorage as Is, REDACTED_DELETE_ADDRESS_SKIP_REASON as It, red as J, logOnlyValueCount as Ja, refuseMalformedResourcesForDestroy as Ji, slowCcOperationTimeoutMs as Jn, buildAssetRedirectMap as Jo, JSON_LISTING_HOLE_VALUE as Jr, findLargeInlineResources as Js, ATOMIC_FINAL_SNAPSHOT_TYPES as Jt, gray as K, hasMaskableValues as Ka, refuseMalformedResourcePropertiesForOrphan as Ki, withPrintingSecrets as Kn, stringifyValue as Ko, parameterInputsFor as Kr, CFN_TEMPLATE_URL_LIMIT as Ks, secretNamePrintingBag as Kt, S3_AUTO_DELETE_OBJECTS_TAG as L, withRetry as La, refuseMalformedResourceEntries as Li, tagPlanWarning as Ln, hasUnverifiableParameterRefusal as Lo, carriesFetchableDynamicReference as Lr, resolveCaptureObservedState as Ls, isRedactedRecordedValue as Lt, DELETE_INDEX_WAIT_PROCEED_NOTE as M, requireConfigObject as Ma, refuseMalformedOrphansForDestroy as Mi, DBPROXY_TAG_OPTIONS as Mn, acceptedCreateOnlyDropsOf as Mo, isUnboundTemplateParameter as Mr, getDefaultStateBucketName as Ms, resolveReplacementOldType as Mt, INDEX_SETTLE_POLL_INTERVAL_MS as N, requireConfigString as Na, refuseMalformedOrphansForOrphan as Ni, planTagDiff as Nn, describeRegionValueKind as No, parameterTypeMayLoseSecretIdentity as Nr, getLegacyStateBucketName as Ns, findNestedStackTypeChanges as Nt, compensateRemovedDeletionProtection as O, configStringRefusal as Oa, refuseMalformedNestedChildOutputs as Oi, reserveStackCreateToken as On, isLockInfoExpired as Oo, s3BucketDualStackDomainName as Or, AssetManifestLoader as Os, isReplacementOrphan as Ot, deleteTableWithIndexBusyRetry as P, prefetchCreateOnlyPropertyPaths as Pa, refuseMalformedOutputs as Pi, readTagList as Pn, exportNamesCarriedFrom as Po, getAccountInfo as Pr, loadCdkJson as Ps, getCurrentProducerRegions as Pt, reachableDivergentParameters as Q, shareLogOnlyValues as Qa, repairMalformedOrphansForReadOnly as Qi, deleteIndeterminateGuards as Qn, AssetModeResolver as Qo, UNREADABLE_RESOURCES_MAP_ROW as Qr, expectedOwnerParam as Qs, createPreDeleteFinalSnapshot as Qt, hasCdkAutoDeleteTag as R, canonicalLambdaFunctionName as Ra, refuseMalformedResourceEntriesForDeploy as Ri, definedAttributes as Rn, importableOutputKeys as Ro, isNamelessDynamicReferenceError as Rr, resolveSkipPrefix as Rs, redactedDeleteAddressFields as Rt, isProtectionValueActive as S, toCfnInteger as Sa, malformedResourcePropertiesWarning as Si, constructPathOf as Sn, STATE_SOURCED_CROSS_GENERATION_RULES as So, applyCallerIdentityCredentials as Sr, redactedDockerCause as Ss, destroyStackRecordsView as St, DynamoDBGlobalTableProvider as T, coerceCfnInteger as Ta, malformedStateRefusalMessage as Ti, RollbackInlinePolicyWriters as Tn, WHOLE_DYNAMIC_REFERENCE_PATTERN as To, isSettledInstanceState as Tr, warnFinchArgvExposure as Ts, recordAfterRollbackUpdate as Tt, createReadOnlyAttributeHealerFactory as U, liveMatchesUnresolvedTokenFrame as Ua, refuseMalformedResourcePropertiesForDestroy as Ui, wouldReturnToSdkProvider as Un, shouldRetainResource as Uo, refStateLookupFromResource as Ur, warnDeprecatedNoPrefixCliFlag as Us, journaledOrphanPrintingBag as Ut, markRefusedBeforeApplying as V, DagBuilder as Va, refuseMalformedResourceEntriesForImportSave as Vi, ProviderRegistry as Vn, orphansAfterRollback as Vo, cfnRefValueFromPhysicalId as Vr, resolveUseCdkBootstrapAssets as Vs, updatePartialReason as Vt, bold as W, carryLogOnlyValues as Wa, refuseMalformedResourcePropertiesForDrift as Wi, isCustomResourceType as Wn, AssetPublisher as Wo, parseWebACLArn as Wr, ssmResolvedValueType as Ws, maskEventTextWithBoundBags as Wt, computeParameterTaint as X, recordLogOnlyParameterValue as Xa, refuseMalformedState as Xi, unchangedBehindSecretReference as Xn, loadPublishableAssetManifest as Xo, STATE_RESOURCES_MALFORMED as Xr, CUSTOM_RESOURCE_RESPONSE_OBJECT_DESCRIPTION as Xs, buildFinalSnapshotIdentifier as Xt, yellow as Y, printingCorpusOf as Ya, refuseMalformedResourcesForExport as Yi, ccProtectionRegistryTypes as Yn, createAssetRedirectResolver as Yo, STATE_REGION_DIVERGED as Yr, uploadCfnTemplate as Ys, PRE_DELETE_SNAPSHOT_TYPES as Yt, namesAnyDeclaredParameter as Z, recordLogOnlyValue as Za, repairMalformedOrphanRecordsForReadOnly as Zi, UNSPECIFIED_SKIP_REASON as Zn, rewriteTemplateAssetReferences as Zo, UNREADABLE_ORPHANS_CONTAINER_ROW as Zr, decodeListingKey as Zs, ccRoutedFinalSnapshotError as Zt, makeCanonicalizePropertiesFn as _, isStatefulRecreateTargetSync as _a, malformedOrphansWarning as _i, isExportAliasCollision as _n, recordMaskOnlyValuesIn as _o, assertSendableRoleArn as _r, getDockerCmd as _s, getCurrentNestedStackContext as _t, findNestedTemplateTreeDefect as a, unreadableResourceEntries as aa, defineOwnKey as ac, isReadableOrphanRecord as ai, extractDeploymentEventError as an, scrubResourceRecord as ao, isTerminationProtectionPropagationError as ar, readBootstrapMarkerBody as as, makeSiblingClaimReader as at, recordedProtectionNote as b, coerceWarmThroughput as ba, malformedRenderedContainersWarning as bi, DEFAULT_RESOURCE_WARN_AFTER_MS as bn, wholeStringLeavesOf as bo, sendableAssumeRoleCommand as br, partitionSensitiveEnv as bs, replayRollback as bt, renderNestedTemplateTreeDefect as c, findSilentDropProperties as ca, nullPrototypeRecord as cc, malformedExportNamesWarning as ci, exportAliasCollisionScrubWarning as cn, isUncertifiedBaselineMaskPosition as co, reEnableInstanceApiTermination as cr, buildDenyExternalAccessPolicy as cs, displacedOpClause as ct, conditionInputsFrom as d, NO_CC_HANDLERS_REASON as da, describeFileReadFailure as dc, malformedLocalResourceEntriesWarning as di, secretSafeKeyDisplay as dn, recordNestedStackParameterExpressions as do, IntrinsicFunctionResolver as dr, describeDockerCapturedOutput as ds, getNestedRevertRun as dt, repairMalformedResourceEntriesForReadOnly as ea, canonicalizeRegion as ec, deployRefusesOrphanRowsReason as ei, isFinalSnapshotError as en, errorCauseChain as eo, withIndeterminateGuard as er, assertAssetBucketRegion as es, deleteJournaledOrphans as et, parentSuppliedValues as f, hasNoCloudControlHandlers as fa, displayAssemblyPath as fc, malformedLocalResourcesWarning as fi, exportNameSecretExposure as fn, recoverMaskedOutput as fo, classifyReplaySecretRegion as fr, describeDockerExecFailure as fs, nestedChildStackName as ft, mergeNoChangeOutputs as g, isStatefulRecreateTargetForReplace as ga, resolveBucketRegion as gc, malformedOrphansRefusalMessage as gi, collectPublishedOutputNames as gn, recordMaskOnlyValue as go, assertFlagRoleArn as gr, formatDockerLoginError as gs, withNestedRevertRun as gt, keptWholeReasonText as h, MULTI_REGION_RECREATE_BLOCKED_TYPES as ha, clearBucketRegionCache as hc, malformedOrphanRowsKeptWarning as hi, collectDeclaredOutputNames as hn, provenPublicValue as ho, applyRoleArnIfSet as hr, finchSecretArgvRefusal as hs, revertedNestedRowIds as ht, childTemplateLoader as i, unreadableOrphanRecords as ia, processStackMessages as ic, hasReadableResources as ii, DeploymentEventsStore as in, redactSecretsForState as io, ec2InstanceProtectionSite as ir, parseBootstrapMarker as is, sameJournaledOrphans as it, resolveDynamoDbDeleteBudgetMs as j, requireConfigArray as ja, refuseMalformedOrphans as ji, DBPROXY_TAGS_WHAT as jn, splitImportedOps as jo, coerceParameterTypedValue as jr, synthesisStatusMessage as js, replacementNeverSwapped as jt, deleteBudgetKey as k, readConfigString as ka, refuseMalformedOrphanRecords as ki, withCreateTokenLedger as kn, S3StateBackend as ko, s3BucketRegionalDomainName as kr, getDockerImageBySourceHash as ks, planFailedOps as kt, templateIdentity as l, unwrittenCreateOnlyReplacement as la, ownValue as lc, malformedExportSourceWarning as li, secretBearing as ln, pathCrossesDottedKey as lo, DiffCalculator as lr, buildDockerImage as ls, displacedPhysicalIdShown as lt, isSecretBearingReferenceString as m, shownType as ma, resolveAssemblyPath as mc, malformedOrphanRecordsWarning as mi, noEchoParameterValueSeed as mn, carriesSecretMask as mo, regionLessSecretName as mr, dockerSpawnEnvWithSensitive as ms, revertNestedChildFromJournal as mt, IMPLICIT_DELETE_DEPENDENCIES as n, repairMalformedResourcesForReadOnly as na, AssemblyReader as nc, hasReadableOrphans as ni, unsupportedFinalSnapshotError as nn, maskSecretsInText as no, markWaitAbandoned as nr, getBootstrapMarkerKey as ns, journaledOrphanLines as nt, isAbsoluteAssetPath as o, withheldAccountClause as oa, hasOwnKey as oc, isReadableResourceEntry as oi, WITHHELD_NAME_DISPLAY as on, DYNAMIC_REFERENCE_TOKEN_SCAN as oo, observeThenDisableInstanceApiTermination as or, validateAssetBucketName as os, planOrphanAdoption as ot, readRecordedConditionVerdicts as p, findReplacedReadersOfRecreateTargets as pa, renderAssemblyPathEscape as pc, malformedOrphanRecordsRefusalMessage as pi, isWholeDynamicReferenceValue as pn, identityKeyFor as po, producerRegionsFromState as pr, describeDockerFailure as ps, recordDisplacedSkips as pt, green as q, literalSplitDelimitersOf as qa, refuseMalformedResourcesForDeploy as qi, CloudControlProvider as qn, WorkGraph as qo, passedParameterClassesOf as qr, MIGRATE_TMP_PREFIX as qs, stateSecretNameNeedles as qt, computeImplicitDeleteEdges as r, unpreviewableOrphanRecords as ra, StageLoadError as rc, hasReadableOutputs as ri, DeploymentEventsReader as rn, markSameGenerationBag as ro, disableInstanceApiTermination as rr, isCrossRegionRedirect as rs, loadJournaledOrphans as rt, listNestedTemplateRows as s, findActionableSilentDrops as sa, hasPlainPrototype$1 as sc, malformedDriftResourcePropertiesWarning as si, displayTextOrWithheld as sn, dynamicReferenceTokens as so, reDisableInstanceApiTermination as sr, validateContainerRepoName as ss, NESTED_PENDING_PARENT_REASON as st, DeployEngine as t, repairMalformedResourcePropertiesForReadOnly as ta, derivePartitionAndUrlSuffix as tc, displayLogicalId as ti, refusesFinalSnapshot as tn, maskSecretsInError as to, isWaitAbandonedError as tr, ensureAssetStorage as ts, isHandledOrphan as tt, conditionFingerprint as u, withoutSilentDropProperties as ua, absoluteAssemblyPathEscape as uc, malformedLocalOutputsWarning as ui, secretBearingStateKeyWarning as un, inheritNestedStackParameterAssociations as uo, INTRINSIC_KEYS as ur, resolveDockerContextDirectory as us, dropSettledNestedJournals as ut, withResourceDeadline as v, renderStatefulReason as va, malformedOutputsRefusalMessage as vi, bindingSkippedOutputs as vn, recordNoEchoAttributeValues as vo, explicitRoleArnOrThrow as vr, isDockerClientEnvKey as vs, withNestedStackContext as vt, readProtection as w, coerceCfnBoolean as wa, malformedScrubResourceEntriesRefusalMessage as wi, formatDestructiveChange as wn, TEMPLATE_SOURCED_RULES as wo, envCredentialsAreAssumedRole as wr, runDockerStreaming as ws, withStackRecords as wt, PROTECTION_PROPERTY_BY_TYPE as x, isWarmThroughputDecrease as xa, malformedResourceEntriesWarning as xi, maskingRetryLogger as xn, STATE_SOURCED_BASELINE_RULES as xo, AWS_CREDENTIAL_ENV_KEYS as xr, redactDockerArgvValues as xs, awaitInFlightSibling as xt, recordedProtectionEvidence as y, WARM_THROUGHPUT_MEMBERS as ya, malformedOutputsWarning as yi, DEFAULT_RESOURCE_TIMEOUT_MS as yn, recordProvenPublicExpression as yo, isIamRoleArn as yr, isMalformedEnvKey as ys, replayFailedOperations as yt, isTruthyCfnBoolean as z, lambdaFunctionNameForMask as za, refuseMalformedResourceEntriesForDestroy as zi, stringifyIfAssigned as zn, importableOutputs as zo, keepsSecretReferenceToken as zr, resolveStateBucketWithDefault as zs, redactedDeleteAddressSkip as zt };
|
|
38154
|
+
//# sourceMappingURL=deploy-engine-B-oaHd2t.js.map
|