Skip to content

About

GCP→AWS migration agent v2 — TypeScript/Bun CLI with LLM-driven planning and deterministic execution

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

20 Commits

Folders and files

Repository files navigation

AWS Migration Agent v2

Migrate GCP applications to AWS end-to-end. Two commands: generate a plan, then execute it.

Install

git clone <repo>
cd migration-agent-v2
bun install
cp .env.example .env  # add your OPENROUTER_API_KEY

Usage

# 1. Generate migration plan
bun run src/index.ts plan \
  --billing ./gcp-billing.csv \
  --iac ./gcp-terraform/ \
  --app ./my-app/ \
  --out ./migration-plan

# Review migration-plan/ docs, then:

# 2. Execute the plan
bun run src/index.ts execute \
  --plan ./migration-plan/plan.json \
  --region us-east-1

Supported GCP→AWS mappings

GCP AWS
Cloud Run ECS Fargate
Cloud SQL (MySQL/PostgreSQL) RDS
Memorystore (Redis) ElastiCache
GCS S3
Firestore DynamoDB
Firebase Auth Cognito
Gemini / Vertex AI Amazon Bedrock

Supported languages

Python, Go, Node.js, Java

Prerequisites

  • Docker Desktop (running)
  • Bun runtime
  • OPENROUTER_API_KEY — from openrouter.ai
  • AWS credentials configured (aws configure)
  • GCP credentials configured (gcloud auth application-default login)

Not supported (Phase 2)

Real data migration, auth user cutover, traffic switchover, security hardening, CI/CD setup.

Roadmap / Next

E2E verification (designed, not yet built)

Current smoke test is two bare HTTP checks. The plan is proper end-to-end verification:

How it would work:

  • aws-migrate plan reads the app's source code (it already does this) and uses the LLM to generate a tests.json alongside plan.json — describing core user flows to verify: login, the app's main action, data persistence checks
  • aws-migrate execute runs those tests automatically after deployment using Playwright (headless, inside the Docker sandbox) — no LLM at run time, fully deterministic
  • Tests cover: UI flows (pages load, buttons work, forms submit), API responses, and data round-trips (e.g., upload a file → verify it appears in S3, submit a form → verify it saved to DynamoDB/RDS)
  • You can review tests.json before executing, the same way you review plan.json

Why this matters: current smoke test tells you the app is running. This would tell you the migration actually works.

Teardown

cd .tf-composed && terraform destroy -auto-approve

About

GCP→AWS migration agent v2 — TypeScript/Bun CLI with LLM-driven planning and deterministic execution

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages