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.
Entre no Portal de Publicação do Visual Studio Marketplace.
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.
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 manifestopublisher
de extensão. - Especifique um nome para exibição para seu editor, por exemplo:
My Team
- Especifique um identificador para o editor, por exemplo:
Reveja o Contrato de Editor do Marketplace e, em seguida, selecione Criar.
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.
Abra o arquivo de manifesto da extensão (
vss-extension.json
) e defina opublisher
valor do campo como a ID do editor. Por exemplo:{ ... "id": "my-first-extension", "publisher": "AnnetteNielsen", ... }
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.
No portal de gerenciamento, selecione seu editor no menu suspenso na parte superior da página.
Selecione Nova extensão>Azure DevOps.
Arraste e solte seu arquivo ou selecione-o para encontrar seu arquivo VSIX, que você criou na etapa de empacotamento anterior, e escolha Carregar.
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ê.
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:
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.
Selecione Organização e, em seguida, introduza o nome da sua organização. Selecione Enter.
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.
No Marketplace, selecione sua extensão para abrir a página de visã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.
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.
Selecione Instalar.
Parabéns! Você instalou sua extensão em uma organização e está pronto para experimentá-la.
Experimente a sua extensão
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}
).Atualize o seu browser.
Abra Configurações da organização e selecione 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.
- Selecione uma extensão na lista de itens exibidos.
- Clique com o botão direito do mouse e selecione Atualizar para o
publisher.extension-dev
, por exemplo. - Valide a sua extensão.
- Faça as mesmas atualizações para a versão de produção,
publisher.extension
por exemplo. - 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.
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.
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 . 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.
Candidate-se para ser um Top Publisher
- Inicie sessão https://marketplace.visualstudio.com/manage/publishers com a conta com a qual publica e gere as suas ofertas no Marketplace
- 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.
- 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 o Apoio ao Cliente na Comunidade de Programadores. Analisamos o pedido e eliminamos manualmente a extensão.
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.