AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
Azure Cloud Migrate provides a structured, multi-phase workflow for transitioning applications from various cloud platforms to Azure. It focuses on assessing the current architecture, mapping services to Azure equivalents, and performing the necessary code and configuration conversions. The skill ensures a methodical approach by requiring an assessment report before any migration actions occur, and it provides specific guidance for common migration paths such as AWS Lambda to Azure Functions, Heroku to App Service, and Kubernetes to Container Apps.
What it does
- Generates comprehensive migration assessment reports for cross-cloud workloads.
- Maps source platform services, compute configurations, and dependencies to Azure equivalents.
- Provides guidance for converting application code and configuration files.
- Audits source code for platform-specific service discovery patterns.
- Creates architecture diagrams for both current and target states.
- Tracks migration progress and provides resource-level status updates.
When to use it
- When planning to migrate workloads from AWS Lambda, Elastic Beanstalk, or Fargate to Azure.
- When moving applications from Heroku or Google App Engine to Azure App Service.
- When transitioning Kubernetes or Cloud Run deployments to Azure Container Apps.
- When you need a structured assessment of migration readiness and effort.
Advantages
- Ensures a consistent, step-by-step migration process.
- Reduces risk by requiring a detailed assessment report before code changes.
- Provides clear mapping between source platform features and Azure services.
- Includes specific checks for common migration pitfalls like hardcoded service discovery.
Usage examples
- “Assess my current AWS Lambda project for migration to Azure Functions.”
- The agent will analyze the Lambda project, map the services to Azure Functions, and generate a migration assessment report in the output directory.
- “Migrate my Heroku application to Azure App Service.”
- The agent will perform an assessment, guide the conversion of configuration files, and assist in setting up the application for Azure App Service.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/microsoft/azure-cloud-migrate/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip azure-cloud-migrate.zip -d .agents/skills
Documentation by Microsoft
Azure Cloud Migrate
This skill handles assessment and code migration of existing cloud workloads to Azure.
Rules
Follow phases sequentially — do not skip
Generate assessment before any code migration
Load the scenario reference and follow its rules
Use
mcp_azure_mcp_get_azure_bestpracticesandmcp_azure_mcp_documentationMCP toolsUse the latest supported runtime for the target service
Destructive actions require
ask_user— functions global-rules | app-service global-rulesReport progress to user — During long-running operations (deployments, image pushes), provide resource-level status updates so the user is never left waiting without feedback — see workflow-details.md
Audit service discovery in app code — Kubernetes DNS names (e.g.,
http://order-service:3001) do not resolve in Container Apps. During assessment, scan source code for hardcoded hostnames/ports in HTTP clients and flag them for env-var-driven URL injection
Migration Scenarios
| Source | Target | Reference |
|---|---|---|
| AWS Lambda | Azure Functions | lambda-to-functions.md (assessment, code-migration) |
| AWS Elastic Beanstalk | Azure App Service | beanstalk-to-app-service.md |
| Heroku | Azure App Service | heroku-to-app-service.md |
| Google App Engine | Azure App Service | app-engine-to-app-service.md |
| AWS Fargate (ECS) | Azure Container Apps | fargate-to-container-apps.md (assessment, deployment) |
| Kubernetes (GKE/EKS/Self-hosted) | Azure Container Apps | k8s-to-container-apps.md |
| GCP Cloud Run | Azure Container Apps | cloudrun-to-container-apps.md |
| Spring Boot (Azure Spring Apps/VMs) | Azure Container Apps | spring-apps-to-aca.md |
No matching scenario? Use
mcp_azure_mcp_documentationandmcp_azure_mcp_get_azure_bestpracticestools.
Output Directory
All output goes to <workspace-root-basename>-azure/ at workspace root, where <workspace-root-basename> is the name of the top-level workspace directory itself (NOT a subdirectory within it). Never modify the source directory.
Steps
Create
<workspace-root-basename>-azure/at workspace rootAssess — Analyze source, map services, generate report using the scenario-specific assessment guide → functions assessment | app-service assessment
Migrate — Convert code/config using the scenario-specific migration guide → functions code-migration | app-service code-migration
Ask User — "Migration complete. Test locally or deploy to Azure?"
Hand off to azure-prepare for infrastructure, testing, and deployment
Track progress in migration-status.md — see workflow-details.md.
Files
- ATTRIBUTION.mdAdded by AutoGineer989 B
- LICENSELicence file added by AutoGineer1.1 KiB
- SKILL.md4.3 KiB
- references/services/app-service/app-engine-to-app-service.md7.1 KiB
- references/services/app-service/assessment.md5.2 KiB
- references/services/app-service/beanstalk-to-app-service.md6.4 KiB
- references/services/app-service/code-migration.md5.0 KiB
- references/services/app-service/global-rules.md2.8 KiB
- references/services/app-service/heroku-to-app-service.md7.5 KiB
- references/services/container-apps/assessment-guide.md7.0 KiB
- references/services/container-apps/cloudrun-assessment-guide.md2.5 KiB
- references/services/container-apps/cloudrun-deployment-guide.md7.9 KiB
- references/services/container-apps/cloudrun-to-container-apps.md2.2 KiB
- references/services/container-apps/deployment-guide.md9.6 KiB
- references/services/container-apps/fargate-assessment-guide.md2.4 KiB
- references/services/container-apps/fargate-deployment-guide.md10.1 KiB
- references/services/container-apps/fargate-to-container-apps.md4.0 KiB
- references/services/container-apps/k8s-to-container-apps.md4.9 KiB
- references/services/container-apps/spring-apps-to-aca.md3.8 KiB
- references/services/container-apps/spring-assessment-guide.md5.2 KiB
- references/services/container-apps/spring-dependency-patterns.md1.2 KiB
- references/services/container-apps/spring-deployment-guide.md15.1 KiB
- references/services/functions/assessment.md6.3 KiB
- references/services/functions/code-migration.md6.0 KiB
- references/services/functions/global-rules.md3.3 KiB
- references/services/functions/lambda-to-functions.md10.2 KiB
- references/services/functions/runtimes/csharp.md5.5 KiB
- references/services/functions/runtimes/java.md6.4 KiB
- references/services/functions/runtimes/javascript.md8.5 KiB
- references/services/functions/runtimes/powershell.md5.0 KiB
- references/services/functions/runtimes/python.md6.4 KiB
- references/services/functions/runtimes/typescript.md3.5 KiB
- references/workflow-details.md2.3 KiB
references/services/functions/assessment.md
Assessment Phase
Generate a migration assessment report before any code changes.
Prerequisites
Workspace contains AWS Lambda functions, SAM templates, or CloudFormation templates
Prompt user to upload relevant files if not present
Assessment Steps
Identify Functions — List all Lambda functions with runtimes, triggers, and dependencies
Map AWS Services — Map AWS services to Azure equivalents (see lambda-to-functions.md)
Map Properties — Map Lambda properties to Azure Functions properties
Check Dependencies — List 3rd-party libraries and verify Azure compatibility
Analyze Code — Check language support and runtime differences
Map Triggers — Identify equivalent Azure Functions triggers
Map Deployment — Identify equivalent Azure deployment strategies (CLI, Bicep, azd)
Review CI/CD — Check pipeline compatibility with Azure DevOps or GitHub Actions
Map Monitoring — Map CloudWatch → Application Insights / Azure Monitor
Code Preview
During assessment, show a sneak peek of what the migrated Azure Functions code will look like for each function. Use bindings and triggers (not SDKs) in all previews, following Azure Functions best practices. Always use the newest generally available (GA) language runtime listed in the Azure Functions supported languages documentation in previews (for example, the latest Node.js LTS or newest Python GA version). This helps the user understand the migration scope before committing to code migration.
⚠️ Binding-first rule: Code previews MUST use
input.storageBlob(),output.storageBlob(),app.storageQueue(), etc. instead ofBlobServiceClient,QueueClient, or other SDK clients. Only use SDK for services that have no binding equivalent.
Architecture Diagrams
Generate two diagrams:
Current State — AWS Lambda architecture with triggers and integrations
Target State — Azure Functions architecture showing equivalent structure
Assessment Report Format
⚠️ MANDATORY: Use these exact section headings in every assessment report. Do NOT rename, reorder, or omit sections.
The report MUST be saved as migration-assessment-report.md inside the output directory (<workspace-root-basename>-azure/).
# Migration Assessment Report
## 1. Executive Summary
| Property | Value |
|----------|-------|
| **Total Functions** | <count> |
| **Source Platform** | AWS Lambda |
| **Source Runtime** | <runtime and version> |
| **Target Platform** | Azure Functions |
| **Target Runtime** | <runtime and version> |
| **Migration Readiness** | <High / Medium / Low> |
| **Estimated Effort** | <Low / Medium / High> |
| **Assessment Date** | <date> |
## 2. Functions Inventory
| # | Function Name | Runtime | Trigger Type | Memory (MB) | Timeout (s) | Description |
|---|--------------|---------|-------------- |-------------|-------------|-------------|
| 1 | | | | | | |
## 3. Service Mapping
| AWS Service | Azure Equivalent | Migration Complexity | Notes |
|-------------|------------------|----------------------|-------|
| Lambda | Azure Functions | | |
| API Gateway | Azure Functions HTTP Trigger / APIM | | |
| S3 | Azure Blob Storage | | |
| DynamoDB | Cosmos DB | | |
| SQS | Service Bus / Storage Queue | | |
| SNS | Event Grid | | |
| CloudWatch | Application Insights / Azure Monitor | | |
| IAM Roles | Managed Identity + RBAC | | |
| CloudFormation / SAM | Bicep / ARM Templates | | |
## 4. Trigger & Binding Mapping
| # | Function Name | AWS Trigger | Azure Trigger | AWS Inputs/Outputs | Azure Bindings | Notes |
|---|--------------|-------------|---------------|--------------------| ---------------|-------|
| 1 | | | | | | |
## 5. Dependencies Analysis
| # | Package/Library | Version | AWS-Specific? | Azure Equivalent | Compatible? | Notes |
|---|----------------|---------|---------------|------------------|-------------|-------|
| 1 | | | | | | |
## 6. Environment Variables & Configuration
| # | AWS Variable | Purpose | Azure Equivalent | Auth Method | Notes |
|---|-------------|---------|------------------|-------------|-------|
| 1 | | | | Managed Identity / App Setting | |
## 7. Architecture Diagrams
### 7a. Current State (AWS)
<!-- Mermaid or ASCII diagram of AWS Lambda architecture -->
### 7b. Target State (Azure)
<!-- Mermaid or ASCII diagram of Azure Functions architecture -->
## 8. IAM & Security Mapping
| AWS IAM Role/Policy | Azure RBAC Role | Scope | Notes |
|---------------------|-----------------|-------|-------|
| | | | |
## 9. Monitoring & Observability Mapping
| AWS Service | Azure Equivalent | Migration Notes |
|-------------|------------------|-----------------|
| CloudWatch Logs | Application Insights | |
| CloudWatch Metrics | Azure Monitor Metrics | |
| CloudWatch Alarms | Azure Monitor Alerts | |
| X-Ray | Application Insights (distributed tracing) | |
## 10. CI/CD & Deployment Mapping
| AWS Tool | Azure Equivalent | Notes |
|----------|------------------|-------|
| SAM CLI | Azure Functions Core Tools / azd | |
| CloudFormation | Bicep / ARM Templates | |
| CodePipeline | Azure DevOps Pipelines / GitHub Actions | |
| CodeBuild | Azure DevOps Build / GitHub Actions | |
## 11. Project Structure Comparison
| AWS Lambda Structure | Azure Functions Structure |
|---------------------|--------------------------|
| `template.yaml` (SAM) | `host.json` |
| `handler.js / handler.py` | `src/app.js` / `src/function_app.py` |
| `requirements.txt` / `package.json` | `requirements.txt` / `package.json` |
| Per-function directories (optional) | Single entry point (v4 JS / v2 Python) |
| `event` object | Trigger-specific parameter |
| `context` object | `InvocationContext` |
## 12. Recommendations
1. **Runtime**: <recommended Azure Functions runtime and version>
2. **Hosting Plan**: <Flex Consumption / Premium>
3. **IaC Strategy**: <Bicep with azd / Terraform / ARM>
4. **Auth Strategy**: <Managed Identity for all service-to-service>
5. **Monitoring**: <Application Insights + Azure Monitor>
## 13. Next Steps
- [ ] Review and approve this assessment report
- [ ] Proceed to code migration (azure-cloud-migrate Phase 2)
- [ ] Hand off to azure-prepare for IaC generation💡 Tip: Use
mcp_azure_mcp_get_azure_bestpracticestool to learn Azure Functions project structure best practices for the comparison.
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
What our scanner noticed· Low risk
- Instructions that use the network
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Microsoft
- Publisher
- Microsoft (Official)
- Source
- microsoft/skills · .github/plugins/azure-skills/skills/azure-cloud-migrate · commit 0696600
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from .github/plugins/azure-skills/LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
- Also distributed in
- microsoft/azure-skills
AutoGineer is not affiliated with or endorsed by Microsoft or Microsoft.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download azure-cloud-migrate.zip