Empaqueter et publier des extensions

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019

Une fois que vous avez développé votre extension, vous pouvez empaqueter et la publier sur Visual Studio Marketplace. La Place de marché est un référentiel global pour les extensions privées et publiques, les intégrations et d’autres offres de Microsoft.

Remarque

Pour plus d’informations sur les propriétés de découverte disponibles dans le fichier manifeste de votre extension qui permet aux utilisateurs de découvrir et d’en savoir plus sur votre extension, consultez la référence du manifeste d’extension.

Prérequis

La liste suivante des exigences doit être remplie avant de publier sur la Place de marché.

  • Installez l’outil d’empaquetage d’extension (TFX). Exécutez à npm install -g tfx-cli partir d’une invite de commandes.
  • Vérifiez que les autorisations appropriées sont accordées pour utiliser des images, par exemple, des icônes, des logos, des captures d’écran, et ainsi de suite.
  • Incluez un fichier complet overview.md pour décrire votre description dans la Place de marché.
  • Incluez une icône pour votre extension, qui est d’au moins 128 x 128 pixels de taille.
  • Lorsque vous faites référence à des produits Microsoft, utilisez des noms complets à la place des abréviations, par exemple, Azure DevOps vs. AzDO ou - toute autre abréviation.
  • Évitez d’utiliser des noms de marque dans le nom de votre extension.

Créer un éditeur

Toutes les extensions et intégrations, y compris les extensions de Microsoft, ont un éditeur. Tout le monde peut créer un éditeur et publier des extensions sous celui-ci. Vous pouvez également donner à d’autres personnes l’accès à votre éditeur si une équipe développe l’extension.

Un utilisateur possède l’éditeur, généralement l’utilisateur qui l’a créé. Vous pouvez également partager l’éditeur avec d’autres utilisateurs.

  1. Connectez-vous au portail de publication visual Studio Marketplace.

  2. Si vous n’êtes pas déjà membre d’un éditeur existant, + Créez un éditeur. Entrez un nom dans le champ nom de l’éditeur. Le champ ID doit être automatiquement défini en fonction du nom que vous avez entré.

    Capture d’écran montrant le bouton mis en surbrillance, Créer un éditeur.

    Remarque

    Notez l’ID, car vous devez le définir dans le fichier manifeste de votre extension.

    Si vous n’êtes pas invité à créer un éditeur, faites défiler vers le bas de la page et sélectionnez Publier des extensions sous les sites connexes.

    • Spécifiez un identificateur pour votre éditeur, par exemple : mycompany-myteam. Cet identificateur est utilisé comme valeur de l’attribut publisher dans votre fichier manifeste d’extension.
    • Spécifiez un nom d’affichage pour votre éditeur, par exemple : My Team
  3. Passez en revue le Contrat d’éditeur de la Place de marché, puis sélectionnez Créer.

    Créer un serveur de publication pour l’extension

Une fois l’éditeur créé, vous êtes dirigé vers la gestion des éléments, mais aucun élément n’est présent.

Empaqueter votre extension

Pour charger votre extension, vous devez la empaqueter en tant que fichier .vsix compatible VSIX 2.0. Microsoft fournit une interface de ligne de commande multiplateforme (CLI) pour empaqueter et publier votre extension.

  1. Ouvrez votre fichier manifeste d’extension (vss-extension.json) et définissez la valeur du publisher champ sur l’ID de votre éditeur. Par exemple :

    {
        ...
        "id": "my-first-extension",
        "publisher": "AnnetteNielsen",
        ...
    }
    
  2. À partir d’une invite de commandes, exécutez la commande d’empaquetage de l’outil TFX à partir de votre répertoire d’extension.

    npx tfx-cli extension create
    

    Un message s’affiche indiquant que votre extension est correctement empaquetée :

    === 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
    

Remarque

La version d’une extension/intégration doit être incrémentée à chaque mise à jour.
Si vous n’avez pas incrémenté votre extension/intégration dans le manifeste, vous devez passer le commutateur de --rev-version ligne de commande. Cela incrémente le numéro de version de correctif de votre extension et enregistre la nouvelle version dans votre manifeste.

