为 Azure DevOps 扩展创建配置窗格
Creating configuration pane for Azure DevOps extension
我们为 Azure DevOps (0) 创建了一些管道扩展。
我们正在尝试创建新的扩展,以响应 Azure Boards 工作项的变化。 API 用于与工作项中的更改进行交互的方法相当简单,但我们正在努力配置扩展。
本质上我们需要允许用户在两个级别上配置扩展
1) 在 "Organization level"
用户(项目管理员)应该可以将参数配置为 "external system URL" 等。示例如下所示:
2) 在 "Project level"
对于 Azure DevOps 中的每个项目,管理员应该能够配置 "Enable/disable extension" 或 "External UID" 等参数。例如下面的模型:
当扩展对 "Work item saved" 做出反应时,它将查询两个级别的参数以确定要做什么。
我的问题是:我到底要把这些信息保存在哪里?我可以在使用中的模板中添加一些 "custom fields",但由于只能将字段添加到工作项类型中,因此无论如何都不理想。
我在哪里可以通过 API 保存此信息?
PS:我们扩展的源代码可在此处作为 OSS(Apache 许可证)获得:
(0) https://bitbucket.org/projectum/
谢谢:-)
对于 #1,它有点像您可以在管道的服务连接下配置的内容。这是每个项目,而不是组织级别。
这可能更容易在扩展之外进行管理,而只是使用服务挂钩调用一些中间层来完成您想要的。
事实证明,Azure DevOps 有一种存储扩展数据的方法。它可以在 Project Collection 范围和 User 范围内存储数据。
我想我可以用它来存储我需要的数据。我现在需要做的就是弄清楚将用户或管理员用来维护此数据的 UI 放在哪里。
https://docs.microsoft.com/en-us/azure/devops/extend/develop/data-storage?view=vsts
:-)
我们为 Azure DevOps (0) 创建了一些管道扩展。
我们正在尝试创建新的扩展,以响应 Azure Boards 工作项的变化。 API 用于与工作项中的更改进行交互的方法相当简单,但我们正在努力配置扩展。
本质上我们需要允许用户在两个级别上配置扩展
1) 在 "Organization level"
用户(项目管理员)应该可以将参数配置为 "external system URL" 等。示例如下所示:
2) 在 "Project level"
对于 Azure DevOps 中的每个项目,管理员应该能够配置 "Enable/disable extension" 或 "External UID" 等参数。例如下面的模型:
当扩展对 "Work item saved" 做出反应时,它将查询两个级别的参数以确定要做什么。
我的问题是:我到底要把这些信息保存在哪里?我可以在使用中的模板中添加一些 "custom fields",但由于只能将字段添加到工作项类型中,因此无论如何都不理想。
我在哪里可以通过 API 保存此信息?
PS:我们扩展的源代码可在此处作为 OSS(Apache 许可证)获得:
(0) https://bitbucket.org/projectum/
谢谢:-)
对于 #1,它有点像您可以在管道的服务连接下配置的内容。这是每个项目,而不是组织级别。
这可能更容易在扩展之外进行管理,而只是使用服务挂钩调用一些中间层来完成您想要的。
事实证明,Azure DevOps 有一种存储扩展数据的方法。它可以在 Project Collection 范围和 User 范围内存储数据。
我想我可以用它来存储我需要的数据。我现在需要做的就是弄清楚将用户或管理员用来维护此数据的 UI 放在哪里。
https://docs.microsoft.com/en-us/azure/devops/extend/develop/data-storage?view=vsts
:-)