feat(P4): Nova rebrand — AWS resource migration (REQ-163)

Rename all acdl-* AWS resources → nova-* across terraform (DynamoDB,
Secrets Manager, Lambda, SNS, SG, KMS alias, ECS, ECR, IAM user/policy,
state bucket, ALB, VPC/subnet names). Lambda default table names → nova-*
(D-111). State bucket backend → nova-tfstate (-migrate-state documented).
New docs/NOVA_AWS_MIGRATION.md runbook (staged migration + rollback).
New scripts/migrate_dynamodb_data.py (scan+copy, dry-run default).
acdl-deploy- → nova-deploy- role ARN in deploy workflows. Test fixtures
updated; terraform validate + pytest + run_ci.sh PASS.

---ci---
project: acdl
phase: 4
milestone: v1.15
status: execute
---/ci---
This commit is contained in:
Jon Chery
2026-07-30 01:54:26 +00:00
parent 267df4ad0d
commit 0e6ecae26d
46 changed files with 932 additions and 258 deletions
+4 -4
View File
@@ -1,11 +1,11 @@
#!/usr/bin/env python3
"""ACDL Phase 15 — push the consumer microservice Docker image to ECR.
"""Nova Phase 15 — push the consumer microservice Docker image to ECR.
Steps performed by this script:
1. Load AWS creds from /root/acdl/.env.secrets
(NOVA_AWS_ACCESS_KEY_ID, NOVA_AWS_SECRET_ACCESS_KEY, AWS_DEFAULT_REGION;
dual-read ACDL_* fallback until P5).
2. Create the ECR repo `acdl-microservice` if it doesn't exist
2. Create the ECR repo `nova-microservice` if it doesn't exist
(ecr:DescribeRepositories / ecr:CreateRepository). Region: us-east-1.
3. Get the ECR login password (ecr:GetAuthorizationToken) and run
`docker login` with it.
@@ -40,7 +40,7 @@ REPO_ROOT = pathlib.Path(__file__).resolve().parent.parent
ENV_FILE = REPO_ROOT / ".env.secrets"
AWS_ACCOUNT_ID = env.get_env("AWS_ACCOUNT_ID", "581513795199")
AWS_REGION = "us-east-1"
ECR_REPO_NAME = "acdl-microservice"
ECR_REPO_NAME = "nova-microservice"
IMAGE_TAG = "latest"
@@ -131,7 +131,7 @@ def main():
full_tag = f"{repo_uri}:{IMAGE_TAG}"
print("")
print("=== NEXT: run these commands in the shell to tag + push ===")
print(f"docker tag acdl-microservice:latest {full_tag}")
print(f"docker tag nova-microservice:latest {full_tag}")
print(f"docker push {full_tag}")
print("")
print(f"ECR_IMAGE={full_tag}")