All skills
microsoft avatar

/azure-upgrade

@36a90f7 official

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).

Use this Skill: https://skilld.dev/gh/microsoft/github-copilot-for-azure/azure-upgrade

This session only. Nothing lands on disk.

referenceslanguagesjavaworkflowphase-2-plan.md

≈740 tokens on demand. Your agent reads this file only when SKILL.md points to it.

Phase 2: Generate Upgrade Plan

Load this file when executing Phase 2. Refer back to upgrade-success-criteria and upgrade-strategy for success criteria and strategy, and ../rules/troubleshooting.md when failures occur.

1. Initialize

  1. Update plan.md: replace all remaining placeholders
  2. Extract user-specified guidelines from prompt into "Guidelines" section (bulleted list; leave empty if none)

2. Environment Analysis

  1. Read HTML comments in "Available Tools" section of plan.md to understand rules and expected format
  2. Record discovered JDK versions and paths
  3. Detect wrapper presence; if wrapper exists, read wrapper properties to determine build tool version
  4. Check build tool version compatibility with JDK — flag incompatible versions for upgrade

3. Dependency Analysis

  1. Read HTML comments in "Technology Stack" and "Derived Upgrades" sections of plan.md to understand rules and expected format
  2. Identify core tech stack across ALL modules (direct deps + upgrade-critical deps)
  3. Include build tool (Maven/Gradle) and build plugins (maven-compiler-plugin, maven-surefire-plugin, etc.) in the technology stack analysis
  4. Flag EOL dependencies (high priority for upgrade)
  5. Consult the Migration Guidelines for package mappings and migration guides
  6. Populate "Technology Stack" and "Derived Upgrades"

4. Upgrade Path Design

  1. Read HTML comments in "Key Challenges" and "Upgrade Steps" sections of plan.md to understand rules and expected format
  2. For incompatible deps, prefer: Replacement > Adaptation > Rewrite
  3. Finalize "Available Tools" section based on the planned step sequence
  4. Design step sequence:
    • Step 1 (MANDATORY): Setup Baseline — run compile/test with current JDK, document results
    • Steps 2-N: Upgrade steps — dependency order, high-risk early, isolated breaking changes. Compilation must pass (both main and test code); test failures documented for Final Validation.
    • Final step (MANDATORY): Final Validation — verify all goals met, all TODOs resolved, achieve Upgrade Success Criteria through iterative test & fix loop.
  5. Identify high-risk areas for "Key Challenges" section
  6. Write steps following format in plan.md

5. Plan Review

  1. Verify all placeholders filled in plan.md, check for missing coverage/infeasibility/limitations
  2. Revise plan as needed for completeness and feasibility; document unfixable limitations in "Plan Review" section
  3. Ensure all sections of plan.md are fully populated (per Template compliance rule) and all HTML comments removed

After plan generation, proceed directly to execution — create .github/java-upgrade/{RUN_ID}/progress.md from the Progress Template, replace placeholders, and begin execution. Log the migration plan, then proceed without pausing for confirmation.

Source: SKILL.md on GitHub

2 warnings4mo5 checks · Risk SAFE
  • Gen Agent Trust Hub4mo

    This skill facilitates Azure workload upgrades and Java SDK modernization. It includes security considerations such as command execution and fetching data from remote sources, which are within the skill's intended purpose of automating cloud and code migrations.

  • Socket4mo

    No alerts

  • Snyk4mo

    Risk: MEDIUM · 2 issues

  • Runlayer6mo

    3/6 files flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 36a90f7. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub yesterday.

Activeupdated 5 months ago
compatibility
python3.10+
metadata
{
  "author": "Microsoft",
  "version": "0.0.0-placeholder"
}
  • Infrastructure
  • azure
  • azure-functions
  • azure-app-service
  • azure-redis
  • java-sdk
  • migrations
  • sku-upgrades
  • consumption-plan
  • flex-consumption

README badge

README badge for microsoft/github-copilot-for-azure/azure-upgrade

Assesses and automates Azure workload upgrades across plans, tiers, and SKUs—such as Functions Consumption to Flex Consumption, App Service to Container Apps, or Redis migrations to Azure Managed Redis. Also modernizes legacy Azure Java SDK dependencies (com.microsoft.azure to com.azure) in source code. Includes readiness checks, configuration migration, and validation steps.

Generated from the current SKILL.md.

Does this skill handle cross-cloud migration?
No. This skill is for Azure-to-Azure upgrades only (plan changes, SKU swaps, service migrations within Azure). For cross-cloud migration, use the `azure-cloud-migrate` skill.
What Azure upgrades does this skill cover?
It handles Azure Functions plan upgrades (Consumption to Flex Consumption), hosting tier changes, App Service to Container Apps migration, Redis cache upgrades (ACR/ACRE to Azure Managed Redis), and legacy Azure Java SDK modernization (com.microsoft.azure to com.azure).
Will this skill delete my existing app without asking?
No. The skill requires explicit user confirmation before stopping or deleting the original app. All destructive actions trigger a confirmation prompt.
Does this skill support Java SDK modernization?
Yes. It handles source-code modernization from legacy Azure Java SDKs (com.microsoft.azure.*) to modern ones (com.azure.*).
What happens after the upgrade is complete?
The skill asks whether you want to verify performance, clean up the old app, or update your infrastructure-as-code. You can then hand off to `azure-validate` for deep validation or `azure-deploy` for CI/CD setup.

Generated from the current SKILL.md. These answers refresh after source changes.