Empaquetar y publicar extensiones
Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 | TFS 2017
Una vez que haya escrito la extensión, el siguiente paso es empaquetarla. A continuación, puede publicarlo o cargarlo en el Visual Studio Marketplace. Los usuarios pueden instalar la extensión desde Marketplace si se comparte con ellos. Marketplace es un repositorio global para extensiones privadas y públicas, integraciones y otras ofertas de Microsoft.
Nota
Para obtener información sobre las propiedades de detección disponibles en el archivo de manifiesto de la extensión que ayuda a los usuarios a detectar y obtener información sobre la extensión, vea la referencia del manifiesto de extensión.
Requisitos previos
Se debe cumplir la siguiente lista de requisitos antes de publicar en Marketplace.
- Asegúrese de que se conceden los permisos adecuados para usar cualquier imagen (iconos, logotipos, capturas de pantalla, y así sucesivamente).
- Incluir un archivo
overview.mdexhaustivo para describir la lista en Marketplace - Incluya un icono para la extensión, que tiene un tamaño de al menos 128 x 128 píxeles.
- Cuando haga referencia a productos de Microsoft, use nombres completos en lugar de abreviaturas, por ejemplo, Azure DevOps Services frente a AzDO o cualquier otra abreviatura.
- Evitar el uso de nombres de marca en el nombre de la extensión
Creación de un publicador
Todos los elementos de Visual Studio Marketplace, incluidas las extensiones y las integraciones, pertenecen a un publicador.
Un publicador es propiedad de un usuario, normalmente el usuario que lo creó, y también se puede compartir con otros usuarios.
Inicie sesión en el portal Visual Studio publicación de Marketplace.
Si aún no es miembro de un publicador existente, se le pedirá que cree un publicador. Si no se le pide que cree un publicador, desplácese hacia abajo hasta la parte inferior de la página y seleccione Publicar extensiones debajode Sitios relacionados.
- Especifique un identifer para el publicador, por ejemplo:
mycompany-myteam- Este identificador se usa como valor del atributo
publisheren el archivo de manifiesto de extensión.
- Este identificador se usa como valor del atributo
- Especifique un nombre para mostrar para el publicador, por ejemplo:
My Team
- Especifique un identifer para el publicador, por ejemplo:
Revise marketplace Publisher Agreement y,a continuación, seleccione Crear.
Una vez creado el publicador, se le dirigirá para administrar los elementos, que no tienen elementos.
Empaquetar una extensión
Las extensiones se empaquetan como archivos .vsix compatibles con VSIX 2.0. Para cargar la extensión, debe empaquetarla como un archivo .vsix compatible con VSIX 2.0. Microsoft proporciona una interfaz de línea de comandos (CLI) multiplataforma para empaquetar (y publicar) la extensión.
Obtener la herramienta de paquete (tfx-cli)
Puede instalar o actualizar la CLI multiplataforma para Azure DevOps (tfx-cli) mediante , un componente de npmnpm, desde la línea de comandos.
npm i -g tfx-cli
Empaquetar la extensión en un archivo .vsix
tfx extension create --manifest-globs vss-extension.json
Nota
La versión de una extensión o integración debe incrementarse en cada actualización.
Si no ha incrementado la extensión o la integración en el manifiesto, debe pasar el modificador --rev-version de línea de comandos. Esto incrementa el número de versión de revisión de la extensión y guarda la nueva versión en el manifiesto.
Comprobación del tamaño del paquete
Compruebe el tamaño de vsix después de empaquetar. Si es mayor que 50 MB, debe optimizarse. Para ello, consulte las consideraciones siguientes:
- Desduplicar las dependencias comunes, si las hay, indicándolos una vez en el paquete de extensión.
- Capturar cosas en tiempo de ejecución o durante el tiempo de instalación en lugar de proporcionarla dentro del paquete. Considere la posibilidad de usar la biblioteca del instalador de herramientas para extraer dependencias de herramientas en tiempo de ejecución. El uso de la biblioteca ofrece ventajas en las que la herramienta se almacena en caché por versión, por lo que, para los agentes privados, no se descargará en todas las compilaciones. Se ha hecho una biblioteca para que se pueda usar fuera de las tareas del instalador de herramientas. Pero la tarea no funcionará en escenarios desconectados (sin Internet), que deben estar en la descripción o documentos de la tarea.
- Algunos clientes han tenido un buen éxito con WebPack para que el árbol agite sus dependencias en sus tareas.
Publicación de una extensión
Una vez empaquetada la extensión, puede cargarla en Marketplace en un publicador. El identificador especificado en el archivo de manifiesto de la extensión debe coincidir con el identificador del publicador en el que publisher se carga la extensión. publisher
Para cargar una extensión en Marketplace:
- Vaya al portal Visual Studio publicación de Marketplace
- Busque el Upload nuevo botón de extensión, vaya al archivo .vsix empaquetado y seleccione Cargar.
- Después de una validación rápida, la extensión aparece en la lista de extensiones:

