Empacotar e publicar extensões

Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019

Depois de desenvolver sua extensão, você pode empacotá-la e publicá-la no Visual Studio Marketplace. O Marketplace é um repositório global para extensões públicas e privadas, integrações e outras ofertas da Microsoft.

Nota

Para obter informações sobre as propriedades de descoberta disponíveis no arquivo de manifesto da extensão que ajudam os usuários a descobrir e aprender sobre a extensão, consulte a Referência do manifesto da extensão.

Pré-requisitos

A lista de requisitos a seguir deve ser atendida antes de publicar no Marketplace.

  • Instale a ferramenta de empacotamento de extensão (TFX). Execute npm install -g tfx-cli a partir de um prompt de comando.
  • Certifique-se de que as permissões adequadas são concedidas para usar quaisquer imagens, por exemplo, ícones, logotipos, capturas de tela e assim por diante.
  • Inclua um ficheiro completo overview.md para descrever o seu anúncio no Marketplace.
  • Inclua um ícone para sua extensão, que tem pelo menos 128x128 pixels de tamanho.
  • Quando você se refere a produtos da Microsoft, use nomes completos no lugar de abreviaturas, por exemplo, Azure DevOps vs. AzDO ou - qualquer outra abreviação.
  • Abster-se de usar nomes de marcas no nome da sua extensão.

Criar um editor

Todas as extensões e integrações, incluindo extensões da Microsoft, têm um editor. Qualquer pessoa pode criar um editor e publicar extensões sob ele. Você também pode dar a outras pessoas acesso ao seu editor se uma equipe estiver desenvolvendo a extensão.

Um usuário é o proprietário do editor, normalmente o usuário que o criou. Você também pode compartilhar o editor com outros usuários.

  1. Entre no Portal de Publicação do Visual Studio Marketplace.

  2. Se ainda não for membro de um editor existente, + Criar um editor. Insira um nome no campo Nome do editor. O campo ID deve ser definido automaticamente com base no nome que você inseriu.

    Captura de ecrã a mostrar o botão realçado, Criar editor.

    Nota

    Anote o ID, pois você precisa defini-lo no arquivo de manifesto da sua extensão.

    Se você não for solicitado a criar um editor, role para baixo até a parte inferior da página e selecione Publicar extensões abaixo de Sites relacionados.

    • Especifique um identificador para o editor, por exemplo: mycompany-myteam. Esse identificador é usado como o valor para o atributo em seu arquivo de manifesto publisher de extensão.
    • Especifique um nome para exibição para seu editor, por exemplo: My Team
  3. Reveja o Contrato de Editor do Marketplace e, em seguida, selecione Criar.

    Criar editor para extensão

Depois que o editor é criado, você é direcionado para gerenciar itens, mas não há itens.

Empacote sua extensão

Para carregar sua extensão, você precisa empacotá-la como um arquivo .vsix compatível com VSIX 2.0. A Microsoft fornece uma interface de linha de comando (CLI) de plataforma cruzada para empacotar e publicar sua extensão.

  1. Abra o arquivo de manifesto da extensão (vss-extension.json) e defina o publisher valor do campo como a ID do editor. Por exemplo:

    {
        ...
        "id": "my-first-extension",
        "publisher": "AnnetteNielsen",
        ...
    }
    
  2. Em um prompt de comando, execute o comando de empacotamento da ferramenta TFX no diretório de extensão.

    npx tfx-cli extension create
    

    É exibida uma mensagem indicando que sua extensão foi empacotada com êxito:

    === Completed operation: create extension ===
    - VSIX: C:\my-first-extension\AnnetteNielsen.my-first-extension-1.0.0.vsix
    - Extension ID: my-first-extension
    - Extension Version: 1.0.0
    - Publisher: AnnetteNielsen
    

Nota

A versão de uma extensão/integração deve ser incrementada em cada atualização.
Se você não tiver incrementado sua extensão/integração no manifesto, deverá passar a opção de linha de --rev-version comando. Isso incrementa o número da versão do patch da sua extensão e salva a nova versão no seu manifesto.

Verifique o tamanho da embalagem

Verifique o tamanho do vsix depois de ser embalado. Se for maior que 50 MB, você precisa otimizá-lo. Para isso, veja as seguintes considerações:

  • Desduplique as dependências comuns, se houver, declarando-as uma vez no pacote de extensão.
  • Buscar coisas em tempo de execução ou durante o tempo de instalação em vez de fornecê-las dentro do pacote. Considere usar a lib do instalador da ferramenta para extrair dependências da ferramenta em tempo de execução. Usar a lib oferece benefícios onde a ferramenta é armazenada em cache por versão, portanto, para agentes privados, ela não baixa todas as compilações. Nós o tornamos um lib para que possa ser usado fora das tarefas do instalador de ferramentas. Mas, a tarefa não funciona em cenários desconectados (sem internet), que devem estar na descrição/documentos para a tarefa.
  • Alguns usuários têm sucesso com o WebPack para agitar suas dependências em suas tarefas.

