github kayac/ecspresso v3.0.0

one hour ago

ecspresso v3 cleans up the features deprecated in v2 and unifies the behavior that differed by command. Most users are not affected by the breaking changes. See docs/v2-v3.md for the details.

Upgrading from v2

  • GitHub Action: the action has moved to kayac/ecspresso-action. Replace uses: kayac/ecspresso@v2 with uses: kayac/ecspresso-action@v3. kayac/ecspresso@v3 is a deprecated wrapper that calls it. (#1120)
  • required_version: a constraint that excludes v3 (e.g. >= 2.0.0, < 3) makes v3 fail to load the configuration. Update it when you upgrade. (#1139)

Breaking changes

  • YAML configuration files must be valid YAML before template rendering. Quote a template that begins a scalar value. (#1023)
  • Keys in definition files and the configuration file are case-sensitive. Files generated by ecspresso init are not affected. (#1126)
  • --wait-until defaults to deployed in every command that waits for a service deployment, and deploy applies it also when it creates a new service. (#1149)
  • rollback requires an active deployment. Use --with-previous-task-definition for the v2 behavior. (#1047)
  • run --count N waits for every started task, and fails if any of them fails. (#1117)
  • Commands that describe the service fail when DescribeServiceRevisions fails. The IAM principal needs ecs:DescribeServiceRevisions. (#1107)
  • Plain numbers of durations in the configuration are interpreted as seconds, not nanoseconds. (#1028)
  • Remove the deprecated filter_command configuration field. (#1024)
  • Remove the deprecated flags of exec and tasks. Use the subcommands instead. (#1025)
  • Remove diff --unified / --no-unified. (#1027)
  • verify no longer validates earlySuccessCriteria. (#1131)

New features

  • Plugin functions (tfstate, cloudformation, ssm, secretsmanager) in top-level configuration fields (#1023)
  • Pause lifecycle hooks: the continue command and --wait-until=paused (#1047, #1070)
  • gatewayConnectors for Amazon ECS Gateway (#1108)
  • diff --exit-code (#1140)
  • jsonrpc mode of the external plugin (#1041)
  • verify authenticates to Amazon ECR Public (#1112)
  • A signed packslip manifest is attached to each release (#1105)
  • The migration guides are available by the docs command (#1048, #1061)

Bug fixes

  • Fix rollback of a deployment in progress to wait for the right task definition (#1143, #1144)

Library

  • The Go module path is github.com/kayac/ecspresso/v3 (#1132)
  • Go 1.27 or later is required (#1111, #1126)
  • Sentinel errors, unexported internals, and ParseCLI (#1029)
  • Add WithPluginInstance (#1031)

Also released in v2.8.x

These changes are included in v2.8.5 or later as well.

  • Add optional: true to the tfstate plugin (#1017)
  • Add App.HasDiff (#1019)
  • Support --wait-until ecs:<lifecycle stage> for deploy (#1065, #1067)
  • Support early success criteria for rolling deployments (#1083)
  • Wait for the service deployment created late after UpdateService (#1093)
  • Support hookDetails of deployment lifecycle hooks (#1125)
  • Update the base image to distroless static-debian13 (#1127)
  • Fix diff of availabilityZoneRebalancing omitted in the definition (#1130)

Other changes

Full Changelog: v2.8.9...v3.0.0

Don't miss a new ecspresso release

NewReleases is sending notifications on new releases.