用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/Azure-Samples/Spec2Cloud --skill deploy命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | deploy |
| description | Use when local verification passed and the feature is ready to ship to Azure. |
Requires spec.md, plan.md, .azure/deployment-plan.md, verify.md. If spec.md is missing, auto-run specify with the user's prompt, then auto-run plan and implement. If plan.md is missing, auto-run plan and implement. If implementation.md is missing, auto-run implement first. Load workspace context per copilot-instructions.md.
Preflight: az --version, azd version, and bicep --version all succeed; azd and the microsoft.foundry extension is installed (install with azd ext install microsoft.foundry) and up to date (check with azd ext list); azd auth login --check-status succeeds; azd env list shows the target env; azure.yaml exists and infra/main.bicep is present (skip if AZD template = none). If az is logged in but azd is not, run azd config set auth.useAzCliAuth true instead of the interactive azd auth login.
Packaging: validate before deploy:
Hosted-agent deps: ship uv.lock when the project is uv-managed; otherwise a focused requirements.txt (runtime deps only). Do not ship the agent-framework meta-package — it pulls broken extras; pin the specific sub-packages you import (e.g. agent-framework-core, agent-framework-foundry, agent-framework-foundry-hosting) plus undeclared transitive imports (e.g. mcp). Validate with a clean install before deploy.
Hosted-agent code deploy: generate/validate .agentignore to scope the remote payload.
When remoteBuild: true, generate/validate service-specific .dockerignore to keep build contexts clean.
Normalize Linux entrypoint line endings (LF) via .gitattributes or dos2unix/sed in the Dockerfile to avoid CRLF runtime failures.
Confirm AZD environment, subscription, resource group, and region from .azure/deployment-plan.md before any state-changing command. Stop if the deployment plan records none for the AZD template (no azure.yaml to deploy).
Make sure that instrumentation is enabled, so that telemetry is available immediately after deployment.
For IaC changes, dry-run with azd provision --preview before azd deploy.
Never print or commit secrets; values must resolve via Key Vault / managed identity.
Stop local servers before deploying to avoid file locks.
Deploy:
azd provision was succeeded, now perform the azd deploy and wait for completion:
azd deploy -e <AZD environment>
azd provision was not previously run, run azd up instead to provision and deploy in one step:
azd up -e <AZD environment>
After deployment succeeds, gather the deployed endpoint URLs from azd show -e <AZD environment> -o json. The frontend URL is the primary user-facing endpoint and should be set in the azd environment variables as FRONTEND_URI.
Post-deploy health: confirm ACA revision is active and provisioned (az containerapp revision list), hosted-agents sessions respond with the command azd ai agent show <agent-name> to retrieve the agent endpoint and playground URL, then azd ai agent invoke --agent-endpoint <agent-endpoint> {"input": "<message>"} to confirm the agent responds as expected, and check the logs by running azd ai agent monitor <agent-name>. Report the playground URL for each agent to the user.
Repeat the HTTP-based E2E validation with the deployed endpoints and report pass/fail.
| Symptom | Fix |
|---|---|
QuotaExceeded | Change region or request quota increase |
ConflictError (name taken) | Change environmentName or RG suffix |
ImagePullBackOff | Verify ACR push + AcrPull RBAC |
InvalidTemplate | Validate infra/main.bicep |
AuthorizationFailed | Verify subscription + RBAC roles |
Hosted agents can only be called through the agent endpoint | Call the agent's dedicated endpoint ({project}/agents/{agent}/endpoint/protocols/openai), not the project endpoint or agent_reference |
| Hosted-agent deploy fails on dependency resolution | Replace the agent-framework meta-package with pinned sub-packages + transitive imports (see Packaging) |
424 session_not_ready / transient 502 | Cold start / revision rollover — warm-up retries |
Do not claim deployment succeeded without azd deploy exit 0 AND the local E2E suite re-run against the deployed URL. Hand back the deployed Azure endpoint and summarize the updated ./docs/deploy.md. Generate or refresh root README.md linking to ./docs/spec.md, ./docs/plan.md, ./docs/implementation.md, ./docs/verify.md, and ./docs/deploy.md.
基于 SOC 职业分类