nu_*_*pli 93 git packer github-actions
我正在从我的 github 工作流程(操作)发出一个 curl 发布请求,以获取自托管运行器的注册令牌,但我收到以下响应:
{
"message": "Resource not accessible by integration",
"documentation_url": "https://docs.github.com/rest/reference/actions#create-a-registration-token-for-a-repository"
}
Run Code Online (Sandbox Code Playgroud)
下面是我的 github 工作流程的精简版本:
name: get-token
"on":
push: { branches: ["token"] }
jobs:
print-token:
name: print-token
environment: dev
# needs: pre-pkr
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v2
- name: Get registration token
id: getRegToken
run: |
curl -X POST -H \"Accept: application/vnd.github.v3+json\" -H 'Authorization: token ${{ secrets.GITHUB_TOKEN }}' https://api.github.com/repos/myprofile/myrepo/actions/runners/registration-token
Run Code Online (Sandbox Code Playgroud)
最终我想将此令牌传递给我使用 packer build 命令创建的 ami(下一步)。我也尝试使用加壳器的 shell 配置程序执行上述curl 请求,但响应相同。无法弄清楚我是否必须允许 github ui 的某些权限?或者还有什么办法可以做到这一点?提前致谢。
fre*_*nky 103
尝试添加permissions到您的工作中:
name: get-token
"on":
push: { branches: ["token"] }
jobs:
print-token:
permissions: write-all
name: print-token
environment: dev
# needs: pre-pkr
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v2
- name: Get registration token
id: getRegToken
run: |
curl -X POST -H \"Accept: application/vnd.github.v3+json\" -H 'Authorization: token ${{ secrets.GITHUB_TOKEN }}' https://api.github.com/repos/myprofile/myrepo/actions/runners/registration-token
Run Code Online (Sandbox Code Playgroud)
这应该告诉您这是否是问题所在,然后您可以找出您缺少的权限并更详细地正确配置它们。
正如评论和其他答案所提到的,您可以通过多种方式配置权限:
第三个选项可以在几个不同的级别上完成:
您可以在此处找到默认权限的详细信息。
Osc*_*car 83
转到https://github.com/OWNER/REPO/settings/actions并在工作流程权限部分中授予操作读取和写入权限。这为您的令牌提供了修改您的存储库并解决您的问题的权利。
小智 11
在您提到的操作系统下方添加此权限行,如下所示
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
repository-projects: write
Run Code Online (Sandbox Code Playgroud)
您的其余设置似乎很好,因为您没有报告更多错误。如果问题仍然存在,请告诉我,我会解决它。
| 归档时间: |
|
| 查看次数: |
115818 次 |
| 最近记录: |