Vérifier la taille du package

Vérifiez la taille du vsix une fois qu’il est empaqueté. S’il est supérieur à 50 Mo, vous devez l’optimiser. Pour ce faire, consultez les considérations suivantes :

  • Dédupliquer les dépendances courantes, le cas échéant, en les indiquant une fois dans le package d’extension.
  • Récupérez des éléments au moment de l’exécution ou pendant l’installation plutôt que de le fournir dans le package. Envisagez d’utiliser la bibliothèque du programme d’installation d’outils pour extraire les dépendances des outils au moment de l’exécution. L’utilisation de la bibliothèque offre des avantages où l’outil est mis en cache par version afin que pour les agents privés, il ne télécharge pas chaque build. Nous l’avons rendu lib afin qu’il puisse être utilisé en dehors des tâches d’installation d’outils. Toutefois, la tâche ne fonctionne pas dans les scénarios déconnectés (pas d’Internet), qui doivent se trouver dans la description/la documentation de la tâche.
  • Certains utilisateurs ont réussi à utiliser WebPack pour secouer leurs dépendances dans leurs tâches.

Publier votre extension

Une fois votre extension empaquetée, vous pouvez la charger sur la Place de marché sous un éditeur. L’identificateur publisher spécifié dans le fichier manifeste de votre extension doit correspondre à l’identificateur de l’éditeur sous lequel l’extension est chargée.

  1. Dans le portail de gestion, sélectionnez votre éditeur dans le menu déroulant en haut de la page.

  2. Sélectionnez Nouvelle extension>Azure DevOps.

    Capture d’écran montrant le menu déroulant Nouvelle extension et la sélection Azure DevOps mise en surbrillance.

  3. Faites glisser et déposez votre fichier ou sélectionnez-le pour rechercher votre fichier VSIX, que vous avez créé à l’étape d’empaquetage précédente, puis choisissez Charger.

    Capture d’écran montrant le chargement de la nouvelle extension pour Azure DevOps.

    Après validation rapide, votre extension apparaît dans la liste des extensions publiées. Ne vous inquiétez pas, l’extension n’est visible que pour vous.

    Capture d’écran montrant l’extension dans la liste des extensions publiées.

À ce stade, votre extension n’est visible pour aucun compte et ne peut pas être installée tant que vous ne le partagez pas.

Remarque

Microsoft exécute une analyse antivirus sur chaque package d’extension nouveau et mis à jour publié. Tant que l’analyse n’est pas claire, nous ne publions pas l’extension sur la Place de marché pour une utilisation publique. De cette façon, nous éviterons également de faire surface à du contenu inapproprié ou offensant sur les pages de la Place de marché.

Partager votre extension

Vous devez partager votre extension avec une organisation avant de pouvoir l’installer dans Azure DevOps. Pour partager une extension, effectuez les tâches suivantes :

  1. Dans le portail de gestion de la Place de marché, sélectionnez votre extension dans la liste, cliquez avec le bouton droit, puis choisissez Partager/Annuler le partage ou Publier/Annuler la publication, en fonction de l’extension.

    Capture d’écran de la sélection du menu, Partager/Annuler le partage.

  2. Sélectionnez Organisation, puis entrez le nom de votre organisation. Sélectionnez Enter (Entrer).

    Capture d’écran du bouton Entrée.

  3. Fermez le panneau.

Votre extension peut maintenant être installée dans cette organisation.

Installer votre extension

Pour installer votre extension partagée, procédez comme suit.

  1. Dans la Place de marché, sélectionnez votre extension pour ouvrir sa page de vue d’ensemble.

    Capture d’écran de la page de présentation.

    Remarque

    Étant donné que votre extension est privée, seul vous et n’importe quel membre de l’organisation avec laquelle elle est partagée peuvent voir cette page.

  2. Sélectionnez Obtenir gratuitement pour démarrer le processus d’installation. Sélectionnez l’organisation avec laquelle vous avez partagé l’extension dans le menu déroulant.

    Capture d’écran montrant la boîte de dialogue d’installation de l’extension.

  3. Sélectionnez Installer.

