@go-to-k/cdkd 0.285.8 → 0.285.10
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-CvYAGRMV.js → asg-provider-BBky5qYW.js} +2 -2
- package/dist/{asg-provider-CvYAGRMV.js.map → asg-provider-BBky5qYW.js.map} +1 -1
- package/dist/cli.js +2 -2
- package/dist/{deploy-engine-D4QA_B1V.js → deploy-engine-CB7zpRu0.js} +567 -16
- package/dist/deploy-engine-CB7zpRu0.js.map +1 -0
- package/dist/index.d.ts +10 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/{program-CjJoJOIE.js → program-BHmUE52I.js} +225 -31
- package/dist/{program-CjJoJOIE.js.map → program-BHmUE52I.js.map} +1 -1
- package/dist/{version-DFdq83MF.js → version-CR046mQU.js} +2 -2
- package/dist/{version-DFdq83MF.js.map → version-CR046mQU.js.map} +1 -1
- package/package.json +1 -1
- package/dist/deploy-engine-D4QA_B1V.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -144,11 +144,15 @@ interface TemplateOutput {
|
|
|
144
144
|
interface EffectivePropertiesResult {
|
|
145
145
|
effectiveProperties?: Record<string, unknown>;
|
|
146
146
|
}
|
|
147
|
-
interface
|
|
147
|
+
interface NoEchoAttributesResult {
|
|
148
|
+
noEchoAttributes?: boolean;
|
|
149
|
+
noEchoAttributeNames?: readonly string[];
|
|
150
|
+
}
|
|
151
|
+
interface ResourceCreateResult extends EffectivePropertiesResult, NoEchoAttributesResult {
|
|
148
152
|
physicalId: string;
|
|
149
153
|
attributes?: Record<string, unknown>;
|
|
150
154
|
}
|
|
151
|
-
interface ResourceUpdateResultBase extends EffectivePropertiesResult {
|
|
155
|
+
interface ResourceUpdateResultBase extends EffectivePropertiesResult, NoEchoAttributesResult {
|
|
152
156
|
physicalId: string;
|
|
153
157
|
wasReplaced: boolean;
|
|
154
158
|
attributes?: Record<string, unknown>;
|
|
@@ -1114,6 +1118,7 @@ declare class DeployEngine {
|
|
|
1114
1118
|
private recordedImports;
|
|
1115
1119
|
private recordedOutputReads;
|
|
1116
1120
|
private perResourceSecrets;
|
|
1121
|
+
private noEchoAttributeResources;
|
|
1117
1122
|
private perResourceTemplateProps;
|
|
1118
1123
|
private outputSecrets;
|
|
1119
1124
|
private outputsTemplateSource;
|
|
@@ -1125,7 +1130,10 @@ declare class DeployEngine {
|
|
|
1125
1130
|
deploy(stackName: string, template: CloudFormationTemplate): Promise<DeployResult>;
|
|
1126
1131
|
private buildResolverContext;
|
|
1127
1132
|
private redactParametersForDiff;
|
|
1133
|
+
private rememberRecoverableMaskedOutputs;
|
|
1128
1134
|
private redactOutputs;
|
|
1135
|
+
private registerNoEchoAttributes;
|
|
1136
|
+
private refuseRedactedAttributeReads;
|
|
1129
1137
|
private redactOperationsForJournal;
|
|
1130
1138
|
private redactStateForPersist;
|
|
1131
1139
|
private withParentInfo;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types/state.ts","../src/deployment/secret-redaction.ts","../src/provisioning/region-check.ts","../src/types/resource.ts","../src/types/config.ts","../src/utils/logger.ts","../src/utils/error-handler.ts","../src/utils/aws-clients.ts","../src/utils/aws-region-resolver.ts","../src/types/assembly.ts","../src/synthesis/stack-messages.ts","../src/synthesis/assembly-reader.ts","../src/cli/upload-cfn-template.ts","../src/synthesis/macro-expander.ts","../src/synthesis/synthesizer.ts","../src/types/deployment-events.ts","../src/provisioning/cloud-control-provider.ts","../src/provisioning/provider-registry.ts","../src/provisioning/final-snapshot.ts","../src/deployment/rollback-executor.ts","../src/types/rollback-journal.ts","../src/state/s3-noncurrent-version-purge.ts","../src/state/s3-state-backend.ts","../src/assets/asset-redirect.ts","../src/deployment/work-graph.ts","../src/assets/asset-publisher.ts","../src/state/lock-manager.ts","../src/analyzer/template-parser.ts","../src/analyzer/dag-builder.ts","../src/analyzer/diff-calculator.ts","../src/provisioning/providers/iam-role-provider.ts","../src/state/export-index-store.ts","../src/deployment/deploy-engine.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types/state.ts","../src/deployment/secret-redaction.ts","../src/provisioning/region-check.ts","../src/types/resource.ts","../src/types/config.ts","../src/utils/logger.ts","../src/utils/error-handler.ts","../src/utils/aws-clients.ts","../src/utils/aws-region-resolver.ts","../src/types/assembly.ts","../src/synthesis/stack-messages.ts","../src/synthesis/assembly-reader.ts","../src/cli/upload-cfn-template.ts","../src/synthesis/macro-expander.ts","../src/synthesis/synthesizer.ts","../src/types/deployment-events.ts","../src/provisioning/cloud-control-provider.ts","../src/provisioning/provider-registry.ts","../src/provisioning/final-snapshot.ts","../src/deployment/rollback-executor.ts","../src/types/rollback-journal.ts","../src/state/s3-noncurrent-version-purge.ts","../src/state/s3-state-backend.ts","../src/assets/asset-redirect.ts","../src/deployment/work-graph.ts","../src/assets/asset-publisher.ts","../src/state/lock-manager.ts","../src/analyzer/template-parser.ts","../src/analyzer/dag-builder.ts","../src/analyzer/diff-calculator.ts","../src/provisioning/providers/iam-role-provider.ts","../src/state/export-index-store.ts","../src/deployment/deploy-engine.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;KAuGY;UAyBK;EAEf;EAMA;EAEA;;UAsBe;EAEf;EAMA;EAEA;;UAMe;EAKf,SAAS;EAGT;EAMA;EAGA,WAAW,eAAe;EAG1B,SAAS;EAUT,UAAU;EAoBV,cAAc;EAqBd;EAgBA;EAcA;EAYA;EAGA;;UAMe;EAEf;EAGA;EAGA,YAAY;EAcZ,qBAAqB;EAGrB,aAAa;EAGb;EAGA,WAAW;EAmBX;EAMA;EAyBA;;UAMe;EAEf;EAGA;EAGA;EAGA;;KAMU;UAKK;EAEf;EAGA,YAAY;EAGZ;EAGA,oBAAoB;EAGpB,oBAAoB;EAGpB,kBAAkB;EAWlB,mBAAmB;;UAUJ;EAEf;EACA;EACA;;UAiFe;EAEf;EAGA;EAGA;EAGA;EAYA;;;;KC1fU,uBAAuB;KAuvJvB,gBAAgB;;;UCrxJX;EASf;EAyCA;EAwBA;EA0BA;;;;UClHe;EACf;EACA;EACA,aAAa,eAAe;EAC5B,WAAW,eAAe;EAC1B,UAAU,eAAe;EACzB,aAAa;EACb,WAAW;EAWX;EACA,QAAQ;;UAMO;EACf;EACA;EACA;EACA;EACA;EACA;EAMA;;UAMe;EACf;EACA,aAAa;EACb;EACA;EACA,WAAW;EACX,iBAAiB;EACjB,eAAe;EACf;EACA;;UAMe;EACf;EACA;EAOA;EACA;IACE;;;UAgCa;EAKf,sBAAsB;;UA8CP;EAKf;EAWA;;UAMe,6BAA6B,2BAA2B;EAEvE;EAEA,aAAa;;UAOL,iCAAiC,2BAA2B;EAEpE;EAEA;EAEA,aAAa;;KAwCH;WAGG;WAMA;;WAOA;WAaA;;KAOH,uBAAuB,2BAA2B;UAuB7C;WAQN;WAQA;;KA0DC;WAGG;WAKA,+BAA+B;;WAY/B,+BAA+B;WAU/B;WAaA;;UAcE;EAEf;EAGA;EAGA;EAGA;EAGA,YAAY;EASZ;;UAUe;EAEf;EAEA,aAAa;;UAiEE;EA2Df,cAAc;;UA8CC,sBAAsB;EAmBrC;EAgCA;;UAkBe,sBAAsB;EA0DrC;;UAqCe;EAWf,WAAW;IAGP;IACA;IACA,YAAY;IACZ,aAAa;;;UAQF;EAWf,oBAAoB,oBAAoB;EAwBxC,oBAAoB,oBAAoB;EAUxC;EAkBA;EAkBA;EASA,8BACE,mBACA,sBACA,YAAY,0BACX;EAmBH,OACE,mBACA,sBACA,YAAY,yBACZ,UAAU,gBACT,QAAQ;EAgBX,OACE,mBACA,oBACA,sBACA,YAAY,yBACZ,oBAAoB,yBACpB,UAAU,gBACT,QAAQ;EAqBX,OACE,mBACA,oBACA,sBACA,aAAa,yBACb,UAAU,gBACT,eAAe;EASlB,cAAc,oBAAoB,sBAAsB,wBAAwB;EAwChF,kBACE,oBACA,mBACA,sBACA,aAAa,yBACb,UAAU,0BACT,QAAQ;EAgCX,sBAAsB,sBAAsB,aAAa;EAiCzD,+BACE,sBACA,YAAY,0BACX;EAiDH,wBAAwB;EAuDxB,6BACE,sBACA,YAAY,0BACX;EA4BH,QAAQ,OAAO,sBAAsB,QAAQ;;;;UC3tC9B;EAEf;EAGA;EAGA;EAGA;EAGA;EAGA;EAGA;EAGA;EAGA;EAGA;;UAMe;EAEf;EAGA;EAGA,cAAc;EAGd;EAGA;EAGA;;UAMe;EAEf;EAGA;;KAMU;UAKK;EACf,MAAM,oBAAoB;EAC1B,KAAK,oBAAoB;EACzB,KAAK,oBAAoB;EACzB,MAAM,oBAAoB;;;;cCkEf,yBAAyB;UAC5B;UACA;EAER,YAAY,QAAO,UAAmB;UAK9B;UAOA;UA0EA;EAeR,MAAM,oBAAoB;EAM1B,KAAK,oBAAoB;EAMzB,KAAK,oBAAoB;EAMzB,MAAM,oBAAoB;EAS1B,SAAS,OAAO;EAIhB,YAAY;EASZ,MAAM,iBAAiB;;cAQnB,oBAAoB;mBACP;EAEjB,YAAY,gBAAgB;UAKpB;EAMC,MAAM,oBAAoB;EAK1B,KAAK,oBAAoB;EAMzB,KAAK,oBAAoB;EAMzB,MAAM,oBAAoB;;iBAerB,aAAa;iBAUb,UAAU,QAAQ;;;cC9VrB,kBAAkB;WACb;WACA,OAAO;EAEvB,YAAY,iBAAiB,cAAc,QAAQ;;cAYxC,mBAAmB;EAC9B,YAAY,iBAAiB,QAAQ;;cAU1B,kBAAkB;EAC7B,YAAY,iBAAiB,QAAQ;;cAU1B,uBAAuB;EAClC,YAAY,iBAAiB,QAAQ;;cA6B1B,mBAAmB;EAC9B,YAAY,iBAAiB,QAAQ;;cA6B1B,0BAA0B;WACrB;WACA;WACA;EAEhB,YACE,iBACA,sBACA,mBACA,qBACA,QAAQ;;cAmPC,wBAAwB;EACnC,YAAY,iBAAiB,QAAQ;;cAU1B,oBAAoB;EAC/B,YAAY,iBAAiB,QAAQ;;iBAgbvB,YAAY,iBAAiB,SAAS;iBAOtC,YAAY;UAwEX;EACf;EACA;;iBA2Bc,kBAAkB,cAAc,UAAS,2BAAgC;;;UCl3BxE;EACf;EACA;EACA;IACE;IACA;IACA;;;cAoCS;UACH;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;EAER,YAAY,SAAQ;cAsBR;MAwDR;MAyBA,oBAAoB,KAAK;EAkB7B,WAAW,iBAAiB;EAY5B,eAAe;EAmBf,yBAAyB;EAezB,gBAAgB;MAaZ,MAAM;MAON,gBAAgB;MAOhB,OAAO;EAOX,gBAAgB;MAYZ,OAAO;EAOX,gBAAgB;MAYZ,OAAO;EAOX,mBAAmB;MAYf,UAAU;EAOd,gBAAgB;MAYZ,OAAO;EAOX,gBAAgB;MAYZ,OAAO;EAOX,qBAAqB;MAYjB,YAAY;EAOhB,2BAA2B;MAYvB,kBAAkB;EAOtB,uBAAuB;MAYnB,cAAc;EAOlB,wBAAwB;MAYpB,eAAe;EAOnB,2BAA2B;MAYvB,kBAAkB;EAOtB,gBAAgB;MAYZ,OAAO;EAOX,uBAAuB;MAYnB,cAAc;EAWlB,gBAAgB;MAYZ,OAAO;EAaX,2BAA2B;MAYvB,kBAAkB;EAOtB,uBAAuB;MAYnB,cAAc;EAOlB,2BAA2B;MAYvB,kBAAkB;EAOtB,oCAAoC;MAYhC,2BAA2B;EAO/B,qBAAqB;MAYjB,YAAY;EAOhB,wBAAwB;MAYpB,eAAe;EAOnB;;iBAkCc,cAAc,SAAS,kBAAkB;iBAUzC,cAAc,SAAS;iBAOvB;;;UCrrBC;EACf;EACA;IACE;IACA;IACA;;EAEF;EAaA;;iBAgEoB,oBACpB,oBACA,OAAM,6BACL;iBA2Ea;;;UChLC;EAEf;EAGA,YAAY,eAAe;EAG3B,UAAU;EAGV,UAAU;;UAMK;EAEf,MAAM;EAGN;EAMA;EAGA,aAAa;EAGb;EAGA,WAAW,eAAe;EAQ1B;;KAMU;UA+CK;EAEf;EAGA;EAGA,OAAO;;UAMQ;EAEf;EAGA;EAGA;GAGC;;UAMc;EACf;EACA;EACA;;UAMe;EACf,YAAY;;;;KClHF;UAKK;EACf,OAAO;EAGP;EAEA;;;;UC5Be;EAEf;EAOA;EAGA;EAGA,UAAU;EAGV;EAGA;EAGA;EAGA;EAeA;EAiBA,kBAAkB;EAYlB,WAAW;;cAMA;UACH;EAKR,aAAa,sBAAsB;EAmBnC,aAAa,qBAAqB,UAAU,mBAAmB;EA8C/D,SAAS,qBAAqB,UAAU,kBAAkB,oBAAoB;EAgB9E,YACE,qBACA,UAAU,kBACV,oBACC;UAOK;UAuBA;EA4HR,UAAU,WAAW;;;;UCxSN;EACf;EACA;IACE;IACA;IACA;;;;;UCTa;EACf;EASA;EACA,YAAY;EACZ,eAAe;EASf;;;;UCVe;EAEf;EAGA;EAGA;EAGA;EAGA,UAAU;EAaV;EAQA,0BAA0B;EAe1B;;UAMe;EAEf,UAAU;EAGV;EAGA,QAAQ;;cAWG;UACH;UACA;UACA;UACA;EAYF,WAAW,SAAS,mBAAmB,QAAQ;EAyJ/C,WAAW,SAAS,mBAAmB;EA0BvC,sBACJ,QAAQ,aACR,SAAS,kBACT;IAAa;IAA4B;MACxC;;;;KC7SO;KAGA;KAcA;KAsEA;UAmBK;EAEf;EAEA;EAKA;EAEA;;UAQe;EAEf;EACA,WAAW;EAMX;EAEA,UAAU;EAEV;EAEA;EAEA,SAAS;EAET,YAAY;EAEZ;EAEA;EASA;EAEA;EAEA;EAEA;IACE;IACA;IACA;IACA;IAqBA;;EAUF;EAiBA;EAEA,QAAQ;;UAQO;EACf,OAAO,OAAO,KAAK;WAOV;;;;cCyGE,gCAAgC;UACnC;UACA;UACA;mBAGS;mBAEA;mBAEA;EAEjB;EAQM,OACJ,mBACA,sBACA,YAAY,0BACX,QAAQ;UAuHG;EAqER,OACJ,mBACA,oBACA,sBACA,YAAY,yBACZ,oBAAoB,yBACpB,UAAU,gBACT,QAAQ;EAsKL,OACJ,mBACA,oBACA,sBACA,cAAc,yBACd,UAAU,gBACT,eAAe;UA2UJ;UAyHA;UA8LA;EA2CR,iBACJ,sBACA,qBACC,QAAQ;UA0BG;UAoHN;UA8BM;UAiCA;UAi0BA;UAiCN;UAsBM;UA+BN;UAwCA;SAUD,wBAAwB;EA6EzB,iBACJ,oBACA,oBACA,sBACA,cAAc,0BACb,QAAQ;EAiDL,OAAO,OAAO,sBAAsB,QAAQ;;;;KCxqFxC;UAWK;EACf,UAAU;EACV,eAAe;EACf;IAAkB;;;UAUH;EACf;EACA,aAAa;EACb,gBAAgB;;UAQD;EACf;EACA;EACA;;cAuDW;UACH;UACA;UACA;UACA;UACA;UACA;UACA;EAER;EAYA,sBAAsB,eAAe;EAiBrC,2BAA2B,SAAS;EAWpC,gCAAgC;EAUhC,iBAAiB;EAWjB,SAAS,sBAAsB,UAAU;EAQzC,WAAW;EAeX,eAAe,OAAO,sBAAsB;UAmGpC;EAmCR,YAAY,uBAAuB;EAOnC,mBAAmB;EAOnB,YAAY;EAmBZ,2BAA2B;EAO3B;EASA,gBAAgB;EAuBhB,sBAAsB,eAAe;EA4DrC,2BACE,WAAW;IACT;IACA;IACA,YAAY;IACZ;;EA2BJ,oCACE,WAAW;IACT;IACA;IACA,YAAY;;EAwChB,0BACE,WAAW;IACT;IACA;IACA,YAAY;IACZ;;EAqEJ,kBACE,WAAW;IACT;IACA;IACA,YAAY;OAEb;;;;UChMY;EACf,KAAK;EACL,UAAU;EACV,aAAa;;;;UCpGE;EAEf;EAEA;EAEA;EAQA;EAEA,gBAAgB;EAEhB;EAEA,aAAa;;UAWE;EAEf;EAEA;EAEA;EAEA;EAEA,gBAAgB;EAEhB;EAOA,sBAAsB;;;;KCjWZ;UAkBK;EAMf;EAEA;EACA,QAAQ;EAMR;EAEA;EAEA;EAEA,YAAY;EAQZ,mBAAmB;;UAIJ;EACf;EACA;EACA;EACA,UAAU;;;;UC5BK;EAOf;IAAkB;;EAQlB;EAEA;IAAW,OAAO;;EAqBlB;;;;UC7De;EACf;EAEA;;UAwBe;EACf;EACA;EACA;IACE;IACA;IACA;;;UAOa;EAgBf;;cAmBW;UACH;UACA;UACA;UACA;UACA;UACA;EAER,YAAY,UAAU,UAAU,QAAQ,oBAAoB,aAAY;EAyBxE;MAII;UAOI;UAQA;UAWA;UAmBM;UAiDA;EAIR,mBAAmB,UAAS,4BAAiC;EA+C7D,YAAY,mBAAmB,iBAAiB;EA0BhD,SACJ,mBACA,iBACC;IAAU,OAAO;IAAY;IAAc;;EAsExC,UACJ,mBACA,gBACA,OAAO,YACP;IAAW;IAAuB;MACjC;EAyFG,YAAY,mBAAmB,iBAAiB;EA0EhD,cAAc,QAAQ;EA2EtB,aAAa,aAAa,cAAc,uBAAmC;EAkB3E,aAAa,cAAc;EAwB3B,YAAY,oBAAoB;EAqChC,eACJ,oBACC,QAAQ;IAAQ;IAAa,cAAc;IAAM;;EAqD9C,iBAAiB,iBAAiB;EAiDlC,wBACJ,gBACA,UAAS,KAAK,6DACb;EAkCG,oBAAoB,mBAAmB,iBAAiB,QAAQ;EAYhE,6BACJ,mBACA,gBACA,SAAS,yBACR;EA2BG,mCACJ,mBACA,gBACA,WAAW,oBACV;EAiBG,0BAA0B,mBAAmB,iBAAiB;EAmD9D,sBAAsB,mBAAmB,iBAAiB;UAqClD;UAuBA;UAuBA;UASA;UAgDN;;;;UCjjCO;EAEf;EAEA;;UAYe;EAEf,SAAS;EAET,OAAO;EAEP,SAAS;EAET;EACA;EACA;;;;KC5DU;KAKA;UAKK;EACf;EACA,MAAM;EACN,cAAc;EACd,OAAO;EAEP;;UAMe;EACf;EACA;EACA;;cAoBW;UACH;UACA;EAER,QAAQ,MAAM;EAOR,QACJ,aAAa,sBACb,KAAK,MAAM,aAAa,gBACvB;EAqGH,WAAW,OAAO;;;;UClHH;EAEf;EAGA;EAGA;EAGA;EAGA;EASA,WAAW;;cAUA;UACH;UACA;UACA;EAMR,iBACE,OAAO,WACP,sBACA;IACE;IACA;IACA;IACA;IACA,WAAW;;EA4FT,YAAY,MAAM,WAAW;EAwB7B,oBACJ,sBACA,UAAS,wBACR;EAwDH,UAAU;;;;UC/PK;EAEf;EASA;;cA2HW;UACH;UACA;UACA;mBACS;mBACA;mBACA;mBAEA;UACT;UACA;EAER,YAAY,UAAU,UAAU,QAAQ,oBAAoB,UAAU;UA2CxD;UAIA;UA4CN;UAUA;UAcA;UAeA;EAmBF,YACJ,mBACA,gBACA,gBACA,qBACC;UA4JW;EA2BR,YAAY,mBAAmB,6BAA6B,QAAQ;UAa5D;EAmFR,SAAS,mBAAmB,6BAA6B;EAkCzD,YAAY,mBAAmB,iBAAiB;UAuBxC;UAwJA;UA2BN;EAaF,iBAAiB,mBAAmB,6BAA6B;UA2EzD;UA6FA;UAgDN;UAiDA;UASA;UAiBA;UAWM;UA4GA;UA6BN;UAgBA;UAkBA;UAiBA;EAiBF,qBACJ,mBACA,gBACA,gBACA,oBACA,qBACA,sBACC;;;;cCz0CQ;UACH;EAKR,eAAe,UAAU;EAOzB,YAAY,UAAU,wBAAwB,oBAAoB;EAYlE,oBAAoB,UAAU,mBAAmB;EAwCjD,kBAAkB,iBAAiB;UAS3B;EA6JR,YAAY,UAAU,kBAAkB;EA2BxC,YAAY,UAAU,kBAAkB;EA2BxC,iBAAiB,oBAAoB,YAAY;EAwCjD,mBACE,UAAU,wBACV,uBACC,YAAY;EAef,eAAe,UAAU;EAoCzB,2BACE,UAAU,wBACV,YAAY,0BACX;;;;KC9XA,YAAY,SAAS;UAQT;EAMf;;cASW;UACH;UACA;UACA;EAER,YAAY,UAAS;EAWrB,WAAW,UAAU,yBAAyB;EA+G9C,mBAAmB,OAAO;UAmDlB;EA6CR,mBAAmB,OAAO,WAAW,oBAAoB;EAoBzD,iBAAiB,OAAO,WAAW,oBAAoB;EAoBvD,sBAAsB,OAAO,WAAW;EAOxC,oBAAoB,OAAO,WAAW;EAOtC,UAAU,OAAO,WAAW,mBAAmB;UAWvC;UA4DA;UAyBA;UASA;UAwBA;UAwBA;;;;KCzbE,sBAAsB,mBAAmB;KA8CzC,4BACV,sBACA,YAAY,4BACT;cAiCQ;UACH;UACA;UACA;EAoBF,cACJ,cAAc,YACd,iBAAiB,wBACjB,YAAY,oBACZ,yBAAyB,2BACxB,QAAQ,YAAY;UAmRf;UAoJA;iBAkGO;UAsED;UAgCN;UA4BM;0BAqFU;iBAOT;UA0CP;EA2ER,WAAW,SAAS,YAAY;IAC9B;IACA;IACA;IACA;IACA;;EAiCF,aAAa,SAAS,YAAY,iBAAiB,MAAM,aAAa;EAOtE,WAAW,SAAS,YAAY;EAOhC,sBAAsB,SAAS,YAAY,kBAAkB;;;;cCv+BlD,2BAA2B;UAC9B;UACA;EACR,mBAAiB,YAAA;EAiBjB;EASM,OACJ,mBACA,sBACA,YAAY,0BACX,QAAQ;EA6JL,OACJ,mBACA,oBACA,sBACA,YAAY,yBACZ,oBAAoB,0BACnB,QAAQ;EAsNL,OACJ,mBACA,oBACA,sBACA,cAAc,yBACd,UAAU,gBACT,eAAe;UAmDJ;UAiDA;UA6CA;UAmDA;UAsCA;UAuCA;EAuDR,aACJ,oBACA,uBACA,wBACC;EA0DG,iBACJ,oBACA,oBACA,uBACA,aAAa,yBACb,UADa,0BAEZ,QAAQ;EA0KL,OAAO,OAAO,sBAAsB,QAAQ;;;;UC/5BnC;EAEf;EAEA;EAGA;;UAUe;EAEf;EAEA;EAEA;;cASW;UACH;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UAcA;UAEA;UACA;EAER,YACE,UAAU,UACV,gBACA,gBACA,gBACA,cAAc,gBACd,OAAM;UAWA;UAiCM;UAIA;EAuCR,OAAO,qBAAqB,QAAQ;EAuBpC,eACJ,mBACA,wBACA,SAAS,0BACR;EAwBG,WAAW,oBAAoB,OAAO,mBAAmB;EAYzD,YAAY,mBAAmB,yBAAyB;UAUhD;EAaR,WAAW;UAcH;UAWA;UAyCA;UAkBA;UAyBA;UAqDA;UA0CN;UAsBM;UAQA;UAkBA;UAYA;UA+BN;UAMA;;;;UC7eO;EAEf;EAEA;EAEA;EAEA,aAAa;EAEb;EAOA;EAWA;EASA;EAOA,0BAA0B;EAM1B,wBAAwB;EAaxB;EAaA,gBAAgB;EAgBhB;IACE;IACA;IACA;;EAqEF,mBAAmB;EA2BnB,wBAAwB,mBAAmB,OAAO,2BAA2B;EAuB7E,0BAA0B;EAmB1B,gCAAgC;EAmBhC,gBAAgB;EAkBhB;EASA;EAWA;EAWA;EAaA;EAYA,uBAAuB;;UAkER;EAEf;EAEA;EAEA;EAEA;EAwBA;EAQA;EAEA;EAEA;EAMA,UAAU;EAcV;;cAoOW;UACH;UACA;UACA;UAOA;UAaA;UAEA;UACA;UACA;UACA;UACA;UACA;UACA;UAUA;UAMA;UAQA;UAiBA;UAuBA;UAWA;UAOA;UASA;UAWA;UAQA;UASA;UAOA;EAER,YACE,cAAc,gBACd,aAAa,aACb,YAAY,YACZ,gBAAgB,gBAChB,kBAAkB,kBAClB,SAAS,iCACT,qBACA,mBAAmB;EA+Bf,OAAO,mBAAmB,UAAU,yBAAyB,QAAQ;UA+BnE;UAqHA;UAwDA;UAcA;UAiGA;UAqDA;UAwBA;UA8BA;UAkDA;UA2BA;UAkCM;UAgDA;UAsGN;UAqEM;UAqrBA;UA+kBA;UA4EA;UA2BA;UA+BA;UAuCN;UA+BM;UA4CA;UAqSN;UAaA;UAmBA;UAwBA;UAyCM;UA0CA;UAwKA;UAi0CN;UA8BA;UA4BA;UAkCA;UAgCA;UAOA;UAoCA;UA4EA;UA4BM;UA6BN;UAiCA;UAmBA;UAgBA;UAwCM;UAmRN"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Br as StateError, Bt as DiffCalculator, Cr as ConfigError, Fr as ProvisioningError, Gt as TemplateParser, Hr as formatError, K as ProviderRegistry, Sr as CdkdError, Tr as DependencyError, U as IAMRoleProvider, Un as Synthesizer, Ur as isCdkdError, Vr as SynthesisError, Wr as normalizeAwsError, Wt as DagBuilder, _r as AwsClients, at as CloudControlProvider, br as setAwsClients, gr as resolveBucketRegion, hr as clearBucketRegionCache, jr as LockError, on as LockManager, pn as AssetPublisher, pr as AssemblyReader, r as DeployEngine, sn as S3StateBackend, vr as getAwsClients, xr as AssetError, yr as resetAwsClients } from "./deploy-engine-CB7zpRu0.js";
|
|
2
2
|
import { a as setLogger, n as getLogger, t as ConsoleLogger } from "./logger-Dw-3y48G.js";
|
|
3
3
|
|
|
4
4
|
export { AssemblyReader, AssetError, AssetPublisher, AwsClients, CdkdError, CloudControlProvider, ConfigError, ConsoleLogger, DagBuilder, DependencyError, DeployEngine, DiffCalculator, IAMRoleProvider, LockError, LockManager, ProviderRegistry, ProvisioningError, S3StateBackend, StateError, SynthesisError, Synthesizer, TemplateParser, clearBucketRegionCache, formatError, getAwsClients, getLogger, isCdkdError, normalizeAwsError, resetAwsClients, resolveBucketRegion, setAwsClients, setLogger };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { $ as DEFAULT_STATE_PREFIX, $n as
|
|
1
|
+
import { $ as DEFAULT_STATE_PREFIX, $n as resolveUseCdkBootstrapAssets, $t as isSingleDynamicReferenceToken, A as bold, An as validateAssetBucketName, Ar as LocalStartServiceError, At as requireConfigObject, B as secretBearingStateKeyWarning, Bn as runDockerStreaming, Bt as DiffCalculator, C as unsupportedFinalSnapshotError, Cn as BOOTSTRAP_MARKER_PREFIX, Ct as assertRegionMatch, D as isStatefulRecreateTargetSync, Dn as isCrossRegionRedirect, Dr as DynamicReferenceRegionAmbiguousError, Dt as readConfigString, E as MULTI_REGION_RECREATE_BLOCKED_TYPES, En as getBootstrapMarkerKey, Er as DeployCancelledError, Et as configStringRefusal, F as yellow, Fn as dockerSpawnEnvWithSensitive, Fr as ProvisioningError, Ft as s3BucketDomainName, G as clearOnUpdateRemoval, Gn as getDefaultStateBucketName, Gr as withErrorHandling, Gt as TemplateParser, H as getCurrentResourceSecrets, Hn as getDockerImageBySourceHash, Ht as describeTypeWithThrottleRetry, I as collectDeclaredOutputNames, In as formatDockerLoginError, Ir as ResourceTimeoutError, It as s3BucketDualStackDomainName, J as findSilentDropProperties, Jn as resolveAutoAssetStorage, Jr as isThrottlingError, Jt as TEMPLATE_SOURCED_RULES, K as ProviderRegistry, Kn as getLegacyStateBucketName, Kr as isMarkedNonRetryable, Kt as STATE_SOURCED_CROSS_GENERATION_RULES, L as collectPublishedOutputNames, Ln as getDockerCmd, Lr as ResourceUpdateNotSupportedError, Lt as s3BucketRegionalDomainName, M as gray, Mn as buildDenyExternalAccessPolicy, Mr as MissingCdkCliError, Mt as classifyReplaySecretRegion, N as green, Nn as describeAwsFailure, Nr as NestedStackChildDirectDestroyError, Nt as producerRegionsFromState, O as renderStatefulReason, On as parseBootstrapMarker, Or as LocalInvokeBuildError$1, Ot as replayWarn, P as red, Pn as buildDockerImage, Pr as PartialFailureError, Pt as s3BucketArn, Q as CUSTOM_RESOURCE_RESPONSE_PREFIX, Qn as resolveStateBucketWithDefaultAndSource, Qr as retryClassificationText, Qt as errorCauseChain, R as exportAliasCollisionScrubWarning, Rn as partitionSensitiveEnv, Rr as StackHasActiveImportsError, Rt as s3BucketWebsiteUrl, S as refusesFinalSnapshot, Sn as AssetModeResolver, Sr as CdkdError, St as resolveExplicitPhysicalId, T as extractDeploymentEventError, Tn as ensureAssetStorage, Tt as configBooleanRefusal, U as IAMRoleProvider, Un as Synthesizer, Ut as withRetry, V as stateKeySecretExposure, Vn as AssetManifestLoader, Vt as INTRINSIC_KEYS, W as collectInlinePolicyNamesManagedBySiblings, Wn as synthesisStatusMessage, Wr as normalizeAwsError, Wt as DagBuilder, X as maskDeep, Xn as resolveSkipPrefix, Xr as markNonRetryable, Xt as createSecretMasker, Y as createMaskedRetryLogger, Yn as resolveCaptureObservedState, Yr as isTransientServerError, Yt as carriesSecretMask, Z as maskerOrIdentity, Zn as resolveStateBucketWithDefault, Zr as markRedactedCause, Zt as dynamicReferenceTokens, _ as PRE_DELETE_SNAPSHOT_TYPES, _n as createAssetRedirectResolver, _r as AwsClients, _t as isUnboundTemplateParameter, a as DeploymentEventsStore, an as scrubResourceRecord, ar as findLargeInlineResources, at as CloudControlProvider, b as createPreDeleteFinalSnapshot, bn as escapeRegExp, br as setAwsClients, bt as WAFv2WebACLProvider, c as replayFailedOperations, cn as rebuildClientForBucketRegion, cr as displaySafe, ct as deleteIndeterminateGuards, d as updatePartialReason, dn as importableOutputs, dr as canonicalizeRegion, dt as isTerminationProtectionPropagationError, en as maskSecretsInError, er as stateBucketExistenceConfirmed, et as beginCommandInterruptScope, f as withResourceDeadline, fn as shouldRetainResource, fr as derivePartitionAndUrlSuffix, ft as IntrinsicFunctionResolver, g as ATOMIC_FINAL_SNAPSHOT_TYPES, gn as buildAssetRedirectMap, gr as resolveBucketRegion, gt as getAccountInfo, h as computeImplicitDeleteEdges, hn as WorkGraph, ht as coerceParameterTypedValue, i as DeploymentEventsReader, in as redactSecretsForState, ir as MIGRATE_TMP_PREFIX, it as startInterruptWatch, j as cyan, jn as validateContainerRepoName, jt as requireConfigString, k as formatResourceLine, kn as readBootstrapMarkerBody, kr as LocalMigrateError, kt as requireConfigArray, l as replayRollback, ln as exportNamesCarriedFrom, lr as expectedOwnerParam, lt as deleteSkipReason, m as IMPLICIT_DELETE_DEPENDENCIES, mn as stringifyValue, mr as processStackMessages, mt as cfnRefValueFromPhysicalId, n as DEFAULT_RESOURCE_WARN_AFTER_MS, nn as recordMaskOnlyValue, nr as CFN_TEMPLATE_BODY_LIMIT, nt as interruptWatchListenerCount, o as planFailedOps, on as LockManager, or as uploadCfnTemplate, ot as slowCcOperationTimeoutMs, p as maskingRetryLogger, pn as AssetPublisher, pr as AssemblyReader, pt as carriesDynamicReference, q as findActionableSilentDrops, qn as resolveApp, qr as isRetryableTransientError, qt as STATE_SOURCED_READBACK_RULES, r as DeployEngine, rn as recoverMaskedOutput, rr as CFN_TEMPLATE_URL_LIMIT, rt as isInterruptedWaitError, s as planRollback, sn as S3StateBackend, sr as CUSTOM_RESOURCE_RESPONSE_OBJECT_DESCRIPTION, st as UNSPECIFIED_SKIP_REASON, t as DEFAULT_RESOURCE_TIMEOUT_MS, tn as maskSecretsInText, tr as warnDeprecatedNoPrefixCliFlag, tt as endCommandInterruptScope, u as updatePartialMessage, un as importableOutputKeys, ur as PARTITION_TABLE, ut as disableInstanceApiTermination, v as buildFinalSnapshotIdentifier, vn as loadPublishableAssetManifest, vr as getAwsClients, vt as parameterTypeMayLoseSecretIdentity, w as makeCanonicalizePropertiesFn, wn as assertAssetBucketRegion, wr as CrossAccountSecretRefusalError, wt as coerceCfnBoolean, x as isFinalSnapshotError, xn as stripControlChars, xt as normalizeAwsTagsToCfn, y as ccRoutedFinalSnapshotError, yn as rewriteTemplateAssetReferences, yr as resetAwsClients, yt as refStateLookupFromResource, z as isExportAliasCollision, zn as runDockerForeground, zr as StackTerminationProtectionError, zt as applyRoleArnIfSet } from "./deploy-engine-CB7zpRu0.js";
|
|
2
2
|
import { _ as withStackName, c as PATTERN_B_NAME_OPTIONS, f as generateResourceName, g as withSkipPrefix, i as reserveStdoutForPayload, l as PATTERN_B_NAME_PROPERTIES, m as getCurrentStackName, n as getLogger, o as runStackBuffered, p as generateResourceNameWithFallback, s as getLiveRenderer, u as PATTERN_B_RESOURCE_TYPES } from "./logger-Dw-3y48G.js";
|
|
3
3
|
import { t as awsClientDefaults } from "./aws-client-defaults-D-iYiIJ6.js";
|
|
4
|
-
import { t as getCdkdVersion } from "./version-
|
|
5
|
-
import { t as ASGProvider } from "./asg-provider-
|
|
4
|
+
import { t as getCdkdVersion } from "./version-CR046mQU.js";
|
|
5
|
+
import { t as ASGProvider } from "./asg-provider-BBky5qYW.js";
|
|
6
6
|
import { AsyncLocalStorage } from "node:async_hooks";
|
|
7
7
|
import { createHash, randomBytes, randomUUID } from "node:crypto";
|
|
8
8
|
import { CopyObjectCommand, CreateBucketCommand, DeleteBucketAnalyticsConfigurationCommand, DeleteBucketCommand, DeleteBucketCorsCommand, DeleteBucketEncryptionCommand, DeleteBucketIntelligentTieringConfigurationCommand, DeleteBucketInventoryConfigurationCommand, DeleteBucketLifecycleCommand, DeleteBucketMetricsConfigurationCommand, DeleteBucketOwnershipControlsCommand, DeleteBucketPolicyCommand, DeleteBucketReplicationCommand, DeleteBucketTaggingCommand, DeleteBucketWebsiteCommand, DeleteObjectsCommand, GetBucketAccelerateConfigurationCommand, GetBucketCorsCommand, GetBucketEncryptionCommand, GetBucketLifecycleConfigurationCommand, GetBucketLocationCommand, GetBucketLoggingCommand, GetBucketNotificationConfigurationCommand, GetBucketOwnershipControlsCommand, GetBucketPolicyCommand, GetBucketReplicationCommand, GetBucketTaggingCommand, GetBucketVersioningCommand, GetBucketWebsiteCommand, GetObjectCommand, GetObjectLockConfigurationCommand, GetPublicAccessBlockCommand, HeadBucketCommand, ListBucketAnalyticsConfigurationsCommand, ListBucketIntelligentTieringConfigurationsCommand, ListBucketInventoryConfigurationsCommand, ListBucketMetricsConfigurationsCommand, ListObjectVersionsCommand, ListObjectsV2Command, NoSuchBucket, PutBucketAccelerateConfigurationCommand, PutBucketAnalyticsConfigurationCommand, PutBucketCorsCommand, PutBucketEncryptionCommand, PutBucketIntelligentTieringConfigurationCommand, PutBucketInventoryConfigurationCommand, PutBucketLifecycleConfigurationCommand, PutBucketLoggingCommand, PutBucketMetricsConfigurationCommand, PutBucketNotificationConfigurationCommand, PutBucketOwnershipControlsCommand, PutBucketPolicyCommand, PutBucketReplicationCommand, PutBucketTaggingCommand, PutBucketVersioningCommand, PutBucketWebsiteCommand, PutObjectCommand, PutObjectLockConfigurationCommand, PutPublicAccessBlockCommand, S3Client, S3ServiceException } from "@aws-sdk/client-s3";
|
|
@@ -60647,10 +60647,11 @@ var NestedStackProvider = class {
|
|
|
60647
60647
|
const resourceCount = Object.keys(childTemplate.Resources ?? {}).length;
|
|
60648
60648
|
this.logger.info(`Deploying nested stack ${childStackName} (logicalId=${logicalId}, ${resourceCount} resource(s))`);
|
|
60649
60649
|
await this.runChildDeploy(ctx, logicalId, childStackName, childRegion, childTemplate, childParameters, grandchildTemplates);
|
|
60650
|
-
const
|
|
60650
|
+
const childOutputs = await this.readChildOutputsAsAttributes(ctx, childStackName, childRegion);
|
|
60651
60651
|
return {
|
|
60652
60652
|
physicalId: this.synthesizeArn(ctx.accountId, childRegion, ctx.parentStackName, logicalId),
|
|
60653
|
-
attributes
|
|
60653
|
+
attributes: childOutputs.attributes,
|
|
60654
|
+
...childOutputs.noEchoAttributeNames.length > 0 && { noEchoAttributeNames: childOutputs.noEchoAttributeNames }
|
|
60654
60655
|
};
|
|
60655
60656
|
}
|
|
60656
60657
|
async update(logicalId, physicalId, _resourceType, properties, _previousProperties) {
|
|
@@ -60666,10 +60667,12 @@ var NestedStackProvider = class {
|
|
|
60666
60667
|
const resourceCount = Object.keys(childTemplate.Resources ?? {}).length;
|
|
60667
60668
|
this.logger.info(`Updating nested stack ${childStackName} (logicalId=${logicalId}, ${resourceCount} resource(s))`);
|
|
60668
60669
|
await this.runChildDeploy(ctx, logicalId, childStackName, childRegion, childTemplate, childParameters, grandchildTemplates);
|
|
60670
|
+
const updatedOutputs = await this.readChildOutputsAsAttributes(ctx, childStackName, childRegion);
|
|
60669
60671
|
return {
|
|
60670
60672
|
physicalId,
|
|
60671
60673
|
wasReplaced: false,
|
|
60672
|
-
attributes:
|
|
60674
|
+
attributes: updatedOutputs.attributes,
|
|
60675
|
+
...updatedOutputs.noEchoAttributeNames.length > 0 && { noEchoAttributeNames: updatedOutputs.noEchoAttributeNames }
|
|
60673
60676
|
};
|
|
60674
60677
|
}
|
|
60675
60678
|
async delete(logicalId, _physicalId, _resourceType, _properties, deleteContext) {
|
|
@@ -60742,10 +60745,50 @@ var NestedStackProvider = class {
|
|
|
60742
60745
|
nestedTemplates: grandchildTemplates
|
|
60743
60746
|
}, () => childEngine.deploy(childStackName, childTemplate));
|
|
60744
60747
|
}
|
|
60748
|
+
/**
|
|
60749
|
+
* The child's outputs, as `Outputs.<Key>` attributes for the parent's
|
|
60750
|
+
* `Fn::GetAtt` — plus the subset whose plaintext this run had to RECOVER
|
|
60751
|
+
* (issue [#2274](https://github.com/go-to-k/cdkd/issues/2274)).
|
|
60752
|
+
*
|
|
60753
|
+
* WHY THE RECOVERY IS HERE. This method reads the child's PERSISTED state,
|
|
60754
|
+
* and since #2274 an output whose value resolved a `NoEcho` custom resource's
|
|
60755
|
+
* `Data` is persisted as the redaction mask. Handing the parent `***` would
|
|
60756
|
+
* make the FIRST deploy of any such parent refuse — a template that deployed
|
|
60757
|
+
* before the feature — so where the child engine masked that output moments
|
|
60758
|
+
* ago IN THIS PROCESS, the plaintext is still available (see
|
|
60759
|
+
* `recoverMaskedOutput`) and is what the parent gets. The reported names are
|
|
60760
|
+
* what tells the deploy engine to re-register those values as MASK-ONLY
|
|
60761
|
+
* needles, so the parent's own record and every parent resource that consumes
|
|
60762
|
+
* one still persist `***`.
|
|
60763
|
+
*
|
|
60764
|
+
* PER ATTRIBUTE, not for the bag: a child typically exports one sensitive
|
|
60765
|
+
* output among several ordinary ones, and declaring the whole bag would mask
|
|
60766
|
+
* every unrelated output into the parent's state and into any parent resource
|
|
60767
|
+
* that reads one.
|
|
60768
|
+
*
|
|
60769
|
+
* A mask this run did NOT produce (the child was deployed by an earlier run
|
|
60770
|
+
* and its custom resource was `NO_CHANGE`, so no handler ran) is left as the
|
|
60771
|
+
* mask, and the resolver refuses the consumer rather than writing `***` to
|
|
60772
|
+
* AWS. That refusal is the feature's stated cost; recovering here removes it
|
|
60773
|
+
* for the in-run case only.
|
|
60774
|
+
*/
|
|
60745
60775
|
async readChildOutputsAsAttributes(ctx, childStackName, childRegion) {
|
|
60746
60776
|
const childStateData = await ctx.stateBackend.getState(childStackName, childRegion);
|
|
60747
60777
|
if (!childStateData) throw new Error(`Child stack state '${childStackName}' not found after deploy — NestedStackProvider invariant violated.`);
|
|
60748
|
-
|
|
60778
|
+
const attributes = this.buildOutputsAttributes(childStateData.state.outputs ?? {});
|
|
60779
|
+
const noEchoAttributeNames = [];
|
|
60780
|
+
for (const [outputKey, persisted] of Object.entries(childStateData.state.outputs ?? {})) {
|
|
60781
|
+
if (!carriesSecretMask(persisted)) continue;
|
|
60782
|
+
const recovered = recoverMaskedOutput(childStackName, childRegion, outputKey);
|
|
60783
|
+
if (recovered === void 0) continue;
|
|
60784
|
+
const attributeName = this.outputAttributeName(outputKey);
|
|
60785
|
+
attributes[attributeName] = recovered;
|
|
60786
|
+
noEchoAttributeNames.push(attributeName);
|
|
60787
|
+
}
|
|
60788
|
+
return {
|
|
60789
|
+
attributes,
|
|
60790
|
+
noEchoAttributeNames
|
|
60791
|
+
};
|
|
60749
60792
|
}
|
|
60750
60793
|
requireContext() {
|
|
60751
60794
|
const ctx = getCurrentNestedStackContext();
|
|
@@ -60868,9 +60911,17 @@ var NestedStackProvider = class {
|
|
|
60868
60911
|
* make EVERY consumer persist it — but the count is "one resolution path",
|
|
60869
60912
|
* not "one reader".
|
|
60870
60913
|
*/
|
|
60914
|
+
/**
|
|
60915
|
+
* The ONE spelling of a child output's attribute name. Both this class's
|
|
60916
|
+
* writers go through it, so the recovery pass (issue #2274) cannot name a key
|
|
60917
|
+
* `buildOutputsAttributes` did not write.
|
|
60918
|
+
*/
|
|
60919
|
+
outputAttributeName(outputKey) {
|
|
60920
|
+
return `Outputs.${outputKey}`;
|
|
60921
|
+
}
|
|
60871
60922
|
buildOutputsAttributes(outputs) {
|
|
60872
60923
|
const attributes = {};
|
|
60873
|
-
for (const [key, value] of Object.entries(outputs)) attributes[
|
|
60924
|
+
for (const [key, value] of Object.entries(outputs)) attributes[this.outputAttributeName(key)] = value;
|
|
60874
60925
|
return attributes;
|
|
60875
60926
|
}
|
|
60876
60927
|
};
|
|
@@ -67848,6 +67899,37 @@ function collectDynamicReferencePaths(value, into, path = "") {
|
|
|
67848
67899
|
if (value !== null && typeof value === "object") for (const [k, v] of Object.entries(value)) collectDynamicReferencePaths(v, into, path === "" ? k : `${path}.${k}`);
|
|
67849
67900
|
}
|
|
67850
67901
|
/**
|
|
67902
|
+
* Record the dotted path of every leaf that IS {@link SECRET_MASK} — the
|
|
67903
|
+
* mask-only twin of {@link collectDynamicReferencePaths} (issue
|
|
67904
|
+
* [#2274](https://github.com/go-to-k/cdkd/issues/2274)).
|
|
67905
|
+
*
|
|
67906
|
+
* WITHOUT IT A NESTED MASK IS INVISIBLE, and that is a live disclosure rather
|
|
67907
|
+
* than a tidiness gap. `calculateResourceDrift` deliberately does not descend
|
|
67908
|
+
* arrays, so a masked leaf at `ContainerDefinitions.0.Environment.0.Value`
|
|
67909
|
+
* surfaces as ONE change at path `ContainerDefinitions` whose `stateValue` is
|
|
67910
|
+
* the WHOLE ARRAY — never equal to the mask. A whole-value equality test
|
|
67911
|
+
* therefore answers `false`, `secretBearing` stays false, the LIVE plaintext is
|
|
67912
|
+
* printed by the report, and `--accept` writes it into `state.json`, undoing
|
|
67913
|
+
* exactly the redaction this feature exists to perform.
|
|
67914
|
+
*
|
|
67915
|
+
* The expression class already answers this, and answers it this way: paths go
|
|
67916
|
+
* in at the LEAF's own coordinate and {@link isSecretBearingPath} bridges to the
|
|
67917
|
+
* comparator's coarser one by matching ANCESTORS. Seeded off the state bags,
|
|
67918
|
+
* exactly like the offline dynamic-reference seed, because a mask is a fact
|
|
67919
|
+
* about the RECORD and needs no AWS call to see.
|
|
67920
|
+
*/
|
|
67921
|
+
function collectSecretMaskPaths(value, into, path = "") {
|
|
67922
|
+
if (typeof value === "string") {
|
|
67923
|
+
if (value === "***") into.add(path);
|
|
67924
|
+
return;
|
|
67925
|
+
}
|
|
67926
|
+
if (Array.isArray(value)) {
|
|
67927
|
+
value.forEach((item, i) => collectSecretMaskPaths(item, into, path === "" ? String(i) : `${path}.${i}`));
|
|
67928
|
+
return;
|
|
67929
|
+
}
|
|
67930
|
+
if (value !== null && typeof value === "object") for (const [k, v] of Object.entries(value)) collectSecretMaskPaths(v, into, path === "" ? k : `${path}.${k}`);
|
|
67931
|
+
}
|
|
67932
|
+
/**
|
|
67851
67933
|
* The drift command's resolvers for ONE stack: the stack's own, plus one pinned
|
|
67852
67934
|
* sibling per FOREIGN region an ARN-named reference asks for (issue
|
|
67853
67935
|
* [#2108](https://github.com/go-to-k/cdkd/issues/2108)).
|
|
@@ -68217,7 +68299,7 @@ function redactDriftValue(value, secrets, secretBearing) {
|
|
|
68217
68299
|
* cannot disagree — a `--dry-run` that promises a write the real run refuses is
|
|
68218
68300
|
* worse than either behaviour on its own.
|
|
68219
68301
|
*
|
|
68220
|
-
*
|
|
68302
|
+
* Three refusals, all about a value cdkd could not identify rather than about
|
|
68221
68303
|
* secrecy as such:
|
|
68222
68304
|
*
|
|
68223
68305
|
* - A masked VALUE says AWS holds something at a known-secret path that is not
|
|
@@ -68227,6 +68309,10 @@ function redactDriftValue(value, secrets, secretBearing) {
|
|
|
68227
68309
|
* `setAtPath` would then create a key literally named `***` — and when
|
|
68228
68310
|
* `awsValue` is `undefined` it would INSERT that key rather than removing the
|
|
68229
68311
|
* real one, so the value check alone does not cover it.
|
|
68312
|
+
* - A masked BASELINE (issue #2274) says the state side itself is the mask —
|
|
68313
|
+
* a `NoEcho` custom resource's `Data` redacted out of `state.json`. Accepting
|
|
68314
|
+
* would write the live plaintext over a deliberate redaction, which is the
|
|
68315
|
+
* opposite of what the mask is for.
|
|
68230
68316
|
*
|
|
68231
68317
|
* The path check is what makes the value exemptions safe: `redactDriftValue`
|
|
68232
68318
|
* lets `undefined` / `null` / a whole expression through unmasked, which is
|
|
@@ -68236,6 +68322,7 @@ function acceptRefusalReason(change, maskedPaths) {
|
|
|
68236
68322
|
if (!maskedPaths.has(change.path)) return void 0;
|
|
68237
68323
|
if (change.path.includes("***")) return "its property NAME came back carrying a secret value, so cdkd cannot name the key to write — and no redaction pass can clear it either, since they all walk values and never keys. ROTATE the secret; that is the only remedy";
|
|
68238
68324
|
if (change.awsValue === void 0) return "AWS no longer reports it, and accepting an absence DELETES the key — which at or above a secret dynamic reference would erase the reference out of cdkd state. Use --revert to push it back, or re-deploy";
|
|
68325
|
+
if (change.stateValue === "***") return "cdkd does not know the value that belongs at this position — the baseline holds only the redaction mask, so accepting would write AWS-held plaintext over a deliberate redaction. Re-deploy to refresh it";
|
|
68239
68326
|
return "it carries a secret dynamic reference and the value AWS currently holds is not the one the reference resolves to";
|
|
68240
68327
|
}
|
|
68241
68328
|
/**
|
|
@@ -68263,8 +68350,8 @@ function acceptRefusalReason(change, maskedPaths) {
|
|
|
68263
68350
|
*
|
|
68264
68351
|
* Returns the input array by identity when there is nothing to act on.
|
|
68265
68352
|
*/
|
|
68266
|
-
function redactDriftChanges(changes, secrets, secretPaths) {
|
|
68267
|
-
if (secrets.size === 0 && secretPaths.size === 0) return {
|
|
68353
|
+
function redactDriftChanges(changes, secrets, secretPaths, maskPaths) {
|
|
68354
|
+
if (secrets.size === 0 && secretPaths.size === 0 && maskPaths.size === 0 && !changes.some((change) => carriesSecretMask(change.stateValue))) return {
|
|
68268
68355
|
changes,
|
|
68269
68356
|
maskedPaths: /* @__PURE__ */ new Set()
|
|
68270
68357
|
};
|
|
@@ -68272,9 +68359,10 @@ function redactDriftChanges(changes, secrets, secretPaths) {
|
|
|
68272
68359
|
const redacted = [];
|
|
68273
68360
|
for (const change of changes) {
|
|
68274
68361
|
const maskedPath = maskSecretsInText(change.path, secrets);
|
|
68275
|
-
const positionIsSecret = isSecretBearingPath(change.path, secretPaths);
|
|
68362
|
+
const positionIsSecret = isSecretBearingPath(change.path, secretPaths) || isSecretBearingPath(change.path, maskPaths);
|
|
68276
68363
|
const nameCarriesSecret = maskedPath !== change.path;
|
|
68277
|
-
const
|
|
68364
|
+
const stateValueIsMask = carriesSecretMask(change.stateValue);
|
|
68365
|
+
const secretBearing = positionIsSecret || nameCarriesSecret || stateValueIsMask;
|
|
68278
68366
|
if (secretPaths.has(change.path) && change.awsValue === void 0) continue;
|
|
68279
68367
|
const stateValue = redactDriftValue(change.stateValue, secrets, secretBearing);
|
|
68280
68368
|
const awsValue = redactDriftValue(change.awsValue, secrets, secretBearing);
|
|
@@ -68371,6 +68459,9 @@ async function runDriftForStack(stackName, region, stateBackend, providerRegistr
|
|
|
68371
68459
|
const seededSecretPaths = /* @__PURE__ */ new Set();
|
|
68372
68460
|
collectDynamicReferencePaths(baseline, seededSecretPaths);
|
|
68373
68461
|
if (useObserved) collectDynamicReferencePaths(resource.properties ?? {}, seededSecretPaths);
|
|
68462
|
+
const maskSecretPaths = /* @__PURE__ */ new Set();
|
|
68463
|
+
collectSecretMaskPaths(baseline, maskSecretPaths);
|
|
68464
|
+
if (useObserved) collectSecretMaskPaths(resource.properties ?? {}, maskSecretPaths);
|
|
68374
68465
|
const unresolvedTokens = /* @__PURE__ */ new Set();
|
|
68375
68466
|
const noteUnresolved = (tokens) => {
|
|
68376
68467
|
for (const token of tokens) unresolvedTokens.add(token);
|
|
@@ -68411,7 +68502,7 @@ async function runDriftForStack(stackName, region, stateBackend, providerRegistr
|
|
|
68411
68502
|
ignorePaths: observedIgnorePaths.length ? [...ignorePaths, ...observedIgnorePaths] : ignorePaths,
|
|
68412
68503
|
unionWalkObjects: useObserved,
|
|
68413
68504
|
unorderedPaths
|
|
68414
|
-
}), secrets, secretResolutionFailed ? seededSecretPaths : secretPaths);
|
|
68505
|
+
}), secrets, secretResolutionFailed ? seededSecretPaths : secretPaths, maskSecretPaths);
|
|
68415
68506
|
const notComparedCause = secretResolutionFailed ? "refused" : unresolvedTokens.size > 0 ? "unresolvedToken" : void 0;
|
|
68416
68507
|
if (reported.changes.length === 0) if (notComparedCause !== void 0) outcomes.push({
|
|
68417
68508
|
kind: "notCompared",
|
|
@@ -69013,6 +69104,101 @@ function preserveLiveValuesAtUnresolvedTokens(send, awsProperties, secrets) {
|
|
|
69013
69104
|
return walk(send, awsProperties);
|
|
69014
69105
|
}
|
|
69015
69106
|
/**
|
|
69107
|
+
* Keep `cdkd drift --revert` from pushing a REDACTION MASK to AWS (issue
|
|
69108
|
+
* [#2274](https://github.com/go-to-k/cdkd/issues/2274)).
|
|
69109
|
+
*
|
|
69110
|
+
* WHY THIS EXISTS AT ALL. A `NoEcho` custom resource's `Data` resolved into a
|
|
69111
|
+
* dependent's property is persisted as {@link SECRET_MASK}, because there is no
|
|
69112
|
+
* expression to store in its place. `--revert` pushes the BASELINE to AWS, so
|
|
69113
|
+
* without this a revert triggered by a SIBLING key would write the literal
|
|
69114
|
+
* `***` onto the live SSM parameter / secret / env var — the issue #1498 /
|
|
69115
|
+
* #1501 data-corruption class, and strictly worse than the disclosure the mask
|
|
69116
|
+
* exists to prevent. Shipping the mask without this guard would trade one for
|
|
69117
|
+
* the other.
|
|
69118
|
+
*
|
|
69119
|
+
* The sibling of {@link preserveLiveValuesAtUnresolvedTokens} and deliberately
|
|
69120
|
+
* a SEPARATE function rather than another branch inside it. That one is gated
|
|
69121
|
+
* on `unresolvedTokens.size > 0` at its call site, and this hazard is decided
|
|
69122
|
+
* by the SEND bag alone — a resource can carry a mask with no unresolved token
|
|
69123
|
+
* anywhere, so folding the two would put this check behind a condition that has
|
|
69124
|
+
* nothing to do with it.
|
|
69125
|
+
*
|
|
69126
|
+
* IT REGISTERS WHAT IT MOVES, exactly as the sibling does, and an earlier
|
|
69127
|
+
* revision's reason for not doing so was wrong: it said "the live value is one
|
|
69128
|
+
* cdkd never resolved and cannot recognise, so there is no needle to record".
|
|
69129
|
+
* The needle is `liveValue -> {@link SECRET_MASK}`, i.e. a MASK-ONLY entry, and
|
|
69130
|
+
* the evidence for it is the position — THE MASKED POSITION IS THE PROOF THE
|
|
69131
|
+
* VALUE IS SECRET, since nothing but this module's own redaction puts a mask at
|
|
69132
|
+
* a leaf. Without the registration this function copies live plaintext into the
|
|
69133
|
+
* send bag and then `collectNarrowedTopLevelKeys` persists that delta into
|
|
69134
|
+
* `observedProperties` against a `secrets` map holding no entry for it — the
|
|
69135
|
+
* same disclosure the mask exists to prevent, arriving through the mechanism
|
|
69136
|
+
* that is supposed to protect it — and the same omission un-masks it in
|
|
69137
|
+
* `maskSecretsInText(err.message, secrets)` and in the masker handed to
|
|
69138
|
+
* `provider.update`.
|
|
69139
|
+
*
|
|
69140
|
+
* `secrets` is therefore MUTATED, which is why it is a parameter rather than
|
|
69141
|
+
* something the caller could omit. `recordMaskOnlyValue` applies its own
|
|
69142
|
+
* refusals (an entry that already carries a real EXPRESSION wins; a plaintext
|
|
69143
|
+
* below the needle floor is not recorded), so this call site states only the
|
|
69144
|
+
* position fact and lets the module decide what is registrable.
|
|
69145
|
+
*
|
|
69146
|
+
* TWO OUTCOMES per masked leaf, and the second is why this returns a report
|
|
69147
|
+
* rather than just a bag:
|
|
69148
|
+
*
|
|
69149
|
+
* - AWS holds a value there -> copy the LIVE value in. The revert then leaves
|
|
69150
|
+
* that position exactly as AWS has it while still reverting every other
|
|
69151
|
+
* drifted key, which is the same trade `preserveLiveValuesAtUnresolvedTokens`
|
|
69152
|
+
* makes.
|
|
69153
|
+
* - AWS holds nothing there (the position could not be aligned, or the key is
|
|
69154
|
+
* absent live) -> there is no safe value to send, so the path is reported as
|
|
69155
|
+
* UNPRESERVABLE and the caller refuses the whole resource. Sending the mask
|
|
69156
|
+
* would be the corruption; dropping the key would delete a property the
|
|
69157
|
+
* resource may require.
|
|
69158
|
+
*
|
|
69159
|
+
* Array descent is POSITIONAL and bails to "no live value" on any length
|
|
69160
|
+
* mismatch, matching the sibling: a reordered readback cannot be positioned
|
|
69161
|
+
* against, and guessing would put one element's live value at another's index.
|
|
69162
|
+
*
|
|
69163
|
+
* Returns the input bag BY IDENTITY when it holds no mask, so the ordinary
|
|
69164
|
+
* revert is byte-identical and pays one walk.
|
|
69165
|
+
*/
|
|
69166
|
+
function preserveLiveValuesAtMaskedLeaves(send, awsProperties, secrets) {
|
|
69167
|
+
const unpreservablePaths = [];
|
|
69168
|
+
let changed = false;
|
|
69169
|
+
const walk = (value, live, path) => {
|
|
69170
|
+
if (value === "***") {
|
|
69171
|
+
if (live === void 0) {
|
|
69172
|
+
unpreservablePaths.push(path);
|
|
69173
|
+
return value;
|
|
69174
|
+
}
|
|
69175
|
+
changed = true;
|
|
69176
|
+
if (typeof live === "string") recordMaskOnlyValue(secrets, live);
|
|
69177
|
+
return live;
|
|
69178
|
+
}
|
|
69179
|
+
if (Array.isArray(value)) {
|
|
69180
|
+
const liveItems = Array.isArray(live) && live.length === value.length ? live : void 0;
|
|
69181
|
+
return value.map((item, i) => walk(item, liveItems?.[i], `${path}[${i}]`));
|
|
69182
|
+
}
|
|
69183
|
+
if (value !== null && typeof value === "object") {
|
|
69184
|
+
const liveObject = isPlainRecord(live) ? live : void 0;
|
|
69185
|
+
const out = {};
|
|
69186
|
+
for (const [k, v] of Object.entries(value)) out[k] = walk(v, liveObject?.[k], path === "" ? k : `${path}.${k}`);
|
|
69187
|
+
return out;
|
|
69188
|
+
}
|
|
69189
|
+
return value;
|
|
69190
|
+
};
|
|
69191
|
+
const properties = walk(send, awsProperties, "");
|
|
69192
|
+
if (!changed && unpreservablePaths.length === 0) return {
|
|
69193
|
+
properties: send,
|
|
69194
|
+
unpreservablePaths
|
|
69195
|
+
};
|
|
69196
|
+
return {
|
|
69197
|
+
properties,
|
|
69198
|
+
unpreservablePaths
|
|
69199
|
+
};
|
|
69200
|
+
}
|
|
69201
|
+
/**
|
|
69016
69202
|
* Build the `newProperties` object passed to `provider.update` during
|
|
69017
69203
|
* `--revert`. Strategy:
|
|
69018
69204
|
*
|
|
@@ -69254,7 +69440,13 @@ async function runRevert(reports, providerRegistry, stateBackend, stateConfig, a
|
|
|
69254
69440
|
let newProperties;
|
|
69255
69441
|
try {
|
|
69256
69442
|
const overlaid = buildRevertNewProperties(outcome.changes, desiredProperties, outcome.awsProperties, { preserveUntemplated: stateResource.observedProperties === void 0 });
|
|
69257
|
-
|
|
69443
|
+
const maskPreserved = preserveLiveValuesAtMaskedLeaves(unresolvedTokens.size > 0 ? preserveLiveValuesAtUnresolvedTokens(overlaid, outcome.awsProperties, secrets) : overlaid, outcome.awsProperties, secrets);
|
|
69444
|
+
if (maskPreserved.unpreservablePaths.length > 0) {
|
|
69445
|
+
totalUnresolvable++;
|
|
69446
|
+
logger.error(` ✗ ${report.stackName}/${outcome.logicalId} (${outcome.resourceType}): refused to revert ${maskPreserved.unpreservablePaths.join(", ")} — the recorded baseline holds only the redaction mask there (a NoEcho custom-resource value), and AWS reports nothing to preserve, so cdkd has no value it may write. Force that custom resource to update (change one of its properties, e.g. a nonce) and re-deploy, so its handler runs again and supplies the value — an ordinary re-deploy leaves it unchanged and the mask stays.`);
|
|
69447
|
+
return;
|
|
69448
|
+
}
|
|
69449
|
+
newProperties = maskPreserved.properties;
|
|
69258
69450
|
} catch (err) {
|
|
69259
69451
|
totalFailed++;
|
|
69260
69452
|
logger.error(` ✗ ${report.stackName}/${outcome.logicalId} (${outcome.resourceType}): could not build the revert payload — ${maskSecretsInText(err instanceof Error ? err.message : String(err), secrets)}`);
|
|
@@ -72134,6 +72326,14 @@ async function buildImportPlan(state, template, cfnClient, parentStackName, opti
|
|
|
72134
72326
|
});
|
|
72135
72327
|
continue;
|
|
72136
72328
|
}
|
|
72329
|
+
if (carriesSecretMask(stateEntry.properties)) {
|
|
72330
|
+
blocked.push({
|
|
72331
|
+
logicalId,
|
|
72332
|
+
resourceType,
|
|
72333
|
+
reason: "cdkd state holds only the redaction mask ('***') for at least one property — a NoEcho custom-resource value cdkd cannot re-derive. Forcing the custom resource to update does NOT clear this: the handler supplies the value to the deploy, and cdkd re-masks it on the way into state, so the export still has nothing to declare. Stop setting NoEcho on that response and re-deploy, then export again; or export this stack without that resource and adopt it into CloudFormation by hand. See https://github.com/go-to-k/cdkd/issues/2274."
|
|
72334
|
+
});
|
|
72335
|
+
continue;
|
|
72336
|
+
}
|
|
72137
72337
|
if (IMPORT_UNSUPPORTED_RECREATABLE_TYPES.has(resourceType)) {
|
|
72138
72338
|
if (options.recreateImportUnsupported) recreateBeforePhase2.push({
|
|
72139
72339
|
logicalId,
|
|
@@ -75796,10 +75996,6 @@ async function eventsPruneCommand(stackName, options) {
|
|
|
75796
75996
|
const totalRuns = (await reader.listRuns(stackName, targetRegion)).length;
|
|
75797
75997
|
const scope = options.all ? `ALL ${totalRuns} run(s)` : options.keep !== void 0 && olderThanMs !== void 0 ? `runs beyond the newest ${options.keep} AND older than ${options.olderThan}` : options.keep !== void 0 ? `runs beyond the newest ${options.keep}` : olderThanMs !== void 0 ? `runs older than ${options.olderThan}` : `runs beyond the newest ${20}`;
|
|
75798
75998
|
if (options.yes !== true) {
|
|
75799
|
-
if (!process.stdin.isTTY) {
|
|
75800
|
-
logger.info(gray(`Refusing to prune deployment-event history for ${stackName} (${targetRegion}) without confirmation on a non-interactive terminal. Re-run with --yes to proceed.`));
|
|
75801
|
-
return;
|
|
75802
|
-
}
|
|
75803
75999
|
if (!await confirmPrompt$2(`Prune deployment-event history for ${cyan(stackName)} ${gray(`(${targetRegion})`)}: ${scope}?`)) {
|
|
75804
76000
|
logger.info(gray("Aborted; nothing was deleted."));
|
|
75805
76001
|
return;
|
|
@@ -75819,18 +76015,16 @@ async function eventsPruneCommand(stackName, options) {
|
|
|
75819
76015
|
awsClients.destroy();
|
|
75820
76016
|
}
|
|
75821
76017
|
}
|
|
75822
|
-
/**
|
|
76018
|
+
/**
|
|
76019
|
+
* Minimal `(y/N)` prune confirmation, delegating to the shared guarded helper.
|
|
76020
|
+
*
|
|
76021
|
+
* Exported for unit testing, matching the nine siblings issue #2275 folded —
|
|
76022
|
+
* `tests/unit/cli/non-interactive-confirm-guards.test.ts` drives each command's
|
|
76023
|
+
* wrapper directly, which is how the refusal wording and the never-settling
|
|
76024
|
+
* hang fence are checked per site.
|
|
76025
|
+
*/
|
|
75823
76026
|
async function confirmPrompt$2(prompt) {
|
|
75824
|
-
|
|
75825
|
-
input: process.stdin,
|
|
75826
|
-
output: process.stdout
|
|
75827
|
-
});
|
|
75828
|
-
try {
|
|
75829
|
-
const ans = await rl.question(`${prompt} [y/N] `);
|
|
75830
|
-
return /^y(es)?$/i.test(ans.trim());
|
|
75831
|
-
} finally {
|
|
75832
|
-
rl.close();
|
|
75833
|
-
}
|
|
76027
|
+
return confirmOrRefuse(prompt, { refusal: "The cdkd events prune confirmation prompt cannot run in a non-interactive environment. Pass -y / --yes to confirm the prune, or run the command from a real terminal. Nothing has been deleted." });
|
|
75834
76028
|
}
|
|
75835
76029
|
/** Human-readable run listing (newest first). */
|
|
75836
76030
|
function printRunList(stackName, region, runs) {
|
|
@@ -89193,4 +89387,4 @@ function buildProgram() {
|
|
|
89193
89387
|
|
|
89194
89388
|
//#endregion
|
|
89195
89389
|
export { buildProgram };
|
|
89196
|
-
//# sourceMappingURL=program-
|
|
89390
|
+
//# sourceMappingURL=program-BHmUE52I.js.map
|