updated infra README about pinning AMI
This commit is contained in:
parent
2f4e5b585d
commit
2745e75408
1 changed files with 19 additions and 0 deletions
|
|
@ -46,6 +46,25 @@ psql $DATABASE_URL -c 'SELECT 1;'
|
|||
psql $DATABASE_URL -f ~/everytab/pipeline/01_cc_index/schema.sql
|
||||
```
|
||||
|
||||
## Pinning the EC2 AMI
|
||||
|
||||
The `data.aws_ami` lookup fetches the latest Amazon Linux 2023 AMI. If Amazon publishes a new one between applies, Terraform will want to replace your EC2 instance.
|
||||
|
||||
To prevent this, pin the AMI after initial creation:
|
||||
|
||||
```bash
|
||||
# Get the current instance's AMI
|
||||
aws ec2 describe-instances --filters "Name=tag:Name,Values=everytab" \
|
||||
--query "Reservations[0].Instances[0].ImageId" --output text
|
||||
|
||||
# Add to terraform.tfvars
|
||||
echo 'ec2_ami = "ami-XXXXXXXXXXXX"' >> terraform.tfvars
|
||||
```
|
||||
|
||||
Now `terraform apply` won't replace the instance for non-EC2 changes (like adding CloudFront logging).
|
||||
|
||||
Remove the `ec2_ami` line from tfvars when you want a fresh instance with the latest AMI (e.g., after teardown).
|
||||
|
||||
## Teardown (after backup)
|
||||
|
||||
Switch to serving-only mode (destroys EC2, RDS, icons bucket):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue