我现在设置了两个 GitHub 操作工作流程。一个将图像发布到 jfrog 注册表,另一个将带有新标签的图像提升到 jfrog 工件。
我正在尝试在推送工作流程中使用 github.event.number,但由于某种原因,如果不是正在发出 pull_request,则无法获取 PR 编号...因此我收到错误:
“来自守护程序的错误响应:(公司 jfrog 工件 url)的清单 - 未找到:清单未知:注册表未知指定的清单。
有人知道这有什么解决办法吗?
我使用此实现成功从 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/[email protected]
with:
fetch-depth: 0
- name: Get Pull Request Number
id: pr
run: echo "pull_request_number=$(gh pr view --json number -q .number || echo "")" >> $GITHUB_OUTPUT
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时)。
部分解决方案已在此处共享,但您还需要将
actions/checkout
添加到作业步骤,否则 gh cli 无法识别该存储库。
您可以在此处检查 2 个工作流程运行: