簡體   English   中英

GitHub 操作:必須具有管理員權限才能觸發 workflow_dispatch?

[英]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 令牌選擇了所有adminrepo范圍。 我還將我的用戶帳戶設置為存儲庫的admin ,並且我已將工作流調度添加到工作流 yaml 文件中。

  workflow_dispatch:
    inputs:
      tags:
        description:
          "run from cmdline"

我一直在關注 https://docs.github.com/en/rest/actions/workflows#create-a-workflow-dispatch-event上的文檔,並且使用 ZDB974238714CA8DE634A 檢索所有以前的工作流作業沒有問題。 我也嘗試過runsjobs端點,但得到了同樣的錯誤。 所以我現在不確定我還能做什么。 還有其他地方我需要設置權限嗎?

謝謝

這是一條糟糕的錯誤消息,告訴您您的請求格式不正確。 如果您想將 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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM