[英]GitHub Actions: Must have admin rights to trigger workflow_dispatch?
使用 github API 我正在嘗試使用以下方法手動啟動工作流:
curl \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: MY_TOKEN" \
https://api.github.com/repos/djpr-data/djprdashdata/actions/workflows/refresh-data.yaml/dispatches
但我不斷收到身份驗證錯誤:
{
"message": "Must have admin rights to Repository.",
"documentation_url": "https://docs.github.com/rest/reference/actions#create-a-workflow-dispatch-event"
}
這似乎是與此問題類似的問題。 但是我的 PAT 令牌選擇了所有admin
和repo
范圍。 我還將我的用戶帳戶設置為存儲庫的admin
,並且我已將工作流調度添加到工作流 yaml 文件中。
workflow_dispatch:
inputs:
tags:
description:
"run from cmdline"
我一直在關注 https://docs.github.com/en/rest/actions/workflows#create-a-workflow-dispatch-event上的文檔,並且使用 ZDB974238714CA8DE634A 檢索所有以前的工作流作業沒有問題。 我也嘗試過runs
和jobs
端點,但得到了同樣的錯誤。 所以我現在不確定我還能做什么。 還有其他地方我需要設置權限嗎?
謝謝
這是一條糟糕的錯誤消息,告訴您您的請求格式不正確。 如果您想將 PAT 作為 header 傳遞,您需要在它前面加上token
,如文檔中所述:
-H "Authorization: token MY_TOKEN"
但是,一旦解決了這個問題,您也會收到一個錯誤,因為您沒有傳遞所需的ref
有效負載。 假設您的默認分支是main
,這是一個正確的 curl 命令:
> export MY_TOKEN=gha_abcdef
> curl \
-X POST \
-H "Accept: application/vnd.github+json" \
-H "Authorization: token $MY_TOKEN" \
-d '{"ref": "main"}' \
https://api.github.com/repos/djpr-data/djprdashdata/actions/workflows/refresh-data.yaml/dispatches
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.