Share via


Een integratie in Marketplace verpakken en publiceren

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

Hebt u een hulpprogramma, service of product dat kan worden geïntegreerd met Azure DevOps of Team Foundation Server (TFS)? Zo ja, help gebruikers deze te vinden door deze te publiceren op Visual Studio Marketplace. De Marketplace is een one-stop-shop voor personen en teams om hulpprogramma's te vinden die de ervaring uitbreiden en verbeteren.

Blader door Marketplace om voorbeelden van andere integraties en extensies te bekijken.

Notitie

Als u op zoek bent naar verpakkings- en publicatiegegevens voor extensies, bekijkt u Package & Publish Extensions.

Publicatievereisten

Aan de volgende lijst met vereisten moet worden voldaan voordat u naar Marketplace publiceert.

  • Installeer het hulpprogramma voor extensieverpakkingen (TFX). Uitvoeren npm install -g tfx-cli vanaf een opdrachtprompt.
  • Zorg ervoor dat de juiste machtigingen worden verleend voor het gebruik van afbeeldingen, zoals pictogrammen, logo's, schermopnamen, enzovoort.
  • Voeg een grondig overview.md bestand toe om uw vermelding in Marketplace te beschrijven.
  • Neem een pictogram op voor uw extensie, die ten minste 128x128 pixels groot is.
  • Wanneer u naar Microsoft-producten verwijst, gebruikt u volledige namen in plaats van afkortingen, bijvoorbeeld Azure DevOps versus AzDO of een andere afkorting.
  • Gebruik geen merknamen in de naam van uw extensie.

Wat u nodig hebt

  1. 128x128 pixel logo (PNG- of JPEG-indeling) die uw integratie, uzelf of uw bedrijf/organisatie vertegenwoordigt
  2. Minimaal één schermopname met uw integratie
  3. Aanroep-naar-actie/aan de slag-URL (waar gebruikers moeten gaan om aan de slag te gaan met uw integratie)

Stappen

