質問:GitHub Packageレジストリからパッケージを「消える」にするにはどうすればよいですか。
背景:
これまでのところ:
curl -X POST \
-H "Accept: application/vnd.github.package-deletes-preview+json" \
-H "Authorization: bearer ACCESS_TOKEN" \
-d '{"query":"mutation { deletePackageVersion(input:{packageVersionId:\"PACKAGE_ID==\"}) { success }}"}' \
https://api.github.com/graphql
_
curl -X POST \
-H "Accept: application/vnd.github.package-deletes-preview+json" \
-H "Authorization: bearer ACCESS_TOKEN" \
-d "query {
organization(login: "ORGANIZATION_ACCOUNT") {
registryPackages {
edges {
node {
name
id
}
}
}
}
}" \
https://api.github.com/graphql
# The API returns:
{
"message": "Problems parsing JSON",
"documentation_url": "https://developer.github.com/v4"
}
_
# See query above - the API returns via the Explorer:
{
"errors": [
{
"type": "INSUFFICIENT_SCOPES",
"locations": [
{
"line": 6,
"column": 11
}
],
"message": "Your token has not been granted the required scopes to execute this query. The 'name' field requires one of the following scopes: ['read:packages'], but your token has only been granted the: ['read:gpg_key', 'read:org', 'read:public_key', 'read:repo_hook', 'repo', 'user'] scopes. Please modify your token's scopes at: https://github.com/settings/tokens."
},
{
"type": "INSUFFICIENT_SCOPES",
"locations": [
{
"line": 7,
"column": 11
}
],
"message": "Your token has not been granted the required scopes to execute this query. The 'id' field requires one of the following scopes: ['read:packages'], but your token has only been granted the: ['read:gpg_key', 'read:org', 'read:public_key', 'read:repo_hook', 'repo', 'user'] scopes. Please modify your token's scopes at: https://github.com/settings/tokens."
}
]
}
_
希望の解決策
UPDATE1:a公開リポジトリに公開されているパッケージについてです。
テスト(プライベートパッケージ)の間、私は同じバージョンを複数回公開して削除しました。どういうわけか停止していて、UIの「管理の管理」をクリックすると、代わりに「パッケージ設定」に変更されたポイントまで。以前に提供されたGraphQLは役に立ちませんでしたが、 GraphQL Explorer のバージョンを次のように識別できました。
query {
repository(owner: "<org>", name: "<repo>") {
packages(first: 10) {
edges {
node {
latestVersion {
id
version
}
}
}
}
}
}
_
これは、次のようなノードの同期リストをわずかに戻しました。
{
"data": {
"repository": {
"packages": {
"edges": [
{
"node": {
"latestVersion": null
}
},
{
"node": {
"latestVersion": null
}
},
{
"node": {
"latestVersion": null
}
},
{
"node": {
"latestVersion": null
}
},
{
"node": {
"latestVersion": null
}
},
{
"node": {
"latestVersion": null
}
},
{
"node": {
"latestVersion": null
}
},
{
"node": {
"latestVersion": null
}
},
{
"node": {
"latestVersion": {
"id": "MDE0OlBhY2thZ2VWZXJzaW9uNTYxMjQyOQ=="
"version": "0.1.0"
}
}
}
]
}
}
}
}
_
これにより、私はそれらを1つずつ削除することができました:
curl -X POST https://api.github.com/graphql \
-H "Accept: application/vnd.github.package-deletes-preview+json" \
-H "Authorization: bearer $TOKEN" \
-d '{"query":"mutation { deletePackageVersion(input:{packageVersionId:\"MDE0OlBhY2thZ2VWZXJzaW9uNTYxMjQyOQ==\"}) { success }}"}'
_