@go-to-k/cdkd 0.230.24 → 0.230.26

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/cli.js CHANGED
@@ -1445,7 +1445,7 @@ const FLUSH_INTERVAL_MS = 2e3;
1445
1445
  const FLUSH_EVENT_THRESHOLD = 50;
1446
1446
  /** Build-time cdkd version, with a dev fallback for non-built contexts. */
1447
1447
  function getCdkdVersion() {
1448
- return "0.230.24";
1448
+ return "0.230.26";
1449
1449
  }
1450
1450
  /**
1451
1451
  * Generate a time-sortable unique run id, e.g.
@@ -8040,7 +8040,9 @@ var LambdaFunctionProvider = class {
8040
8040
  }
8041
8041
  const newCode = properties["Code"];
8042
8042
  const oldCode = previousProperties["Code"];
8043
- if (newCode && JSON.stringify(newCode) !== JSON.stringify(oldCode)) {
8043
+ const normalizeArchitectures = (v) => Array.isArray(v) && v.length > 0 ? v : ["x86_64"];
8044
+ const architecturesChanged = JSON.stringify(normalizeArchitectures(properties["Architectures"])) !== JSON.stringify(normalizeArchitectures(previousProperties["Architectures"]));
8045
+ if (newCode && (architecturesChanged || JSON.stringify(newCode) !== JSON.stringify(oldCode))) {
8044
8046
  const builtCode = this.buildCode(newCode, properties["Runtime"]);
8045
8047
  const codeParams = {
8046
8048
  FunctionName: physicalId,
@@ -8048,7 +8050,8 @@ var LambdaFunctionProvider = class {
8048
8050
  S3Key: builtCode.S3Key,
8049
8051
  S3ObjectVersion: builtCode.S3ObjectVersion,
8050
8052
  ZipFile: builtCode.ZipFile,
8051
- ImageUri: builtCode.ImageUri
8053
+ ImageUri: builtCode.ImageUri,
8054
+ Architectures: architecturesChanged ? normalizeArchitectures(properties["Architectures"]) : void 0
8052
8055
  };
8053
8056
  await this.lambdaClient.send(new UpdateFunctionCodeCommand(codeParams));
8054
8057
  this.logger.debug(`Updated code for Lambda function ${physicalId}`);
@@ -12225,11 +12228,19 @@ var LogsLogGroupProvider = class {
12225
12228
  *
12226
12229
  * Mutable: `RetentionInDays`, `DataProtectionPolicy`, `Tags`,
12227
12230
  * `DeletionProtectionEnabled`, `BearerTokenAuthenticationEnabled`,
12228
- * `FieldIndexPolicies`. `LogGroupName` / `KmsKeyId` / `LogGroupClass`
12229
- * are immutable on AWS-side and require replacement.
12231
+ * `FieldIndexPolicies`. `LogGroupName` requires replacement.
12232
+ * `LogGroupClass` cannot be changed at all (CFn: "Updates are not
12233
+ * supported" — there is no CloudWatch Logs API to change a log group's
12234
+ * class after creation), so a class change throws
12235
+ * {@link ResourceUpdateNotSupportedError} instead of being silently
12236
+ * dropped; `--replace` recreates the log group under the new class.
12230
12237
  */
12231
12238
  async update(logicalId, physicalId, _resourceType, properties, previousProperties) {
12232
12239
  this.logger.debug(`Updating log group ${logicalId}: ${physicalId}`);
12240
+ const normalizeClass = (v) => typeof v === "string" && v.length > 0 ? v : "STANDARD";
12241
+ const prevClass = normalizeClass(previousProperties["LogGroupClass"]);
12242
+ const nextClass = normalizeClass(properties["LogGroupClass"]);
12243
+ if (prevClass !== nextClass) throw new ResourceUpdateNotSupportedError("AWS::Logs::LogGroup", logicalId, `the LogGroupClass ('${prevClass}' -> '${nextClass}') cannot be changed after creation. Re-deploy with ${properties["RetentionInDays"] ? "--replace --force-stateful-recreation" : "--replace"} to delete + recreate the log group under the new class (its stored log events are lost), or revert the LogGroupClass change`);
12233
12244
  const retentionInDays = properties["RetentionInDays"];
12234
12245
  if (retentionInDays !== previousProperties["RetentionInDays"]) if (retentionInDays) await this.logsClient.send(new PutRetentionPolicyCommand({
12235
12246
  logGroupName: physicalId,
@@ -55409,7 +55420,7 @@ function reorderArgs(argv) {
55409
55420
  async function main() {
55410
55421
  installPipeCloseHandler();
55411
55422
  const program = new Command();
55412
- program.name("cdkd").description("CDK Direct - Deploy AWS CDK apps directly via SDK/Cloud Control API").version("0.230.24");
55423
+ program.name("cdkd").description("CDK Direct - Deploy AWS CDK apps directly via SDK/Cloud Control API").version("0.230.26");
55413
55424
  program.addCommand(createBootstrapCommand());
55414
55425
  program.addCommand(createSynthCommand());
55415
55426
  program.addCommand(createListCommand());