【发布时间】:2022-01-17 19:10:52
【问题描述】:
我正在尝试通过 REST 为 GitHub 工作流触发 workflow_dispatch 操作,但出现“未找到”错误。
我的问题与this one 类似,但不同之处在于,即使标题表明我已通过身份验证(速率限制已增加到 5,000),我仍然会收到“未找到”错误。
这是我的脚本:
#!/bin/bash
# https://docs.github.com/en/rest/reference/actions#create-a-workflow-dispatch-event
OWNER='myGithubOrganization'
REPO='myRepo'
WORKFLOW_ID='main.yml'
POST_URL="https://api.github.com/repos/$OWNER/$REPO/actions/workflows/$WORKFLOW_ID/dispatches"
echo "Calling $POST_URL"
GITHUB_PERSONAL_ACCESS_TOKEN=$(echo "$PLATFORM_VARIABLES" | base64 --decode | jq '.GITHUB_PERSONAL_ACCESS_TOKEN' --raw-output)
# -i to include headers.
curl \
-i \
-X POST \
-H "Accept: application/vnd.github.v3+json" \
-H "Authorization: token $GITHUB_PERSONAL_ACCESS_TOKEN" \
$POST_URL \
-d '{"ref":"ref"}'
在标题中,我看到速率限制已增加到 5,000,所以我知道我已登录。
个人访问令牌具有以下权限:
- 回购
- 工作流程
- admin:org_hook
个人访问令牌适用于机器用户。
在 repo 设置中,在“协作者和团队”下,机器用户帐户具有“读取”角色。
我还需要做什么才能触发工作流?
【问题讨论】:
标签: github github-actions