假设我们有Github软件包注册表存储库https://maven.pkg.github.com/someOrganization。我如何才能将此仓库中所有软件包的列表都整理到txt文件中?
eduasksz 回答:如何从命令行列出Github软件包注册表存储库中的所有软件包?
可以使用Preview API for GitHub Packages完成此操作。您可以使用以下命令在GraphQL中查询它:
query($login: String!) {
organization(login:$login) {
registryPackages(first:10,packageType:MAVEN) {
nodes {
name
}
}
}
}
这将输出类似:
{
"data": {
"organization": {
"registryPackages": {
"nodes": [
{
"name": "package1"
},{
"name": "package2"
}
]
}
}
}
}
在撰写本文时,这两个条件都需要:
- 带有
org:read
和packages:read
的有效令牌
预览API的 -
Accept
标头:application/vnd.github.packages-preview+json
现在,由于您想通过命令行执行此操作,因此可以curl
对其进行编辑。关于如何使用curl
访问GitHub的GraphQL API已有很好的答案:https://stackoverflow.com/a/42021388/1174076
希望这会有所帮助。