Issue with getTree function
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 42/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- github, javascript, typescript
調査の方向性
Start with the github.rest.git.getTree call shown in the workflow and trace how its parameters become the request URL. Compare that generated URL with the documented get-a-tree endpoint and the working curl example. Done means the cause of the 404 is documented or corrected, with a test covering the resulting request if this repository owns that behavior.
索引モデルが issue の本文から書いたものです。
説明
Describe the bug
I'm consistently receiving 404 errors when calling the github.rest.git.getTree API. From my testing it appears the URL parameter ?tree= is causing the issue, as if the API does not support this.
To Reproduce
my GithHub action is configured as:
- name: Commit Changes
id: commit-changes
uses: actions/github-script@v7
env:
BRANCH: ${{ inputs.branch }}
with:
retries: 3
github-token: ${{ steps.app-token.outputs.token }}
script: |
const tree = await github.rest.git.getTree({
owner: context.repo.owner,
repo: context.repo.repo,
tree: process.env.BRANCH,
})
where inputs.branch is set to main, and the 404 response is:
RequestError [HttpError]: Not Found
at /home/runner/work/_actions/actions/github-script/v7/dist/index.js:9537:21
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async requestWithGraphqlErrorHandling (/home/runner/work/_actions/actions/github-script/v7/dist/index.js:9276:20)
at async Job.doExecute (/home/runner/work/_actions/actions/github-script/v7/dist/index.js:10275:18) {
status: 404,
response: {
url: 'https://api.github.com/repos/<my_org>/<my_repo>/git/trees/?tree=main',
status: 404,
headers: {
....
},
data: {
message: 'Not Found',
documentation_url: 'https://docs.github.com/rest/git/trees#get-a-tree',
status: '404'
}
When I test locally with Curl, this is what I see:
export TREE="https://api.github.com/repos/$OWNER/$REPO/git/trees/main"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer $TOKEN" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"$TREE"
and the output is:
{
"sha": "ff70bc62cd0fb0a01bd14a2b332b6b106b32ae38",
"url": "https://api.github.com/repos/<my_org>/<my_repo>/git/trees/ff70bc62cd0fb0a01bd14a2b332b6b106b32ae38",
"tree": [
{
"path": ".github",
"mode": "040000",
"type": "tree",
"sha": "795e917b75291b5c0fa3fa219401bce1801420b5",
"url": "https://api.github.com/repos/<my_org>/<my_repo>/git/trees/795e917b75291b5c0fa3fa219401bce1801420b5"
},
...
When I run the same test, but include the ?tree= parameter, I get the same 404 error:
export TREE="https://api.github.com/repos/$OWNER/$REPO/git/trees/?tree=main"
curl -L \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer $TOKEN" \
-H "X-GitHub-Api-Version: 2022-11-28" \
"$TREE
and the output is:
{
"message": "Not Found",
"documentation_url": "https://docs.github.com/rest/git/trees#get-a-tree",
"status": "404"
}
Expected behavior
I expect a tree object to be returned.
Screenshots
RequestError [HttpError]: Not Found
at /home/runner/work/_actions/actions/github-script/v7/dist/index.js:9537:21
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async requestWithGraphqlErrorHandling (/home/runner/work/_actions/actions/github-script/v7/dist/index.js:9276:20)
at async Job.doExecute (/home/runner/work/_actions/actions/github-script/v7/dist/index.js:10275:18) {
status: 404,
response: {
url: 'https://api.github.com/repos/<my_org>/<my_repo>/git/trees/?tree=main',
status: 404,
headers: {
....
},
data: {
message: 'Not Found',
documentation_url: 'https://docs.github.com/rest/git/trees#get-a-tree',
status: '404'
}
Desktop (please complete the following information):
N/A
Smartphone (please complete the following information):
N/A
Additional context
Unless I'm misunderstanding how to use this API, it appears to be a bug.
- 主要言語
- TypeScript
- スター
- 5k
- フォーク
- 586
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
actions/github-script のほかの issue
-
難易度 3/5 1〜2日 初心者へのやさしさ 48/100
actions/github-script#728 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 52/100
actions/github-script#727 · リアクション 1 件 ·
-
{ オープン
難易度 5/5 1週間以上 初心者へのやさしさ 10/100
actions/github-script#724 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
actions/github-script#723 · コメント 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 55/100
actions/github-script#714 · コメント 1 件 · リアクション 4 件 ·