En este momento, la extensión no es visible para ninguna cuenta y no se puede instalar hasta que la comparta.
Exámenes de protección
Como usuario de Marketplace, se espera que no obtenga software malintencionado (malware) cuando adquiera una extensión de Visual Studio Marketplace. Para garantizar esto, ejecutamos un examen de virus en cada paquete de extensión publicado. Esto se realiza para cada nueva extensión y para cada actualización de extensión. Hasta que el examen no esté claro, no publicaremos la extensión en Marketplace para uso público.
El examen de virus indicado se ejecuta solo en la publicación de la extensión y no durante la ejecución de la extensión.
También se realiza un examen de contenido para cada extensión en Marketplace. Esto se realiza para cada nueva extensión y para cada actualización de extensión. Con esto, evitamos mostrar contenido inadecuado u ofensivo en las páginas de Marketplace.
Compartir una extensión
Una extensión debe compartirse con una organización para poder instalarla en Azure DevOps o TFS. El uso compartido es un requisito durante el desarrollo y las pruebas de una extensión, ya que es la única manera de ejecutar una extensión.
Para compartir una extensión, realice las siguientes tareas:
Seleccione los puntos suspensivos de un elemento de extensión para abrir el menú.
Selección del botón Compartir

Especifique el nombre de la organización para que esta extensión sea visible.
- Por ejemplo, para que una extensión sea visible para dev.azure.com/fabrikam-fiber-inc organización, especifique .
Instalar una extensión
Para instalar una extensión que se ha compartido:
En la página principal de la organización, seleccione el icono de Marketplace en la esquina superior derecha y elija "Administrar extensiones":

Busque la extensión en la categoría Compartido con esta organización:

Selección de la tarjeta para abrir el elemento en Marketplace
En la página de detalles del elemento, seleccione el botón Instalar.
Elija la organización con la que ha compartido la extensión y continúe con el proceso de instalación.
Actualización de una extensión
Para cambiar una extensión que ya está publicada, actualícla.
Sugerencia
Se recomienda actualizar la extensión antes de quitarla y volver a cargarla. También se recomienda tener dos extensiones, por ejemplo, publisher.extension y publisher.extension-dev .
Publisher.extensiones público en Marketplace, donde los clientes pueden instalarlo en sus Azure DevOps organización. Publisher.extension-dev se mantiene privado en Marketplace y se puede compartir con una organización que usted posee y controla.
No es necesario mantener dos copias del código fuente de la extensión. Puede mantener dos archivos de manifiesto: uno para cada extensión y, durante el empaquetado de la extensión, puede proporcionar el archivo de manifiesto correspondiente a la herramienta tfx-cli. Para obtener más información sobre los argumentos necesarios para la herramienta, vea Comandos de extensión de TFX.
- Seleccione una extensión de la lista de elementos mostrados.
- Haga clic con el botón derecho y seleccione Actualizar para , por ejemplo.
- Valide la extensión.
- Realice las mismas actualizaciones en la versión de producción,
publisher.extensionpor ejemplo. - Vaya a .vsix de la extensión y cárbala.
La versión actualizada de la extensión se instala automáticamente en las cuentas que ya la tienen instalada. Las nuevas cuentas en las que se instala la extensión en el futuro también reciben la versión más reciente.
Hacer que la extensión sea pública (visible para todos)
Para obtener información sobre cómo hacer que la extensión sea pública, visite Make your listing public .
Anular la publicación de una extensión
Puede anular la publicación o la deselección de extensiones gratuitas si ya no quiere ofrecerlas en Marketplace o publicarlas por error.
Estos son algunos escenarios en los que es posible que quiera quitar la extensión de Marketplace:
- Ha desarrollado otra extensión y ya no quiere ofrecer la actual.
- La extensión tiene un problema, por lo que desea quitarla de Marketplace hasta que haya resuelto el problema.
- Ha publicado la extensión como pública por error.
Para anular la publicación, seleccione la extensión en la página del publicador y elija Anular publicación en el menú. La extensión se anulará de forma inmediata desde Marketplace y los nuevos usuarios no podrán instalarla. Calificaciones y opiniones de la extensión permanece intacta.
Para volver a ofrecer la extensión en Marketplace, elija Publicar en el menú.
También puede optar por quitar la extensión por completo de Marketplace si la extensión tiene cero (0) instala. Para ello, elija Quitar en el menú. Esta acción no se puede deshacer.
Anular la publicación o eliminación de los requisitos de extensión
Se deben cumplir determinados criterios para que una extensión no se publique o se quite:
| Acción | Requisitos |
|---|---|
| Cancelar publicación | Solo se pueden anular las publicaciones de las extensiones gratuitas. |
| Quitar | La extensión debe tener cero (0) instalados para quitarse. |
Importante:Si debe quitar la extensión debido a problemas legales o de seguridad, póngase en contacto con el equipo de Marketplace. Revisaremos la solicitud y eliminaremos manualmente la extensión.
Contacto
Envíe preguntas sobre la publicación de elementos en Visual Studio Marketplace a vsmarketplace@microsoft.com .