Démarrage rapide : Générer un exemple d’extension azd

Dans ce guide de démarrage rapide, vous créez un exemple d’extension CLI développeur Azureazd nommée Contoso Resource Tagger. Vous utilisez l’extension azd développeur pour générer une structure d’un projet Go, ajouter une commande personnalisée et exécuter l’extension localement. L’exemple d’extension que vous créez est le point de départ des autres articles de cette section, qui vous montrent comment ajouter des fonctionnalités, communiquer avec azd, ajouter un serveur MCP (Model Context Protocol) et publier votre travail.

Pour découvrir les concepts liés au développement d’extensions avant de commencer, consultez les concepts de développement d’extension.

Note

L’infrastructure azd d’extension est généralement disponible. Les extensions ou fonctionnalités individuelles peuvent avoir leur propre état d’aperçu.

Prerequisites

azd inclut la source d’extension officielle par défaut. Vous pouvez également installer des extensions à partir de sources basées sur des URL ou de fichiers, de registres de développement locaux, de registres de développement d’inscription ou de registres nocturnes et de bundles portables .zip . Pour plus d’informations, consultez les concepts de développement d’extension.

Conseil / Astuce

Si un azd projet dépend d’hôtes, de fournisseurs, de validation, de gestionnaires de cycle de vie ou de commandes fournis par l’extension, déclarez ces extensions requises avec azure.yaml des contraintes de version. Pour plus d’informations, consultez requiredVersions.

Installer l’extension développeur

L’extension azd développeur (microsoft.azd.extensions) fournit les azd x commandes que vous utilisez pour générer des extensions.

  1. Installez l’extension développeur à partir de la source d’extension officielle :

    azd extension install microsoft.azd.extensions
    
  2. Vérifiez que l’extension est installée :

    azd extension list --installed
    

    L’extension de développement enregistre un ensemble de commandes dans l’espace de noms x. Exécutez azd x pour afficher les commandes disponibles.

Structurer l’exemple d’extension

Utilisez la azd x init commande pour générer une structure d’un nouveau projet d’extension.

  1. Créez et changez dans un répertoire pour vos extensions :

    mkdir azd-extensions
    cd azd-extensions
    
  2. Initialisez un dépôt Git et créez une validation initiale. La azd x init commande nécessite le suivi du dossier d’extension par git :

    git init
    git commit --allow-empty -m "Initial commit"
    
  3. Exécutez la commande azd x init pour créer la structure de base de l’extension :

    azd x init
    
  4. Lorsque vous y êtes invité, fournissez les valeurs suivantes :

    Prompt Valeur
    ID d’extension contoso.azd.tagger
    Nom d'affichage Contoso Resource Tagger
    Description Standardize and report Azure resource tags for an azd project.
    Namespace tagger
    Capacités Custom commands
    Language Go

La commande crée la structure de l’extension, génère les fichiers binaires initiaux, empaquette l’extension, la publie dans une source d’extension locale et l’installe localement pour une utilisation immédiate.

Explorer la structure du projet

La azd x init commande génère un projet avec les fichiers clés suivants :

contoso.azd.tagger/
├── bin/                    # Contains built binaries
├── build.ps1               # Windows build script
├── build.sh                # Unix build script
├── CHANGELOG.md            # Version history and release notes
├── extension.yaml          # Extension metadata and capabilities
├── main.go                 # Entry point for the extension
├── go.mod                  # Go module definition
└── internal/               # Internal implementation code

Les fichiers les plus importants sont les suivants :

  • extension.yaml: définit les métadonnées, les fonctionnalités et les commandes de votre extension. Pour plus d’informations, consultez Définir le manifeste d’extension.
  • main.go: point d’entrée qui exécute la commande racine de votre extension.
  • build.shet build.ps1: scripts de génération multiplateforme qui compilent un binaire distinct pour chaque plateforme prise en charge (Linux, Windows et macOS).
  • CHANGELOG.md: Documente les modifications entre les versions et fournit des notes de publication lors de la publication.

Ajouter une commande personnalisée

Ajoutez une show commande qui imprime un message d’accueil pour vérifier que votre extension fonctionne. La disposition exacte du fichier dépend du modèle de démarrage, mais le modèle est le même : définissez une commande Cobra et inscrivez-la sur la commande racine.

  1. Dans le internal/cmd répertoire, créez un fichier nommé show.go avec le contenu suivant :

    package cmd
    
    import (
        "fmt"
    
        "github.com/spf13/cobra"
    )
    
    func newShowCommand() *cobra.Command {
        return &cobra.Command{
            Use:   "show",
            Short: "Displays a greeting from the Contoso Resource Tagger extension.",
            RunE: func(cmd *cobra.Command, args []string) error {
                fmt.Println("Hello from the Contoso Resource Tagger extension!")
                return nil
            },
        }
    }
    
  2. Enregistrez la commande sur la commande racine. Dans le internal/cmd/root.go fichier, ajoutez la ligne suivante vers le bas du fichier après les autres AddCommand fonctions :

    rootCmd.AddCommand(newShowCommand())
    

Exécuter l’extension

Avant d’exécuter l’extension, empaquetez-la et publiez-la dans votre source d’extension locale pour inscrire vos modifications.

  1. Empaqueter l’extension :

    azd x pack
    
  2. Publiez l’extension pour l’inscrire :

    azd x publish
    
  3. Exécutez votre nouvelle commande :

    azd tagger show
    

    La sortie ressemble à l’exemple suivant :

    Hello from the Contoso Resource Tagger extension!
    

Vous disposez maintenant d’une extension de travail sur laquelle vous pouvez vous appuyer.

Surveiller les modifications pendant le développement

Au lieu d’exécuter manuellement azd x pack et azd x publish après chaque modification, utilisez azd x watch pour compiler et installer automatiquement l’extension au fur et à mesure de son développement.

  1. À partir du répertoire d’extension, démarrez l’observateur :

    azd x watch
    
  2. Dans un deuxième terminal, exécutez votre commande pour tester les modifications à mesure que vous les effectuez :

    azd tagger show
    

Pour générer l’extension manuellement au lieu d’utiliser l’observateur, exécutez azd x build.

Nettoyer les ressources

Une fois l’expérience terminée, désinstallez l’exemple d’extension :

azd extension uninstall contoso.azd.tagger

Pour poursuivre le développement de l’extension exemple, consultez les articles suivants. Chaque article est indépendant, ce qui vous permet de les compléter dans n’importe quel ordre :