ms.subservice | title | description | ms.assetid | ms.topic | monikerRange | ms.author | author | ms.date |
---|---|---|---|---|---|---|---|---|
azure-devops-ecosystem |
Package and Publish an Integration |
How to package and publish your integration to the Visual Studio Marketplace |
61550050-c6d7-40e1-9ea7-030b48b04e3b |
conceptual |
<= azure-devops |
chcomley |
chcomley |
08/29/2016 |
[!INCLUDE version-lt-eq-azure-devops]
Do you have a tool, service, or product that integrates with Azure DevOps or Team Foundation Server (TFS)? If so, help users find it by publishing it on the Visual Studio Marketplace. The Marketplace is a one-stop-shop for individuals and teams to find tools that extend and enhance the experience.
Browse the Marketplace to see examples of other integrations and extensions.
Note
If you're looking for packaging and publishing information for extensions, check out Package & Publish Extensions.
- 128x128 pixel logo (PNG or JPEG format) representing your integration, yourself, or your company/organization
- Minimum of one screenshot showing your integration
- Call to action / get started URL (where users should go to get started with your integration)
Publishing to the Marketplace is an iterative process that starts with creating a manifest file that defines your integration and key discovery characteristics (like screenshots, logos, and overview content). This information is used to present your integration to users on the Marketplace, for example:
Note: The term, extension
, is used in documentations referenced below. Extensions are another type of Marketplace item and share many similarities from a discovery standpoint as integrations.
Before you package your integration as an extension, you'll need to create a home
folder to contain some required assets, within this folder:
- Create a folder called
images
to contain:- Logo for your integration (128x128 pixels)
- Screenshots (1366x768 pixels)
- Create a file called
overview.md
- Describe your integration here
- To learn more about Markdown, see GitHub Flavored Markdown
- Create a file called
vss-integration.json
- This file is your Marketplace listing's manifest file, it contains many properties to describe your extension in your Marketplace listing. You can browse the extension manifest reference here
-
Fill your
vss-integration.json
file with the following JSON:[!code-javascriptJSON]
-
Update the JSON using the following reference:
- 1 - description
- 2 - icon
- 3 - categories
- 4 - screenshots
- 5 - content (details)
- 6 - links
- 7 - branding
You can install or update the Cross-platform CLI for Azure DevOps (tfx-cli) using npm
, a component of Node.js, from your command line.
npm i -g tfx-cli
tfx extension create --manifest-globs vss-extension.json
Note
An extension/integration's version must be incremented on every update.
If you haven't incremented your extension/integration in the manifest, you should pass the --rev-version
command line switch. This increments the patch version number of your extension and saves the new version to your manifest.
[!INCLUDE Publish_extension]
Before you can install an integration into an organization in Azure DevOps or TFS, you must share it with that organization. Sharing is a requirement during development and testing of an integration, as it's the only way to run an integration.
To share an integration do the following tasks:
- Select an integration from the list of displayed items
- Select the Share button
- Specify the name of the organization to make this integration visible to.
- For example, to make an integration visible to the dev.azure.com/fabrikam-fiber-inc organization, specify
fabrikam-fiber-inc
.
- For example, to make an integration visible to the dev.azure.com/fabrikam-fiber-inc organization, specify
[!INCLUDE Update_extension]
For information on making your integration public, visit Make your listing public.