代码之家  ›  专栏  ›  技术社区  ›  Ilkay Ilknur

将pull请求生成状态添加到Github

  •  5
  • Ilkay Ilknur  · 技术社区  · 7 年前

    我在VSTS中有一个Github的pull请求触发器。我还想将此触发器添加到Github中所需的检查中,并在pull请求页面上显示构建状态,如下所示。

    enter image description here

    我还检查了Github上的分支保护页面,但没有可用的状态检查。

    enter image description here

    是否可以在VSTS中执行此操作,或者是否需要创建上述PR状态服务器 here ?

    4 回复  |  直到 7 年前
        1
  •  3
  •   Ilkay Ilknur    7 年前

    我检查过了 高级设置=>报告生成状态 选项和VSTS会自动将提交状态发送到Github。

    enter image description here

        2
  •  3
  •   dahlbyk    6 年前

    用于启用的配置 GitHub commit status checks 在Azure中,DevOps似乎发生了变化。

    1. 确保 Azure Pipelines 为您的组织或存储库安装
    2. 编辑Azure DevOps构建(管道)
    3. 单击 获取来源
    4. 在GitHub配置下,选择 报告生成状态
    5. 拯救 ( &队列 ,如果愿意)更新的配置

    如果DevOps团队中有人看到此情况,则默认情况下应启用报告提交状态!

    Configure GitHub commit status in Azure DevOps

        3
  •  1
  •   starian chen-MSFT    7 年前

    VSTS中没有此类设置,您可以参考此工作流执行此操作:

    1. 获取提交sha
    2. 通过创建状态检查上下文 REST API

    职位: https://api.github.com/repos/[owner]/[repository]/statuses/[commit sha]

    正文(应用程序/json):

    {
      "state": "success",
      "target_url": "XXX",
      "description": "Build verify",
      "context": "continuous-integration/vsts"
    }
    

    然后在分支保护页面中检查相关状态检查:

    enter image description here

    注意:target\u url可以是badge url(在生成定义的选项中选中badge enabled)

    1. 在VSTS连续集成(启用)中创建生成定义,以通过REST API(与步骤2:更改提交sha和正文相同)创建状态 持续集成 )对于当前提交
    2. 创建生成定义以通过VSTS中的REST API更新当前提交的状态(启用 拉取请求验证 )
        4
  •  0
  •   surya vallabhaneni    4 年前

    从Jenkins可以通过管道创建/更新请求状态

    script {
        pullRequest.createStatus(status: "success",
                                 context: "validate-profiles",
                                 description: "Profiles file validated successfully!",
                                 targetUrl: "$RUN_DISPLAY_URL")
    }
    

    enter image description here

    通过管道可以避免显式调用GitHub API

    对拉取请求进行评论

    pullRequest.comment("Your service-profile request is received. Please track ticket progress here: "+ticketData['_links']['web'])
    

    &创建;向拉动请求添加标签

    pullRequest.addLabel(env.TICKET_ID)
    

    更新Pull请求的标题

    pullRequest.setTitle("["+env.TICKET_ID+"] Profile Review Request for "+env.CHANGE_TARGET)