【问题标题】:Grabbing PR number from a push event?从推送事件中获取 PR 编号?
【发布时间】:2022-01-03 04:14:21
【问题描述】:

我现在设置了两个 GitHub 操作工作流。一个用于将图像发布到 jfrog 注册表,另一个用于将带有新标签的图像推广到 jfrog 工件。

我正在尝试在推送工作流程中使用 github.event.number,但由于某种原因,如果不是 pull_request,您将无法获得 PR 编号...因此我收到错误消息:

“来自守护进程的错误响应:(company jfrog artifactory url)的清单 - 未找到:清单未知:注册表不知道命名的清单。

有谁知道解决这个问题的方法?

【问题讨论】:

标签: docker github github-actions docker-registry


【解决方案1】:

我通过使用这个实现成功地从一个 PUSH 事件中获得了 PR 号:

name: Get PR Number on PUSH event

on: [push, pull_request]

jobs:
  push:
    runs-on: ubuntu-latest
    if: ${{ github.event_name == 'push' }}
    steps:
      - uses: actions/checkout@v2.3.4
        with:
          fetch-depth: 0
      - name: Get Pull Request Number
        id: pr
        run: echo "::set-output name=pull_request_number::$(gh pr view --json number -q .number || echo "")"
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      - run: echo ${{ steps.pr.outputs.pull_request_number }}

  pull-request:
    runs-on: ubuntu-latest
    if: ${{ github.event_name == 'pull_request' }}
    steps:
      - run: echo ${{ github.event.number }}

我还让pull_request 工作来展示如何从这个事件中获取它(如果你想在实现推送到已经打开的 PR 时进行比较)。

Part of the solution was shared here 但您还需要将actions/checkout 添加到作业步骤中,否则 gh cli 无法识别 repo。

您可以在此处查看 2 个工作流运行:

【讨论】:

    猜你喜欢
    • 2022-08-13
    • 1970-01-01
    • 2020-07-08
    • 2018-04-25
    • 2020-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-06
    相关资源
    最近更新 更多