我正在尝试执行 Curl 请求以将团队添加到这样的 repo 中:
curl --user $USERNAME:$TOKEN -X PUT -d "" "https://api.github.com/teams/<team name>/repos/<org>/$REPONAME"
我的变量是正确的,但我不断收到一条消息未找到错误。有人对如何进行有建议吗?
最佳答案
来自 here 的正确端点是 :
PUT /teams/:id/repos/:org/:repo
您必须指定团队 ID 而不是团队名称
以下将获得
Developers
的团队 ID团队并执行 PUT
请求将 repo 添加到指定团队:username=your_user
password=your_password
org=your_org
repo=your_repo
team=Developers
teamid=$(curl -s --user $username:$password "https://api.github.com/orgs/$org/teams" | \
jq --arg team "$team" '.[] | select(.name==$team) | .id')
curl -v --user $username:$password -d "" -X PUT "https://api.github.com/teams/$teamid/repos/$org/$repo"
注意这个例子的 JSON 解析是用
jq
完成的还可以考虑使用 Personal access token带范围
admin:org
而不是您的用户名/密码(然后使用 -H "Authorization: Token $TOKEN"
)
关于curl - 将 Org 中的 GitHub 团队添加到 REPO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43498035/