Поделиться через


Интеграция пользовательских задач сборочного процесса с помощью расширений

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020

Используйте эту ссылку, если вы хотите создать и интегрировать пользовательские задачи конвейера сборки с расширениями в Azure DevOps.

Подсказка

Ознакомьтесь с нашей новой документацией по разработке расширений с помощью пакета SDK для расширений Azure DevOps.

Пользовательские задачи

Задачи — это стандартные блоки для определения автоматизации в конвейере сборки или выпуска. Дополнительные сведения см. в разделе "Типы задач и использование".

Мы предлагаем множество встроенных задач , чтобы обеспечить основные сценарии сборки и развертывания. Рекомендуется ознакомиться с этими сценариями, прежде чем создавать собственные. Если существующие задачи не соответствуют вашим потребностям, можно создать пользовательскую задачу.

Настраиваемая задача сборки JSON

При создании настраиваемой задачи сборки или публикации с расширением, ваша надстройка включает файл task.json для каждой такой задачи. Файл task.json описывает задачу сборки или выпуска. Система сборки использует ее, чтобы отобразить параметры конфигурации пользователю и определить, какие скрипты следует выполнить во время сборки.

Дополнительные сведения см. в документации по пакету SDK для задач сборки и выпуска на сайте GitHub. В частности, вам может потребоваться схемаtask.json.

Объедините версии задач сборки и релиза в рамках одного расширения.

В расширение можно включить несколько версий задачи сборки или выпуска. Развертывайте будущие версии расширения без прерывания службы пользователей в более ранних версиях. Ниже приведены сведения о макете для нескольких версий в одном расширении.

Традиционный макет расширения

  • extensionManifest.json
  • extensionIcon.png
  • Задача1
    • task.json
    • icon.png
    • taskScript.ps1

Замечание

При настройке значка задачи убедитесь, что это верно.

  • Имя значка — icon.png
  • Размер значка составляет 32x32 пикселя
  • Значок находится в том же расположении, что и файл task.json

Макет нескольких версий

Замечание

Код ищет файл task.json в папке задачи, а затем на один уровень глубже. Если он не найден ни на одном уровне, появится сообщение об ошибке.

  • extensionManifest.json
  • extensionIcon.png
  • Задача1
    • Задача1В1
      • task.json
      • icon.png
      • taskScript.ps1
    • Задача1Версия2
      • task.json
      • icon.png
      • taskScript.ps1
  • Задача2
    • Задача2V1
      • task.json
      • icon.png
      • taskScript.ps1
    • Задача2V2
      • task.json
      • icon.png
      • taskScript.ps1

Подсказка

Чтобы убедиться, что папка _build/Tasks/ssrsfilesdeploy содержит содержимое версий V1 и V2, настройте matchCopy(item, srcPath, destPath, { noRecurse: на false в файле make-util.js.