copilot-cli: Release v1.21.0
⚡️ Features and Enhancements
- Enable Amazon CloudFront in your environments to deliver content with low-latency and improved security (#3701)
By simply setting
cdn: true
in your environment manifest and runningcopilot env deploy
, you can deploy your application globally and securely!
Copilot's CloudFront integration supports HTTPS:cdn: certificate: arn:aws:acm:us-east-1:${AWS_ACCOUNT_ID}:certificate/13245665-h74x-4ore-jdnz-avs87dl11jd
and you can limit public traffic to your ALB to this distribution:
http: public: security_groups: ingress: restrict_to: cdn: true
See our blog post for more!
- Package local paths, such as Lambda functions, that your
addons/
AWS CloudFormation template references (#3875)Copilot can now upload local files referenced in your addons templates to S3, then replace the relevant resource properties with the uploaded S3 location. On
copilot svc deploy
orcopilot svc package --upload-assets
, certain fields on supported resources will be updated with an S3 location! To see the full list of resources that are supported, take a look at the AWS CLI documentation.
See our blog post for more! - Run Copilot's new
job logs
command (#3794)View and follow logs for executions of your scheduled jobs by running
copilot job logs
. You can choose how many invocations of the job to view, filter logs by specific task IDs, and choose whether to view state machine execution logs.
You might view logs from the last invocation of the job and all the state machine execution data:
copilot job logs --include-state-machine
or invoke a task and follow its logs:
copilot job run -n [jobName] && copilot job logs -n [jobName] --follow
For more details, see the blog post! - Configure security groups via env manifest (#3749, #3810)
Define ingress and egress for your security groups:
network: vpc: security_group: ingress: - ip_protocol: tcp ports: 0-65535 cidr: 0.0.0.0/0 egress: - ip_protocol: tcp ports: 80 cidr: 0.0.0.0/0
- Enable access logs for ELBs (#3849)
Another new field for the environment manifest! Copilot can create an S3 bucket for you and write ELB access logs to it.
http: public: access_logs: true
Alternatively, you can specify an existing bucket. Read the blog post to find out how!
- Specify subnets in bulk with tags (#3727)
In v1.19.0, we introduced the ability to indicate specific subnets in which to launch ECS tasks; now, you may refer to groups of those subnets by their tags:
network: vpc: placement: subnets: from_tags: org: bi type: - public - private
See the docs for more details.
- Leverage environment files for
task run
(#3803)You can add environment variables in bulk with the
task run
command. Store your env vars in an environment variable file (with the.env
extension), then pass in the path to that file using the new--env-file
flag.
🐛 Bug Fixes
- Network load balanced services can target sidecar ports (#3819)
- The Environment Manager Role works for partitions besides the AWS public one (#3845)
❤️ Contributions
Thank you, contributors!