Repository navigation
fix(docs): describe per-team ECS execution roles and the Google OIDC identity module - #179
Conversation
…identity module cognito-app-client and iam comments, platform-modules.md and reusable-modules.md still described a shared execution role reading every team's secrets, and platform-modules.md called the identity module unimplemented and SAML-based. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Terraform Plan✅ No changes — infrastructure is up to date. Plan output |
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
Addressed the review in 1cc0885. Both findings checked out against the code and live AWS, so I fixed both and rejected none.
Verification: 🤖 Generated with Claude Code |
Terraform Plan✅ No changes — infrastructure is up to date. Plan output |
Co-Authored-By: Claude Opus 5.5 <[email protected]>
|
Merged
The other files merged cleanly. Checked that #185's new RDS password path ( |
# Conflicts: # terraform/org/identity-center.tf
Terraform Plan🚧 Changes detected — Plan: 6 to add, 11 to change, 0 to destroy. Plan outputLLM ReviewRisk: 🔴 HIGH Plan adds 6 resources and updates 11 in place (0 destroyed) and materially widens CI OIDC trust, ECS/IAM/RDS permissions, and the team provisioner's ability to set permission boundaries, which warrants review before apply.
|
Problem
Several comments and docs still describe the old setup:
terraform/modules/cognito-app-client/main.tfsays "the shared execution role reads //apps/* at task launch". Tasks now use per-team rolesjavabin-ecs-exec-{team}, which can read only/javabin/apps/{team}/*(terraform/platform/iam/main.tf,terraform/modules/platform-data/main.tf).terraform/platform/iam/main.tfheader still callsjavabin-ecs-execution"the shared execution role for all ECS tasks" that "reads secrets". The resource comment right below it says the role is deprecated and has no secrets access.docs/platform-modules.mdanddocs/reusable-modules.mdlistjavabin-ecs-executionas the role that reads secrets / the roleplatform-datareturns.docs/platform-modules.mdidentity section says "Not yet implemented ... blocked on Google Admin access for SAML federation". The module is deployed and the internal pool signs in through Google OIDC (feat(identity): cut the internal pool over from GoogleSAML to Google #175).Change
The comments and docs now match the code. Only comments and docs change; there is no behaviour change.
The developer-facing docs (auth, getting started, how AWS sign-in works and what to do when a Google account isn't provisioned into Identity Center) live in javaBin/docs: javaBin/docs#5
Verification
iam/main.tf(aws_iam_role.ecs_exec_team,ecs_exec_team_secrets),platform-data(data.aws_iam_role.ecs_execution=javabin-ecs-exec-${var.team}),identity/main.tfandvariables.tf(internal_identity_providers = ["Google"]). Read-only live check: the internal pool hasGoogleandGoogleSAML, and both clients offer onlyGoogle.terraform fmt -checkon the touched dirs passes.terraform validateincognito-app-clientpasses (the only warning, aboutaws_region.name, was already there).🤖 Generated with Claude Code