🐛 Bug Fixes
- Preserve existing service discovery endpoint (#3949)
In the transition from
env upgrade
toenv deploy
, we lost the preservation of theServiceDiscoveryEndpoint
parameter and instead assumed the[app].[env].local
format. However, environments that predated our v1.9.0 release have[app].local
-formattedServiceDiscoveryEndpoint
parameters, and therefore were erroring out when updates were attempted. This fix preserves the existing value whenenv deploy
is run. - Trigger
EnvControllerAction
custom resource whenever Copilot version updated (#3957)For users with internal ALBs, their backend service CloudFormation stacks rely on the environment stack for an
Output
,InternalWorkloadsHostedZone
. After upgrading to v1.21.0,svc deploy
failed for those users, as thisOutput
was not being generated because nothing within theEnvController
's properties had changed to trigger an execution. This fix ensures that the Lambda is triggered whenever the Copilot version is changed. - Ensure
EnvManagerRole
has permission to upload artifacts to S3 (#3956)By checking for the appropriate permissions and adding them if they're absent, Copilot makes sure the
EnvManagerRole
can push objects to S3, whether the environment was deployed in the same account as the application or not. - Give
EnvManagerRole
permission to--generate-cmd
(#3942)Now that the
EnvManagerRole
session is executing the command generation when that flag is applied totask run
, it needs thestates:DescribeStateMachine
permission to do so. This fix grants that permission.