Справочник. Интеграция пользовательских задач сборки в расширения
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Используйте эту ссылку, если вы хотите создать и интегрировать пользовательские задачи конвейера сборки с расширениями в 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
- Task1V1
- task.json
- icon.png
- taskScript.ps1
- Task1V2
- task.json
- icon.png
- taskScript.ps1
- Task1V1
- Задача2
- Task2V1
- task.json
- icon.png
- taskScript.ps1
- Task2V2
- task.json
- icon.png
- taskScript.ps1
- Task2V1
Совет
Чтобы папка _build/Tasks/ssrsfilesdeploy
содержала содержимое версии 1 и версии 2, задайте значение matchCopy(item, srcPath, destPath, { noRecurse:
false
в make-util.js
файле.