Publique sua extensão

Assim que a extensão for empacotada, você poderá carregá-la no Marketplace sob um editor. O publisher identificador especificado no arquivo de manifesto da extensão deve corresponder ao identificador do editor sob o qual a extensão é carregada.

  1. No portal de gerenciamento, selecione seu editor no menu suspenso na parte superior da página.

  2. Selecione Nova extensão>Azure DevOps.

    Captura de ecrã a mostrar o menu pendente Nova extensão e a seleção de DevOps do Azure realçada.

  3. Arraste e solte seu arquivo ou selecione-o para encontrar seu arquivo VSIX, que você criou na etapa de empacotamento anterior, e escolha Carregar.

    Captura de ecrã a mostrar o Carregamento da nova extensão para o Azure DevOps.

    Após a validação rápida, sua extensão aparece na lista de extensões publicadas. Não se preocupe, a extensão só é visível para você.

    Captura de tela mostrando a extensão na lista de extensões publicadas.

Neste ponto, sua extensão não está visível para nenhuma conta e não pode ser instalada até que você a compartilhe.

Nota

A Microsoft executa uma verificação de vírus em cada pacote de extensão novo e atualizado publicado. Até que a verificação esteja clara, não publicamos a extensão no Marketplace para uso público. Desta forma, também evitamos o aparecimento de conteúdo impróprio ou ofensivo nas páginas do Marketplace.

Partilhe a sua extensão

Você deve compartilhar sua extensão com uma organização antes de instalá-la no Azure DevOps. Para compartilhar uma extensão, execute as seguintes tarefas:

  1. No portal de gerenciamento do Marketplace, selecione sua extensão na lista, clique com o botão direito do mouse e escolha Compartilhar/Cancelar compartilhamento ou Publicar/Não publicar, dependendo da extensão.

    Captura de ecrã da seleção do menu, Partilhar/Anular Partilha.

  2. Selecione Organização e, em seguida, introduza o nome da sua organização. Selecione Enter.

    Captura de ecrã do botão Enter.

  3. Feche o painel.

Sua extensão agora pode ser instalada nesta organização.

Instale a sua extensão

Para instalar sua extensão compartilhada, execute as etapas a seguir.

  1. No Marketplace, selecione sua extensão para abrir a página de visão geral.

    Captura de ecrã da página Descrição Geral.

    Nota

    Como sua extensão é privada, somente você e qualquer membro da organização com a qual ela é compartilhada podem ver esta página.

  2. Selecione Obter gratuitamente para iniciar o processo de instalação. Selecione a organização com a qual você compartilhou a extensão no menu suspenso.

    Captura de tela mostrando a caixa de diálogo de instalação da extensão.

  3. Selecione Instalar.

Parabéns! Você instalou sua extensão em uma organização e está pronto para experimentá-la.

