Azure App Onboard
⛔ Chaque repo passe par le pipeline complet (Étapes 1–10). Aucune exception. Ne saute pas les étapes, ne refuse pas, ne contourne pas en fonction de ce que tu reconnais. Suis le tableau Workflow ci-dessous de façon séquentielle — lis les références de chaque étape avant d'agir.
Référence rapide
| Propriété | Valeur |
|---|---|
| Idéal pour | Développeurs qui savent quoi construire mais pas quels services Azure utiliser |
| Entrées | Idée métier ou codebase existante, préférences budget/échelle (optionnel) |
| Sorties | Plan d'architecture, estimation des coûts, fichiers IaC, ressources Azure déployées |
| Phases | Discover → Architect → Scaffold → Deploy (autonomes, sans appels de skill externes) |
Quand utiliser cette compétence
- Déployer du code existant sans savoir quels services Azure utiliser
- Vérifier si ton code existant est prêt pour le déploiement sur Azure
- Migrer une app existante vers Azure sans la réécrire ou avec des modifications minimales
- Obtenir des estimations de coûts avant de s'engager sur l'infrastructure
- Comprendre les décisions d'architecture et les alternatives rejetées
- Obtenir des réponses aux questions d'architecture Azure ou de sélection de services (p. ex. « Quelle base de données devrais-je utiliser ? »)
- Obtenir un onboarding Azure guidé sans expérience préalable
Quand NE PAS utiliser
| Scénario | Utilise plutôt |
|---|---|
Exécuter azd up ou déployer une infrastructure existante |
azure-deploy |
| Optimiser les dépenses Azure existantes | azure-cost |
| Générer du Bicep/Terraform pour une architecture connue | azure-prepare |
| Valider l'infrastructure ou exécuter des contrôles préalables | azure-validate |
| Diagnostiquer un déploiement Azure en cours | azure-diagnostics |
| Déployer ou gérer AKS/Kubernetes directement | azure-kubernetes |
| Chercher ou lister les ressources Azure existantes | azure-resource-lookup |
Règles du pipeline
⛔ Tu DOIS lire
references/pipeline-rules.mdau début de chaque session AppOnboard. Elle contient les portes d'approbation, le cycle de vie des phases, les artefacts de session, les règles deploy-as-is et de sécurité.
Workflow
⛔ Récupération du déploiement : Après approbation de la porte de déploiement OU avant tout
az deployment/az webapp deploy/az acr build— si tu n'as pas ludeploy/SKILL.md, lis d'abord.copilot-azure/sessions/{id}/deploy-checklist.md, puisdeploy/SKILL.md. ⛔ N'invoque JAMAIS{"skill": "azure-deploy"}— c'est une compétence DIFFÉRENTE pour un workflow DIFFÉRENT.
⛔ Transition post-scaffold (OBLIGATOIRE) : Immédiatement après l'écriture de
scaffold-manifest.json, TON PROCHAINE ACTION DOIT être l'Étape 8 (Porte d'approbation du déploiement) — PAS un rapport récapitulatif, PAS un message « voici les fichiers générés », PAS un signal d'achèvement. Confirme quecontext.jsonacompletedPhases: [...,"scaffold"]+currentPhase: "deploy"(mets-le à jour toi-même si le sous-agent scaffold ne l'a pas fait). Relis approval-gates.md § Deploy Gate si tu es expulsé du contexte (le chargement de référence scaffold est lourd), puis présente l'invite exacte : « 🚀 Prêt à déployer ? (Oui / Déployer manuellement / Modifier le plan / Annuler) ». Cette porte est le DERNIER contenu de ta réponse — attends la réponse de l'utilisateur.
| # | Étape | Action | Référence |
|---|---|---|---|
| 1 | Vérification de session + connexion Azure | Créer/reprendre session, vérifier auth Azure CLI, résoudre l'identité de l'abonnement + utilisateur | ⛔ Tu DOIS lire session-protocol.md |
| 2 | Triage de périmètre | Vérifier les marqueurs azd, triager la question. Espace de travail vide ou code uniquement (pas d'infra) → Étape 3 directement. | ⛔ Lis intent-gathering.md § Scope Triage |
| 3 | Scan des prérequis | ⛔ Saute si completedPhases inclut "prereq". Sinon : invoque {"skill": "azure-app-onboard-prereq"}. Écris prereq-output.json, mets à jour context.json. Halte si : overallHealth: "blocked" OU routeToSkill défini. |
|
| 4 | Rassembler les intentions | Présente les résultats des prérequis, confirme la stack + services Azure, pose les questions restantes. | ⛔ Lis intent-gathering.md § After Prereq Returns |
| 5 | Planifier l'architecture | Écris prepare-plan.json. |
⛔ Tu DOIS lire prepare/SKILL.md |
| 6 | Porte d'approbation du scaffold | Affiche le plan pour approbation utilisateur AVANT de générer des fichiers. | ⛔ Lis approval-gates.md § Scaffold Gate |
| 7 | Scaffold | Générer IaC, auto-examen. Écris scaffold-manifest.json. Mets à jour context.json. |
⛔ Tu DOIS lire scaffold/SKILL.md |
| 8 | Porte d'approbation du déploiement | Affiche le résumé de validation. ⛔ Après approbation : LIS D'ABORD deploy-checklist.md → deploy/SKILL.md. JAMAIS {"skill": "azure-deploy"}. |
⛔ Lis approval-gates.md § Deploy Gate |
| 9 | Déployer | Exécute IaC, contrôle de santé. Écris deploy-result.json. |
⛔ Tu DOIS lire deploy/SKILL.md |
| 10 | Remise | Surface l'identité du déploiement, commandes de nettoyage, prochaines étapes. | ⛔ Tu DOIS lire handoff-protocol.md |
Gestion des erreurs
| Erreur | Remédiation |
|---|---|
| Échec de phase | Halte, rapporte la phase + erreur. L'utilisateur décide : réessayer, passer, abandonner. |
| Serveur MCP indisponible | Saute les vérifications affectées, ajoute une clause de non-responsabilité à costEstimate.assumptions[] et chaque porte d'approbation. |
| RBAC manquant | Rapporte le rôle requis + commande az role assignment. |
Références partagées : Outils MCP (paramètres d'outils inter-phases) | Ressources IaC (docs ressources Azure pour dépannage)