Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сервисы Azure DevOps | Azure DevOps Server | Azure DevOps Server 2022
Опубликуйте инструмент, службу или продукт, который интегрируется с Azure DevOps в Visual Studio Marketplace. Marketplace — это центральный центр для пользователей, которые могут обнаруживать интеграции и расширения.
Примечание.
В этой статье рассматриваются интеграции (внешние инструменты и службы). Расширения ( надстройки , которые выполняются в Azure DevOps), см. в разделе " Пакеты" и "Публикация расширений".
Предпосылки
Перед публикацией в Marketplace необходимо выполнить следующий список требований.
| Категория | Требования |
|---|---|
| Средство упаковки | Установите средство упаковки расширений (TFX). Запустите npm install -g tfx-cli из командной строки. |
| Разрешения изображения | Убедитесь, что у вас есть соответствующие разрешения на использование изображений, таких как значки, логотипы, снимки экрана и т. д. |
| Обзор рынка | Добавьте подробный файл overview.md, чтобы описать ваше объявление на Marketplace. |
| Значок расширения | Добавьте значок расширения, представляющего интеграцию, компанию или организацию, по крайней мере 128x128 пикселей (PNG или JPEG). |
| Имена продуктов Майкрософт | Используйте полные имена для продуктов Майкрософт (например, Azure DevOps вместо AzDO или других сокращений). |
| Названия торговых марок | Не используйте бренды в имени расширения. |
Вам также потребуются следующие ресурсы:
- По крайней мере один снимок экрана интеграции
- URL для призыва к действию или начала использования для пользователей
Создание издателя
Каждое расширение или интеграция, включая интеграции от Microsoft, должно иметь издателя. Любой пользователь может создать издателя и опубликовать в нем расширения. Вы также можете предоставить доступ издателя другим пользователям, например команде разработчиков.
Войдите на Visual Studio Marketplace Publishing Portal.
Если вы не являетсяе частью существующего издателя, нажмите кнопку +Создать издателя.
Введите имя издателя; Поле идентификатора автоматически заполняется на основе записи.
Примечание.
- Убедитесь, что имя издателя находится в пределах 16 символов для многобайтовых символов.
- Сохраните идентификатор издателя— его нужно в файле манифеста расширения.
Если вам не предлагается создать издателя, прокрутите страницу до Публиковать расширения под заголовком Связанные сайты.
- Задайте уникальный идентификатор издателя, например
mycompany-myteam. Используйте это значение для атрибутаpublisherв манифесте. - Задайте отображаемое имя, например
My Team.
Просмотрите соглашение издателя Marketplace и нажмите кнопку "Создать".
После создания издателя можно управлять элементами, хотя никакие элементы не отображаются до публикации.
Настройка структуры проекта
Создайте следующий макет каталога:
home/
├── images/
│ ├── integration-logo.png (128×128 px minimum)
│ └── screenshot.png (1366×768 px)
├── overview.md
└── vss-integration.json
| Файл | Purpose |
|---|---|
overview.md |
Описание вашей интеграции с GitHub Flavored Markdown. |
vss-integration.json |
Манифест Marketplace. См. справочник по манифесту расширения. |
Создание манифеста
Создайте следующее содержимое, а затем обновите vss-integration.json значения для интеграции:
{
"manifestVersion": 1,
"id": "myservice",
"version": "1.0.0",
"name": "My Service",
"publisher": "mycompany",
"description": "Awesome tools to help you and your team do great things everyday.",
"targets": [
{
"id": "Microsoft.VisualStudio.Services.Integration"
}
],
"icons": {
"default": "images/service-logo.png"
},
"categories": [
"Plan and track"
],
"tags": [
"working",
"people person",
"search"
],
"screenshots": [
{
"path": "images/screen1.png"
},
{
"path": "images/screen2.png"
}
],
"content": {
"details": {
"path": "overview.md"
},
"license": {
"path": "fabrikam-license-terms.md"
}
},
"links": {
"getstarted": {
"uri": "https://www.mycompany.com/help/getstarted"
},
"learn": {
"uri": "https://www.mycompany.com/features"
},
"support": {
"uri": "https://www.mycompany.com/support"
}
},
"branding": {
"color": "rgb(34, 34, 34)",
"theme": "dark"
}
}
Обновите поля с помощью следующих ссылок:
| Недвижимость | Описание | Примечания. |
|---|---|---|
| версия манифеста | Число, соответствующее версии формата манифеста. | должен иметь значение 1. |
| ИД | Идентификатор расширения. | Th ID — это строка, которая должна быть уникальной среди расширений одного издателя. Он должен начинаться с алфавитного или числового символа и содержать "A" до "Z", "a" до "z", "0" до "9" и "-" (дефис). Пример: sample-extension. |
| версия | Строка, указывающая версию расширения. | Должен быть в формате major.minor.patch, например 0.1.2 или 1.0.0. Вы также можете добавить четвертый номер для следующего формата: 0.1.2.3 |
| имя | Короткое, доступное для чтения имя расширения. Ограничено 200 символами. | Пример: "Fabrikam Agile Board Extension". |
| издатель | Идентификатор издателя. | Этот идентификатор должен соответствовать идентификатору, в котором публикуется расширение. См. статью "Создание и управление издателем". |
| Категории | Массив строк, представляющих категории, к которой принадлежит расширение. Необходимо указать по крайней мере одну категорию и не ограничивать количество категорий, которые могут быть включены. | Допустимые значения: Azure Repos, , Azure BoardsAzure Pipelines, Azure Test Plansи Azure Artifacts.Примечания:
— Если вы используете расширение "Azure DevOps Extension Tasks" для публикации, убедитесь, что его версия — >>= 1.2.8. Возможно, потребуется утвердить обновление расширения из-за недавних изменений области. . Ранее упомянутые категории изначально присутствуют в Visual Studio Marketplace и Azure DevOps Server 2019 & выше. |
| Цели | Продукты и службы, поддерживаемые интеграцией или расширением. Дополнительные сведения см. в разделе целевых объектов установки. | Массив объектов, где каждый объект имеет id поле, указывающее одно из следующих значений:
Microsoft.VisualStudio.Services (расширения, которые работают с Azure DevOps),- Microsoft.TeamFoundation.Server (расширение, которое работает с Azure DevOps Server),- Microsoft.VisualStudio.Services.Integration, - Microsoft.TeamFoundation.Server.Integration (интеграции, которые работают с Azure DevOps Server) |
Следующие необязательные свойства помогают пользователям обнаруживать и узнать о расширении.
| Недвижимость | Описание | Примечания. |
|---|---|---|
| описание | Несколько предложений, описывающих расширения. Ограничено 200 символами. | Описание должно быть вашим расширением "краткое представление" - пару строк, чтобы описать расширение в Marketplace и чтобы люди захотели его установить. См. приведенный ниже пример |
| Иконки | Словарь значков, представляющих расширение. | Допустимые ключи: default (128x128 пикселей) типа BMP, GIF, EXIF, JPG, PNG и TIFF. Другие ключи, такие как large (512x512 пикселей), могут поддерживаться в будущем. Значение каждого ключа — путь к файлу значка в расширении |
| теги | Массив строковых тегов, помогающие пользователям найти расширение. | Примеры: agile, project management, task timerи т. д. |
| снимки экрана | Набор изображений, которые не были включены в ваше содержимое. | Снимки экрана становятся более ценными, когда они представлены в вашем контенте и должны использоваться там, чтобы создать качественную страницу сведений о рынке для вашего расширения. Используйте снимки экрана для менее важных изображений, которые не представлены в содержимом. Каждое изображение должно составлять 1366x768 пикселей. Каждый path элемент — это путь к файлу в расширении. |
| содержание | Словарь файлов содержимого, описывающих расширение для пользователей. |
Каждое расширение должно содержать твердое содержимое. Вот как вы покажете пользователям, что может сделать расширение. Сделайте его содержательным, удобным для восприятия и включите снимки экрана при необходимости. Включите overview.md файл в качестве базового содержимого. Предполагается, что каждый файл находится в формате GitHub Flavored Markdown . Каждый path элемент — это путь к файлу Markdown в расширении. Допустимые ключи: details. В будущем могут поддерживаться другие ключи. |
| ссылки | Словарь ссылок, помогающих пользователям узнать больше о расширении, получить поддержку и переместить. | Допустимые ключи: getstarted — первые шаги, как настроить или использовать.
learn — более глубокое содержимое, помогающее пользователям лучше понять расширение или службу.
license — лицензионное соглашение конечного пользователя.
privacypolicy — политика конфиденциальности расширения.
support — справка и поддержка для расширения. Значение каждого ключа — это объект с uri полем, которое является абсолютным URL-адресом ссылки. |
| репозитории | Словарь свойств, описывающих репозиторий исходного кода для расширения | Допустимые ключи: type тип репозитория. Пример: git.
uri — абсолютный URL-адрес репозитория. |
| Значки | Допустимые ключи: href — при выборе значка пользователь переходит к ссылке.
uri — абсолютный URL-адрес отображаемого изображения значка.
description — Описание значка, отображаемое при наведении курсора. |
|
| фирменная символика | Словарь свойств, связанных с брендом. | Допустимые ключи: color — основной цвет расширения или издателя; может быть шестнадцатеричным (#ff00ff), RGB (rgb(100 200 50)) или поддерживаемыми именами цветов HTML (синий).
theme — дополняет цвет; используйте темные цвета фирменной символики или свет для более светлых цветов фирменной символики. |
Предупреждение
Установите public в false или пропустите его, пока не будете готовы сделать его общедоступным.
Упаковка интеграции
Установите средство упаковки, если вы еще не сделали:
npm install -g tfx-cliУпаковайте интеграцию в VSIX-файл:
tfx extension create --manifest-globs vss-integration.jsonПодсказка
Используется
--rev-versionдля автоматического увеличения номера версии исправления.
Публикация в Marketplace
После упаковки расширения его можно отправить в Marketplace от имени издателя. Идентификатор publisher, указанный в файле манифеста расширения , должен соответствовать идентификатору издателя, под которым загружено расширение.
На портале управления выберите издателя в раскрывающемся меню в верхней части страницы.
Выберите Новое расширение>Azure DevOps.
Перетащите файл или выберите его, чтобы найти созданный вами на предыдущем этапе упаковки файл VSIX, а затем выберите Загрузить.
После быстрой проверки расширение появится в списке опубликованных расширений. Не беспокойтесь, расширение видно только вам.
На этом этапе расширение не отображается никаким учетным записям. Чтобы сделать его видимым для других, необходимо поделиться расширением.
Примечание.
Корпорация Майкрософт выполняет проверку вирусов на каждом новом и обновленном пакете расширения, опубликованном. Пока проверка не завершится и не будет подтверждена её положительность, мы не публикуем расширение в магазин приложений в открытый доступ. Таким образом, мы также избегаем неуместного или оскорбительного содержимого на страницах торговой площадки.
Поделитесь интеграцией
Прежде чем установить интеграцию в организации Azure DevOps, необходимо поделиться ею с этой организацией.
- Выберите интеграцию из списка отображаемых элементов.
- Выберите Поделиться.
- Введите имя организации (например,
fabrikam-fiber-incдляdev.azure.com/fabrikam-fiber-inc).
Обновление интеграции
Чтобы обновить уже опубликованное расширение, сделайте следующее:
Подсказка
Обновите расширение вместо удаления и повторной загрузки. Мы рекомендуем поддерживать два расширения: publisher.extension, общедоступное в Marketplace для клиентов, и publisher.extension-dev, частное, доступное только вашей организации для разработки и тестирования.
Вам не нужны две копии исходного кода— просто храните отдельные файлы манифеста для каждого расширения. При упаковке укажите соответствующий файл манифеста средству tfx-cli. Дополнительные сведения см. в командах расширения TFX.
- Выберите расширение из списка отображаемых элементов.
- Щелкните правой кнопкой мыши и выберите "Обновить " для версии разработки, например
publisher.extension-dev. - Подтвердите ваше расширение.
- Примените те же обновления к рабочей версии, например
publisher.extension. - Перейдите к .VSIX-файлу для расширения и загрузите его.
Azure DevOps автоматически устанавливает обновленную версию для всех учетных записей, у которых уже есть расширение. Новые установки также получают последнюю версию.
Сделать интеграцию общедоступной
Чтобы сделать интеграцию видимой для всех пользователей Marketplace, установите значение true в манифесте и заново опубликуйте.
Дополнительные сведения о требованиях, необходимых для общедоступных списков, см. раздел Сделать расширение общедоступным.