Experimente a sua extensão

  1. Selecione Prosseguir para a organização no final do assistente de instalação para ir para a página inicial da organização na qual a extensão foi instalada (https://dev.azure.com/{organization}).

  2. Atualize o seu browser.

  3. Abra Configurações da organização e selecione Extensões.

    Captura de ecrã das definições da organização, página Extensões.

Você deve ver a nova extensão na guia Instalado .

Depurar sua extensão

Para depurar a extensão usando o Visual Studio ou Browser Developer Tools, altere o manifesto adicionando a baseUri propriedade. Essa ação acelera o desenvolvimento sem a necessidade de reimplantar a extensão cada vez que você altera o código-fonte.

{
    ...
    "baseUri": "https://localhost:44300",
    ...
}

Quando você altera o manifesto, ele carrega a extensão da instância do servidor Web local. Por exemplo, IISExpress no Visual Studio. Depois de alterar o manifesto, implante e instale essa extensão de depuração apenas uma vez.

Nota

Execute seu servidor Web local no modo SSL porque o Azure DevOps exige que a página da Web seja servida a partir de uma fonte segura. Caso contrário, você receberá um erro no console do navegador durante o carregamento da extensão IFRAME.

Atualize a sua extensão

Para alterar uma extensão já publicada, atualize-a.

Gorjeta

Recomendamos atualizar a extensão ao remover e recarregar. Também recomendamos ter duas extensões, por exemplo, publisher.extension e publisher.extension-dev. Publisher.extension é público no Marketplace, onde os clientes podem instalá-lo em suas organizações de DevOps do Azure. Publisher.extension-dev é mantido privado no Marketplace e pode ser compartilhado com uma organização que você possui e controla. Não é necessário manter duas cópias do código-fonte da extensão. Você pode manter dois arquivos de manifesto - um para cada extensão e durante o empacotamento da extensão você pode fornecer o respetivo arquivo de manifesto para a ferramenta tfx-cli. Para obter mais informações sobre os argumentos necessários para a ferramenta, consulte Comandos de extensão TFX.

  1. Selecione uma extensão na lista de itens exibidos.
  2. Clique com o botão direito do mouse e selecione Atualizar para o publisher.extension-dev, por exemplo.
  3. Valide a sua extensão.
  4. Faça as mesmas atualizações para a versão de produção, publisher.extensionpor exemplo.
  5. Navegue até o .vsix para sua extensão e carregue-a.

A versão atualizada da sua extensão é instalada automaticamente nas contas que já a têm instalada. Novas contas onde a extensão é instalada no futuro também recebem a versão mais recente.

Torne sua extensão pública

Enquanto desenvolve a sua extensão ou integração para o Marketplace, mantenha-a privada. Para disponibilizar sua extensão publicamente, defina o sinalizador público como true em seu manifesto.

Qualificações

Para ter uma listagem pública no Marketplace, sua integração ou extensão deve atender às seguintes qualificações:

  • Funciona com ou estende o Azure DevOps.
  • Você, ou sua empresa, possui, desenvolve e está licenciado para distribuir e anunciar a integração ou extensão.
  • A extensão ou integração é mantida ativamente.

A Microsoft também pode solicitar uma demonstração e revisar o conteúdo planejado para sua entrada no Marketplace.

Editora Top

O programa Top Publisher só está disponível para editores com extensões ou integrações do Azure DevOps. Não é aplicável para editores de extensão Visual Studio IDE e Visual Studio Code.

Captura de ecrã do emblema Top Publisher.

O programa Top Publisher reconhece editores com compromisso com seus clientes e com o Marketplace por meio de políticas exemplares, qualidade, confiabilidade e suporte. Depois de se tornar um Top Publisher, todas as suas ofertas públicas exibem o selo Top Publisher.

Principais requisitos do Publisher

O programa Top Publisher no Marketplace foi projetado para ajudá-lo a avaliar ou adquirir extensões e integrações do Azure DevOps com confiança. O selo Top Publisher implica que o editor mostra compromisso com seus clientes e com o Marketplace por meio de políticas exemplares, qualidade, confiabilidade e suporte. É para editores com uma ou mais extensões ou integrações globais do Azure DevOps e não é aplicável para editores de extensão do Visual Studio IDE e Visual Studio Code.

O Marketplace atribui o selo a um editor depois de analisar cuidadosamente o editor nos seguintes parâmetros:

  • Política de privacidade
  • Política de licenciamento
  • Política de suporte
  • Documentação
  • Q & Uma capacidade de resposta
  • Classificações e avaliações de suas ofertas
  • A aceitação ativa e a contagem de instalação para suas ofertas
  • Gerencie pelo menos uma extensão pública do Azure DevOps do editor.
  • A extensão pública deve ter mais de 5000 instalações, com uma contagem de instalações ativas superior a 1000.

Você pode esperar suporte oportuno e uma boa experiência geral quando recebe uma extensão de um Top Publisher. Confira as ofertas dos Top Publishers.

Para obter mais informações sobre como adicionar políticas à sua oferta, consulte o manifesto da extensão.

  1. Atualize seu perfil de editor.

    Através do perfil do editor, você pode exibir todas as suas ofertas em um só lugar, juntamente com as principais informações relacionadas ao editor. Para fornecer as informações, que aparecem no perfil, execute as seguintes etapas:

    a. Entre usando https://marketplace.visualstudio.com/manage/publishers a conta com a qual você publica e gerencia suas ofertas no Visual Studio Marketplace.

    b. Selecione o editor e preencha a seção Sobre você na guia Detalhes . Captura de ecrã da secção sobre si para editores da Microsoft. c. Salve suas alterações e selecione Visualizar perfil para ver como ele aparece para os consumidores. Você pode usar esta página de perfil para evangelizar sua(s) oferta(s).

Nota

Através deste programa, é a editora que está a ser certificada. Isso não cobre o software ou a segurança de suas extensões e integrações. Recomendamos que você esteja ciente das informações de segurança ao avaliar as ofertas de um editor.

Se você recebeu uma extensão de um Top Publisher e não está satisfeito com sua experiência, considere entrar em contato com o editor primeiro. Depois, se você ainda não estiver satisfeito, entre em contato com a equipe do Marketplace.

Candidate-se para ser um Top Publisher

  1. Inicie sessão https://marketplace.visualstudio.com/manage/publishers com a conta com a qual publica e gere as suas ofertas no Marketplace
  2. Selecione o editor e navegue até a guia Top Publisher. Observação : você precisa ter uma ou mais extensões ou integração global do Azure DevOps (Servidor/Serviço) para que a guia apareça.
  3. Se você atender a parte dos requisitos listados anteriormente e for o proprietário do editor, verá uma opção para se candidatar ao programa. Na inscrição, um e-mail é enviado para a equipe do Marketplace para analisar seu caso. Eles respondem em menos de 10 dias úteis com os próximos passos, esclarecendo dúvidas ou com a concessão do crachá.

A equipe provavelmente analisa outros parâmetros, como aceitação ativa de suas ofertas, contagem de instalação/introdução e classificações e avaliações em todas as suas ofertas antes de conceder o selo. A Microsoft reserva-se o direito de conceder, rejeitar ou revogar o selo Top Publisher a qualquer momento.

Quando um editor é um Top Publisher, todas as suas futuras atualizações e ofertas devem atender aos requisitos listados anteriormente.

Responder a avaliações de extensões do Marketplace

Você pode responder às avaliações que os clientes deixam para suas extensões no Visual Studio Marketplace. Localize e selecione Responder ao lado de uma avaliação se tiver uma das seguintes permissões: proprietário, criador ou colaborador.

Você pode deixar apenas uma resposta. Evite usar as avaliações como um fórum de suporte. Se precisar de mais detalhes, forneça um alias de suporte para o revisor entrar em contato. Em seguida, você pode resolver seus problemas externamente e atualizar sua resposta com uma resolução.

Diretrizes para respostas do editor

Mantenha o Visual Studio Marketplace um local aberto, convidativo, respeitoso e útil para os clientes encontrarem, experimentarem, instalarem e analisarem extensões. A comunicação desempenha um papel importante na manutenção de uma comunidade saudável. Para ajudar a criar esse ambiente, aqui estão as diretrizes para editores que respondem às avaliações dos clientes. Pense profundamente sobre as interações com o cliente e reflita sobre o espírito da experiência do cliente que o Marketplace está tentando criar.

  • Os comentários são reservados para comentários de clientes. Use Responder somente para responder a uma avaliação.
  • As avaliações são para compartilhar opiniões de clientes, portanto , todas as opiniões são válidas. Os clientes têm direito às suas opiniões, por isso trate os comentários respeitosamente como feedback sem debate, crítica ou argumento.
  • Certifique-se de que as suas respostas acrescentam valor e são relevantes para os comentários dos seus clientes.
  • Concentre-se em abordar com precisão questões ou problemas. Se você precisar de mais detalhes, peça ao cliente para entrar em contato com você por e-mail, em vez de discutir em comentários. Quando resolver o problema, atualize a sua resposta com a resolução. Você pode editar sua resposta, assim como os clientes podem editar suas avaliações.
  • Se você se deparar com comentários inadequados, como spam, conteúdo abusivo ou ofensivo, para qualquer extensão, sinalize-o para nossa análise.

Pedido de anulação de uma avaliação

Como editor, você pode recorrer para anular uma avaliação se o problema relatado for devido ao Marketplace ou à plataforma subjacente. Se o problema for válido, os administradores do Marketplace anularão a classificação. Você pode Apelar da seção de avaliações e revisão na página do hub de extensão.

Cancelar a publicação de uma extensão

Você pode cancelar a publicação de extensões gratuitas, se não quiser mais oferecê-las no Marketplace.

Os cenários a seguir abrangem quando você pode querer remover sua extensão do Marketplace:

  • Você desenvolveu outra extensão e não quer mais oferecer a atual.
  • Sua extensão tem um problema, então você deseja remover sua extensão do Marketplace até resolver o problema.
  • Você publicou sua extensão como pública por engano.

Certos critérios devem ser cumpridos para que uma extensão seja não publicada ou removida:

Ação Requisitos
Anular publicação Apenas extensões gratuitas podem não ser publicadas.
Remover Sua extensão deve ter zero (0) instalações para ser removida.

Importante

Se tiver de remover a sua extensão devido a problemas legais ou de segurança, contacte a equipa do Marketplace. Analisamos o pedido e eliminamos manualmente a extensão.

  1. Selecione a extensão na página do editor e escolha Cancelar publicação no menu.

    Sua extensão não é publicada imediatamente no Marketplace e novos usuários não podem instalá-la. As classificações e avaliações da sua extensão permanecem intactas.

Para oferecer sua extensão novamente no Marketplace, escolha Publicar no menu.

Você também pode optar por remover completamente sua extensão do Marketplace se sua extensão tiver zero (0) instalações. Para fazer isso, escolha Remover no menu. Esta ação não pode ser anulada.