Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Usare l'interfaccia della riga di comando multipiattaforma per Azure DevOps (tfx-cli) per pubblicare l'estensione in Visual Studio Marketplace. Per ulteriori informazioni, vedere la panoramica di pubblica, installa e condividi.
Prerequisiti
| Categoria | Requisiti |
|---|---|
| Strumenti | CLI multipiattaforma per Azure DevOps (tfx-cli) installata tramite npm |
| Autenticazione | Un Microsoft Entra token (scelta consigliata) o un token personale di accesso (PAT) con ambito Marketplace (publish) |
| Publisher | Un account publisher configurato nel Visual Studio Marketplace |
Importante
Prendere in considerazione l'uso dei token Microsoft Entra più sicuri rispetto ai token personali di accesso ad alto rischio. Per altre informazioni, vedere Ridurre l'utilizzo di PAT. Esaminare le indicazioni per l'autenticazione per scegliere il meccanismo di autenticazione appropriato per le proprie esigenze.
Ottieni il CLI multipiattaforma per Azure DevOps
Se non è disponibile, scaricare e installare NodeJS. Durante la configurazione, assicurarsi di lasciare selezionata l'opzione Aggiungi a PATH.
Aprire un prompt dei comandi e digitare
npm i -g tfx-cli.
Se l'interfaccia della riga di comando di TFX è già installata, è possibile eseguire l'aggiornamento alla versione più recente eseguendo npm up -g tfx-cli.
Installare l'interfaccia della riga di comando multipiattaforma per Azure DevOps
npm install -g tfx-cli
Pubblicare con un token Microsoft Entra come principale del servizio
È possibile pubblicare un'estensione come entità servizio.
- Aggiungere il principale del servizio come membro per un account di pubblicazione. Ottenere l'ID del principal del servizio tramite l'API REST effettuando l'accesso tramite cli di Azure ed eseguendo query sul profilo del principal del servizio.
az login --service-principal --username <appId> --password <password> --tenant <tenant-id>
# 499b84ac-1321-427f-aa17-267ca6975798 specifies azure devops as a resource
az rest -u https://app.vssps.visualstudio.com/_apis/profile/profiles/me --resource 499b84ac-1321-427f-aa17-267ca6975798
Usare quindi l'ID del passaggio precedente per aggiungere l'ente servizio come membro del pubblicatore.
- Pubblicare un'estensione tramite interfaccia della riga di comando di TFX usando un'entità servizio. Esegui il seguente comando TFX CLI per usare il suo token di accesso:
tfx extension publish --publisher my-publisher --vsix my-publisher.my-extension-1.0.0.vsix --auth-type pat -t <ENTRA_TOKEN>
Pubblicare con un token di accesso personale
Creare un token di accesso personale (PAT) con ambito Marketplace (pubblicazione).
Dopo aver installato tfx-cli e ottenuto il tuo PAT, prepara e pubblica la tua estensione.
- Apri un prompt dei comandi nella directory radice dell'estensione.
- Eseguire il comando seguente per pubblicare l'estensione. Quando richiesto, immettere il token per l'autenticazione.
tfx extension publish --publisher <YOUR_PUBLISHER_ID> --manifest-js <YOUR_EXTENSION_MANIFEST> --share-with <ACCOUNT_NAME>
Potenziali errori
Se l'estensione è già pubblicata, potrebbe essere visualizzato l'errore seguente:
Failed Request: Internal Server Error(500) - Version number must increase each time an extension is published. Extension: fabrikam.my-extension Current version: 0.1.9 Updated version: 0.1.9
Aggiungere il --rev-version flag per incrementare automaticamente la versione patch dell'estensione.
Questo flag salva anche la nuova versione nel file manifest.
Nota
Tutte le opzioni disponibili per create sono disponibili per il comando publish.
Esempio
C:\vso-team-calendar>tfx extension publish --publisher publishFabrikam --manifest-js fabrikam.config.js --share-with fabrikam --rev-version
Copyright Microsoft Corporation
> Personal access token:
Checking if this extension is already published
It is, update the extension
Waiting for server to validate extension package...
Sharing extension with fabrikam.
=== Completed operation: publish extension ===
- Packaging: C:\vso-team-calendar\fabrikam.team-calendar-0.2.6.vsix
- Publishing: success
- Sharing: shared with fabrikam