azure-upgrade
Assess and upgrade Azure workloads between plans, tiers, or SKUs, or modernize Azure SDK dependencies in source code. WHEN: upgrade Consumption to Flex Consumption, upgrade Azure Functions plan, change hosting plan, function app SKU, migrate App Service to Container Apps, modernize legacy Azure Java SDKs (com.microsoft.azure to com.azure), migrate Azure Cache for Redis (ACR/ACRE) to Azure Managed Redis (AMR).
- License 许可
- MIT
- 最近更新
- 2026-11-14
- Stars
- ★ 1.6k
- Forks
- 267
01 前言 Front Matter
- name
- azure-upgrade
- license
- MIT
- metadata
- { "author": "Microsoft", "version": "1.2.3" }
- description
- Assess and upgrade Azure workloads between plans, tiers, or SKUs, or modernize Azure SDK dependencies in source code. WHEN: upgrade Consumption to Flex Consumption, upgrade Azure Functions plan, change hosting plan, function app SKU, migrate App Service to Container Apps, modernize legacy Azure Java SDKs (com.microsoft.azure to com.azure), migrate Azure Cache for Redis (ACR/ACRE) to Azure Managed Redis (AMR).
- compatibility
- python3.10+
02 资源文件 49
- 参考文档references/global-rules.md4.5 KB
- 参考文档references/languages/java/bom-migration/bom-gradle-settings.md6.7 KB
- 参考文档references/languages/java/bom-migration/bom-gradle-toml.md2.7 KB
- 参考文档references/languages/java/bom-migration/bom-gradle.md5.1 KB
- 参考文档references/languages/java/bom-migration/bom-maven.md4.7 KB
- 参考文档references/languages/java/bom-migration/bom-migration.md4.2 KB
- 参考文档references/languages/java/bom-migration/bom-validation.md1.5 KB
- 参考文档references/languages/java/INSTRUCTION.md11.3 KB
- 参考文档references/languages/java/package-specific/com.microsoft.azure.eventprocessorhost.md5.5 KB
- 参考文档references/languages/java/package-specific/com.microsoft.azure.management.md9.5 KB
- 参考文档references/languages/java/README.md3.0 KB
- 参考文档references/languages/java/rules/efficiency.md265 B
- 参考文档references/languages/java/rules/execution-guidelines.md1.0 KB
- 参考文档references/languages/java/rules/review-code-changes.md541 B
- 参考文档references/languages/java/rules/troubleshooting.md2.5 KB
- 参考文档references/languages/java/rules/upgrade-strategy.md1.4 KB
- 参考文档references/languages/java/rules/upgrade-success-criteria.md686 B
- 脚本references/languages/java/scripts/upgrade_bom.py19.6 KB
- 参考文档references/languages/java/templates/PLAN_TEMPLATE.md9.4 KB
- 参考文档references/languages/java/templates/PROGRESS_TEMPLATE.md9.1 KB
- 参考文档references/languages/java/templates/SUMMARY_TEMPLATE.md8.6 KB
- 参考文档references/languages/java/workflow/phase-1-precheck.md2.3 KB
- 参考文档references/languages/java/workflow/phase-2-plan.md2.9 KB
- 参考文档references/languages/java/workflow/phase-3-execute.md2.4 KB
- 参考文档references/languages/java/workflow/phase-4-summarize.md1.1 KB
- 参考文档references/services/functions/consumption-to-flex/linux/assessment.md4.6 KB
- 参考文档references/services/functions/consumption-to-flex/linux/automation.md17.3 KB
- 参考文档references/services/functions/consumption-to-flex/linux/workflow.md11.6 KB
- 参考文档references/services/functions/consumption-to-flex/windows/assessment.md6.8 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation.md4.1 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/access-key-copy.md2.5 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/access-key-strategy.md2.1 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/app-creation.md16.6 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/app-settings.md12.0 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/built-in-authentication.md3.3 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/cleanup-and-rollback.md3.2 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/code-deployment.md8.6 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/configuration-inventory.md7.2 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/deployment-package.md6.0 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/discovery-and-assessment.md9.1 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/networking-and-storage.md3.9 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/site-and-identity.md5.0 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/trigger-safety-and-monitoring.md11.8 KB
- 参考文档references/services/functions/consumption-to-flex/windows/automation/validation-and-cutover.md9.7 KB
- 参考文档references/services/functions/consumption-to-flex/windows/dependency-scan.md13.3 KB
- 参考文档references/services/functions/consumption-to-flex/windows/progress-tracking.md5.2 KB
- 参考文档references/services/functions/consumption-to-flex/windows/workflow.md27.9 KB
- 参考文档references/services/redis/redis-to-amr.md7.5 KB
- 参考文档references/workflow-details.md2.1 KB
03 SKILL.md 正文
Azure Upgrade
This skill handles assessment and automated upgrades of existing Azure workloads from one Azure service, hosting plan, or SKU to another — all within Azure. This includes plan/tier upgrades (e.g. Consumption → Flex Consumption), cross-service migrations (e.g. App Service → Container Apps), and SKU changes. It also covers Azure SDK for Java source-code modernization (e.g. legacy Java
com.microsoft.azure.*→ moderncom.azure.*). This is NOT for cross-cloud migration — useazure-cloud-migratefor that.
Triggers
| User Intent | Example Prompts |
|---|---|
| Upgrade Azure Functions plan | "Upgrade my function app from Consumption to Flex Consumption" |
| Discover Functions upgrade candidates | "What Consumption Function Apps do I have that can be upgraded to Flex Consumption?" |
| Change hosting tier | "Move my function app to a better plan" |
| Assess upgrade readiness | "Is my function app ready for Flex Consumption?" |
| Automate plan migration | "Automate the steps to upgrade my Functions plan" |
| Modernize legacy Azure Java SDK | "Migrate legacy Azure SDKs for Java", "Upgrade legacy Azure Java SDK", "Migrate my Java project from com.microsoft.azure to com.azure" |
| Migrate Azure Cache for Redis (ACR/OSS) to Azure Managed Redis (AMR) | "Migrate my Redis cache to AMR", "ACR to AMR", "OSS to AMR", "Upgrade my Premium P2 cache to Managed Redis", "Pick an AMR SKU", "Convert my Redis IaC template to AMR" |
| Migrate Azure Cache for Redis Enterprise (ACRE) to Azure Managed Redis (AMR) | "Migrate my Enterprise_E10 cache to AMR", "ACRE to AMR", "Update my ACRE IaC template for AMR", "Migrate EnterpriseFlash to AMR", "Migrate my geo-replicated Enterprise Redis" |
Rules
- Follow phases in order. Skip or defer work only when the selected scenario explicitly permits it, and record the reason in the migration status.
- Generate an assessment before any upgrade operations
- Load the scenario reference and follow its rules
- Use
mcp_azure_mcp_get_azure_bestpracticesandmcp_azure_mcp_documentationMCP tools - Destructive actions require
ask_user— global-rules - Always confirm the target plan/SKU with the user before proceeding
- Propose a name for any new resource (default:
<source>-<target-suffix>, e.g.<source>-flexfor Flex Consumption migrations) and announce the proposed name to the user before creating it so they can override without a blocking prompt. Same pattern applies to other newly-created resources (storage accounts, App Insights, etc.) — see the scenario reference for service-specific defaults. - Windows Consumption → Flex source-change gate: treat the source app as read-only by default. Immediately before every command that would change its settings, triggers, state, deployment, bindings, or existence, use
ask_userto describe the exact change and obtain explicit approval. Approval is action-specific and cannot be reused for later source changes. - Never delete or stop the original app without explicit user confirmation
- Keep approval-gated workflows moving: after each completed step, immediately perform the next read-only preflight. If the next action requires approval, invoke
ask_userin the same turn — never stop after merely announcing the next step and wait for the user to re-engage. - All automation scripts must be idempotent and resumable
Upgrade Scenarios
| Source | Target | Reference |
|---|---|---|
| Azure Functions Consumption Plan (Linux) | Azure Functions Flex Consumption Plan | workflow.md |
| Azure Functions Consumption Plan (Windows) | Azure Functions Flex Consumption Plan | workflow.md |
Legacy Azure Java SDK (com.microsoft.azure.*) |
Modern Azure Java SDK (com.azure.*) |
languages/java/README.md |
| Azure Cache for Redis (ACR/OSS) Basic/Standard/Premium | Azure Managed Redis (AMR) | services/redis/redis-to-amr.md |
| Azure Cache for Redis Enterprise (ACRE) / Enterprise Flash | Azure Managed Redis (AMR) | services/redis/redis-to-amr.md |
Functions Consumption-to-Flex routing: For a named app, inspect its Azure platform and load only the matching Linux or Windows workflow. For subscription-wide discovery, evaluate both platforms: use
az functionapp flex-migration listfor Linux and the Windows workflow's manual discovery and compatibility checks for Windows. Label Windows results as candidates until per-app code compatibility is assessed.
SDK upgrade scenarios (e.g. Java legacy → modern) run a source-code modernization flow that is distinct from Azure service/plan/SKU upgrades: follow the scenario reference, not the Steps below.
No matching scenario? Use
mcp_azure_mcp_documentationandmcp_azure_mcp_get_azure_bestpracticestools to research the upgrade path.
MCP Tools
| Tool | Purpose |
|---|---|
mcp_azure_mcp_get_azure_bestpractices |
Get Azure best practices for the target service |
mcp_azure_mcp_documentation |
Look up Azure documentation for upgrade scenarios |
mcp_azure_mcp_appservice |
Query App Service and Functions plan details |
mcp_azure_mcp_applicationinsights |
Verify monitoring configuration |
Steps
- Identify — Determine the source and target Azure plans/SKUs. Ask user to confirm.
- Assess — Analyze existing app for upgrade readiness → load scenario reference (e.g., workflow.md)
- Pre-migrate — Collect settings, identities, configs from the existing app
- Upgrade — Execute the automated upgrade steps (create new resources, migrate settings, deploy code)
- Validate — Use the checks defined by the selected scenario: verify target resource state, applicable HTTP endpoints and non-HTTP triggers, and monitoring. If access restrictions or unavailable test resources prevent execution, record validation as deferred — never relax security automatically or report functional success.
- Ask User — Offer performance validation and IaC updates. Offer source cleanup only when the selected scenario confirms production cutover and all cleanup prerequisites are complete.
- Hand off to
azure-validatefor deep validation orazure-deployfor CI/CD setup
Track progress in <UPGRADE_DIR>/upgrade-status.md — see Artifact Output Policy for path resolution.
References
- Global Rules
- Workflow Details
- Functions
- Redis
- Redis (ACR or ACRE) to AMR Migration — routes to dedicated amr-migration-skill (ACR/OSS) or acre-to-amr-migration-skill (Enterprise)
- Java SDK Migration Templates
Next
After upgrade is validated, hand off to:
azure-validate— for thorough post-upgrade validationazure-deploy— if the user wants to set up CI/CD for the new app
04 同仓库更多 Skills
python-appservice-deploy
Deploy Python (Flask/Django/FastAPI) code to Azure App Service Linux. WHEN: "Flask App Service", "Django App Service", "FastAPI App Service", "deploy Python to App Service". DO NOT USE FOR: Container Apps, Functions, non-Python, Terraform/Bicep/IaC, full infra — use azure-prepare.
preset
Intelligently deploys Azure OpenAI models to optimal regions by analyzing capacity across all available regions. Automatically checks current region first and shows alternatives if needed. USE FOR: quick deployment, optimal region, best region, automatic region selection, fast setup, multi-region capacity check, high availability deployment, deploy to best location. DO NOT USE FOR: custom SKU selection (use customize), specific version selection (use customize), custom capacity configuration (use customize), PTU deployments (use customize).
customize
Interactive guided deployment flow for Azure OpenAI models with full customization control. Step-by-step selection of model version, SKU (GlobalStandard/Standard/ProvisionedManaged), capacity, RAI policy (content filter), and advanced options (dynamic quota, priority processing, spillover). USE FOR: custom deployment, customize model deployment, choose version, select SKU, set capacity, configure content filter, RAI policy, deployment options, detailed deployment, advanced deployment, PTU deployment, provisioned throughput. DO NOT USE FOR: quick deployment to optimal region (use preset).
capacity
Discovers available Azure OpenAI model capacity across regions and projects. Analyzes quota limits, compares availability, and recommends optimal deployment locations based on capacity requirements. USE FOR: find capacity, check quota, where can I deploy, capacity discovery, best region for capacity, multi-project capacity search, quota analysis, model availability, region comparison, check TPM availability. DO NOT USE FOR: actual deployment (hand off to preset or customize after discovery), quota increase requests (direct user to Azure Portal), listing existing deployments.
deploy-model
Unified Azure OpenAI model deployment skill with intelligent intent-based routing. Handles quick preset deployments, fully customized deployments (version/SKU/capacity/RAI policy), and capacity discovery across regions and projects. USE FOR: deploy model, deploy gpt, create deployment, model deployment, deploy openai model, set up model, provision model, find capacity, check model availability, where can I deploy, best region for model, capacity analysis. DO NOT USE FOR: listing existing deployments (use foundry_models_deployments_list MCP tool), deleting deployments, agent creation (use agent/create), project creation (use project/create).
finetuning
Fine-tune models on Microsoft Foundry using SFT (supervised), DPO (preference), or RFT (reinforcement with graders). Covers dataset preparation, training job submission, deployment, and evaluation. USE FOR: fine-tune, SFT, DPO, RFT, training data, grader, distillation, fine-tuned model, training job, large file upload, calibrate grader, deploy fine-tuned model, evaluate fine-tuned model. DO NOT USE FOR: general model deployment without fine-tuning (use deploy-model), agent creation (use agents), prompt optimization without training (use prompt-optimizer).