Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Neste guia de início rápido, você vai criar uma extensão de exemplo da CLI do Desenvolvedor do Azure (azd) chamada Contoso Resource Tagger. Você usa a extensão de azd desenvolvedor para estruturar um projeto Go, adicionar um comando personalizado e executar a extensão localmente. A extensão de exemplo criada é o ponto de partida para os outros artigos desta seção, que mostram como adicionar recursos, comunicar-se com azd, adicionar um servidor MCP (Protocolo de Contexto de Modelo) e publicar seu trabalho.
Para saber os conceitos por trás do desenvolvimento de extensão antes de começar, consulte os conceitos de desenvolvimento de extensão.
Note
A azd estrutura de extensão está disponível em geral. Extensões ou funcionalidades individuais podem ter seu próprio status de visualização.
Pré-requisitos
- Instale a CLI de Desenvolvedor do Azure.
- Instale o Go 1.26 ou posterior.
- Um editor de código, como Visual Studio Code.
azd inclui a origem da extensão oficial por padrão. Você também pode instalar extensões de fontes baseadas em URL ou com base em arquivo, registros de desenvolvimento local, desenvolvimento opt-in ou registros noturnos e pacotes portáteis .zip . Para obter detalhes, consulte os conceitos de desenvolvimento de extensão.
Dica
Se um azd projeto depender de hosts, provedores, validação, manipuladores de ciclo de vida ou comandos fornecidos por extensão, declare essas extensões necessárias azure.yaml com restrições de versão. Para obter detalhes, consulte requiredVersions.
Instalar a extensão do desenvolvedor
A azd extensão do desenvolvedor (microsoft.azd.extensions) fornece os azd x comandos que você usa para criar extensões.
Instale a extensão do desenvolvedor da fonte de extensão oficial:
azd extension install microsoft.azd.extensionsVerifique se a extensão está instalada:
azd extension list --installedA extensão do desenvolvedor registra um conjunto de comandos no
xnamespace. Executeazd xpara ver os comandos disponíveis.
Crie a estrutura básica da extensão de exemplo
Use o azd x init comando para estruturar um novo projeto de extensão.
Crie e altere para um diretório para suas extensões:
mkdir azd-extensions cd azd-extensionsInicialize um repositório git e crie uma confirmação inicial. O
azd x initcomando requer que a pasta de extensão seja rastreada pelo git:git init git commit --allow-empty -m "Initial commit"Execute o
azd x initcomando para estruturar a extensão:azd x initQuando solicitado, forneça os seguintes valores:
Prompt Value ID da extensão contoso.azd.taggerNome de exibição Contoso Resource TaggerDescription Standardize and report Azure resource tags for an azd project.Namespace taggerCapabilities Custom commandsLinguagem Go
O comando estrutura a extensão, cria os binários iniciais, empacota a extensão, publica-a em uma fonte de extensão local e a instala localmente para uso imediato.
Explorar a estrutura do projeto
O azd x init comando gera um projeto com os seguintes arquivos de chave:
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
Os arquivos mais importantes são:
-
extension.yaml: define os metadados, os recursos e os comandos da extensão. Para saber mais, confira Definir o manifesto da extensão. -
main.go: o ponto de entrada que executa o comando raiz da extensão. -
build.shebuild.ps1: scripts de build multiplataforma que compilam um binário separado para cada plataforma com suporte (Linux, Windows e macOS). -
CHANGELOG.md: documenta alterações entre versões e fornece notas de versão quando você publica.
Adicionar um comando personalizado
Adicione um show comando que imprime uma saudação para verificar se a extensão funciona. O layout exato do arquivo depende do modelo inicial, mas o padrão é o mesmo: defina um comando Cobra e registre-o no comando raiz.
internal/cmdNo diretório, crie um arquivo nomeadoshow.gocom o seguinte conteúdo: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 }, } }Registre o comando no comando principal. No arquivo
internal/cmd/root.go, adicione a seguinte linha próximo ao final do arquivo, após as outras funçõesAddCommand:rootCmd.AddCommand(newShowCommand())
Executar a extensão
Antes de executar a extensão, empacote-a e publique-a na fonte de extensão local para registrar suas alterações.
Empacotar a extensão:
azd x packPublique a extensão para registrá-la:
azd x publishExecute seu novo comando:
azd tagger showA saída é semelhante ao exemplo a seguir:
Hello from the Contoso Resource Tagger extension!
Agora você tem uma extensão funcional sobre a qual pode desenvolver.
Observe as alterações durante o desenvolvimento
Em vez de executar azd x pack manualmente e azd x publish após cada alteração, use azd x watch para compilar e instalar automaticamente a extensão conforme você desenvolve.
No diretório de extensão, inicie o observador:
azd x watchEm um segundo terminal, execute o comando para testar as alterações conforme você as faz:
azd tagger show
Para criar a extensão manualmente em vez de usar o observador, execute azd x build.
Limpar os recursos
Quando terminar de experimentar, desinstale a extensão de exemplo:
azd extension uninstall contoso.azd.tagger
Conteúdo relacionado
Para continuar a desenvolver a extensão de exemplo, consulte os artigos a seguir. Cada artigo é independente, portanto, você pode concluí-los em qualquer ordem: