Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Użyj międzyplatformowego interfejsu wiersza polecenia (tfx-cli) usługi Azure DevOps, aby opublikować rozszerzenie w Visual Studio Marketplace. Aby uzyskać więcej informacji, zobacz omówienie publikowania, instalowania i udostępniania.
Warunki wstępne
| Kategoria | Wymagania |
|---|---|
| Narzędzia | Międzyplatformowy interfejs wiersza polecenia dla usługi Azure DevOps (tfx-cli) zainstalowany za pośrednictwem narzędzia npm |
| Uwierzytelnianie | Token Microsoft Entra (zalecany) lub osobisty token dostępu (PAT) z zakresem Marketplace (publikowanie) |
| Publisher | Konto wydawcy skonfigurowane w witrynie Visual Studio Marketplace |
Ważna
Rozważ użycie bezpieczniejszych tokenów firmy Microsoft w przypadku osobistych tokenów dostępu o wyższym ryzyku. Aby uzyskać więcej informacji, zobacz Zmniejszanie użycia PAT. Zapoznaj się ze wskazówkami dotyczącymi uwierzytelniania , aby wybrać odpowiedni mechanizm uwierzytelniania dla Twoich potrzeb.
Pobierz międzyplatformowy interfejs wiersza polecenia dla usługi Azure DevOps
Jeśli go nie masz, pobierz i zainstaluj NodeJS. Podczas konfigurowania upewnij się, że pozostawisz wybraną Dodaj do PATH.
Otwórz wiersz polecenia i wprowadź
npm i -g tfx-cli.
Jeśli masz już zainstalowany interfejs wiersza polecenia TFX, możesz przeprowadzić aktualizację do najnowszej wersji, uruchamiając npm up -g tfx-cli.
Publikowanie za pomocą tokenu Microsoft Entra jako głównej usługi.
Rozszerzenie można opublikować jako główną usługę.
- Dodaj jednostkę usługi jako członka do konta wydawcy. Uzyskaj identyfikator jednostki usługi za pośrednictwem interfejsu API REST, logując się za pośrednictwem interfejsu wiersza polecenia platformy Azure i wykonując zapytanie dotyczące profilu jednostki usługi:
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
Następnie możesz dodać głównego użytkownika usługi jako członka do wydawcy przy użyciu identyfikatora z poprzedniego kroku.
- Publikowanie rozszerzenia za pomocą CLI TFX przy użyciu głównej jednostki usługi. Wykonaj następujące polecenie TFX CLI, aby użyć jego tokenu dostępu:
tfx extension publish --publisher my-publisher --vsix my-publisher.my-extension-1.0.0.vsix --auth-type pat -t <ENTRA_TOKEN>
Publikowanie przy użyciu osobistego tokenu dostępu
Utwórz osobisty token dostępu (PAT) z zakresem Marketplace (publikowanie) oraz wybranymi wszystkimi dostępnymi organizacjami.
Po zainstalowaniu narzędzia tfx-cli i uzyskaniu tokenu dostępu osobistego (PAT), opakuj i opublikuj swoje rozszerzenie.
- Otwórz wiersz polecenia w katalogu głównym rozszerzenia.
- Uruchom następujące polecenie, aby opublikować rozszerzenie. Po wyświetleniu monitu wprowadź token do uwierzytelnienia.
tfx extension publish --publisher <YOUR_PUBLISHER_ID> --manifest-js <YOUR_EXTENSION_MANIFEST> --share-with <ACCOUNT_NAME>
Potencjalne błędy
Jeśli rozszerzenie zostało już opublikowane, może zostać wyświetlony następujący błąd:
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
Dodaj --rev-version flagę, aby automatycznie zwiększyć wersję poprawki rozszerzenia.
Ta flaga powoduje również zapisanie nowej wersji w manifeście.
Notatka
Wszystkie opcje dostępne dla create są dostępne dla polecenia publish.
Przykład
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