Бөлісу құралы:


Размещение статического содержимого

Azure DevOps Services

Выберите размещение статического содержимого для расширения, например HTML, CSS и файлов JavaScript, в собственной службе, в сторонней службе размещения, например Azure или Heroku, или непосредственно в Azure DevOps Services.

Это важно

Если расширение должно создать пользовательскую таблицу в базе данных TFS, не создавайте ее с помощью схемы dbo. Вместо этого пользовательские таблицы должны быть созданы в отдельной схеме. Например, "YourExtensionName".

Подсказка

Для получения последних рекомендаций по разработке расширений, включая оформление и миграцию из VSS.SDK, см. на портале разработчика Azure DevOps Extension SDK.

Разместите на Azure DevOps Services

В этой модели статический контент упаковывается в VSIX-файл расширения и обслуживается из общедоступной конечной точки в https://publisher.gallerycdn.vsassets.io.

Статическое содержимое расширения полезно при увеличении или украшении данных из Azure DevOps Services. Публикация расширений не требует, чтобы вы (издатель расширений) настраивали, администрировали или платили за услуги хостинга для вашего расширения.

Этапы

  1. В файле манифеста расширения укажите файлы, которые необходимо включить через files свойство:
    {
      "files": [
        {
            "path": "scripts", "addressable": true
        },
        {
            "path": "images/extra/icon1.png", "addressable": true
        }
      ]
    }
    
  2. baseUri Удалите свойство (если задано) из манифеста расширения.
  3. Упакуйте расширение (шаги)
  4. Публикация (или повторная публикация) расширения (шаги)
> [! ВАЖНО] > Обязательно увеличьте версию расширения при внесении изменений в статические файлы содержимого, включенные в VSIX.

Помните:

  • Значение, указанное path атрибутом, может быть папкой или отдельным файлом. Если папка, вся папка (и все вложенные папки) включена.
  • Этот addressable атрибут важен и позволяет Visual Studio Codespaces сделать файлы доступными по URL-адресу.
  • Все addressable запросы активов чувствительны к регистру. Если запрос ресурса отличается от фактического отправленного ресурса, он приводит к ошибке HTTP 404 (не найден).
  • Не указывая базовый URI или указывая пустое значение, Visual Studio Codespaces во время выполнения вычисляет базовый универсальный код ресурса (URI), как будто статическое содержимое было бы размещено в Azure DevOps Services.

Размещение на сторонней службе

В этой модели статический контент предоставляется через вашу собственную службу и не включается в .vsix-файл вашего расширения.

Этапы

  1. Задайте свойство baseUri в манифесте расширения. Например, задав значение https://myservice.net/extension, как в следующем примере добавления в хаб.
    "baseUri": "https://myservice.net/extension",
    "contributions": [
        {
             "id": "Fabrikam.HelloWorld",
             "type": "ms.vss-web.hub",
             "targets": [
                 "ms.vss-work-web.work-hub-group"
             ],
             "properties": {
                 "name": "Hello",
                 "uri": "hello-world.html"
             }
         }
    ]

Azure DevOps Services загружает содержимое этого концентратора при отображении по адресу https://myservice.net/extension/hello-world.html.

Дальнейшие шаги