Félicitations ! Vous avez installé votre extension dans une organisation et vous êtes prêt à l’essayer.

Essayer votre extension

  1. Sélectionnez Passer à l’organisation à la fin de l’Assistant Installation pour accéder à la page d’accueil de l’organisation sur laquelle l’extension a été installée (https://dev.azure.com/{organization}).

  2. Actualisez votre navigateur.

  3. Ouvrez les paramètres de l’organisation, puis sélectionnez Extensions.

    Capture d’écran des paramètres de l’organisation, page Extensions.

Vous devez voir la nouvelle extension sous l’onglet Installé .

Déboguer votre extension

Pour déboguer l’extension à l’aide de Visual Studio ou browser Developer Tools, modifiez le manifeste en ajoutant la baseUri propriété. Cette action accélère le développement sans avoir à redéployer l’extension chaque fois que vous modifiez le code source.

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

Lorsque vous modifiez le manifeste, il charge l’extension à partir de votre instance de serveur web local. Par exemple, IISExpress dans Visual Studio. Après avoir modifié le manifeste, déployez et installez cette extension de débogage une seule fois.

Remarque

Exécutez votre serveur web local en mode SSL, car Azure DevOps exige que la page web soit traitée à partir d’une source sécurisée. Sinon, vous obtenez une erreur dans la console du navigateur pendant le chargement IFRAME de l’extension.

Mettre à jour votre extension

Pour modifier une extension déjà publiée, mettez-la à jour.

Conseil

Nous vous recommandons de mettre à jour l’extension sur la suppression et le rechargement. Nous vous recommandons également d’avoir deux extensions, par exemple, publisher.extension et publisher.extension-dev. Publisher.extension est public dans la Place de marché, où les clients peuvent l’installer dans leurs organisations Azure DevOps. Publisher.extension-dev est conservé privé sur la Place de marché et peut être partagé avec une organisation que vous possédez et contrôlez. Vous n’avez pas besoin de conserver deux copies du code source de l’extension. Vous pouvez gérer deux fichiers manifestes : un pour chaque extension et pendant l’empaquetage de l’extension, vous pouvez fournir le fichier manifeste respectif à l’outil tfx-cli. Pour plus d’informations sur les arguments requis pour l’outil, consultez les commandes d’extension TFX.

  1. Sélectionnez une extension dans la liste des éléments affichés.
  2. Cliquez avec le bouton droit et sélectionnez Mettre à jour pour l’objet publisher.extension-dev, par exemple.
  3. Validez votre extension.
  4. Effectuez les mêmes mises à jour de la version de production, publisher.extensionpar exemple.
  5. Accédez à .vsix pour votre extension et chargez-la.

La version mise à jour de votre extension est automatiquement installée sur les comptes qui l’ont déjà installée. Les nouveaux comptes sur lesquels l’extension est installée à l’avenir reçoivent également la dernière version.

Rendre votre extension publique

Pendant que vous développez votre extension ou intégration pour la Place de marché, gardez-la privée. Pour rendre votre extension disponible publiquement, définissez l’indicateur true public sur votre manifeste.

Qualifications

Pour avoir une description publique sur la Place de marché, votre intégration ou votre extension doit répondre aux qualifications suivantes :

  • Fonctionne avec ou étend Azure DevOps.
  • Vous, ou votre entreprise, possédez, développez et disposez d’une licence pour distribuer et publier l’intégration ou l’extension.
  • L’extension ou l’intégration est conservée activement.

Microsoft peut également demander une démonstration et examiner le contenu prévu pour votre entrée sur la Place de marché.

Serveur de publication supérieur

Le programme Top Publisher est disponible uniquement pour les éditeurs avec des extensions ou des intégrations Azure DevOps. Il n’est pas applicable aux éditeurs d’extensions Visual Studio IDE et Visual Studio Code.

Capture d’écran du badge Du serveur de publication supérieur.

Le programme Top Publisher reconnaît les éditeurs avec engagement envers leurs clients et la Place de marché grâce à des stratégies exemplaires, à la qualité, à la fiabilité et au support. Une fois que vous êtes devenu un serveur de publication principal, toutes vos offres publiques affichent le badge Top Publisher.

Conditions requises pour le serveur de publication

Le programme Top Publisher de la Place de marché est conçu pour vous aider à évaluer ou à acquérir des extensions et des intégrations Azure DevOps en toute confiance. Le badge Top Publisher implique que l’éditeur affiche l’engagement envers ses clients et la Place de marché grâce à des stratégies exemplaires, à la qualité, à la fiabilité et au support. Il s’agit d’éditeurs avec une ou plusieurs extensions ou intégrations Azure DevOps globales et n’est pas applicable aux éditeurs d’extensions Visual Studio IDE et Visual Studio Code.

La Place de marché attribue le badge à un éditeur après avoir soigneusement examiné l’éditeur sur les paramètres suivants :

  • Politique de confidentialité
  • Stratégie de licence
  • Politique de support
  • Documentation
  • Q &A responsiveness
  • Évaluations et révisions pour leurs offres
  • Adoption active et nombre d’installations pour leurs offres
  • Gérez au moins une extension Azure DevOps publique à partir de l’éditeur.
  • L’extension publique doit avoir plus de 5 000 installations, avec un nombre d’installations actif supérieur à 1 000.

Vous pouvez vous attendre à un support opportun et une bonne expérience globale lorsque vous obtenez une extension à partir d’un serveur de publication supérieur. Consultez les offres des principaux éditeurs.

Pour plus d’informations sur l’ajout de stratégies à votre offre, consultez le manifeste d’extension.

  1. Mettez à jour votre profil d’éditeur.

    Par le biais du profil de l’éditeur, vous pouvez présenter toutes vos offres en un seul endroit, ainsi que des informations clés relatives à l’éditeur. Pour fournir les informations qui s’affichent dans le profil, procédez comme suit :

    a. Connectez-vous à https://marketplace.visualstudio.com/manage/publishers l’aide du compte avec lequel vous publiez et gérez vos offres dans Visual Studio Marketplace.

    b. Sélectionnez l’éditeur et terminez la section À propos de vous dans l’onglet Détails . Capture d’écran de la section sur vous pour les éditeurs Microsoft. c. Enregistrez vos modifications et sélectionnez Afficher le profil pour voir comment il apparaît aux consommateurs. Vous pouvez utiliser cette page de profil pour évangéliser votre ou vos offres.

Remarque

Par le biais de ce programme, il s’agit de l’éditeur certifié. Cela ne couvre pas le logiciel ou la sécurité de ses extensions et intégrations. Nous vous recommandons de connaître les informations de sécurité lorsque vous évaluez les offres d’un éditeur.

Si vous avez obtenu une extension d’un serveur de publication top et que vous n’êtes pas satisfait de votre expérience, envisagez d’utiliser l’éditeur en premier. Ensuite, si vous n’êtes toujours pas satisfait, contactez l’équipe de la Place de marché.

Appliquer pour être un serveur de publication supérieur

  1. Connectez-vous à https://marketplace.visualstudio.com/manage/publishers l’aide du compte avec lequel vous publiez et gérez vos offres dans la Place de marché
  2. Sélectionnez l’éditeur et accédez à son onglet Serveur de publication supérieur. Remarque : vous devez avoir une ou plusieurs extensions Azure DevOps (serveur/service) globales ou une intégration pour que l’onglet s’affiche.
  3. Si vous remplissez une partie des exigences répertoriées précédemment et êtes le propriétaire de l’éditeur, vous voyez une option pour demander le programme. Sur l’application, un e-mail est envoyé à l’équipe de la Place de marché pour examiner votre cas. Ils répondent dans moins de 10 jours ouvrables avec les étapes suivantes, en clarifiant les questions ou avec l’octroi du badge.

L’équipe examine probablement d’autres paramètres, tels que l’adoption active de vos offres, le nombre d’installations/prise en main et les évaluations et les évaluations de vos offres avant d’accorder le badge. Microsoft se réserve le droit d’accorder, de rejeter ou de révoquer le badge Top Publisher à tout moment.

Une fois qu’un éditeur est un serveur de publication principal, toutes ses futures mises à jour et offres doivent répondre aux exigences répertoriées précédemment.

Répondre aux révisions d’extension de la Place de marché

Vous pouvez répondre aux avis que les clients quittent pour vos extensions dans Visual Studio Marketplace. Recherchez et sélectionnez Répondre en regard d’une révision si vous disposez de l’une des autorisations suivantes : propriétaire, créateur ou contributeur.

Vous ne pouvez laisser qu’une seule réponse. Évitez d’utiliser des révisions comme forum de support. Si vous avez besoin de plus de détails, fournissez un alias de support pour que le réviseur soit contacté. Vous pouvez ensuite résoudre leurs problèmes en externe et mettre à jour votre réponse avec une résolution.

Instructions pour les réponses de l’éditeur

Gardez la Place de marché Visual Studio ouverte, invitante, respectueuse et utile pour que les clients trouvent, essaient, installent et passent en revue les extensions. La communication joue un rôle important dans le maintien d’une communauté saine. Pour vous aider à créer cet environnement, voici des instructions pour les éditeurs répondant aux avis des clients. Réfléchissez profondément à vos interactions avec vos clients et réfléchissez à l’esprit de l’expérience client que la Place de marché essaie de créer.

  • Les avis sont réservés aux commentaires des clients. Utilisez Répondre uniquement pour répondre à une révision.
  • Les avis sont destinés à partager les opinions des clients, de sorte que toutes les opinions sont valides. Les clients ont droit à leurs opinions, de sorte qu’ils traitent les commentaires respectueusement comme des commentaires sans débat, critique ou argument.
  • Assurez-vous que vos réponses ajoutent de la valeur et sont pertinentes pour les commentaires de vos clients.
  • Concentrez-vous sur la résolution précise des questions ou des problèmes. Si vous avez besoin de plus de détails, demandez au client de vous contacter par e-mail, plutôt de discuter dans les avis. Lorsque vous résolvez le problème, mettez à jour votre réponse avec la résolution. Vous pouvez modifier votre réponse, tout comme les clients peuvent modifier leurs avis.
  • Si vous rencontrez des avis inappropriés, tels que le courrier indésirable, le contenu abusif ou offensant, pour toute extension, signalez-le pour notre révision.

Demander l’annulation d’une révision

En tant qu’éditeur, vous pouvez appeler à annuler une révision si le problème signalé est dû à la Place de marché ou à la plateforme sous-jacente. Si le problème est valide, les administrateurs de la Place de marché annulent l’évaluation. Vous pouvez faire appel à partir des évaluations et de la section de révision sur votre page du hub d’extension.

Annuler la publication d’une extension

Vous pouvez annuler la publication d’extensions gratuites si vous ne souhaitez plus les proposer dans la Place de marché.

Les scénarios suivants couvrent quand vous souhaiterez peut-être supprimer votre extension de la Place de marché :

  • Vous avez développé une autre extension et ne souhaitez plus offrir l’extension actuelle.
  • Votre extension a un problème. Vous souhaitez donc supprimer votre extension de la Place de marché jusqu’à ce que vous résolvez le problème.
  • Vous avez publié votre extension en tant que public par erreur.

Certains critères doivent être remplis pour qu’une extension ne soit pas publiée ou supprimée :

Action Spécifications
Dépublier Seules les extensions gratuites peuvent être non publiées.
Remove Votre extension doit avoir zéro (0) installation à supprimer.

Important

Si vous devez supprimer votre extension en raison de problèmes juridiques ou de sécurité, contactez l’équipe de la Place de marché. Nous examinons la demande et supprimons manuellement l’extension.

  1. Sélectionnez l’extension sur la page de votre éditeur et choisissez Annuler la publication dans le menu.

    Votre extension n’est pas publiée immédiatement à partir de la Place de marché et les nouveaux utilisateurs ne peuvent pas l’installer. Les évaluations et les avis relatifs à votre extension restent intacts.

Pour proposer à nouveau votre extension dans la Place de marché, choisissez Publier dans le menu.

Vous pouvez également choisir de supprimer complètement votre extension de la Place de marché si votre extension a zéro (0) installation. Pour ce faire, choisissez Supprimer dans le menu. Cette action ne peut pas être annulée.