Python on Azure App Service — Code Deploy

SkillCloud & infra

This skill lets your AI deploy Python applications to Azure App Service. Once added, your AI can take a Python web app and get it running on Azure, following Microsoft's official Azure guidance. It comes from Microsoft's official collection of Azure skills.

Use Python on Azure App Service — Code Deploy in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Python on Azure App Service — Code Deploy and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the Python on Azure App Service skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

After adding the skill, ask your AI to deploy your Python app to Azure App Service. It will carry out the deployment steps for you.

Python on Azure App Service — Code DeployStart free

What your AI can do with it

  • Deploy Python apps to Azure App Service
  • Handle the steps needed to get a Python web app running on Azure
  • Follow Microsoft's official guidance for Azure deployments

What this skill tells your AI

The instructions your AI receives, as published by microsoft/azure-skills in skills/python-appservice-deploy/SKILL.md and read by Ahel’s review.

Deploys Python (Flask, Django, FastAPI, generic) code to Azure App Service Linux (P0v3, Python 3.14). Creates RG + Plan + Web App if missing. Hand off to azure-prepare for VNet, Key Vault, databases, or IaC.

MCP tools used: mcp_azure_mcp_subscription_list, mcp_azure_mcp_group_list, mcp_azure_mcp_appservice, mcp_azure_mcp_azd (when azure.yaml is present).

Workflow

  1. Resolve context — smart defaults, minimal prompts. Only the app name is interactive; RG (<app>-rg), Plan (<app>-plan), region (current az default or eastus2), subscription are derived. create-app.md §1.
  2. Detect framework (advisory, never blocks). detect.md.
  3. Choose path — azure.yaml host: appservice → deploy-azd.md; else deploy-azcli.md.
  4. Ensure RG → Plan (P0v3 --is-linux) → Web App (--runtime "PYTHON:3.14") exist. On transient ARM errors, follow transient-retry.md. create-app.md.
  5. Set startup — Flask/Django: none (Oryx auto-detects). FastAPI: always python -m uvicorn main:app --host 0.0.0.0. Other: warn. startup-commands.md.
  6. Set SCM_DO_BUILD_DURING_DEPLOYMENT=true.
  7. Deploy — azd deploy or az webapp deploy --type zip --track-status false.
  8. STOP. Print the post-deploy message (post-deploy-message.md) and end the turn.

Hard rules

  • ⛔ NO POST-DEPLOY VERIFICATION — after deploy returns, do not run az webapp log tail, curl, Invoke-WebRequest, or any health probe. App Service needs 2–3 min to warm; a quiet log or early 5xx is not failure.
  • ⛔ SHELL SAFETY — for --runtime always use "PYTHON:3.14" (colon). Never "PYTHON|3.14" (pipe is a shell operator).
  • ⛔ NEVER az webapp up — deprecated. Use Step 7 commands.
  • ✅ URL FORMAT — present endpoints as https://... URLs.

Error Handling

See errors.md for the full symptom → cause → fix matrix. Quick triage: missing plan/app → re-run Step 4; container ping timeout on 8000 → fix startup (Step 5); ModuleNotFoundError after deploy → ensure Step 6 ran, redeploy.

Signals

GitHub stars
2k
Forks
251
Last commit
Sep 2026
Installs
208k installs

Ahel review

  • K1binfo
    installs-packages (in references/deploy-azcli.md)
  • K1binfo
    installs-packages (in references/errors.md)

Automated review, not a security audit. Ruleset v1+k2.

Advanced
Item type
skill
Key
python-appservice-deploy
Source
github.com/microsoft/azure-skills