Publiceren naar Marketplace is een iteratief proces dat begint met het maken van een manifestbestand dat uw integratie- en sleuteldetectiekenmerken definieert (zoals schermopnamen, logo's en overzichtsinhoud). Deze informatie wordt gebruikt om uw integratie te presenteren aan gebruikers op marketplace, bijvoorbeeld:

voorbeeld

Jenkins voor Azure DevOps

Opmerking: De term, extensionwordt gebruikt in documentatie waarnaar hieronder wordt verwezen. Extensies zijn een ander type Marketplace-item en delen veel overeenkomsten vanuit het oogpunt van detectie als integraties.

Hebt u hulp nodig bij het verkrijgen van uw integratie op marketplace? Neem contact op. En ja, dit e-mailadres wordt bewaakt door echte mensen.

Een uitgever maken

Alle extensies en integraties, inclusief extensies van Microsoft, hebben een uitgever. Iedereen kan een uitgever maken en er extensies onder publiceren. U kunt andere personen ook toegang geven tot uw uitgever als een team de extensie ontwikkelt.

Een gebruiker is eigenaar van de uitgever, meestal de gebruiker die deze heeft gemaakt. U kunt de uitgever ook delen met andere gebruikers.

  1. Meld u aan bij de Visual Studio Marketplace-publicatieportal.

  2. Als u nog geen lid bent van een bestaande uitgever, + Een uitgever maken. Voer een naam in het naamveld van de uitgever in. Het id-veld wordt automatisch ingesteld op basis van de naam die u hebt ingevoerd.

    Schermopname van de gemarkeerde knop, Uitgever maken.

    Notitie

    Noteer de id, want u moet deze instellen in het manifestbestand van uw extensie.

    Als u niet wordt gevraagd om een uitgever te maken, schuift u omlaag naar de onderkant van de pagina en selecteert u Extensies publiceren onder Verwante sites.

    • Geef een id op voor uw uitgever, bijvoorbeeld: mycompany-myteam. Deze id wordt gebruikt als de waarde voor het kenmerk in het publisher extensiemanifestbestand.
    • Geef een weergavenaam op voor uw uitgever, bijvoorbeeld: My Team
  3. Controleer de Marketplace Publisher-overeenkomst en selecteer Vervolgens Maken.

    Uitgever voor extensie maken

Zodra de uitgever is gemaakt, wordt u omgeleid om items te beheren, maar er zijn geen items.

Een map maken die het itemmanifest en andere assets bevat

Voordat u de integratie als extensie inpakt, moet u een home map maken met een aantal vereiste assets in deze map:

  1. Maak een map met de naam die moet worden opgeslagen images :
    • Logo voor uw integratie (128x128 pixels)
    • Schermafbeeldingen (1366x768 pixels)
  2. Een bestand maken met de naam overview.md
  3. Een bestand maken met de naam vss-integration.json
    • Dit bestand is het manifestbestand van uw Marketplace-vermelding, het bevat veel eigenschappen om uw extensie in uw Marketplace-vermelding te beschrijven. U kunt hier de verwijzing naar het extensiemanifest bekijken

Extensiemanifest

  1. Vul uw vss-integration.json bestand in met de volgende JSON:

    {
        "manifestVersion": 1,
        "id": "myservice",
        "version": "1.0.0",
        "name": "My Service",
        "publisher": "mycompany",
        "description": "Awesome tools to help you and your team do great things everyday.",
        "targets": [
            {
                "id": "Microsoft.VisualStudio.Services.Integration"
            }
        ],    
        "icons": {
            "default": "images/service-logo.png"
        },
        "categories": [
            "Plan and track"
        ],
        "tags": [
            "working",
            "people person",
            "search"
        ],
        "screenshots": [
            {
                "path": "images/screen1.png"
            },
            {
                "path": "images/screen2.png"
            }
        ],
        "content": {
            "details": {
                "path": "overview.md"
            },
            "license": {
                "path": "fabrikam-license-terms.md"
            }
        },
        "links": {
            "getstarted": {
                "uri": "https://www.mycompany.com/help/getstarted"
            },
            "learn": {
                "uri": "https://www.mycompany.com/features"
            },
            "support": {
                "uri": "https://www.mycompany.com/support"
            }
        },
        "branding": {
            "color": "rgb(34, 34, 34)",
            "theme": "dark"
        }
    }
    
  2. Werk de JSON bij met behulp van de volgende verwijzing:

Deze eigenschappen zijn vereist:

Eigenschappen Beschrijving Opmerkingen
manifestVersion Een getal dat overeenkomt met de versie van de manifestindeling. Moet 1 zijn.
Id De id van de extensie. De id is een tekenreeks die uniek moet zijn tussen extensies van dezelfde uitgever. Het moet beginnen met een alfabetisch of numeriek teken en 'A' tot en met Z, 'a' tot en met 'z', '0' tot en met '9' en '-' (afbreekstreepje). Voorbeeld: sample-extension.
version Een tekenreeks die de versie van een extensie opgeeft. Moet de indeling major.minor.patchhebben, bijvoorbeeld 0.1.2 of 1.0.0. U kunt ook een vierde getal toevoegen voor de volgende notatie: 0.1.2.3
name Een korte, door mensen leesbare naam van de extensie. Beperkt tot 200 tekens. Voorbeeld: "Fabrikam Agile Board Extension".
Publisher De id van de uitgever. Deze id moet overeenkomen met de id waaronder de extensie wordt gepubliceerd. Zie Een uitgever maken en beheren.
Categorieën Matrix van tekenreeksen die de categorieën vertegenwoordigen waartoe uw extensie behoort. Er moet ten minste één categorie worden opgegeven en er is geen limiet voor het aantal categorieën dat u kunt opnemen. Geldige waarden: Azure Repos, Azure Boards, Azure Pipelines, , Azure Test Plansen Azure Artifacts.

Opmerkingen:
    - Gebruik versie >=0.6.3 van de tfx-cli als u de extensie programmatisch publiceert.
    - Als u de extensie Azure DevOps-extensietaken gebruikt om te publiceren, moet u ervoor zorgen dat de versie = 1.2.8 is >. Mogelijk moet u de extensie-update goedkeuren vanwege recente wijzigingen in het bereik.
    - De eerder genoemde categorieën zijn systeemeigen aanwezig in Visual Studio Marketplace en Azure DevOps Server 2019 en hoger. Voor extensies die gericht zijn op eerdere versies van TFS:
      - Als TFS-klanten uw extensie verkrijgen via Visual Studio Marketplace (geen lokale galerie) in verbonden context, gebruikt u de categorieën die eerder zijn vermeld.
      - Als u de extensie rechtstreeks gaat delen (dus niet via Visual Studio Marketplace) met een klant die TFS <=2018 gebruikt, gebruikt u in plaats daarvan de volgende categorieën: Code, Plannen en bijhouden, Bouwen en vrijgeven, Testen, Samenwerken en integreren. Als u zowel via Visual Studio Marketplace als rechtstreeks met een TFS <= 2018-klant wilt delen, moet u twee uitbreidingspakketten hebben.
Doelstellingen De producten en services die worden ondersteund door uw integratie of extensie. Zie installatiedoelen voor meer informatie. Een matrix met objecten, waarbij elk object een id veld bevat dat een van de volgende opties aangeeft:
    - Microsoft.VisualStudio.Services(extensies die werken met Azure DevOps of TFS),
    Microsoft.TeamFoundation.Server- (extensie die werkt met TFS),
    Microsoft.VisualStudio.Services.Integration- (integraties die werken met Azure DevOps of TFS),
    - Microsoft.TeamFoundation.Server.Integration (integraties die werken met TFS)

Deze optionele eigenschappen helpen gebruikers bij het detecteren en leren van uw extensie:

Eigenschappen Beschrijving Opmerkingen
beschrijving Een paar zinnen met een beschrijving van de extensies. Beperkt tot 200 tekens. De beschrijving moet de 'elevator pitch' van uw extensie zijn: een paar regels om uw extensie in marketplace te beschrijven en ervoor te zorgen dat personen deze willen installeren. Zie het onderstaande voorbeeld
Pictogrammen Woordenlijst met pictogrammen die de extensie vertegenwoordigen. Geldige sleutels: default (128x128 pixels) van het type BMP, GIF, EXIF, JPG, PNG en TIFF. Andere sleutels, zoals large (512x512 pixels), kunnen in de toekomst worden ondersteund. De waarde van elke sleutel is het pad naar het pictogrambestand in de extensie
tags Matrix van tekenreekstags om gebruikers te helpen uw extensie te vinden. Voorbeelden: agile, project management, task timerenzovoort.
Screenshots Matrix met afbeeldingen die niet in uw inhoud kunnen worden opgenomen. Schermafbeeldingen zijn waardevoller wanneer deze worden weergegeven in uw inhoud en moeten daar worden gebruikt om een pagina met marktdetails van kwaliteit te maken voor uw extensie. Gebruik schermopnamen voor minder belangrijke afbeeldingen die niet in uw inhoud worden weergegeven. Elke afbeelding moet 1366x768 pixels zijn. Het path pad naar het bestand in de extensie is het pad van elk item.
Inhoud Woordenlijst met inhoudsbestanden die uw extensie beschrijven voor gebruikers. Elke extensie moet solide inhoud bevatten. Dit is hoe u gebruikers laat zien wat uw extensie kan doen. Maak het uitgebreid, verbruikbaar en neem waar nodig schermopnamen op. Neem een overview.md bestand op als basisinhoudsstuk. Voor elk bestand wordt ervan uitgegaan dat het een Markdown-indeling met gitHub Flavored heeft. Het path pad naar het Markdown-bestand in de extensie is het pad van elk item. Geldige sleutels: details. Andere sleutels kunnen in de toekomst worden ondersteund.
koppelingen Woordenlijst met koppelingen waarmee gebruikers meer te weten komen over uw extensie, ondersteuning krijgen en verplaatsen. Geldige sleutels: getstarted - eerste stappen, het instellen of gebruiken. learn - diepere inhoud om gebruikers te helpen uw extensie of service beter te begrijpen. license -Gebruiksrechtovereenkomst. privacypolicy - privacybeleid voor een uitbreiding. support - hulp en ondersteuning voor een extensie. De waarde van elke sleutel is een object met een uri veld, de absolute URL van de koppeling
Repository Woordenlijst met eigenschappen die de broncodeopslagplaats voor de extensie beschrijven Geldige sleutels: type - Type opslagplaats. Voorbeeld: git. uri - Absolute URL van de opslagplaats.
Badges Matrix van koppelingen naar externe metagegevensbadges zoals TravisCI, Appveyor, enzovoort, van de goedgekeurde badgesites Geldige sleutels: href - Koppel de gebruiker naar wanneer u de badge selecteert. uri - De absolute URL van de badgeafbeelding die moet worden weergegeven. description - Beschrijving van de badge, die bij de muisaanwijzer moet worden weergegeven.
Branding Woordenlijst van merkgerelateerde eigenschappen. Geldige sleutels: color - primaire kleur van de extensie of uitgever; kan een hex (#ff00ff), RGB (rgb(100.200,50)) of ondersteunde HTML-kleurnamen (blauw) zijn. theme - vormt een aanvulling op de kleur; gebruik donker voor donkere huisstijlkleuren of licht voor lichtere huisstijlkleuren.

Pagina Details

  • 1 - beschrijving
  • 2 - pictogram
  • 3 - categorieën
  • 4 - schermopnamen
  • 5 - inhoud (details)
  • 6 - koppelingen
  • 7 - huisstijl

Kaart

Zorg ervoor dat het kenmerk 'openbaar' wordt ingesteld op 'false' (of helemaal niet ingesteld) om te voorkomen dat uw extensie of integratie voortijdig zichtbaar wordt voor alle gebruikers op de Marketplace.

Uw manifest en assets verpakken

Het pakkethulpprogramma ophalen (tfx-cli)

U kunt de platformoverschrijdende CLI voor Azure DevOps (tfx-cli) installeren of bijwerken met behulp npmvan een onderdeel van Node.js vanaf de opdrachtregel.

npm i -g tfx-cli

Uw integratie inpakken in een VSIX-bestand

tfx extension create --manifest-globs vss-extension.json

Notitie

De versie van een extensie/integratie moet bij elke update worden verhoogd.
Als u de extensie/integratie niet hebt verhoogd in het manifest, moet u de --rev-version opdrachtregelswitch doorgeven. Hiermee wordt het patchversienummer van uw extensie verhoogd en wordt de nieuwe versie opgeslagen in uw manifest.

Uw integratie publiceren naar Marketplace

Zodra uw extensie is verpakt, kunt u deze uploaden naar Marketplace onder een uitgever. De publisher id die is opgegeven in het manifestbestand van uw extensie moet overeenkomen met de id van de uitgever waaronder de extensie wordt geüpload.

  1. Selecteer in de beheerportal uw uitgever in de vervolgkeuzelijst boven aan de pagina.

  2. Selecteer De nieuwe extensie>Azure DevOps.

    Schermopname van het vervolgkeuzemenu Nieuwe extensie en gemarkeerde Azure DevOps-selectie.

  3. Sleep het bestand en zet het neer of selecteer het om het VSIX-bestand te vinden, dat u in de vorige verpakkingsstap hebt gemaakt en kies vervolgens Uploaden.

    Schermopname van uploaden van nieuwe extensie voor Azure DevOps.

    Na snelle validatie wordt uw extensie weergegeven in de lijst met gepubliceerde extensies. Maak u geen zorgen, de extensie is alleen zichtbaar voor u.

    Schermopname van de extensie in de lijst met gepubliceerde extensies.

Op dit moment is uw extensie niet zichtbaar voor accounts en kan deze pas worden geïnstalleerd nadat u de extensie hebt gedeeld.

Notitie

Microsoft voert een virusscan uit op elk nieuw en bijgewerkt extensiepakket dat is gepubliceerd. Totdat de scan is voltooid, publiceren we de extensie niet in Marketplace voor openbaar gebruik. Op deze manier vermijden we ook ongepaste of aanstootgevende inhoud op de Marketplace-pagina's.

Uw integratie delen

Voordat u een integratie in een organisatie in Azure DevOps of TFS kunt installeren, moet u deze delen met die organisatie. Delen is een vereiste tijdens het ontwikkelen en testen van een integratie, omdat het de enige manier is om een integratie uit te voeren.

Als u een integratie wilt delen, voert u de volgende taken uit:

  1. Selecteer een integratie in de lijst met weergegeven items
  2. Selecteer de knop Delen
  3. Geef de naam op van de organisatie om deze integratie zichtbaar te maken voor.
    • Als u bijvoorbeeld een integratie zichtbaar wilt maken voor de dev.azure.com/fabrikam-fiber-inc organisatie, geeft u op fabrikam-fiber-inc.

Een item bijwerken

Als u een extensie wilt wijzigen die al is gepubliceerd, werkt u deze bij.

Tip

U wordt aangeraden de extensie bij te werken via verwijderen en opnieuw uploaden. We raden u ook aan om twee extensies te hebben, publisher.extension bijvoorbeeld en publisher.extension-dev. Publisher.extension is openbaar in Marketplace, waar klanten deze kunnen installeren in hun Azure DevOps-organisaties. Publisher.extension-dev wordt privé gehouden in marketplace en kan worden gedeeld met een organisatie die u bezit en bepaalt. U hoeft geen twee kopieën van de broncode van de extensie te onderhouden. U kunt twee manifestbestanden onderhouden: één voor elke extensie en tijdens het verpakken van de extensie kunt u het respectieve manifestbestand opgeven voor het hulpprogramma tfx-cli. Zie TFX-extensieopdrachten voor meer informatie over de argumenten die vereist zijn voor het hulpprogramma.

  1. Selecteer een extensie in de lijst met weergegeven items.
  2. Klik met de rechtermuisknop en selecteer Bijvoorbeeld Bijwerken voor de publisher.extension-devoptie.
  3. Valideer uw extensie.
  4. Voer dezelfde updates uit voor de productieversie, publisher.extensionbijvoorbeeld.
  5. Blader naar het .vsix-bestand voor uw extensie en upload deze.

De bijgewerkte versie van uw extensie wordt automatisch geïnstalleerd voor accounts waarop deze al is geïnstalleerd. Nieuwe accounts waarop de extensie in de toekomst is geïnstalleerd, ontvangen ook de nieuwste versie.

Uw integratie openbaar maken (zichtbaar voor iedereen)

Ga naar Uw vermelding openbaar maken voor informatie over het openbaar maken van uw integratie.