Мы создали несколько расширений для DevOps Azure (0), которые являются конвейерными расширениями.
Мы пытаемся создать новые расширения, которые могут реагировать на изменения в рабочих элементах плат Azure. API для взаимодействия с изменениями в рабочих элементах довольно просты, но мы боремся с настройкой расширения.
По сути, нам нужно разрешить пользователям настраивать расширение на двух уровнях
1) На уровне организации
Пользователь (администратор проекта) должен иметь возможность настроить параметры как «URL внешней системы» и т. Д. Примером этого может быть что-то вроде следующего макета:
2) На «уровне проекта»
Для каждого проекта в Azure DevOps администратор должен иметь возможность настраивать такие параметры, как «Включить / отключить расширение» или «Внешний UID» и т. Д. Примером этого может быть что-то вроде приведенного ниже макета:
Когда расширение реагирует на «Сохраненный рабочий элемент», оно запрашивает параметры на обоих уровнях, чтобы выяснить, что делать.
Моя проблема: где, черт возьми, я могу сохранить эту информацию? Я мог бы добавить ряд «настраиваемых полей» к используемому шаблону, но поскольку поля можно добавлять только к типам рабочих элементов, это на самом деле не идеально.
Где я могу сохранить эту информацию через API?
PS: Исходный код для наших расширений доступен как OSS (лицензия Apache) здесь:
(0) https://bitbucket.org/projectum/
Спасибо: -)