我刚开始使用
GitHub
操作。我想在问题创建后自动关闭它。为此,我参考了 Actions 市场和此操作link。目前我在 yml
文件中的代码如下所示。 GitHub 令牌保存在 Actions >> Secrets 部分,它是私有存储库。每次我运行下面的代码时,我都会收到此错误GraphQL: Could not resolve to an issue or pull request with the number of 1. (repository.issue)
。我不明白为什么工作流抱怨无法解决问题? 我需要在我的 GitHub
存储库中执行任何设置才能自动关闭问题吗?
name: CI
on:
issues:
types:
- opened
jobs:
titlePrefixCheck:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set repo
run: gh repo set-default user/private-repo
- name: Close Issue
run: gh issue close --comment "Auto-closing issue" "1"
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GraphQL: Could not resolve to an issue or pull request with the number of 1. (repository.issue)
数字“1”不是该存储库中的有效问题编号。
issues
触发器的Webhook有效负载具有issue.number
,它将给出新打开的问题的问题编号。因此,您可以使用 github.event.issue.number
来指代它。
示例:
name: close-issue-on-open
on:
issues:
types: [opened]
jobs:
close-issue:
runs-on: ubuntu-latest
steps:
- name: Close
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
REPO: ${{ github.repository }}
ISSUE: ${{ github.event.issue.number }}
run: gh issue close --repo "$REPO" --comment "Autoclosing issue $ISSUE" "$ISSUE"
对于您所描述的用例,根本不需要结帐步骤。