【问题标题】:Add Reporsitory to GitHub Connection in ADS在 ADS 中将存储库添加到 GitHub 连接
【发布时间】:2022-11-29 17:06:30
【问题描述】:

如何使用 API 将 GitHub 存储库添加到 ADS (On-Prem) 连接。按照link 建立GitHub repos 和ADS 之间的连接(GitHub 连接)。我们可以手动添加回购,我们正在寻找 API 来添加回购。

是否有任何 API 可用于将 GitHub 存储库添加到 ADS 中的 GitHub 连接?

【问题讨论】:

    标签: github azure-devops github-api ads-api


    【解决方案1】:

    没有记录的 REST API 可以执行此操作。但是当我查看 Developer Console 时,我发现确实有一个 REST API 可以使用现有的 GitHub 连接添加存储库:

    POST https://dev.azure.com/{organization}/_apis/Contribution/HierarchyQuery?api-version=5.0-preview.1
    

    这是一个示例请求正文:

    {
        "contributionIds": [
            "ms.vss-work-web.github-unified-installation-experience-data-provider"
        ],
        "dataProviderContext": {
            "properties": {
                "orgName": "{organization}",
                "externalRepositoryExternalIds": [
                    "{RepositoryExternalIds}",
                    "{RepositoryExternalIds}"
                ],
                "existingConnectionId": "{ConnectionId}",
                "sourcePage": {
                    "url": "https://dev.azure.com/{organization}/{project}/_settings/boards-external-integration",
                    "routeId": "ms.vss-admin-web.project-admin-hub-route",
                    "routeValues": {
                        "project": "{project}",
                        "adminPivot": "boards-external-integration",
                        "controller": "ContributedPage",
                        "action": "Execute"
                    }
                }
            }
        }
    }
    

    externalRepositoryExternalIds部分,请注意,您需要包含所有所需的存储库 ID,而不仅仅是要添加的新存储库 ID.

    其他可能有帮助的信息:如果您更改请求正文,REST API 将返回当前连接的所有存储库。这里有些例子:

    {
        "contributionIds": [
            "ms.vss-work-web.azure-boards-external-connection-data-provider"
        ],
        "dataProviderContext": {
            "properties": {
                "includeInvalidConnections": true,
                "sourcePage": {
                    "url": "https://dev.azure.com/{organization}/{project}/_settings/boards-external-integration",
                    "routeId": "ms.vss-admin-web.project-admin-hub-route",
                    "routeValues": {
                        "project": "{project}",
                        "adminPivot": "boards-external-integration",
                        "controller": "ContributedPage",
                        "action": "Execute",
                    }
                }
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2021-10-03
      • 2019-08-09
      • 2011-11-04
      • 2012-09-23
      • 1970-01-01
      • 1970-01-01
      • 2020-10-30
      • 1970-01-01
      • 2013-01-20
      相关资源
      最近更新 更多