Skip to content

v.0.4.0 🚨 Breaking changes

Compare
Choose a tag to compare
@charles-nava charles-nava released this 22 Nov 00:15
· 138 commits to main since this release
5dedfb0

Summary

Layer Has changes Needs migration
Account
Network βœ…
Build repository
Database βœ… 🚚
Service βœ…

🚨 Breaking changes

See migration notes below for how to migrate from v0.3.0

New and updated functionality

Fixes

  • Add concurrency limit to build and publish workflow to @charles-nava in #451 β€” Fixes race condition when multiple runs of workflow run on same branch
  • Install role manager dependencies on every terraform apply by @charles-nava in #452 β€” Fixes missing dependencies in deployed role manager lambda function when a second engineer deploys without modifying requirements.txt
  • Shorten database IAM role name prefixes due to character limits by @rocketnova in #472 β€” Fixes errors with database layer when using long app names, environment names, and/or workspace names

Tech debt

  • Refactor env configs into separate blocks by @lorenyu in #437
  • Replace terraform refresh (deprecated) with terraform apply -refresh-only by @charles-nava in #449
  • Remove redundant comment by @rocketnova in #450
  • Rename ci-app-vulnerability-scans.yml.yml to ci-app-vulnerability-scans.yml by @daphnegold in #465

Documentation

  • Add ADR documenting rationale for separating app infra layers by @lorenyu in #438

Migration notes

If the database cluster already exists and has manage_master_user_password set to false, the running terraform plan on the database layer will fail with the following error:

image

In order to migrate, perform the following steps:

  1. First do a targeted apply of the aws_rds_cluster by running the
    following command (replace ENVIRONMENT_NAME with the correct
    environment)

    TF_CLI_ARGS_apply='-target="module.database.aws_rds_cluster.db"' make infra-update-app-database APP_NAME=app ENVIRONMENT=<ENVIRONMENT_NAME>
    

    Your plan should look like this:
    image

  2. Then you can apply the rest of the changes normally with make infra-update-app-database APP_NAME=app ENVIRONMENT=<ENVIRONMENT_NAME>

Full Changelog: v0.3.0...v0.4.0