如何彻底删除问题评论中上传到Gitlab的文件?

moo*_*nts 10 gitlab

有人在 Gitlab 问题评论中上传(附加)了一个文件。他们无意公开分享该文件。我可以删除评论,但该文件仍然可以通过原始的直接 URL 访问。该文件位于:

https://gitlab.com/<username>/<repo>/uploads/<hash>/<filename>
Run Code Online (Sandbox Code Playgroud)

有什么方法可以完全删除此上传目录中的文件吗?

小智 4

我向 GitLab 支持提出了一个案例,他们能够为此提供解决方案。使用 GraphQL,您可以删除您有权访问的任何上传的文件。

导航到 GitLab 的 GraphQL 浏览器:https://gitlab.com/-/graphql-explorer
使用以下查询删除您的文件:

mutation{
  uploadDelete(input: { projectPath: "YOUR_PROJECT_PATH", secret: "YOUR_SECRET_HASH_KEY" , filename: "FILE_NAME" }) { 
    upload {
      id
      size
      path 
    }
    errors
  }
}
Run Code Online (Sandbox Code Playgroud)

示例:
如果您上传的文件路径是https://gitlab.com/s_shaik/ci256986/uploads/abefe4f256e91ffc212c40605ae91ab3/ci.yml
那么
projectPath: "s_shaik/ci256986"
secret: "abefe4f256e91ffc212c40605ae91ab3"
filename: "ci.yml"

成功后您将收到如下回复:

{
  "data": {
    "uploadDelete": {
      "upload": {
        "id": "gid://gitlab/Upload/<id>",
        "size": <file_size>,
        "path": "@hashed/some/path/to/file"
      },
      "errors": []
    }
  }
}
Run Code Online (Sandbox Code Playgroud)