-
Notifications
You must be signed in to change notification settings - Fork 127
feat(migration-to-aws): Migration plugin #73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
64 commits
Select commit
Hold shift + click to select a range
0f7f133
feat(gcp-to-aws): Add GCP-to-AWS migration plugin (v1.0)
114bf10
refactor(gcp-to-aws): Refactor discover phase architecture into modul…
ffdbae8
refactor(gcp-to-aws): Make discover phase specifications more prescri…
b10f365
refactor(gcp-to-aws): Simplify discover phase - discover-iac produces…
23afe1c
refactor(gcp-to-aws): Explicitly forbid extra files - discover output…
2d84eb7
fix(gcp-to-aws): Clarify Rule 2 - ONE cluster per resource type, not …
e2a00a4
merge(gcp-to-aws): Merge discover phase refactoring into main
39c2441
build: Configure bandit to exclude node_modules from security scans
icarthick 50942d0
style: Apply dprint formatting to discover phase files
icarthick 7714075
chore: Add package.json and package-lock.json
icarthick d7362c7
chore: Remove package.json and package-lock.json
icarthick 8732b1d
chore: Add package.json and package-lock.json to .gitignore
icarthick 033c4c9
revert: Undo bandit configuration changes
icarthick 2436511
docs: Add gcp-to-aws plugin to documentation
icarthick f8a9a6f
style: Apply dprint formatting to README.md
icarthick bc7bf2f
chore: Remove package.json and package-lock.json from .gitignore
icarthick c5ca339
refactor: Rename gcp-to-aws plugin to migration-to-aws
icarthick 590c6d3
fix: Correct phase status schema logic
icarthick fcbb0b0
fix: Consolidate gcp-resource-inventory.json schema
icarthick 6f16f6e
fix: Consolidate cluster ID naming format
icarthick 5a560dc
fix(migration-to-aws): Fix compute.md factual error in timeout calcul…
icarthick fa38246
fix(migration-to-aws): Remove misleading IaC generation message from …
icarthick a9c299c
fix(migration-to-aws): Automatically protect migration state from git…
icarthick 0923dd1
refactor(migration-to-aws): Consolidate duplicate schemas into single…
icarthick 0e1a7dc
Merge branch 'main' into main
krokoko 076f7ed
chore: Remove REVIEWER_FEEDBACK.md (internal tracking only)
icarthick 3ff0cac
fix: Correct markdown formatting for lint compliance
icarthick c32df72
fix(migration-to-aws): Resolve 3 remaining reviewer issues
icarthick 349cfd5
fix(migration-to-aws): Update plugin path in development instructions
icarthick bc612dd
fix: Align install command order with plugin table
icarthick b0c7e01
docs: Add migration-to-aws plugin team ownership to CODEOWNERS
icarthick ca5dd5d
Merge branch 'main' into main
krokoko 924be14
fix(migration-to-aws): Fix depth pseudocode direction and README scop…
icarthick 6c8cc13
fix(migration-to-aws): Resolve resource classification contradictions…
icarthick f0580f5
docs: Add migration-to-aws plugin to AGENTS.md (Critical Issue #5)
icarthick 21e1961
fix(migration-to-aws): Add pricing fallback transparency and retry lo…
icarthick 6b683ce
fix(migration-to-aws): Add architecture validation tracking (Critical…
icarthick 648683d
fix(migration-to-aws): Add pricing fallback staleness enforcement (Cr…
icarthick a03553f
fix(migration-to-aws): Fix 3 critical cost estimation issues (Importa…
icarthick 282f60a
fix(migration-to-aws): Align 4 schema inconsistencies (Important Issu…
icarthick 5bea9d1
Fix 3 important workflow/logic issues (4, 8, 9)
icarthick 4b850a1
Fix 3 critical workflow/logic issues (10, 11, 12)
icarthick cd3bb78
Fix 2 final important issues (13, 15)
icarthick c267765
Update plugins/migration-to-aws/skills/gcp-to-aws/references/shared/o…
icarthick b23bf18
Update plugins/migration-to-aws/skills/gcp-to-aws/references/shared/o…
icarthick b9faa78
Fix 6 review feedback items for migration-to-aws plugin
icarthick a6d52a9
Fix stray diff artifact in output-schema.md and clarify network class…
icarthick 7fa40bd
Fix 4 review items: README scope, serves[] example, schema duplicatio…
icarthick 01b3c7e
Update plugins/migration-to-aws/skills/gcp-to-aws/references/shared/o…
icarthick f0a0beb
Fix 6 review items: table inputs, network cluster, JSON validity, edg…
icarthick cf20657
Fix 3 review items: network classification, estimation numbers, edge …
icarthick 1c9d5c9
Add input validation to discover, clarify, and execute phases
icarthick e144f92
Fix 4 critical issues from PR #73 review
icarthick 530d8b5
Fix remaining critical and high issues from PR #73 review
icarthick 51c7ed8
Fix critical and high issues from PR #73 review round 2
icarthick 262107b
Fix critical and high issues from PR #73 review round 3
icarthick db3ea39
Fix all remaining issues from PR #73 external review
icarthick 91859a0
Fix dprint table formatting in database and messaging design refs
icarthick 8dc7bd0
Merge branch 'main' into main
krokoko a0f0375
Merge branch 'main' into main
krokoko 5b64731
Merge branch 'main' into main
krokoko 4ae6dac
Update plugin.json's description to include the correct description
icarthick bd2bdd5
Update plugin.json's description to be under 500 chars
icarthick c2b8cf0
Update migration description in marketplace.json
icarthick File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| { | ||
| "author": { | ||
| "name": "Amazon Web Services" | ||
| }, | ||
| "description": "This no-cost tool assesses your current cloud provider's usage, geography, and billing data to estimate and compare AWS services and pricing, and recommends migration or continued use of your current provider. AWS pricing is based on current published pricing and may vary over time. The tool may generate a .migration folder containing comparison and migration execution data, which you may delete upon completion or use to migrate to AWS.", | ||
|
krokoko marked this conversation as resolved.
|
||
| "homepage": "https://github.com/awslabs/agent-plugins", | ||
| "keywords": [ | ||
| "aws", | ||
| "gcp", | ||
| "google-cloud", | ||
| "migration", | ||
| "cloud-migration", | ||
| "terraform", | ||
| "fargate" | ||
| ], | ||
| "license": "Apache-2.0", | ||
| "name": "migration-to-aws", | ||
| "repository": "https://github.com/awslabs/agent-plugins", | ||
| "version": "1.0.0" | ||
| } | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,19 @@ | ||
| { | ||
| "mcpServers": { | ||
| "awsknowledge": { | ||
| "type": "http", | ||
| "url": "https://knowledge-mcp.global.api.aws" | ||
| }, | ||
| "awspricing": { | ||
| "args": [ | ||
| "awslabs.aws-pricing-mcp-server@latest" | ||
| ], | ||
| "command": "uvx", | ||
| "env": { | ||
| "FASTMCP_LOG_LEVEL": "ERROR" | ||
| }, | ||
| "timeout": 120000, | ||
| "type": "stdio" | ||
| } | ||
| } | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,72 @@ | ||
| # GCP-to-AWS Migration Plugin | ||
|
|
||
| Migrate workloads from Google Cloud Platform to AWS with a 5-phase guided process. | ||
|
|
||
| ## Overview | ||
|
|
||
| This plugin guides you through migrating GCP infrastructure to AWS by: | ||
|
|
||
| 1. **Discover** - Scan Terraform files for GCP resources | ||
| 2. **Clarify** - Answer 8 questions about your migration requirements | ||
| 3. **Design** - Map GCP services to equivalent AWS services | ||
| 4. **Estimate** - Calculate monthly costs and ROI | ||
| 5. **Execute** - Plan your migration timeline and rollback procedures | ||
|
|
||
| ## Usage | ||
|
|
||
| Invoke the skill with migration-related phrases: | ||
|
|
||
| - "Migrate my GCP infrastructure to AWS" | ||
| - "Move off Google Cloud" | ||
| - "Migrate Cloud SQL to RDS" | ||
| - "GCP to AWS migration plan" | ||
|
|
||
| ## Scope (v1.0) | ||
|
|
||
| - **Supports**: Terraform-based GCP infrastructure | ||
| - **Generates**: AWS architecture design, cost estimates, execution timeline | ||
| - **Does not include** (v1.1+): App code scanning, billing data import, CDK code generation | ||
|
|
||
| ## MCP Servers | ||
|
|
||
| The plugin integrates with: | ||
|
|
||
| - **awspricing** - Real-time AWS pricing (with fallback to cached data) | ||
| - **awsknowledge** - AWS service guidance and best practices | ||
|
|
||
| ## Files | ||
|
|
||
| - `SKILL.md` - Main skill orchestrator | ||
| - `references/phases/` - Workflow phase implementations | ||
| - `references/design-refs/` - AWS service mapping rubrics | ||
| - `references/shared/` - Shared utilities and pricing data | ||
|
|
||
| ## Architecture | ||
|
|
||
| The plugin uses state files (`.migration/[MMDD-HHMM]/`) to track migration progress across invocations: | ||
|
|
||
| - `.phase-status.json` - Current phase and status | ||
| - `gcp-resource-inventory.json` - Discovered GCP resources | ||
| - `clarified.json` - User requirements | ||
| - `aws-design.json` - Mapped AWS services | ||
| - `estimation.json` - Cost analysis | ||
| - `execution.json` - Timeline and risks | ||
|
|
||
| ## Installation | ||
|
|
||
| ```bash | ||
| /plugin marketplace add awslabs/agent-plugins | ||
| /plugin install migration-to-aws@agent-plugins-for-aws | ||
| ``` | ||
|
|
||
| ## Development | ||
|
|
||
| To test locally: | ||
|
|
||
| ```bash | ||
| claude --plugin-dir ./plugins/migration-to-aws | ||
| ``` | ||
|
|
||
| ## License | ||
|
|
||
| Apache-2.0 |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.