【问题标题】:Github Action - receive event when comment added to PR?Github Action - 当评论添加到 PR 时接收事件?
【发布时间】:2020-05-03 19:46:52
【问题描述】:

当评论被添加到 PR 时,有没有办法让 Github Action 在 PR 上触发?我创建了一个 Github 操作,它将触发 PR 上发生的各种事件(创建等)。我还没有弄清楚的一件是添加评论时的触发器。我在这里没有看到任何表明它受支持的东西:

https://help.github.com/en/actions/automating-your-workflow-with-github-actions/events-that-trigger-workflows

我错过了什么吗?

【问题讨论】:

    标签: github-actions


    【解决方案1】:

    GitHub 拉取请求实际上是问题。所以您要查找的事件是issue_comment

    on:
      issue_comment:
        types: [created]
    

    您可以像这样过滤掉仅拉取请求评论事件:

    on:
      issue_comment:
        types: [created]
    jobs:
      example:
        runs-on: ubuntu-latest
        steps:
          - name: Execute for pull request comments only
            if: github.event.issue.pull_request
            run: echo "This is a pull request comment event"
    

    【讨论】:

    • 这似乎对我不起作用 - 这是一个 PR(在包含我的 GH 操作的 repo 上)似乎不会在 issue_comment 上触发。它在我向 PR 添加提交时触发,但不适用于 cmets...github.com/delivered/trello-github-action/pull/1
    • 工作流必须提交到主分支才能触发issue_comment 事件。请参阅文档,其中指出该事件的 GITHUB_SHA 是“默认分支上的最后一次提交”。
    • 那么评论本身是否必须在主分支上?这是我得到的: * .github/workflows/main.yml 在默认(主)分支上注册 issue_comment 事件 * 创建新分支,当我创建 PR 时触发工作流。 * 当我将 cmets 添加到此 PR/分支时,工作流不会触发我希望此工作流对 PR 强制执行规则,但如果它只会响应 master 分支上的 issue_comment,我不确定我能做到吗?抱歉,如果我遗漏了一些明显的东西:(
    • 评论可以在任何问题或拉取请求中。发表评论时会创建一个事件。然后 GitHub 将检查您的默认分支(主)的最后一次提交,以查看是否存在 issue_comment 事件工作流。如果有,它会执行它。 issue_comment 事件不考虑其他分支中的工作流。
    • 我不确定您的用例是什么,但如果您尝试使用斜杠命令针对 PR 执行工作流,slash-command-dispatch 操作可能会对您有所帮助。
    猜你喜欢
    • 2021-10-27
    • 2021-08-12
    • 2021-09-16
    • 1970-01-01
    • 2022-08-11
    • 2019-09-05
    • 2019-07-18
    • 2012-01-25
    • 2022-01-21
    相关资源
    最近更新 更多