我的组织有 GitHub 的付费版本。因此,我们有私有存储库,我们可以发布 GitHub 包。
不幸的是,我不知道谁发布了这个包。只能知道它是什么时候发布的。
上下文:这一点尤其重要,因为传统上包是由一个人发布的,现在,我通过 GitHub Actions 创建持续交付,以便在保存项目版本的某个文件发生更改后,包将自动发布。
有什么方法可以在 GitHub Packages 上找到发布该包的人吗?
无法直接从包裹本身知道这一点 - 它只有所有者。
一种方法是禁用所有允许发布包的当前令牌,并强制每个人都执行 CI 工作流程。 因此,他们将被迫触发某个工作流程,通过“机器人令牌”为他们执行此操作,而不是发布 API。
这将允许您查看谁触发了特定版本的工作流程。
您可以-ish:您的 GitHub 组织页面有一个审核日志,可以显示过去六个月的所有活动 - 包括 CSV 和 JSON 导出功能:
查看您组织的审核日志
审核日志允许组织管理员快速审查组织成员执行的操作。它包括详细信息,例如谁执行了该操作、该操作是什么以及何时执行。
审核日志列出了当月和前六个月内影响您的组织的活动所触发的事件。只有所有者才能访问组织的审核日志。
默认情况下,仅显示过去三个月的事件。要查看较旧的事件,您必须使用创建的参数指定日期范围。
请记住,审核日志中仅提供过去 6 个月的数据 - 不幸的是,除非您运行 GitHub Enterprise,否则您无法自动执行下载过程:
使用 GitHub Enterprise Cloud 的组织可以使用 GraphQL API 和 REST API 与审核日志进行交互。
对于未运行 GitHub Enterprise Cloud 的其他人,您始终可以设置组织 Webhook,只要发生包活动,它就会收到通知。显然,这不会帮助您了解一个月前发生的情况,但它为您提供了一种监控未来活动的方法 - 并保留超过 GitHub 6 个月限制的数据。