Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Servicios de Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022
Use la CLI multiplataforma para Azure DevOps (tfx-cli) para publicar la extensión en Visual Studio Marketplace. Para obtener más información, consulte la información general de publicación, instalación y uso compartido.
Prerrequisitos
| Categoría | Requisitos |
|---|---|
| Herramientas | CLI multiplataforma para Azure DevOps (tfx-cli) instalado a través de npm |
| Autenticación | Un token de Microsoft Entra (recomendado) o un token de acceso personal (PAT) con ámbito de Marketplace (publish) |
| Publisher | Una cuenta publisher configurada en Visual Studio Marketplace |
Importante
Considere la posibilidad de usar los más seguros tokens de Microsoft Entra en lugar de los tokens de acceso personal de mayor riesgo. Para obtener más información, consulte Reducir el uso de PAT. Revise las instrucciones de autenticación para elegir el mecanismo de autenticación adecuado para sus necesidades.
Adquisición de la CLI multiplataforma para Azure DevOps
Si no lo tiene, descargue e instale NodeJS. Durante la configuración, asegúrese de mantener seleccionado Agregar a PATH.
Abra un símbolo del sistema y escriba .
Si ya tiene instalada la CLI de TFX, puede actualizar a la versión más reciente ejecutando .
Instalación de la CLI multiplataforma para Azure DevOps
npm install -g tfx-cli
Publicar con un token de Microsoft Entra como principal de servicio
Puede publicar una extensión como principal de servicio.
- Agregue la entidad de servicio como miembro a una cuenta de publicador. Obtenga el identificador de la entidad de servicio a través de la API REST iniciando sesión a través del CLI de Azure y consultando el perfil de la entidad de servicio:
- Bash
- PowerShell
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
A continuación, use el identificador del paso anterior para agregar la entidad de servicio como miembro al publicador.
- Publique una extensión a través de la CLI de TFX mediante una entidad de servicio. Ejecute el siguiente comando de la CLI de TFX para usar su token de acceso:
tfx extension publish --publisher my-publisher --vsix my-publisher.my-extension-1.0.0.vsix --auth-type pat -t <ENTRA_TOKEN>
Publica con un token de acceso personal
Cree un token de acceso personal (PAT) con el ámbito de Marketplace (publicar).
Después de haber instalado tfx-cli y tener el PAT, empaqueta y publica tu extensión.
- Abra una ventana de comandos en el directorio raíz de su extensión.
- Ejecute el siguiente comando para publicar la extensión. Cuando se le solicite, escriba el token para autenticarse.
tfx extension publish --publisher <YOUR_PUBLISHER_ID> --manifest-js <YOUR_EXTENSION_MANIFEST> --share-with <ACCOUNT_NAME>
Posibles errores
Es posible que reciba el siguiente error si la extensión ya está publicada:
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
Agregue la bandera para incrementar automáticamente la versión de parche de su extensión. Esta marca también guarda la nueva versión en el manifiesto.
Nota
Todas las opciones disponibles para están disponibles para el comando .
Ejemplo
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